Wed Oct 28 09:25:23 2009 UTC ()
Fix building on Darwin; allow custom compiler and linker flags; allow universal binary.


(adam)
diff -r1.9 -r1.10 pkgsrc/textproc/xmlrpc-c/Makefile
diff -r1.7 -r1.8 pkgsrc/textproc/xmlrpc-c/distinfo
diff -r0 -r1.3 pkgsrc/textproc/xmlrpc-c/patches/patch-aa
diff -r0 -r1.3 pkgsrc/textproc/xmlrpc-c/patches/patch-ac
diff -r1.6 -r1.7 pkgsrc/textproc/xmlrpc-c/patches/patch-ab

cvs diff -r1.9 -r1.10 pkgsrc/textproc/xmlrpc-c/Makefile (expand / switch to unified diff)

--- pkgsrc/textproc/xmlrpc-c/Makefile 2009/10/27 18:50:38 1.9
+++ pkgsrc/textproc/xmlrpc-c/Makefile 2009/10/28 09:25:23 1.10
@@ -1,36 +1,38 @@ @@ -1,36 +1,38 @@
1# $NetBSD: Makefile,v 1.9 2009/10/27 18:50:38 drochner Exp $ 1# $NetBSD: Makefile,v 1.10 2009/10/28 09:25:23 adam Exp $
2# 
3 2
4DISTNAME= xmlrpc-c-1.06.38 3DISTNAME= xmlrpc-c-1.06.38
5CATEGORIES= textproc devel 4CATEGORIES= textproc devel
6MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xmlrpc-c/} 5MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xmlrpc-c/}
7EXTRACT_SUFX= .tgz 6EXTRACT_SUFX= .tgz
8 7
9MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
10HOMEPAGE= http://xmlrpc-c.sourceforge.net/ 9HOMEPAGE= http://xmlrpc-c.sourceforge.net/
11COMMENT= Library for writing an XML-RPC server or client in C or C++ 10COMMENT= Library for writing an XML-RPC server or client in C or C++
12 11
13PKG_DESTDIR_SUPPORT= user-destdir 12PKG_DESTDIR_SUPPORT= user-destdir
14 13
15# Sometimes can't open ../xmltok/libxmlrpc_xmltok.la 14# Sometimes can't open ../xmltok/libxmlrpc_xmltok.la
16MAKE_JOBS_SAFE= no 15MAKE_JOBS_SAFE= no
17 16
18GNU_CONFIGURE= yes 17USE_LANGUAGES= c99 c++
19USE_LIBTOOL= yes 18USE_LIBTOOL= yes
20USE_LANGUAGES= c99 c++ 19USE_TOOLS+= gmake
21USE_TOOLS+= gmake 20GNU_CONFIGURE= yes
22MAKE_FILE= GNUmakefile 21MAKE_FILE= GNUmakefile
23TEST_TARGET= check 22MAKE_ENV= CFLAGS_COMMON=${CFLAGS:M*:Q}
 23MAKE_ENV+= CXXFLAGS_COMMON=${CXXFLAGS:M*:Q}
 24MAKE_ENV+= LADD=${LDFLAGS:M*:Q}
 25TEST_TARGET= check
24 26
25SUBST_CLASSES+= pthread 27SUBST_CLASSES+= pthread
26SUBST_FILES.pthread= xmlrpc-c-config.in xmlrpc-c-config.test.in 28SUBST_FILES.pthread= xmlrpc-c-config.in xmlrpc-c-config.test.in
27PTHREAD_LINKFLAGS= ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} 29PTHREAD_LINKFLAGS= ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}
28SUBST_SED.pthread= -e s/-lpthread/${PTHREAD_LINKFLAGS:Q}/ 30SUBST_SED.pthread= -e s/-lpthread/${PTHREAD_LINKFLAGS:Q}/
29SUBST_SED.pthread+= -e "s/-L\(.\)libdir/-L\1libdir ${COMPILER_RPATH_FLAG}\1libdir/" 31SUBST_SED.pthread+= -e "s/-L\(.\)libdir/-L\1libdir ${COMPILER_RPATH_FLAG}\1libdir/"
30SUBST_STAGE.pthread= pre-configure 32SUBST_STAGE.pthread= pre-configure
31SUBST_MESSAGE.pthread= Fixing config scripts. 33SUBST_MESSAGE.pthread= Fixing config scripts.
32 34
33.include "../../www/libwww/buildlink3.mk" 35.include "../../www/libwww/buildlink3.mk"
34.include "../../www/curl/buildlink3.mk" 36.include "../../www/curl/buildlink3.mk"
35.include "../../mk/pthread.buildlink3.mk" 37.include "../../mk/pthread.buildlink3.mk"
36.include "../../mk/bsd.pkg.mk" 38.include "../../mk/bsd.pkg.mk"

cvs diff -r1.7 -r1.8 pkgsrc/textproc/xmlrpc-c/distinfo (expand / switch to unified diff)

