Subject: pkg/32404: net/ORBit2 build fails on system built with MKINET6=no
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <jmiller@shaw.ca>
List: pkgsrc-bugs
Date: 12/29/2005 01:35:00
>Number:         32404
>Category:       pkg
>Synopsis:       net/ORBit2 build fails on system built with MKINET6=no
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Dec 29 01:35:00 +0000 2005
>Originator:     Jason V. Miller
>Release:        3.0
>Organization:
>Environment:
NetBSD lust.misaligned.org 3.0 NetBSD 3.0 (LUST) #0: Mon Dec 19 13:14:08 MST 2005  src@lust.misaligned.org:/usr/src-3-0/obj/sys/arch/i386/compile/LUST i386
>Description:
I am running NetBSD 3.0 (from netbsd-3-0-RELEASE checked out on December 21), and using pkgsrc-2005Q4, up to date as of this PR. When attempting to build net/ORBit2, the build fails.

Note that this failure is related to my system being compiled and installed with the ``MKINET6=no'' in /etc/mk.conf, and as such I have no IPv6 support on my system.

bash-3.00$ cd /usr/pkgsrc/net/ORBit2/ && make
...
cc -O2 -march=pentiumpro
-I/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/include -Wl,-R/usr/pkg/lib -o
test-linc test-linc.o -pthread
-L/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib ../src/.libs/liblinc.a
/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib/libgobject-2.0.so
/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib/libgthread-2.0.so
/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib/libglib-2.0.so -lintl
-Wl,--rpath -Wl,/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib -Wl,--rpath
-Wl,/usr/pkgsrc-2005Q3/net/ORBit2/work/.buildlink/lib
../src/.libs/liblinc.a(linc-protocols.o)(.text+0xbaa): In function
`link_protocol_get_sockinfo_ipv6':
: undefined reference to `in6addr_any'
gmake[3]: *** [test-linc] Error 1
gmake[3]: Leaving directory
`/usr/pkgsrc-2005Q3/net/ORBit2/work/ORBit2-2.12.2/linc2/test'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory
`/usr/pkgsrc-2005Q3/net/ORBit2/work/ORBit2-2.12.2/linc2'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/pkgsrc-2005Q3/net/ORBit2/work/ORBit2-2.12.2'
gmake: *** [all] Error 2
*** Error code 2

Basically, AF_INET6 is defined when it shouldn't be. I'm not sure if this is simply because I haven't recompiled *all* of pkgsrc after recompiling base with ``MKINET6=no'', however, that doesn't seem likely.

I can get this build to complete by modifying:

./work/ORBit2-2.12.2/linc2/src/linc-compat.h:

to include:

#undef AF_INET6

However, that should obviously be undefined to start with. I'm not familiar at all with autoconf and configure (or whatever other magic is used to set these things), so I can't help pinpoint the problem further.
>How-To-Repeat:
1. Build a system with ``MKINET6=no'' in ``/etc/mk.conf'':
2. Try to build net/ORBit2
>Fix:
Edit ``./work/ORBit2-2.12.2/linc2/src/linc-compat.h'' to include ``#undef AF_INET6''. This should demonstrate the build problem, but not the underlying issue with autoconf/configure.