pkgsrc/devel/glib2/patches/patch-aa
prlw1 5a83cb4ec4 Update glib2 to 2.54.1
glib-genmarshal and glib-menums have been ported to python. To keep
glib2 a python-free zone, these have been moved with gdbus-codegen
to py-glib2-tools.

Packages needing one of those tools to build can include
devel/glib2/buildtools.mk

The licence has been changed from LGPLv2+ to LGPLv2.1+.

A full changelog is available at:
https://git.gnome.org/browse/glib/tree/NEWS?h=2.54.1
2017-10-13 15:35:10 +00:00

237 lines
6.4 KiB
Text

$NetBSD: patch-aa,v 1.60 2017/10/13 15:35:10 prlw1 Exp $
- solaris sun studio check and fix
- use pkgsrc libtool
- broken dlopen(NULL,0) detection and workaround
http://bugzilla.gnome.org/show_bug.cgi?id=140329
--- configure.orig 2017-06-22 13:16:20.000000000 +0000
+++ configure
@@ -736,6 +736,7 @@ GIO
GSPAWN
GLIB_DEBUG_FLAGS
G_MODULE_NEED_USCORE
+G_MODULE_BROKEN_DLOPEN_NULL
G_MODULE_BROKEN_RTLD_GLOBAL
G_MODULE_HAVE_DLERROR
G_MODULE_LDFLAGS
@@ -21652,6 +21653,8 @@ else
# ifdef _MSC_VER
# include <malloc.h>
# define alloca _alloca
+# elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
+# include <stdlib.h>
# else
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
@@ -22487,8 +22490,8 @@ else
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler" >&5
-$as_echo_n "checking whether using Sun Studio C compiler... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler visibility" >&5
+$as_echo_n "checking whether using Sun Studio C compiler visibility... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#if defined(__SUNPRO_C) || (__SUNPRO_C >= 0x550)
@@ -24302,16 +24305,48 @@ fi
case $host in
*-*-solaris* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler with C99" >&5
+$as_echo_n "checking whether using Sun Studio C compiler with C99... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if defined(__STDC_VERSION__) || (__STDC_VERSION__ - 0 >= 199901L)
+#else
+# include "error: this is STD C99."
+#endif
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ g_have_sunstudio_c99=yes
+else
+ g_have_sunstudio_c99=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $g_have_sunstudio_c99" >&5
+$as_echo "$g_have_sunstudio_c99" >&6; }
+ if test $g_have_sunstudio_c99 = yes; then
+
+$as_echo "#define _XOPEN_SOURCE 600" >>confdefs.h
+
+ else
$as_echo "#define _XOPEN_SOURCE_EXTENDED 1" >>confdefs.h
$as_echo "#define _XOPEN_SOURCE 2" >>confdefs.h
+ fi
+
$as_echo "#define __EXTENSIONS__ 1" >>confdefs.h
- ;;
+ ;;
esac
if test "$ac_cv_func_statfs" = yes; then :
@@ -25383,6 +25418,7 @@ else
fi
G_MODULE_NEED_USCORE=0
G_MODULE_BROKEN_RTLD_GLOBAL=0
+G_MODULE_BROKEN_DLOPEN_NULL=0
G_MODULE_HAVE_DLERROR=0
if test -z "$G_MODULE_IMPL"; then
case "$host" in
@@ -25508,9 +25544,9 @@ if test "$G_MODULE_IMPL" = "G_MODULE_IM
LIBS="$G_MODULE_LIBS $LIBS"
LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
echo "void glib_plugin_test(void) { }" > plugin.c
- ${SHELL} ./libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
+ ${SHELL} libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
${CPPFLAGS} -c -o plugin.lo plugin.c >/dev/null 2>&1
- ${SHELL} ./libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
+ ${SHELL} libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
${LDFLAGS} -module -o plugin.la -export-dynamic \
-shrext ".o" -avoid-version plugin.lo \
-rpath /dont/care >/dev/null 2>&1
@@ -25624,6 +25660,56 @@ fi
LIBS="$LIBS_orig"
fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen(NULL, 0) brokenness" >&5
+$as_echo_n "checking for dlopen(NULL, 0) brokenness... " >&6; }
+if ${glib_cv_dlopennull_broken+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+
+ if test "$cross_compiling" = yes; then :
+ glib_cv_dlopennull_broken=no
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+#include <stdio.h>
+#include <dlfcn.h>
+#ifndef RTLD_GLOBAL
+# define RTLD_GLOBAL 0
+#endif
+#ifndef RTLD_LAZY
+# define RTLD_LAZY 0
+#endif
+int gettext;
+int main () {
+ void *handle;
+ handle = dlopen ("libm.so", RTLD_GLOBAL | RTLD_LAZY);
+ if (!handle) return 0;
+ handle = dlopen (NULL, 0);
+ if (!handle) return 0;
+ handle = dlsym (handle, "sin");
+ return handle == NULL;
+}
+
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ glib_cv_dlopennull_broken=no
+else
+ glib_cv_dlopennull_broken=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $glib_cv_dlopennull_broken" >&5
+$as_echo "$glib_cv_dlopennull_broken" >&6; }
+ if test "x$glib_cv_dlopennull_broken" = "xyes"; then
+ G_MODULE_BROKEN_DLOPEN_NULL=1
+ else
+ G_MODULE_BROKEN_DLOPEN_NULL=0
+ fi
if test -z "$G_MODULE_IMPL"; then
G_MODULE_IMPL=0
G_MODULE_SUPPORTED=false
@@ -25658,6 +25744,7 @@ fi
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gspawn implementation" >&5
$as_echo_n "checking for gspawn implementation... " >&6; }
case "$host" in
@@ -26727,62 +26814,8 @@ if test x"$have_threads" = xposix; then
G_THREAD_LIBS="-lpthread -lthread"
;;
*)
- for flag in pthread pthreads mt; do
- glib_save_CFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -$flag"
- if test "$cross_compiling" = yes; then :
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <pthread.h>
-int check_me = 0;
-void* func(void* data) {check_me = 42; return &check_me;}
-int main()
- { pthread_t t;
- void *ret;
- pthread_create (&t, 0, func, 0);
- pthread_join (t, &ret);
- return (check_me != 42 || ret != &check_me);
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- glib_flag_works=yes
-else
- glib_flag_works=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <pthread.h>
-int check_me = 0;
-void* func(void* data) {check_me = 42; return &check_me;}
-int main()
- { pthread_t t;
- void *ret;
- pthread_create (&t, 0, func, 0);
- pthread_join (t, &ret);
- return (check_me != 42 || ret != &check_me);
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- glib_flag_works=yes
-else
- glib_flag_works=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
- CFLAGS="$glib_save_CFLAGS"
- if test $glib_flag_works = yes ; then
- G_THREAD_CFLAGS=-$flag
- G_THREAD_LIBS=-$flag
- break;
- fi
- done
+ G_THREAD_LIBS="${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}"
+ G_THREAD_CFLAGS="${PTHREAD_CFLAGS}"
;;
esac