Subject: pkg/36523: security/gnutls doesn't build under Mac OS X 10.3
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <ginsbach@NetBSD.org>
List: pkgsrc-bugs
Date: 06/22/2007 14:45:01
>Number:         36523
>Category:       pkg
>Synopsis:       security/gnutls doesn't build under Mac OS X 10.3
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 22 14:45:00 +0000 2007
>Originator:     Brian Ginsbach
>Release:        Darwin 7.9.0 (Mac OS X 10.3.9), pkgsrc-2007Q1
>Organization:
	
>Environment:
System: Darwin restive 7.9.0 Darwin Kernel Version 7.9.0: Wed Mar 30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC Power Macintosh powerpc
Architecture: powerpc
Machine: Power Macintosh
>Description:
	Version 1.6.3 of security/gnutls packages doesn't build.

	/bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -DLOCALEDIR=\"/usr/pkg/share/locale\" -I../lgl -I../lgl -I../includes -I../includes -I./x509 -I../libextra -I../libextra/openpgp/ -I../libextra/opencdk  -I/usr/pkg/include  -I/usr/pkg/include  -I/usr/pkg/include -no-cpp-precomp -I/usr/pkg/include -I/usr/include -I../includes/ -pipe -O2 -I/usr/pkg/include -I/usr/include -MT gnutlsxx.lo -MD -MP -MF .deps/gnutlsxx.Tpo -c -o gnutlsxx.lo gnutlsxx.cpp
 g++ -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/pkg/share/locale\" -I../lgl -I../includes -I./x509 -I../libextra -I../libextra/openpgp/ -I../libextra/opencdk -I/Volumes/ufs1/pkgsrc/security/gnutls/work/.buildlink/include -no-cpp-precomp -I../includes/ -pipe -O2 -MT gnutlsxx.lo -MD -MP -MF .deps/gnutlsxx.Tpo -c gnutlsxx.cpp  -fno-common -DPIC -o .libs/gnutlsxx.o
In file included from gnutlsxx.cpp:1:
../includes/gnutls/gnutlsxx.h: In copy constructor `
   gnutls::credentials::credentials(gnutls::credentials&)':
../includes/gnutls/gnutlsxx.h:239: error: abstract virtual `virtual void 
   gnutls::credentials::set_ptr(void*)' called from constructor
gnumake[3]: *** [gnutlsxx.lo] Error 1
gnumake[2]: *** [all-recursive] Error 1
gnumake[1]: *** [all-recursive] Error 1
gnumake: *** [all] Error 2
*** Error code 2

Stop.
bmake: stopped in /usr/pkgsrc/security/gnutls
*** Error code 1

Stop.
bmake: stopped in /usr/pkgsrc/security/gnutls

>How-To-Repeat:
	cd pkgsrc/security/gnutls
	make

>Fix:
	I'm not sure about the C++ code.  A work-around is to not build
	the C++ library.  This uses a slightly modified version of code
	previously found in the Makefile.


--- Makefile	Wed Jun 20 11:42:40 2007
+++ Makefile.new	Wed Jun 20 15:55:10 2007
@@ -42,6 +42,14 @@
 
 .include "../../mk/bsd.prefs.mk"
 
+# Darwin's g++ cannot build the gnutls C++ library
+.if ${OPSYS} == "Darwin" && ${OS_VERSION} == "7.9.0"
+CONFIGURE_ARGS+=	--disable-cxx
+PLIST_SUBST+=		CXX="@comment"
+.else
+PLIST_SUBST+=		CXX=""
+.endif
+
 INSTALLATION_DIRS=	${DOCDIR} ${EGDIR} include/gnutls
 
 post-install: