summaryrefslogtreecommitdiff
path: root/textproc/xmlrpc-c/patches
diff options
context:
space:
mode:
authorjperkin <jperkin>2012-07-25 15:49:34 +0000
committerjperkin <jperkin>2012-07-25 15:49:34 +0000
commit95c33b7ae28149218785a98347a0b467beef4b64 (patch)
tree18f74d4ec37a2fa5fe5173fcbd8ce66e0ea945fb /textproc/xmlrpc-c/patches
parent6ca5a4ac8e672094e8992ab812405604f6b82a90 (diff)
downloadpkgsrc-95c33b7ae28149218785a98347a0b467beef4b64.tar.gz
Use correct linker flags on Solaris with GCC. Fixes relocation issues.
Bump PKGREVISION.
Diffstat (limited to 'textproc/xmlrpc-c/patches')
-rw-r--r--textproc/xmlrpc-c/patches/patch-config.mk.in27
1 files changed, 27 insertions, 0 deletions
diff --git a/textproc/xmlrpc-c/patches/patch-config.mk.in b/textproc/xmlrpc-c/patches/patch-config.mk.in
new file mode 100644
index 00000000000..f02c34ce22d
--- /dev/null
+++ b/textproc/xmlrpc-c/patches/patch-config.mk.in
@@ -0,0 +1,27 @@
+$NetBSD: patch-config.mk.in,v 1.1 2012/07/25 15:49:34 jperkin Exp $
+
+Do not use -Bdynamic -G when using GCC on Solaris, it creates non-PIC
+libraries.
+
+--- config.mk.in.orig 2012-07-25 15:14:31.150813087 +0000
++++ config.mk.in 2012-07-25 15:16:38.062750186 +0000
+@@ -187,10 +187,15 @@
+ SHLIB_SUFFIX = so
+ shlibfn = $(1:%=%.$(SHLIB_SUFFIX).$(MAJ).$(MIN))
+ shliblefn = $(1:%=%.$(SHLIB_SUFFIX))
+- # Solaris compiler (Sun C 5.5) can't take multiple ld options as
+- # -Wl,-a,-b . Ld sees -a,-b in that case.
+- LDFLAGS_SHLIB = -Wl,-Bdynamic -Wl,-G -Wl,-h -Wl,$(SONAME)
+- CFLAGS_SHLIB = -Kpic
++ ifeq ($(C_COMPILER_GNU),yes)
++ LDFLAGS_SHLIB = -shared -Wl,-h -Wl,$(SONAME)
++ CFLAGS_SHLIB = -fPIC
++ else
++ # Solaris compiler (Sun C 5.5) can't take multiple ld options as
++ # -Wl,-a,-b . Ld sees -a,-b in that case.
++ LDFLAGS_SHLIB = -Wl,-Bdynamic -Wl,-G -Wl,-h -Wl,$(SONAME)
++ CFLAGS_SHLIB = -Kpic
++ endif
+ endif
+
+ ifeq ($(patsubst aix%,aix,$(HOST_OS)),aix)