aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/glib-1.2
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/glib-1.2
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
downloadopenembedded-709c4d66e0b107ca606941b988bad717c0b45d9b.tar.gz
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/glib-1.2')
-rwxr-xr-xrecipes/glib-1.2/glib-1.2-1.2.10/depcomp526
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/gcc-3.4-pretty_function47
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/glib-config-use-pkg-config72
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/glib-reconf-fix683
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/glib.m4-use-pkgconfig2
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/glibconfig-sysdefs.h6
-rw-r--r--recipes/glib-1.2/glib-1.2-1.2.10/posix-conf-changes44
-rw-r--r--recipes/glib-1.2/glib-1.2-native_1.2.10.bb46
-rw-r--r--recipes/glib-1.2/glib-1.2_1.2.10.bb44
9 files changed, 1470 insertions, 0 deletions
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/depcomp b/recipes/glib-1.2/glib-1.2-1.2.10/depcomp
new file mode 100755
index 0000000000..25bdb18892
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/depcomp
@@ -0,0 +1,526 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2004-04-25.13
+
+# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
+
+case $1 in
+ '')
+ echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+ depmode Dependency tracking mode.
+ source Source file read by `PROGRAMS ARGS'.
+ object Object file output by `PROGRAMS ARGS'.
+ depfile Dependency file to output.
+ tmpdepfile Temporary file to use when outputing dependencies.
+ libtool Whether libtool is used (yes/no).
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+ exit 0
+ ;;
+ -v | --v*)
+ echo "depcomp $scriptversion"
+ exit 0
+ ;;
+esac
+
+if test -z "$depmode" || test -z "$source" || test -z "$object"; then
+ echo "depcomp: Variables source, object and depmode must be set" 1>&2
+ exit 1
+fi
+# `libtool' can also be set to `yes' or `no'.
+
+if test -z "$depfile"; then
+ base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
+ dir=`echo "$object" | sed 's,/.*$,/,'`
+ if test "$dir" = "$object"; then
+ dir=
+ fi
+ # FIXME: should be _deps on DOS.
+ depfile="$dir.deps/$base"
+fi
+
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags. We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write. Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+ # HP compiler uses -M and no extra arg.
+ gccflag=-M
+ depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+ # This is just like dashmstdout with a different argument.
+ dashmflag=-xM
+ depmode=dashmstdout
+fi
+
+case "$depmode" in
+gcc3)
+## gcc 3 implements dependency tracking that does exactly what
+## we want. Yay! Note: for some reason libtool 1.4 doesn't like
+## it if -MD -MP comes after the -MF stuff. Hmm.
+ "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ mv "$tmpdepfile" "$depfile"
+ ;;
+
+gcc)
+## There are various ways to get dependency output from gcc. Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+## up in a subdir. Having to rename by hand is ugly.
+## (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+## -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+## than renaming).
+ if test -z "$gccflag"; then
+ gccflag=-MD,
+ fi
+ "$@" -Wp,"$gccflag$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## The second -e expression handles DOS-style file names with drive letters.
+ sed -e 's/^[^:]*: / /' \
+ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
+## This next piece of magic avoids the `deleted header file' problem.
+## The problem is that when a header file which appears in a .P file
+## is deleted, the dependency causes make to die (because there is
+## typically no way to rebuild the header). We avoid this by adding
+## dummy dependencies for each header file. Too bad gcc doesn't do
+## this for us directly.
+ tr ' ' '
+' < "$tmpdepfile" |
+## Some versions of gcc put a space before the `:'. On the theory
+## that the space means something, we add a space to the output as
+## well.
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+hp)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
+sgi)
+ if test "$libtool" = yes; then
+ "$@" "-Wp,-MDupdate,$tmpdepfile"
+ else
+ "$@" -MDupdate "$tmpdepfile"
+ fi
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+
+ if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
+ echo "$object : \\" > "$depfile"
+
+ # Clip off the initial element (the dependent). Don't try to be
+ # clever and replace this with sed code, as IRIX sed won't handle
+ # lines with more than a fixed number of characters (4096 in
+ # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
+ # the IRIX cc adds comments like `#:fec' to the end of the
+ # dependency line.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+ tr '
+' ' ' >> $depfile
+ echo >> $depfile
+
+ # The second pass generates a dummy entry for each header file.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+ >> $depfile
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+aix)
+ # The C for AIX Compiler uses -M and outputs the dependencies
+ # in a .u file. In older versions, this file always lives in the
+ # current directory. Also, the AIX compiler puts `$object:' at the
+ # start of each line; $object doesn't have directory information.
+ # Version 6 uses the directory in both cases.
+ stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+ tmpdepfile="$stripped.u"
+ if test "$libtool" = yes; then
+ "$@" -Wc,-M
+ else
+ "$@" -M
+ fi
+ stat=$?
+
+ if test -f "$tmpdepfile"; then :
+ else
+ stripped=`echo "$stripped" | sed 's,^.*/,,'`
+ tmpdepfile="$stripped.u"
+ fi
+
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+
+ if test -f "$tmpdepfile"; then
+ outname="$stripped.o"
+ # Each line is of the form `foo.o: dependent.h'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+ sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+icc)
+ # Intel's C compiler understands `-MD -MF file'. However on
+ # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+ # ICC 7.0 will fill foo.d with something like
+ # foo.o: sub/foo.c
+ # foo.o: sub/foo.h
+ # which is wrong. We want:
+ # sub/foo.o: sub/foo.c
+ # sub/foo.o: sub/foo.h
+ # sub/foo.c:
+ # sub/foo.h:
+ # ICC 7.1 will output
+ # foo.o: sub/foo.c sub/foo.h
+ # and will wrap long lines using \ :
+ # foo.o: sub/foo.c ... \
+ # sub/foo.h ... \
+ # ...
+
+ "$@" -MD -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ # Each line is of the form `foo.o: dependent.h',
+ # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process this invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
+ sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+tru64)
+ # The Tru64 compiler uses -MD to generate dependencies as a side
+ # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+ # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+ # dependencies in `foo.d' instead, so we check for that too.
+ # Subdirectories are respected.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+
+ if test "$libtool" = yes; then
+ # Dependencies are output in .lo.d with libtool 1.4.
+ # They are output in .o.d with libtool 1.5.
+ tmpdepfile1="$dir.libs/$base.lo.d"
+ tmpdepfile2="$dir.libs/$base.o.d"
+ tmpdepfile3="$dir.libs/$base.d"
+ "$@" -Wc,-MD
+ else
+ tmpdepfile1="$dir$base.o.d"
+ tmpdepfile2="$dir$base.d"
+ tmpdepfile3="$dir$base.d"
+ "$@" -MD
+ fi
+
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ exit $stat
+ fi
+
+ if test -f "$tmpdepfile1"; then
+ tmpdepfile="$tmpdepfile1"
+ elif test -f "$tmpdepfile2"; then
+ tmpdepfile="$tmpdepfile2"
+ else
+ tmpdepfile="$tmpdepfile3"
+ fi
+ if test -f "$tmpdepfile"; then
+ sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+ # That's a tab and a space in the [].
+ sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ else
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+#nosideeffect)
+ # This comment above is used by automake to tell side-effect
+ # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout, regardless of -o.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ test -z "$dashmflag" && dashmflag=-M
+ # Require at least two characters before searching for `:'
+ # in the target name. This is to cope with DOS-style filenames:
+ # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+ "$@" $dashmflag |
+ sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ tr ' ' '
+' < "$tmpdepfile" | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+dashXmstdout)
+ # This case only exists to satisfy depend.m4. It is never actually
+ # run, as this mode is specially recognized in the preamble.
+ exit 1
+ ;;
+
+makedepend)
+ "$@" || exit $?
+ # Remove any Libtool call
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+ # X makedepend
+ shift
+ cleared=no
+ for arg in "$@"; do
+ case $cleared in
+ no)
+ set ""; shift
+ cleared=yes ;;
+ esac
+ case "$arg" in
+ -D*|-I*)
+ set fnord "$@" "$arg"; shift ;;
+ # Strip any option that makedepend may not understand. Remove
+ # the object too, otherwise makedepend will parse it as a source file.
+ -*|$object)
+ ;;
+ *)
+ set fnord "$@" "$arg"; shift ;;
+ esac
+ done
+ obj_suffix="`echo $object | sed 's/^.*\././'`"
+ touch "$tmpdepfile"
+ ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ sed '1,2d' "$tmpdepfile" | tr ' ' '
+' | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile" "$tmpdepfile".bak
+ ;;
+
+cpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ "$@" -E |
+ sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+ sed '$ s: \\$::' > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ cat < "$tmpdepfile" >> "$depfile"
+ sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+msvisualcpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout, regardless of -o,
+ # because we must use -o when running libtool.
+ "$@" || exit $?
+ IFS=" "
+ for arg
+ do
+ case "$arg" in
+ "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+ set fnord "$@"
+ shift
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift
+ shift
+ ;;
+ esac
+ done
+ "$@" -E |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ echo " " >> "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+none)
+ exec "$@"
+ ;;
+
+*)
+ echo "Unknown depmode $depmode" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/gcc-3.4-pretty_function b/recipes/glib-1.2/glib-1.2-1.2.10/gcc-3.4-pretty_function
new file mode 100644
index 0000000000..f69102549f
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/gcc-3.4-pretty_function
@@ -0,0 +1,47 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- glib-1.2.10/gstrfuncs.c~gcc-3.4-pretty_function
++++ glib-1.2.10/gstrfuncs.c
+@@ -867,8 +867,7 @@
+ /* beware of positional parameters
+ */
+ case '$':
+- g_warning (G_GNUC_PRETTY_FUNCTION
+- "(): unable to handle positional parameters (%%n$)");
++ g_warning ("%s(): unable to handle positional parameters (%%n$)",G_GNUC_PRETTY_FUNCTION);
+ len += 1024; /* try adding some safety padding */
+ break;
+
+@@ -1034,8 +1033,7 @@
+ /* n . dddddddddddddddddddddddd E +- eeee */
+ conv_len += 1 + 1 + MAX (24, spec.precision) + 1 + 1 + 4;
+ if (spec.mod_extra_long)
+- g_warning (G_GNUC_PRETTY_FUNCTION
+- "(): unable to handle long double, collecting double only");
++ g_warning ("%s(): unable to handle long double, collecting double only",G_GNUC_PRETTY_FUNCTION);
+ #ifdef HAVE_LONG_DOUBLE
+ #error need to implement special handling for long double
+ #endif
+@@ -1077,8 +1075,7 @@
+ conv_done = TRUE;
+ if (spec.mod_long)
+ {
+- g_warning (G_GNUC_PRETTY_FUNCTION
+- "(): unable to handle wide char strings");
++ g_warning ( "%s(): unable to handle wide char strings",G_GNUC_PRETTY_FUNCTION);
+ len += 1024; /* try adding some safety padding */
+ }
+ break;
+@@ -1108,8 +1105,7 @@
+ conv_len += format - spec_start;
+ break;
+ default:
+- g_warning (G_GNUC_PRETTY_FUNCTION
+- "(): unable to handle `%c' while parsing format",
++ g_warning ("%s(): unable to handle `%c' while parsing format",G_GNUC_PRETTY_FUNCTION,
+ c);
+ break;
+ }
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/glib-config-use-pkg-config b/recipes/glib-1.2/glib-1.2-1.2.10/glib-config-use-pkg-config
new file mode 100644
index 0000000000..aaa64f392c
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/glib-config-use-pkg-config
@@ -0,0 +1,72 @@
+--- glib-1.2.10/glib-config.in.orig 2006-06-28 12:28:53.000000000 +0100
++++ glib-1.2.10/glib-config.in 2006-06-28 12:31:33.000000000 +0100
+@@ -28,6 +28,8 @@
+
+ lib_glib=yes
+
++cmd="pkg-config "
++
+ while test $# -gt 0; do
+ case "$1" in
+ -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+@@ -55,20 +57,14 @@
+ echo @GLIB_VERSION@
+ exit 0
+ ;;
+- --cflags)
+- echo_cflags=yes
+- ;;
+- --libs)
+- echo_libs=yes
+- ;;
+- glib)
+- lib_glib=yes
+- ;;
+- gmodule)
+- lib_gmodule=yes
+- ;;
+- gthread)
+- lib_gthread=yes
++ --cflags | --libs)
++ cmd="$cmd $1 "
++ echo_pkgconfig="yes"
++ ;;
++ glib | gmodule | gthread)
++ cmd="$cmd $1 "
++ echo_pkgconfig="yes"
++ module_provided="yes"
+ ;;
+ *)
+ usage 1 1>&2
+@@ -83,26 +79,9 @@
+ if test "$echo_exec_prefix" = "yes"; then
+ echo $exec_prefix
+ fi
+-if test "$echo_cflags" = "yes"; then
+- cflags=""
+- if test "$lib_gthread" = "yes"; then
+- cflags="$cflags @G_THREAD_CFLAGS@"
+- fi
+- echo -I@includedir@/glib-1.2 -I@libdir@/glib/include $includes $cflags
+-fi
+-if test "$echo_libs" = "yes"; then
+- libsp=""
+- libsa=""
+- if test "$lib_glib" = "yes"; then
+- libsp="$libsp -lglib"
+- fi
+- if test "$lib_gthread" = "yes"; then
+- libsp="-lgthread $libsp"
+- libsa="$libsa @G_THREAD_LIBS@"
+- fi
+- if test "$lib_gmodule" = "yes"; then
+- libsp="@G_MODULE_LDFLAGS@ -lgmodule $libsp"
+- libsa="$libsa @G_MODULE_LIBS@"
+- fi
+- echo -L@libdir@ $libsp $libsa
++if test "$echo_pkgconfig" = "yes"; then
++ if test -z "$module_provided" ; then
++ cmd="$cmd glib"
++ fi
++ echo `$cmd`
+ fi
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/glib-reconf-fix b/recipes/glib-1.2/glib-1.2-1.2.10/glib-reconf-fix
new file mode 100644
index 0000000000..8e643c8cf0
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/glib-reconf-fix
@@ -0,0 +1,683 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- glib-1.2.10/configure.in~glib-reconf-fix.patch
++++ glib-1.2.10/configure.in
+@@ -12,12 +12,16 @@
+ # Save this value here, since automake will set cflags later
+ cflags_set=${CFLAGS+set}
+
+-# we rewrite this file
+-rm -f glibconfig-sysdefs.h
++if test $cross_compiling != yes ; then
++ # we rewrite this file
++ rm -f glibconfig-sysdefs.h
++fi
+
+ dnl we need to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they
+ dnl are available for $ac_help expansion (don't we all *love* autoconf?)
+-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
++ifdef([AC_DIVERSION_NOTICE],
++ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
++ [AC_DIVERT_PUSH(NOTICE)])dnl
+ #
+ # The following version number definitions apply to GLib, GModule and GThread
+ # as a whole, so if changes occoured in any of them, they are all
+@@ -72,7 +76,7 @@
+ AC_DEFINE_UNQUOTED(GLIB_BINARY_AGE, $GLIB_BINARY_AGE)
+
+ dnl Initialize libtool
+-AM_PROG_LIBTOOL
++AC_PROG_LIBTOOL
+
+ dnl Initialize maintainer mode
+ AM_MAINTAINER_MODE
+@@ -81,7 +85,9 @@
+
+ dnl figure debugging default, prior to $ac_help setup
+ dnl
+-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
++ifdef([AC_DIVERSION_NOTICE],
++ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
++ [AC_DIVERT_PUSH(NOTICE)])dnl
+ if test `expr $GLIB_MINOR_VERSION \% 2` = 1 ; then
+ debug_default=yes
+ else
+@@ -179,24 +185,26 @@
+ changequote([,])dnl
+
+ dnl DU4 native cc currently needs -std1 for ANSI mode (instead of K&R)
+-AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
+-glib_save_LIBS=$LIBS
+-LIBS="$LIBS -lm"
+-AC_TRY_RUN([#include <math.h>
+- int main (void) { return (log(1) != log(1.)); }],
+- AC_MSG_RESULT(none needed),
+- glib_save_CFLAGS=$CFLAGS
+- CFLAGS="$CFLAGS -std1"
+- AC_TRY_RUN([#include <math.h>
++if test $cross_compiling != yes ; then
++ AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
++ glib_save_LIBS=$LIBS
++ LIBS="$LIBS -lm"
++ AC_TRY_RUN([#include <math.h>
+ int main (void) { return (log(1) != log(1.)); }],
+- AC_MSG_RESULT(-std1),
+- AC_MSG_RESULT()
+- CFLAGS=$glib_save_CFLAGS
+- AC_MSG_WARN(
+- [No ANSI prototypes found in library. (-std1 didn't work.)])
+- )
+-)
+-LIBS=$glib_save_LIBS
++ AC_MSG_RESULT(none needed),
++ glib_save_CFLAGS=$CFLAGS
++ CFLAGS="$CFLAGS -std1"
++ AC_TRY_RUN([#include <math.h>
++ int main (void) { return (log(1) != log(1.)); }],
++ AC_MSG_RESULT(-std1),
++ AC_MSG_RESULT()
++ CFLAGS=$glib_save_CFLAGS
++ AC_MSG_WARN(
++ [No ANSI prototypes found in library. (-std1 didn't work.)])
++ )
++ )
++ LIBS=$glib_save_LIBS
++fi
+
+ dnl NeXTStep cc seems to need this
+ AC_MSG_CHECKING([for extra flags for POSIX compliance])
+@@ -232,9 +240,8 @@
+ dnl AC_C_INLINE is useless to us since it bails out too early, we need to
+ dnl truely know which ones of `inline', `__inline' and `__inline__' are
+ dnl actually supported.
+-AC_MSG_CHECKING(for __inline)
+-AC_CACHE_VAL(glib_cv_has__inline,[
+- AC_TRY_RUN([
++AC_CACHE_CHECK([for __inline],glib_cv_has__inline,[
++ AC_COMPILE_IFELSE([
+ __inline int foo () { return 0; }
+ int main () { return foo (); }
+ ],
+@@ -243,13 +250,11 @@
+ glib_cv_has__inline=no
+ ,)
+ ])
+-AC_MSG_RESULT($glib_cv_has__inline)
+ case x$glib_cv_has__inline in
+-xyes) AC_DEFINE(G_HAVE___INLINE)
++xyes) AC_DEFINE(G_HAVE___INLINE,1,[Have __inline keyword])
+ esac
+-AC_MSG_CHECKING(for __inline__)
+-AC_CACHE_VAL(glib_cv_has__inline__,[
+- AC_TRY_RUN([
++AC_CACHE_CHECK([for __inline__],glib_cv_has__inline__,[
++ AC_COMPILE_IFELSE([
+ __inline__ int foo () { return 0; }
+ int main () { return foo (); }
+ ],
+@@ -258,13 +263,12 @@
+ glib_cv_has__inline__=no
+ ,)
+ ])
+-AC_MSG_RESULT($glib_cv_has__inline__)
+ case x$glib_cv_has__inline__ in
+-xyes) AC_DEFINE(G_HAVE___INLINE__)
++xyes) AC_DEFINE(G_HAVE___INLINE__,1,[Have __inline__ keyword])
+ esac
+-AC_MSG_CHECKING(for inline)
+-AC_CACHE_VAL(glib_cv_hasinline,[
+- AC_TRY_RUN([
++AC_CACHE_CHECK([for inline], glib_cv_hasinline,[
++ AC_COMPILE_IFELSE([
++ #undef inline
+ inline int foo () { return 0; }
+ int main () { return foo (); }
+ ],
+@@ -273,9 +277,8 @@
+ glib_cv_hasinline=no
+ ,)
+ ])
+-AC_MSG_RESULT($glib_cv_hasinline)
+ case x$glib_cv_hasinline in
+-xyes) AC_DEFINE(G_HAVE_INLINE)
++xyes) AC_DEFINE(G_HAVE_INLINE,1,[Have inline keyword])
+ esac
+
+ dnl for bytesex stuff
+@@ -397,20 +400,18 @@
+ AC_MSG_RESULT($glib_working_wctype)
+
+ dnl *** check for sane realloc() ***
+-AC_MSG_CHECKING(whether realloc (NULL,) will work)
+-AC_CACHE_VAL(glib_cv_sane_realloc,[
+- AC_TRY_RUN([
+- #include <stdlib.h>
+- int main() {
+- return realloc (0, sizeof (int)) == 0;
+- }],
+- glib_cv_sane_realloc=yes
+- AC_DEFINE(REALLOC_0_WORKS)
+- ,
+- glib_cv_sane_realloc=no
+- ,)
++AC_CACHE_CHECK([whether realloc (NULL,) will work],glib_cv_sane_realloc,[
++ AC_TRY_RUN([#include <stdlib.h>
++ int main() {
++ return realloc (0, sizeof (int)) == 0;
++ }],
++ [glib_cv_sane_realloc=yes],
++ [glib_cv_sane_realloc=no],
++ [glib_cv_sane_realloc=yes])
+ ])
+-AC_MSG_RESULT($glib_cv_sane_realloc)
++if test x$glib_cv_sane_realloc = xyes; then
++ AC_DEFINE(REALLOC_0_WORKS,1,[whether realloc (NULL,) works])
++fi
+
+
+ dnl **********************
+@@ -418,10 +419,8 @@
+ dnl **********************
+ dnl we currently check for all three va_copy possibilities, so we get
+ dnl all results in config.log for bug reports.
+-AC_MSG_CHECKING(for an implementation of va_copy())
+-AC_CACHE_VAL(glib_cv_va_copy,[
+- AC_TRY_RUN([
+- #include <stdarg.h>
++AC_CACHE_CHECK([for an implementation of va_copy()],glib_cv_va_copy,[
++ AC_LINK_IFELSE([#include <stdarg.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+@@ -434,16 +433,11 @@
+ f (0, 42);
+ return 0;
+ }],
+- glib_cv_va_copy=yes
+- ,
+- glib_cv_va_copy=no
+- ,)
++ [glib_cv_va_copy=yes],
++ [glib_cv_va_copy=no])
+ ])
+-AC_MSG_RESULT($glib_cv_va_copy)
+-AC_MSG_CHECKING(for an implementation of __va_copy())
+-AC_CACHE_VAL(glib_cv___va_copy,[
+- AC_TRY_RUN([
+- #include <stdarg.h>
++AC_CACHE_CHECK([for an implementation of __va_copy()],glib_cv___va_copy,[
++ AC_LINK_IFELSE([#include <stdarg.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+@@ -456,16 +450,23 @@
+ f (0, 42);
+ return 0;
+ }],
+- glib_cv___va_copy=yes
+- ,
+- glib_cv___va_copy=no
+- ,)
++ [glib_cv___va_copy=yes],
++ [glib_cv___va_copy=no])
+ ])
+-AC_MSG_RESULT($glib_cv___va_copy)
+-AC_MSG_CHECKING(whether va_lists can be copied by value)
+-AC_CACHE_VAL(glib_cv_va_val_copy,[
+- AC_TRY_RUN([
+- #include <stdarg.h>
++
++if test "x$glib_cv_va_copy" = "xyes"; then
++ g_va_copy_func=va_copy
++else if test "x$glib_cv___va_copy" = "xyes"; then
++ g_va_copy_func=__va_copy
++fi
++fi
++
++if test -n "$g_va_copy_func"; then
++ AC_DEFINE_UNQUOTED(G_VA_COPY,$g_va_copy_func,[A 'va_copy' style function])
++fi
++
++AC_CACHE_CHECK([whether va_lists can be copied by value],glib_cv_va_val_copy,[
++ AC_TRY_RUN([#include <stdarg.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+@@ -478,21 +479,14 @@
+ f (0, 42);
+ return 0;
+ }],
+- glib_cv_va_val_copy=yes
+- ,
+- glib_cv_va_val_copy=no
+- ,)
++ [glib_cv_va_val_copy=yes],
++ [glib_cv_va_val_copy=no],
++ [glib_cv_va_val_copy=yes])
+ ])
+-if test "x$glib_cv_va_copy" = "xyes"; then
+- AC_DEFINE(G_VA_COPY, va_copy)
+-else if test "x$glib_cv___va_copy" = "xyes"; then
+- AC_DEFINE(G_VA_COPY, __va_copy)
+-fi
+-fi
++
+ if test "x$glib_cv_va_val_copy" = "xno"; then
+- AC_DEFINE(G_VA_COPY_AS_ARRAY)
++ AC_DEFINE(G_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
+ fi
+-AC_MSG_RESULT($glib_cv_va_val_copy)
+
+
+ dnl ***********************
+@@ -506,20 +500,18 @@
+ G_MODULE_HAVE_DLERROR=0
+ dnl *** dlopen() and dlsym() in system libraries
+ if test -z "$G_MODULE_IMPL"; then
+- AC_CHECK_FUNC(dlopen,
+- AC_CHECK_FUNC(dlsym,
+- G_MODULE_IMPL=G_MODULE_IMPL_DL
+- ,)
+- ,)
++ AC_CHECK_FUNC(dlopen,
++ [AC_CHECK_FUNC(dlsym,
++ [G_MODULE_IMPL=G_MODULE_IMPL_DL],[])],
++ [])
+ fi
+ dnl *** dlopen() and dlsym() in libdl
+ if test -z "$G_MODULE_IMPL"; then
+ AC_CHECK_LIB(dl, dlopen,
+- AC_CHECK_LIB(dl, dlsym,
+- G_MODULE_LIBS=-ldl
+- G_MODULE_IMPL=G_MODULE_IMPL_DL
+- ,)
+- ,)
++ [AC_CHECK_LIB(dl, dlsym,
++ [G_MODULE_LIBS=-ldl
++ G_MODULE_IMPL=G_MODULE_IMPL_DL],[])],
++ [])
+ fi
+ dnl *** shl_load() in libdld (HP-UX)
+ if test -z "$G_MODULE_IMPL"; then
+@@ -556,40 +548,43 @@
+ LIBS="$LIBS $G_MODULE_LIBS"
+ LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
+ dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness
+- AC_CACHE_CHECK([for RTLD_GLOBAL brokenness],
+- glib_cv_rtldglobal_broken,[
+- AC_TRY_RUN([
+- #include <dlfcn.h>
+- #ifndef RTLD_GLOBAL
+- #define RTLD_GLOBAL 0
+- #endif
+- #ifndef RTLD_LAZY
+- #define RTLD_LAZY 0
+- #endif
+- int pthread_create;
+- int main () {
+- void *handle, *global, *local;
+- global = &pthread_create;
+- handle = dlopen ("libpthread.so", RTLD_GLOBAL | RTLD_LAZY);
+- if (!handle) return 0;
+- local = dlsym (handle, "pthread_create");
+- return global == local;
+- }],
+- [glib_cv_rtldglobal_broken=no],
+- [glib_cv_rtldglobal_broken=yes],
+- [])
+- rm -f plugin.c plugin.o plugin.lo
+- ])
+- if test "x$glib_cv_rtldglobal_broken" = "xyes"; then
+- G_MODULE_BROKEN_RTLD_GLOBAL=1
+- else
+- G_MODULE_BROKEN_RTLD_GLOBAL=0
+- fi
+-dnl *** check whether we need preceeding underscores
+- AC_MSG_CHECKING(for preceeding underscore in symbols)
+- AC_CACHE_VAL(glib_cv_uscore,[
++ echo "void glib_plugin_test(void) { }" > plugin.c
++ ${SHELL} ./libtool --mode=compile ${CC} -shared \
++ -export-dynamic -o plugin.o plugin.c 2>&1 >/dev/null
++ AC_CACHE_CHECK([for RTLD_GLOBAL brokenness],
++ glib_cv_rtldglobal_broken,[
+ AC_TRY_RUN([
+- #include <dlfcn.h>
++#include <dlfcn.h>
++#ifndef RTLD_GLOBAL
++# define RTLD_GLOBAL 0
++#endif
++#ifndef RTLD_LAZY
++# define RTLD_LAZY 0
++#endif
++int glib_plugin_test;
++int main () {
++ void *handle, *global, *local;
++ global = &glib_plugin_test;
++ handle = dlopen ("./.libs/plugin.o", RTLD_GLOBAL | RTLD_LAZY);
++ if (!handle) return 0;
++ local = dlsym (handle, "glib_plugin_test");
++ return global == local;
++} ],
++ [glib_cv_rtldglobal_broken=no],
++ [glib_cv_rtldglobal_broken=yes],
++ [glib_cv_rtldglobal_broken=no])
++ rm -f plugin.c plugin.o plugin.lo .libs/plugin.o
++ rmdir .libs 2>/dev/null
++ ])
++ if test "x$glib_cv_rtldglobal_broken" = "xyes"; then
++ G_MODULE_BROKEN_RTLD_GLOBAL=1
++ else
++ G_MODULE_BROKEN_RTLD_GLOBAL=0
++ fi
++dnl *** check whether we need preceeding underscores
++ AC_CACHE_CHECK([for preceeding underscore in symbols],
++ glib_cv_uscore,[
++ AC_TRY_RUN([#include <dlfcn.h>
+ int glib_underscore_test (void) { return 42; }
+ int main() {
+ void *f1 = (void*)0, *f2 = (void*)0, *handle;
+@@ -599,12 +594,12 @@
+ f2 = dlsym (handle, "_glib_underscore_test");
+ } return (!f2 || f1);
+ }],
+- glib_cv_uscore=yes,
+- glib_cv_uscore=no,
+- )
+- rm -f plugin.c plugin.o plugin.lo
++ [glib_cv_uscore=yes],
++ [glib_cv_uscore=no],
++ [])
++ rm -f plugin.c plugin.$ac_objext plugin.lo
+ ])
+- AC_MSG_RESULT($glib_cv_uscore)
++ AC_MSG_RESULT($glib_cv_uscore)
+ if test "x$glib_cv_uscore" = "xyes"; then
+ G_MODULE_NEED_USCORE=1
+ else
+@@ -614,8 +609,8 @@
+ LDFLAGS="$LDFLAGS_orig"
+ dnl *** check for having dlerror()
+ AC_CHECK_FUNC(dlerror,
+- G_MODULE_HAVE_DLERROR=1,
+- G_MODULE_HAVE_DLERROR=0)
++ [G_MODULE_HAVE_DLERROR=1],
++ [G_MODULE_HAVE_DLERROR=0])
+ LIBS="$LIBS_orig"
+ fi
+ dnl *** done, have e got an implementation?
+@@ -822,100 +817,168 @@
+ dnl check for mt safe function variants
+ dnl ***********************************
+
+-if test x"$have_threads" != xnone; then
++if test x"$have_threads" != xno; then
+ glib_save_LIBS="$LIBS"
+- glib_save_CFLAGS="$CFLAGS"
+ # we are not doing the following for now, as this might require glib
+ # to always be linked with the thread libs on some platforms.
+ # LIBS="$LIBS $G_THREAD_LIBS"
+- CFLAGS="$CFLAGS $G_THREAD_CFLAGS"
+- AC_CHECK_FUNCS(localtime_r rand_r)
++ AC_CHECK_FUNCS(localtime_r)
+ if test "$ac_cv_header_pwd_h" = "yes"; then
+- AC_MSG_CHECKING([for getpwuid_r])
+- AC_CACHE_VAL(ac_cv_func_getpwuid_r,
+- [AC_TRY_RUN([#include <errno.h>
+- int main () { char buffer[10000], *pointer;
+- char getpwuid_r (long, void*, void*,
+- int, void*);
+- int error;
+- errno = 0;
+- error = getpwuid_r (0, &buffer, &buffer,
+- sizeof (buffer), &pointer);
+- return errno == ENOSYS || error == ENOSYS;}],
+- [ac_cv_func_getpwuid_r=yes],
+- [ac_cv_func_getpwuid_r=no])])
+- if test "$ac_cv_func_getpwuid_r" = yes; then
+- AC_MSG_RESULT(yes)
++ AC_CACHE_CHECK([for posix getpwuid_r],
++ ac_cv_func_posix_getpwuid_r,
++ [AC_TRY_RUN([
++#include <errno.h>
++#include <pwd.h>
++int main () {
++ char buffer[10000];
++ struct passwd pwd, *pwptr = &pwd;
++ int error;
++ errno = 0;
++ error = getpwuid_r (0, &pwd, buffer,
++ sizeof (buffer), &pwptr);
++ return (error < 0 && errno == ENOSYS)
++ || error == ENOSYS;
++} ],
++ [ac_cv_func_posix_getpwuid_r=yes],
++ [ac_cv_func_posix_getpwuid_r=no])])
++ if test "$ac_cv_func_posix_getpwuid_r" = yes; then
++ AC_DEFINE(HAVE_POSIX_GETPWUID_R,1,
+ AC_DEFINE(HAVE_GETPWUID_R)
++ [Have POSIX function getpwuid_r])
+ else
+- AC_MSG_RESULT(no)
+- fi
+- if test "$ac_cv_func_getpwuid_r" = "yes"; then
+- AC_MSG_CHECKING(whether getpwuid_r is posix like)
+- # The signature for the POSIX version is:
+- # int getpwuid_r(uid_t, struct passwd *, char *, size_t, struct passwd **)
+- AC_TRY_COMPILE([#include <pwd.h>
+- #include <sys/types.h>
+- #include <stdlib.h>],
+- [getpwuid_r((uid_t)0, NULL, NULL, (size_t)0, NULL);],
+- [AC_DEFINE(HAVE_GETPWUID_R_POSIX)
+- AC_MSG_RESULT(yes)],
+- [AC_MSG_RESULT(no)])
++ AC_CACHE_CHECK([for nonposix getpwuid_r],
++ ac_cv_func_nonposix_getpwuid_r,
++ [AC_TRY_LINK([#include <pwd.h>],
++ [char buffer[10000];
++ struct passwd pwd;
++ getpwuid_r (0, &pwd, buffer,
++ sizeof (buffer));],
++ [AC_DEFINE(HAVE_GETPWUID_R_POSIX)
++ AC_MSG_RESULT(yes)],
++ [AC_MSG_RESULT(no)])])
++ if test "$ac_cv_func_nonposix_getpwuid_r" = yes; then
++ AC_DEFINE(HAVE_NONPOSIX_GETPWUID_R,1,
++ [Have non-POSIX function getpwuid_r])
++ fi
+ fi
+ fi
++ LIBS="$G_THREAD_LIBS $LIBS"
+ if test x"$have_threads" = xposix; then
+- LIBS="$LIBS $G_THREAD_LIBS"
+- AC_MSG_CHECKING(whether pthread_getspecific is posix like)
+- # PCThreads has pthread_getspecific(pthread_key_t, void **);
+- AC_TRY_COMPILE([#include <pthread.h>],
+- [pthread_getspecific(0,NULL);],
+- [AC_MSG_RESULT(no)],
+- [AC_MSG_RESULT(yes)
+- AC_DEFINE(HAVE_PTHREAD_GETSPECIFIC_POSIX)])
+- AC_MSG_CHECKING(whether pthread_mutex_trylock is posix like)
+- # DCE Threads return 1 as success, posix 0. what a mess.
+- AC_TRY_RUN([#include <pthread.h>
+- pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+- int main () {
+- return !pthread_mutex_trylock (&mutex); }],
+- [AC_MSG_RESULT(no)],
+- [AC_MSG_RESULT(yes)
+- AC_DEFINE(HAVE_PTHREAD_MUTEX_TRYLOCK_POSIX)])
+- AC_MSG_CHECKING(whether pthread_cond_timedwait is posix like)
+- # DCE Threads return -1 as failure, posix ETIMEDOUT.
+- AC_TRY_RUN([#include <pthread.h>
+- int main () {
+- pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+- pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
+- struct timeval tval;
+- struct timespec tspec;
+- gettimeofday (&tval, NULL);
+- tspec.tv_sec = tval.tv_sec;
+- tspec.tv_nsec = 0;
+- return pthread_cond_timedwait (&cond,&mutex,&tspec)
+- != -1;}],
+- [AC_MSG_RESULT(no)],
++ glib_save_CPPFLAGS="$CPPFLAGS"
++ CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES"
++ dnl we might grow sizeof(pthread_t) later on, so use a dummy name here
++ GLIB_SIZEOF([#include <pthread.h>], pthread_t, system_thread)
++ # This is not AC_CHECK_FUNC to also work with function
++ # name mangling in header files.
++ AC_MSG_CHECKING(for pthread_attr_setstacksize)
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_attr_t t; pthread_attr_setstacksize(&t,0)],
+ [AC_MSG_RESULT(yes)
+- AC_DEFINE(HAVE_PTHREAD_COND_TIMEDWAIT_POSIX)])
++ AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE,1,
++ [Have function pthread_attr_setstacksize])],
++ [AC_MSG_RESULT(no)])
++ AC_MSG_CHECKING(for minimal/maximal thread priority)
++ if test x"$posix_priority_min" = x; then
++ AC_EGREP_CPP(PX_PRIO_MIN,[#include <pthread.h>
++ PX_PRIO_MIN],,[
++ posix_priority_min=PX_PRIO_MIN
++ posix_priority_max=PX_PRIO_MAX])
++ fi
++ if test x"$posix_priority_min" = x; then
++ # AIX
++ AC_EGREP_CPP(PTHREAD_PRIO_MIN,[#include <pthread.h>
++ PTHREAD_PRIO_MIN],,[
++ posix_priority_min=PTHREAD_PRIO_MIN
++ posix_priority_max=PTHREAD_PRIO_MAX])
++ fi
++ if test x"$posix_priority_min" = x; then
++ AC_EGREP_CPP(PRI_OTHER_MIN,[#include <pthread.h>
++ PRI_OTHER_MIN],,[
++ posix_priority_min=PRI_OTHER_MIN
++ posix_priority_max=PRI_OTHER_MAX])
++ fi
++ if test x"$posix_priority_min" = x; then
++ AC_MSG_RESULT(none found)
++ AC_MSG_WARN($POSIX_NO_PRIORITIES)
++ posix_priority_min=-1
++ posix_priority_max=-1
++ else
++ AC_MSG_RESULT($posix_priority_min/$posix_priority_max)
++ AC_MSG_CHECKING(for pthread_setschedparam)
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t t; pthread_setschedparam(t, 0, NULL)],
++ [AC_MSG_RESULT(yes)
++ AC_DEFINE_UNQUOTED(POSIX_MIN_PRIORITY,$posix_priority_min,[Minimum POSIX RT priority])
++ AC_DEFINE_UNQUOTED(POSIX_MAX_PRIORITY,$posix_priority_max,[Maximum POSIX RT priority])],
++ [AC_MSG_RESULT(no)
++ AC_MSG_WARN($POSIX_NO_PRIORITIES)])
++ fi
++ posix_yield_func=none
++ AC_MSG_CHECKING(for posix yield function)
++ for yield_func in sched_yield pthread_yield_np pthread_yield \
++ thr_yield; do
++ AC_TRY_LINK([#include <pthread.h>],
++ [$yield_func()],
++ [posix_yield_func="$yield_func"
++ break])
++ done
++ if test x"$posix_yield_func" = xnone; then
++ AC_MSG_RESULT(none found)
++ AC_MSG_WARN($POSIX_NO_YIELD)
++ posix_yield_func="g_usleep(1000)"
++ else
++ AC_MSG_RESULT($posix_yield_func)
++ posix_yield_func="$posix_yield_func()"
++ fi
++ AC_DEFINE_UNQUOTED(POSIX_YIELD_FUNC,$posix_yield_func,[The POSIX RT yield function])
++ CPPFLAGS="$glib_save_CPPFLAGS"
++
++ elif test x"$have_threads" = xwin32; then
++ # It's a pointer to a private struct
++ GLIB_SIZEOF(,struct _GThreadData *, system_thread)
++ elif test x"$have_threads" = xsolaris; then
++ GLIB_SIZEOF([#include <thread.h>], thread_t, system_thread)
+ fi
++
+ LIBS="$glib_save_LIBS"
+- CFLAGS="$glib_save_CFLAGS"
+-fi
+
+-if test "x$enable_threads" = "xyes"; then
+- if test "$ac_cv_func_getpwuid_r" != "yes"; then
++ # now spit out all the warnings.
++ if test "$ac_cv_func_posix_getpwuid_r" != "yes" &&
++ test "$ac_cv_func_nonposix_getpwuid_r" != "yes"; then
+ AC_MSG_WARN($FUNC_NO_GETPWUID_R)
+ fi
+ if test "$ac_cv_func_localtime_r" != "yes"; then
+ AC_MSG_WARN($FUNC_NO_LOCALTIME_R)
+ fi
++fi
++
++if test x"$glib_cv_sizeof_system_thread" = x; then
++ # use a pointer as a fallback.
++ GLIB_SIZEOF(,void *, system_thread)
+ fi
+
+-AC_DEFINE_UNQUOTED(G_THREAD_SOURCE,"gthread-$have_threads.c")
++#
++# Hack to deal with:
++#
++# a) GCC < 3.3 for Linux doesn't include -lpthread when
++# building shared libraries with linux.
++# b) libtool doesn't recognize -pthread as a library dependency.
++#
++case $host in
++ *-*-linux*)
++ G_THREAD_LIBS_FOR_GTHREAD="`echo $G_THREAD_LIBS | sed s/-pthread/-lpthread/`"
++ ;;
++ *)
++ G_THREAD_LIBS_FOR_GTHREAD="`echo $G_THREAD_LIBS | sed s/-pthread/-Wc,-pthread/`"
++ ;;
++esac
++
++AC_DEFINE_UNQUOTED(G_THREAD_SOURCE,"gthread-$have_threads.c",
++ [Source file containing theread implementation])
+ AC_SUBST(G_THREAD_CFLAGS)
+ AC_SUBST(G_THREAD_LIBS)
+-
+-CFLAGS="$CFLAGS $G_THREAD_CFLAGS"
++AC_SUBST(G_THREAD_LIBS_FOR_GTHREAD)
++AC_SUBST(G_THREAD_LIBS_EXTRA)
+
+ dnl **********************************************
+ dnl *** GDefaultMutex setup and initialization ***
+@@ -940,13 +1003,14 @@
+ dnl ****************************************
+ dnl *** GLib POLL* compatibility defines ***
+ dnl ****************************************
+-GLIB_SYSDEFS(
+-[#include <sys/types.h>
+-#include <sys/poll.h>],
+- POLLIN:1 POLLOUT:4 POLLPRI:2 POLLERR:8 POLLHUP:16 POLLNVAL:32,
+- glibconfig-sysdefs.h,
+- =)
+-
++if test $cross_compiling != yes ; then
++ GLIB_SYSDEFS(
++ [#include <sys/types.h>
++ #include <sys/poll.h>],
++ POLLIN:1 POLLOUT:4 POLLPRI:2 POLLERR:8 POLLHUP:16 POLLNVAL:32,
++ glibconfig-sysdefs.h,
++ =)
++fi
+
+ dnl ******************************
+ dnl *** output the whole stuff ***
+--- glib-1.2.10/gmodule/Makefile.am~glib-reconf-fix.patch
++++ glib-1.2.10/gmodule/Makefile.am
+@@ -42,7 +42,7 @@
+ libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ # $(libglib)
+
+ noinst_PROGRAMS = testgmodule
+-testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
++testgmodule_LDFLAGS = @G_MODULE_LDFLAGS@
+ testgmodule_LDADD = libgmodule.la $(libglib) @G_MODULE_LIBS@
+
+ .PHONY: files release
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/glib.m4-use-pkgconfig b/recipes/glib-1.2/glib-1.2-1.2.10/glib.m4-use-pkgconfig
new file mode 100644
index 0000000000..f1f5019d2b
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/glib.m4-use-pkgconfig
@@ -0,0 +1,2 @@
+patch AC_PATH_GLIB to use pkgconfig rather than glib-config, and glib-config to use pkgconfig
+
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/glibconfig-sysdefs.h b/recipes/glib-1.2/glib-1.2-1.2.10/glibconfig-sysdefs.h
new file mode 100644
index 0000000000..1329e7f21c
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/glibconfig-sysdefs.h
@@ -0,0 +1,6 @@
+#define GLIB_SYSDEF_POLLIN =1
+#define GLIB_SYSDEF_POLLOUT =4
+#define GLIB_SYSDEF_POLLPRI =2
+#define GLIB_SYSDEF_POLLERR =8
+#define GLIB_SYSDEF_POLLHUP =16
+#define GLIB_SYSDEF_POLLNVAL =32
diff --git a/recipes/glib-1.2/glib-1.2-1.2.10/posix-conf-changes b/recipes/glib-1.2/glib-1.2-1.2.10/posix-conf-changes
new file mode 100644
index 0000000000..c4dab42542
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-1.2.10/posix-conf-changes
@@ -0,0 +1,44 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- glib-1.2.10/gthread/gthread-posix.c~posix-conf-changes
++++ glib-1.2.10/gthread/gthread-posix.c
+@@ -76,7 +76,7 @@
+ int result;
+
+ result = pthread_mutex_trylock ((pthread_mutex_t *) mutex);
+-#ifdef HAVE_PTHREAD_MUTEX_TRYLOCK_POSIX
++#ifdef G_THREADS_IMPL_POSIX
+ if (result == EBUSY)
+ return FALSE;
+ posix_check_for_error (result);
+@@ -127,7 +127,7 @@
+ result = pthread_cond_timedwait ((pthread_cond_t *) cond,
+ (pthread_mutex_t *) entered_mutex,
+ &end_time);
+-#ifdef HAVE_PTHREAD_COND_TIMEDWAIT_POSIX
++#ifdef G_THREADS_IMPL_POSIX
+ timed_out = (result == ETIMEDOUT);
+ #else
+ timed_out = (result == -1 && errno == EAGAIN);
+@@ -170,15 +170,15 @@
+ {
+ if (!private_key)
+ return NULL;
+-#ifdef HAVE_PTHREAD_GETSPECIFIC_POSIX
++#ifdef G_THREADS_IMPL_POSIX
+ return pthread_getspecific (*(pthread_key_t *) private_key);
+-#else /* HAVE_PTHREAD_GETSPECIFIC_POSIX */
++#else /* G_THREADS_IMPL_DCE */
+ {
+ void* data;
+ pthread_getspecific (*(pthread_key_t *) private_key, &data);
+ return data;
+ }
+-#endif /* HAVE_PTHREAD_GETSPECIFIC_POSIX */
++#endif /* G_THREADS_IMPL_POSIX*/
+ }
+
+ static GThreadFunctions g_thread_functions_for_glib_use_default =
diff --git a/recipes/glib-1.2/glib-1.2-native_1.2.10.bb b/recipes/glib-1.2/glib-1.2-native_1.2.10.bb
new file mode 100644
index 0000000000..74e562d47c
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2-native_1.2.10.bb
@@ -0,0 +1,46 @@
+PR = "r0"
+LICENSE = "LGPL"
+DESCRIPTION = "GLib 1.2 is a deprecated libray to \
+provide support for old glib 1.2 based applications"
+SECTION = "libs"
+PRIORITY = "optional"
+DEPENDS = ""
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glib-1.2-${PV}"
+
+EXTRA_OECONF = "--disable-debug"
+
+SRC_URI = "ftp://ftp.gtk.org/pub/gtk/v1.2/glib-${PV}.tar.gz \
+ file://glibconfig-sysdefs.h \
+ file://depcomp \
+ file://glib-reconf-fix;patch=1 \
+ file://posix-conf-changes;patch=1 \
+ file://gcc-3.4-pretty_function;patch=1"
+
+
+S = "${WORKDIR}/glib-${PV}"
+
+inherit autotools pkgconfig native gettext
+
+acpaths = ""
+do_configure_prepend () {
+ install -m 0644 ${WORKDIR}/glibconfig-sysdefs.h .
+ install -m 0644 ${WORKDIR}/depcomp .
+ rm -f ltconfig acinclude.m4 libtool ltmain.sh
+}
+
+
+do_stage () {
+ oe_libinstall -so libglib ${STAGING_LIBDIR}
+ oe_libinstall -so -C gmodule libgmodule ${STAGING_LIBDIR}
+ oe_libinstall -so -C gthread libgthread ${STAGING_LIBDIR}
+ autotools_stage_includes
+ install -d ${STAGING_INCDIR}/glib-1.2
+ install -m 0755 ${S}/glibconfig.h ${STAGING_INCDIR}/glib-1.2/glibconfig.h
+ install -d ${STAGING_DATADIR}/aclocal
+ install -m 0644 ${S}/glib.m4 ${STAGING_DATADIR}/aclocal/glib-1.2.m4
+}
+
+do_install () {
+ :
+}
diff --git a/recipes/glib-1.2/glib-1.2_1.2.10.bb b/recipes/glib-1.2/glib-1.2_1.2.10.bb
new file mode 100644
index 0000000000..77cbee2a14
--- /dev/null
+++ b/recipes/glib-1.2/glib-1.2_1.2.10.bb
@@ -0,0 +1,44 @@
+DESCRIPTION = "GLib 1.2 is a deprecated libray to \
+provide support for old glib 1.2 based applications"
+SECTION = "libs"
+PRIORITY = "optional"
+LICENSE = "LGPL"
+DEPENDS = "glib-1.2-native"
+PR = "r2"
+
+LEAD_SONAME = "libglib-1.2.*"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glib-1.2-${PV}"
+
+EXTRA_OECONF = "--disable-debug"
+
+SRC_URI = "ftp://ftp.gtk.org/pub/gtk/v1.2/glib-${PV}.tar.gz \
+ file://glibconfig-sysdefs.h \
+ file://depcomp \
+ file://glib-reconf-fix;patch=1 \
+ file://posix-conf-changes;patch=1 \
+ file://glib-config-use-pkg-config;patch=1 \
+ file://gcc-3.4-pretty_function;patch=1"
+
+S = "${WORKDIR}/glib-${PV}"
+
+inherit autotools pkgconfig binconfig
+
+acpaths = ""
+do_configure_prepend () {
+ install -m 0644 ${WORKDIR}/glibconfig-sysdefs.h .
+ install -m 0644 ${WORKDIR}/depcomp .
+ rm -f ltconfig acinclude.m4 libtool ltmain.sh
+}
+
+do_stage () {
+ oe_libinstall -so libglib ${STAGING_LIBDIR}
+ oe_libinstall -so -C gmodule libgmodule ${STAGING_LIBDIR}
+ oe_libinstall -so -C gthread libgthread ${STAGING_LIBDIR}
+ autotools_stage_includes
+ install -d ${STAGING_INCDIR}/glib-1.2
+ install -m 0644 glibconfig.h glib.h ${STAGING_INCDIR}/glib-1.2/
+ install -d ${STAGING_DATADIR}/aclocal
+ install -m 0644 ${S}/glib.m4 ${STAGING_DATADIR}/aclocal/glib-1.2.m4
+}
+