--- pkgsrc/textproc/xmlrpc-c/distinfo 2009/10/27 18:50:39 1.7
+++ pkgsrc/textproc/xmlrpc-c/distinfo 2009/10/28 09:25:23 1.8
@@ -1,9 +1,11 @@ @@ -1,9 +1,11 @@
1$NetBSD: distinfo,v 1.7 2009/10/27 18:50:39 drochner Exp $ 1$NetBSD: distinfo,v 1.8 2009/10/28 09:25:23 adam Exp $
2 2
3SHA1 (xmlrpc-c-1.06.38.tgz) = 40332f0f363b9ca79242b28d4cbf13516702dacf 3SHA1 (xmlrpc-c-1.06.38.tgz) = 40332f0f363b9ca79242b28d4cbf13516702dacf
4RMD160 (xmlrpc-c-1.06.38.tgz) = 8d9f85a1b1be91fdc5c8aaab5571d0270ddbdf67 4RMD160 (xmlrpc-c-1.06.38.tgz) = 8d9f85a1b1be91fdc5c8aaab5571d0270ddbdf67
5Size (xmlrpc-c-1.06.38.tgz) = 702092 bytes 5Size (xmlrpc-c-1.06.38.tgz) = 702092 bytes
6SHA1 (patch-ab) = 711dfddb63089948008becbddbe1484f5124b374 6SHA1 (patch-aa) = 6dc9755b4e883cd55d8914761887fb3cbfff0ef1
 7SHA1 (patch-ab) = 34dd91b43385fa4a4893375dc774e0865a79b8fa
 8SHA1 (patch-ac) = e553e66662aca6d7c246acc24e960074213320c6
7SHA1 (patch-ae) = 0e56c03e8066bfeb4e9a6330ee160d1ab1d68a11 9SHA1 (patch-ae) = 0e56c03e8066bfeb4e9a6330ee160d1ab1d68a11
8SHA1 (patch-af) = fdeabde63338443459d96aca657a3fc402b9fbc4 10SHA1 (patch-af) = fdeabde63338443459d96aca657a3fc402b9fbc4
9SHA1 (patch-ah) = 55558998059c502f46a2bd9141ede7182df0753b 11SHA1 (patch-ah) = 55558998059c502f46a2bd9141ede7182df0753b

File Added: pkgsrc/textproc/xmlrpc-c/patches/Attic/patch-aa
$NetBSD: patch-aa,v 1.3 2009/10/28 09:25:23 adam Exp $

--- Makefile.common.orig	2007-07-13 02:32:20.000000000 +0200
+++ Makefile.common
@@ -28,15 +28,15 @@ GCC_CXX_WARNINGS = $(GCC_WARNINGS) -Wove
 # assertion and crash the program if it isn't really true.  You can add
 # -UNDEBUG (in any of various ways) to override this.
 #
-CFLAGS_COMMON = -DNDEBUG
-CXXFLAGS_COMMON = -DNDEBUG
+CFLAGS_COMMON += -DNDEBUG
+CXXFLAGS_COMMON += -DNDEBUG
 
 ifeq ($(C_COMPILER_GNU),yes)
-  CFLAGS_COMMON += $(GCC_C_WARNINGS) -fno-common -g -O3
+  CFLAGS_COMMON += $(GCC_C_WARNINGS) -fno-common
 endif
 
 ifeq ($(CXX_COMPILER_GNU),yes)
-  CXXFLAGS_COMMON += $(GCC_CXX_WARNINGS) -g
+  CXXFLAGS_COMMON += $(GCC_CXX_WARNINGS)
 endif
 
 DISTDIR = $(BUILDDIR)/$(PACKAGE)-$(VERSION)/$(SUBDIR)

File Added: pkgsrc/textproc/xmlrpc-c/patches/Attic/patch-ac
$NetBSD: patch-ac,v 1.3 2009/10/28 09:25:23 adam Exp $

