glib-2.0 2.20.3: added forgotten patches
authorMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Wed, 10 Feb 2010 13:39:48 +0000 (14:39 +0100)
committerMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Wed, 10 Feb 2010 17:28:50 +0000 (18:28 +0100)
Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
recipes/glib-2.0/glib-2.0-2.20.3/atomic-thumb.patch [new file with mode: 0644]
recipes/glib-2.0/glib-2.0-2.20.3/configure-libtool.patch [new file with mode: 0644]

diff --git a/recipes/glib-2.0/glib-2.0-2.20.3/atomic-thumb.patch b/recipes/glib-2.0/glib-2.0-2.20.3/atomic-thumb.patch
new file mode 100644 (file)
index 0000000..edb6f35
--- /dev/null
@@ -0,0 +1,56 @@
+# gatomic.c uses SWP, which doesn't work in Thumb mode.
+# Put that source file into a separate convenience library which is always built as ARM.
+
+---
+ glib/Makefile.am |   11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+--- glib-2.20.3.orig/glib/Makefile.am
++++ glib-2.20.3/glib/Makefile.am
+@@ -78,10 +78,11 @@ BUILT_EXTRA_DIST =                 \
+       glib.rc                 \
+       galias.h                \
+       galiasdef.c
+ lib_LTLIBRARIES = libglib-2.0.la
++noinst_LTLIBRARIES = libgatomic.la
+ if OS_WIN32_AND_DLL_COMPILATION
+ if MS_LIB_AVAILABLE
+ noinst_DATA = glib-2.0.lib
+@@ -94,14 +95,18 @@ install-ms-lib:
+       $(install_ms_lib_cmd)
+ uninstall-ms-lib:
+       $(uninstall_ms_lib_cmd)
++libgatomic_la_CFLAGS = $(CFLAGS) -mno-thumb
++
++libgatomic_la_SOURCES =                \
++       gatomic.c
++
+ libglib_2_0_la_SOURCES =      \
+       garray.c                \
+       gasyncqueue.c           \
+-      gatomic.c               \
+       gbacktrace.c            \
+       gbase64.c               \
+       gbookmarkfile.c         \
+       gbsearcharray.h         \
+       gcache.c                \
+@@ -286,12 +291,12 @@ endif
+ else
+ pcre_lib =
+ pcre_inc =
+ endif
+-libglib_2_0_la_LIBADD = libcharset/libcharset.la $(printf_la) @GIO@ @GSPAWN@ @PLATFORMDEP@ @ICONV_LIBS@ @G_LIBS_EXTRA@ $(pcre_lib)
+-libglib_2_0_la_DEPENDENCIES = libcharset/libcharset.la $(printf_la) @GIO@ @GSPAWN@ @PLATFORMDEP@ $(glib_win32_res) $(glib_def)
++libglib_2_0_la_LIBADD = libcharset/libcharset.la $(printf_la) @GIO@ @GSPAWN@ @PLATFORMDEP@ @ICONV_LIBS@ @G_LIBS_EXTRA@ $(pcre_lib) libgatomic.la
++libglib_2_0_la_DEPENDENCIES = libcharset/libcharset.la $(printf_la) @GIO@ @GSPAWN@ @PLATFORMDEP@ $(glib_win32_res) $(glib_def) libgatomic.la
+ libglib_2_0_la_LDFLAGS = \
+        $(glib_win32_res_ldflag) \
+       -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
+       -export-dynamic $(no_undefined) $(export_symbols)
diff --git a/recipes/glib-2.0/glib-2.0-2.20.3/configure-libtool.patch b/recipes/glib-2.0/glib-2.0-2.20.3/configure-libtool.patch
new file mode 100644 (file)
index 0000000..6056f2f
--- /dev/null
@@ -0,0 +1,45 @@
+---
+ configure.in |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- glib-2.20.3.orig/configure.in
++++ glib-2.20.3/configure.in
+@@ -1302,11 +1302,11 @@ G_MODULE_PLUGIN_LIBS=
+ if test x"$glib_native_win32" = xyes; then
+   dnl No use for this on Win32
+   G_MODULE_LDFLAGS=
+ else
+   export SED
+-  G_MODULE_LDFLAGS=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
++  G_MODULE_LDFLAGS=`($host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
+ fi
+ dnl G_MODULE_IMPL= don't reset, so cmd-line can override
+ G_MODULE_NEED_USCORE=0
+ G_MODULE_BROKEN_RTLD_GLOBAL=0
+ G_MODULE_HAVE_DLERROR=0
+@@ -1367,11 +1367,11 @@ if test "$G_MODULE_IMPL" = "G_MODULE_IMP
+       LDFLAGS_orig="$LDFLAGS"
+       LIBS="$G_MODULE_LIBS $LIBS"
+       LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
+ dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness
+       echo "void glib_plugin_test(void) { }" > plugin.c
+-      ${SHELL} ./libtool --mode=compile ${CC} -shared \
++      ${SHELL} $host_alias-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>
+@@ -1441,11 +1441,11 @@ else
+         G_MODULE_SUPPORTED=true
+ fi
+ AC_MSG_CHECKING(for the suffix of module shared libraries)
+ export SED
+-shrext_cmds=`./libtool --config | grep '^shrext_cmds='`
++shrext_cmds=`$host_alias-libtool --config | grep '^shrext_cmds='`
+ eval $shrext_cmds
+ module=yes eval std_shrext=$shrext_cmds
+ # chop the initial dot
+ glib_gmodule_suffix=`echo $std_shrext | sed 's/^\.//'`
+ AC_MSG_RESULT(.$glib_gmodule_suffix)