Subject: pkg/33268: net/ORBit2 fails to build without inet6 (patch included)
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <plunky@rya-online.net>
List: pkgsrc-bugs
Date: 04/16/2006 09:55:00
>Number: 33268
>Category: pkg
>Synopsis: net/Orbit2 fails to build without inet6 (patch included)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Sun Apr 16 09:55:00 +0000 2006
>Originator: Iain Hibbert
>Release: NetBSD 3.99.17
>Organization:
http://maps.google.com/maps?q=ireland&ll=52.2711,-9.8630&spn=0.0244,0.0822&t=k
>Environment:
System: NetBSD galant 3.99.17 NetBSD 3.99.17 (GALANT) #2: Wed Apr 12 13:42:18 BST 2006 plunky@galant:/home/obj/sys/arch/i386/compile/GALANT i386
Architecture: i386
Machine: i386
>Description:
In my kernel/userland build I have no inet6 compiled in, and ORBit2 fails to build
because of missing in6addr_any. They make some effort to avoid this but they are
depending on AF_INET6 being defined to indicate that inet6 is available. This does
not seem to be the case, since it is always defined in NetBSD <sys/socket.h>
>How-To-Repeat:
Add USE_INET6=no to /etc/mk.conf and compile libc as in6addr_any is
normally declared in libc but is not, when USE_INET6=no is defined
>Fix:
The following patch adds recognizance of the PKG_OPTIONS switch "inet6"
to the net/ORBit2 package, and a small patch to the hacks file to undefine
AF_INET6 when it is not wanted.
Technically, this changes the default behaviour of the ORBit2 package,
since unless inet6 is defined it will not be compiled in, but I think
its correct to do that.
--- /dev/null 2006-04-16 10:33:47.000000000 +0100
+++ patches/patch-ab 2006-04-16 10:33:44.000000000 +0100
@@ -0,0 +1,19 @@
+$NetBSD: patch-ab$
+
+Optionally remove AF_INET6 definition since there are several sections that
+need not be compiled if we dont want INET6 but (for NetBSD at least), it is
+always defined.
+
+--- linc2/src/linc-compat.h.orig 2006-04-16 07:10:22.000000000 +0000
++++ linc2/src/linc-compat.h 2006-04-16 07:09:47.000000000 +0000
+@@ -115,6 +115,10 @@
+ # define LINK_UNIX_PATH_MAX UNIX_PATH_MAX
+ #endif
+
++#if !defined (WANT_INET6) && defined (AF_INET6)
++# undef AF_INET6
++#endif
++
+ const char *link_strerror (int);
+
+ #endif /* LINK_HACKS_H */
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/net/ORBit2/Makefile,v
retrieving revision 1.47
diff -u -r1.47 Makefile
--- Makefile 30 Mar 2006 20:48:55 -0000 1.47
+++ Makefile 16 Apr 2006 09:36:29 -0000
@@ -27,6 +27,15 @@
PKGCONFIG_OVERRIDE+= ORBit-imodule-2.0.pc.in
PKGCONFIG_OVERRIDE+= src/idl-compiler/ORBit-idl-2.0.pc.in
+PKG_OPTIONS_VAR= PKG_OPTIONS.ORBit2
+PKG_SUPPORTED_OPTIONS= inet6
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Minet6)
+CPPFLAGS+= -DWANT_INET6
+.endif
+
CPPFLAGS.Darwin+= -DBIND_8_COMPAT
PRINT_PLIST_AWK+= /^@dirrm share\/idl$$/ \
Index: distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/net/ORBit2/distinfo,v
retrieving revision 1.27
diff -u -r1.27 distinfo
--- distinfo 30 Mar 2006 20:48:55 -0000 1.27
+++ distinfo 16 Apr 2006 09:36:29 -0000
@@ -4,3 +4,4 @@
RMD160 (ORBit2-2.14.0.tar.bz2) = 1e8eb52b8b95f70fa80b217a41d0bcac35c333c0
Size (ORBit2-2.14.0.tar.bz2) = 704207 bytes
SHA1 (patch-aa) = 6e87e28e3634908f35c219f81a47d0353cfaf551
+SHA1 (patch-ab) = c3070f6fdeb7d0500f3307ae3ded2073c44b2572
>Unformatted:
pkgsrc snapshot 15-April-2006