--- src/cpp/Makefile.orig	2009-08-30 17:43:48.000000000 +0200
+++ src/cpp/Makefile
@@ -139,7 +139,7 @@ libxmlrpc_client++.a: $(LIBXMLRPC_CLIENT
 #  RULES TO COMPILE OBJECT MODULES FOR LIBRARIES
 #-----------------------------------------------------------------------------
 
-CXXFLAGS = $(CXXFLAGS_COMMON) $(CFLAGS_PERSONAL) $(CADD)
+CXXFLAGS = $(CXXFLAGS_COMMON) $(CFLAGS_SHLIB) $(CFLAGS_PERSONAL) $(CADD)
 
 XmlRpcCpp.o:%.o:%.cpp
 	$(CXX) -c $(BASIC_INCLUDES) $(CXXFLAGS) $<

cvs diff -r1.6 -r1.7 pkgsrc/textproc/xmlrpc-c/patches/Attic/patch-ab (expand / switch to unified diff)

--- pkgsrc/textproc/xmlrpc-c/patches/Attic/patch-ab 2009/10/27 18:50:39 1.6
+++ pkgsrc/textproc/xmlrpc-c/patches/Attic/patch-ab 2009/10/28 09:25:23 1.7
@@ -1,34 +1,34 @@ @@ -1,34 +1,34 @@
1$NetBSD: patch-ab,v 1.6 2009/10/27 18:50:39 drochner Exp $ 1$NetBSD: patch-ab,v 1.7 2009/10/28 09:25:23 adam Exp $
2 2
3--- Makefile.config.in.orig 2008-03-25 15:24:58.000000000 +0100 3--- Makefile.config.in.orig 2008-03-25 15:24:58.000000000 +0100
4+++ Makefile.config.in 4+++ Makefile.config.in
5@@ -155,6 +155,15 @@ ifeq ($(findstring solaris,$(HOST_OS)),s 5@@ -155,6 +155,15 @@ ifeq ($(findstring solaris,$(HOST_OS)),s
6 CFLAGS_SHLIB = -Kpic 6 CFLAGS_SHLIB = -Kpic
7 endif 7 endif
8  8
9+ifeq ($(HOST_OS),solaris2) 9+ifeq ($(HOST_OS),solaris2)
10+ SHARED_LIB_TYPE = unix 10+ SHARED_LIB_TYPE = unix
11+ SHLIB_SUFFIX = so 11+ SHLIB_SUFFIX = so
12+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN)) 12+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN))
13+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX)) 13+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX))
14+ LDFLAGS_SHLIB = -Wl,-Bdynamic,-G,-h,$(SONAME) 14+ LDFLAGS_SHLIB = -Wl,-Bdynamic,-G,-h,$(SONAME)
15+ CFLAGS_SHLIB = -Kpic 15+ CFLAGS_SHLIB = -Kpic
16+endif 16+endif
17+ 17+
18 ifeq ($(HOST_OS),aix) 18 ifeq ($(HOST_OS),aix)
19 # This code is not finished; that's why we don't set SHARED_LIB_TYPE. 19 # This code is not finished; that's why we don't set SHARED_LIB_TYPE.
20 # If you can finish it and make it work on AIX, please do. 20 # If you can finish it and make it work on AIX, please do.
21@@ -188,11 +197,30 @@ ifeq ($(HOST_OS),osf) 21@@ -188,17 +197,36 @@ ifeq ($(HOST_OS),osf)
22 endif 22 endif
23  23
24 ifeq ($(findstring netbsd,$(HOST_OS)),netbsd) 24 ifeq ($(findstring netbsd,$(HOST_OS)),netbsd)
25- # This code is not finished; that's why we don't set SHARED_LIB_TYPE. 25- # This code is not finished; that's why we don't set SHARED_LIB_TYPE.
26- # If you can finish it and make it work on AIX, please do. 26- # If you can finish it and make it work on AIX, please do.
27- # SHARED_LIB_TYPE = unix 27- # SHARED_LIB_TYPE = unix
28+ SHARED_LIB_TYPE = unix 28+ SHARED_LIB_TYPE = unix
29+ SHLIB_SUFFIX = so 29+ SHLIB_SUFFIX = so
30+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN)) 30+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN))
31+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX)) 31+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX))
32+ CFLAGS_SHLIB = -fPIC 32+ CFLAGS_SHLIB = -fPIC
33+ LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB) 33+ LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB)
34+endif 34+endif
@@ -43,13 +43,20 @@ $NetBSD: patch-ab,v 1.6 2009/10/27 18:50 @@ -43,13 +43,20 @@ $NetBSD: patch-ab,v 1.6 2009/10/27 18:50
43+endif 43+endif
44+ 44+
45+ifeq ($(findstring freebsd,$(HOST_OS)),freebsd) 45+ifeq ($(findstring freebsd,$(HOST_OS)),freebsd)
46+ SHARED_LIB_TYPE = unix 46+ SHARED_LIB_TYPE = unix
47 SHLIB_SUFFIX = so 47 SHLIB_SUFFIX = so
48- CFLAGS_SHLIB = -fpic 48- CFLAGS_SHLIB = -fpic
49+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN)) 49+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN))
50+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX)) 50+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX))
51+ CFLAGS_SHLIB = -fPIC 51+ CFLAGS_SHLIB = -fPIC
52+ LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB) 52+ LDFLAGS_SHLIB = -shared -Wl,-soname,$(SONAME) $(SHLIB_CLIB)
53 endif 53 endif
54  54
55 ifeq ($(HOST_OS),darwin) 55 ifeq ($(HOST_OS),darwin)
 56 # This code is not finished; that's why we don't set SHARED_LIB_TYPE.
 57 # If you can finish it and make it work on AIX, please do.
 58- # SHARED_LIB_TYPE = dylib
 59+ SHARED_LIB_TYPE = dylib
 60 SHLIB_SUFFIX = dylib
 61 endif
 62