Fix building on Darwin; allow custom compiler and linker flags; allow universal binary.diff -r1.9 -r1.10 pkgsrc/textproc/xmlrpc-c/Makefile
(adam)
@@ -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 | |||
4 | DISTNAME= xmlrpc-c-1.06.38 | 3 | DISTNAME= xmlrpc-c-1.06.38 | |
5 | CATEGORIES= textproc devel | 4 | CATEGORIES= textproc devel | |
6 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xmlrpc-c/} | 5 | MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xmlrpc-c/} | |
7 | EXTRACT_SUFX= .tgz | 6 | EXTRACT_SUFX= .tgz | |
8 | 7 | |||
9 | MAINTAINER= pkgsrc-users@NetBSD.org | 8 | MAINTAINER= pkgsrc-users@NetBSD.org | |
10 | HOMEPAGE= http://xmlrpc-c.sourceforge.net/ | 9 | HOMEPAGE= http://xmlrpc-c.sourceforge.net/ | |
11 | COMMENT= Library for writing an XML-RPC server or client in C or C++ | 10 | COMMENT= Library for writing an XML-RPC server or client in C or C++ | |
12 | 11 | |||
13 | PKG_DESTDIR_SUPPORT= user-destdir | 12 | PKG_DESTDIR_SUPPORT= user-destdir | |
14 | 13 | |||
15 | # Sometimes can't open ../xmltok/libxmlrpc_xmltok.la | 14 | # Sometimes can't open ../xmltok/libxmlrpc_xmltok.la | |
16 | MAKE_JOBS_SAFE= no | 15 | MAKE_JOBS_SAFE= no | |
17 | 16 | |||
18 | GNU_CONFIGURE= yes | 17 | USE_LANGUAGES= c99 c++ | |
19 | USE_LIBTOOL= yes | 18 | USE_LIBTOOL= yes | |
20 | USE_LANGUAGES= c99 c++ | 19 | USE_TOOLS+= gmake | |
21 | USE_TOOLS+= gmake | 20 | GNU_CONFIGURE= yes | |
22 | MAKE_FILE= GNUmakefile | 21 | MAKE_FILE= GNUmakefile | |
23 | TEST_TARGET= check | 22 | MAKE_ENV= CFLAGS_COMMON=${CFLAGS:M*:Q} | |
23 | MAKE_ENV+= CXXFLAGS_COMMON=${CXXFLAGS:M*:Q} | |||
24 | MAKE_ENV+= LADD=${LDFLAGS:M*:Q} | |||
25 | TEST_TARGET= check | |||
24 | 26 | |||
25 | SUBST_CLASSES+= pthread | 27 | SUBST_CLASSES+= pthread | |
26 | SUBST_FILES.pthread= xmlrpc-c-config.in xmlrpc-c-config.test.in | 28 | SUBST_FILES.pthread= xmlrpc-c-config.in xmlrpc-c-config.test.in | |
27 | PTHREAD_LINKFLAGS= ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} | 29 | PTHREAD_LINKFLAGS= ${PTHREAD_LDFLAGS} ${PTHREAD_LIBS} | |
28 | SUBST_SED.pthread= -e s/-lpthread/${PTHREAD_LINKFLAGS:Q}/ | 30 | SUBST_SED.pthread= -e s/-lpthread/${PTHREAD_LINKFLAGS:Q}/ | |
29 | SUBST_SED.pthread+= -e "s/-L\(.\)libdir/-L\1libdir ${COMPILER_RPATH_FLAG}\1libdir/" | 31 | SUBST_SED.pthread+= -e "s/-L\(.\)libdir/-L\1libdir ${COMPILER_RPATH_FLAG}\1libdir/" | |
30 | SUBST_STAGE.pthread= pre-configure | 32 | SUBST_STAGE.pthread= pre-configure | |
31 | SUBST_MESSAGE.pthread= Fixing config scripts. | 33 | SUBST_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" |
@@ -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 | |||
3 | SHA1 (xmlrpc-c-1.06.38.tgz) = 40332f0f363b9ca79242b28d4cbf13516702dacf | 3 | SHA1 (xmlrpc-c-1.06.38.tgz) = 40332f0f363b9ca79242b28d4cbf13516702dacf | |
4 | RMD160 (xmlrpc-c-1.06.38.tgz) = 8d9f85a1b1be91fdc5c8aaab5571d0270ddbdf67 | 4 | RMD160 (xmlrpc-c-1.06.38.tgz) = 8d9f85a1b1be91fdc5c8aaab5571d0270ddbdf67 | |
5 | Size (xmlrpc-c-1.06.38.tgz) = 702092 bytes | 5 | Size (xmlrpc-c-1.06.38.tgz) = 702092 bytes | |
6 | SHA1 (patch-ab) = 711dfddb63089948008becbddbe1484f5124b374 | 6 | SHA1 (patch-aa) = 6dc9755b4e883cd55d8914761887fb3cbfff0ef1 | |
7 | SHA1 (patch-ab) = 34dd91b43385fa4a4893375dc774e0865a79b8fa | |||
8 | SHA1 (patch-ac) = e553e66662aca6d7c246acc24e960074213320c6 | |||
7 | SHA1 (patch-ae) = 0e56c03e8066bfeb4e9a6330ee160d1ab1d68a11 | 9 | SHA1 (patch-ae) = 0e56c03e8066bfeb4e9a6330ee160d1ab1d68a11 | |
8 | SHA1 (patch-af) = fdeabde63338443459d96aca657a3fc402b9fbc4 | 10 | SHA1 (patch-af) = fdeabde63338443459d96aca657a3fc402b9fbc4 | |
9 | SHA1 (patch-ah) = 55558998059c502f46a2bd9141ede7182df0753b | 11 | SHA1 (patch-ah) = 55558998059c502f46a2bd9141ede7182df0753b |
$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)
$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) $<
@@ -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 |