pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/44065: devel/glib2 compilation errors on NetBSD 4.0
>Number: 44065
>Category: pkg
>Synopsis: devel/glib2 compilation errors on NetBSD 4.0
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Nov 08 07:55:00 +0000 2010
>Originator: Robert Elz
>Release: NetBSD 4.0 (pkgsrc current 2010-11-08)
>Organization:
Prince of Songkla University
>Environment:
System: NetBSD jade.coe.psu.ac.th 5.1_RC3 NetBSD 5.1_RC3 (JADE-1.12-20100614)
#2: Mon Jun 14 08:35:26 ICT 2010
kre%jade.coe.psu.ac.th@localhost:/usr/obj/5.1/kernels/JADE i386
Architecture: i386
Machine: i386
>Description:
devel/glib2 (2.26.0) fails to compile on NetBSD 4.0
(the previous version, 2.24.2, worked OK).
I've listed thts as critical/high as half the world depends
upon glib2, it really needs to build...
>How-To-Repeat:
I use pkg_comp with NetBSD 4.0 release sets installed (and libkver)
to simulate a pure NetBSD 4.0 environment.
In that environment, attempting to build devel/glib2
results in...
/bin/sh ../libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I.. -I..
-I../glib -I../glib -I.. -I/usr/pkg/include -DG_LOG_DOMAIN=\"GLib\"
-DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC
-DPREFIX="\"/usr/pkg\"" -DPKGLOCALEDIR="\"share\""
-DPKG_SYSCONFDIR="\"/etc/conf\"" -I/usr/include -I/usr/pkg/include
-DG_DISABLE_SINGLE_INCLUDES -pthread -O2 -I/usr/include -I/usr/pkg/include
-Wall -MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c -o gatomic.lo gatomic.c
libtool: compile: cc -DHAVE_CONFIG_H -I. -I.. -I../glib
-I/pkg_comp/obj/pkgsrc/devel/glib2/4x/.buildlink/include
-DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED
-DGLIB_COMPILATION -DPCRE_STATIC -DPREFIX=\"/usr/pkg\" -DPKGLOCALEDIR=\"share\"
-DPKG_SYSCONFDIR=\"/etc/conf\" -DG_DISABLE_SINGLE_INCLUDES -pthread -O2 -Wall
-MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c gatomic.c -fPIC -DPIC -o
.libs/gatomic.o
gatomic.c:885: error: expected '=', ',', ';', 'asm' or '__attribute__' before
'*' token
gatomic.c: In function 'g_atomic_int_exchange_and_add':
gatomic.c:906: warning: implicit declaration of function 'g_mutex_lock'
gatomic.c:906: error: 'g_atomic_mutex' undeclared (first use in this function)
gatomic.c:906: error: (Each undeclared identifier is reported only once
gatomic.c:906: error: for each function it appears in.)
gatomic.c:909: warning: implicit declaration of function 'g_mutex_unlock'
gatomic.c: In function 'g_atomic_int_add':
gatomic.c:928: error: 'g_atomic_mutex' undeclared (first use in this function)
gatomic.c: In function 'g_atomic_int_compare_and_exchange':
gatomic.c:954: error: 'g_atomic_mutex' undeclared (first use in this function)
gatomic.c: In function 'g_atomic_pointer_compare_and_exchange':
gatomic.c:988: error: 'g_atomic_mutex' undeclared (first use in this function)
gatomic.c: In function '_g_atomic_thread_init':
gatomic.c:1155: error: 'g_atomic_mutex' undeclared (first use in this function)
gatomic.c:1155: warning: implicit declaration of function 'g_mutex_new'
gmake[4]: *** [gatomic.lo] Error 1
gmake[4]: Leaving directory
`/pkg_comp/obj/pkgsrc/devel/glib2/4x/glib-2.26.0/glib'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory
`/pkg_comp/obj/pkgsrc/devel/glib2/4x/glib-2.26.0/glib'
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory
`/pkg_comp/obj/pkgsrc/devel/glib2/4x/glib-2.26.0/glib'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/pkg_comp/obj/pkgsrc/devel/glib2/4x/glib-2.26.0'
gmake: *** [all] Error 2
*** Error code 2
Stop.
make: stopped in /usr/pkgsrc/devel/glib2
*** Error code 1
Stop.
>Fix:
No idea. I took a look, and don't see much difference between
the 2.24.2 that builds, and 2.26.0 that doesn't. In particular,
the line that is 885 (in 2.26.0) looks unchanged - so the syntax
error must be inherited from some include file that's changed.
As best I can see, on NetBSD 4.0, no built-in atomic ops are
supported (in particular, G_ATOMIC_I486 is not defined - this
is a PC class system, 32 bits) and configure determines that it
can't use assembler for atomic operations ...
conftest.c:(.text+0x1b): undefined reference to `__sync_bool_compare_and_swap_4'
and (of course) we have no futex() sys call.
Home |
Main Index |
Thread Index |
Old Index