From cb0e38446b26c5bb3ee8b10360669165287c6faa Mon Sep 17 00:00:00 2001 From: agc Date: Wed, 4 Sep 2002 14:47:32 +0000 Subject: Apply patches from Lubomir Sedlacik in PR 18115 to generalise the linker flags used to export symbols by setting them on a per-OS basis. > many packages force -Wl,-export-dynamic which is not portable outside GNU ld > and cause problems e.g. on Solaris. some of these packages use if > conditionals either only for NetBSD or except SunOS, but the state is not > coherent and it may complicate later when support for new OS is added to > pkgsrc (e.g. ongoing work on HP-UX support). > > jlam proposed the following framework in discussion on tech-pkg: > > http://mail-index.netbsd.org/tech-pkg/2002/06/21/0009.html > > now, ${EXPORT_SYMBOLS_LDFLAGS} is used instead of directly defining > -Wl,-export-dynamic which is set in appropriate defs.*.mk to reasonable > values. packages should be converted to this framework by: > > 1) replacing LDFLAGS+= -Wl,-export-dynamic and LIBS+= -export-dynamic with: > > LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS} > > 2) for use in patchfiles, add this variable to MAKE_ENV if needed: > > MAKE_ENV+= EXPORT_SYMBOLS_LDFLAGS=${EXPORT_SYMBOLS_LDFLAGS} > > 3) replace occurances of -Wl,-export-dynamic and -export-dynamic in patch > files with: > > $(EXPORT_SYMBOLS_LDFLAGS) --- graphics/dx/Makefile | 4 ++-- graphics/gimp-base/Makefile | 6 ++++-- graphics/kdegraphics2/Makefile | 9 +++------ graphics/kdegraphics3/Makefile | 9 +++------ 4 files changed, 12 insertions(+), 16 deletions(-) (limited to 'graphics') diff --git a/graphics/dx/Makefile b/graphics/dx/Makefile index e2af14ad519..5c9256968e6 100644 --- a/graphics/dx/Makefile +++ b/graphics/dx/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.15 2002/04/23 02:08:53 jlam Exp $ +# $NetBSD: Makefile,v 1.16 2002/09/04 14:47:36 agc Exp $ DISTNAME= dx-4.1.3 PKGREVISION= 1 @@ -17,7 +17,7 @@ CONFIGURE_ARGS+= --without-javadx CONFIGURE_ENV+= LEX="flex -l" # Ensure we export symbols in the linked shared object. -LDFLAGS+= -Wl,--export-dynamic +LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS} CPPFLAGS+= -I${BUILDLINK_DIR}/include/freetype # freetype.h diff --git a/graphics/gimp-base/Makefile b/graphics/gimp-base/Makefile index 48f4842f271..7062e42521a 100644 --- a/graphics/gimp-base/Makefile +++ b/graphics/gimp-base/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2002/03/17 02:40:57 jmc Exp $ +# $NetBSD: Makefile,v 1.4 2002/09/04 14:47:36 agc Exp $ DISTNAME= gimp-1.2.3 PKGNAME= gimp-base-1.2.3 @@ -33,7 +33,9 @@ CONFIGURE_ENV+= MPEG="mpeg" CONFIGURE_ENV+= LIBMPEG="-lmpeg_lib" CONFIGURE_ENV+= GAP_DECODE_MPEG="gap_decode_mpeg" -LDFLAGS+= -Wl,--export-dynamic +# Ensure we export symbols in the linked shared object. +LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS} + MAKE_ENV+= X11BASE=${X11BASE} PLIST_SUBST+= LOCALBASE=${LOCALBASE} diff --git a/graphics/kdegraphics2/Makefile b/graphics/kdegraphics2/Makefile index 4766bd0d181..8fc584517a2 100644 --- a/graphics/kdegraphics2/Makefile +++ b/graphics/kdegraphics2/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.8 2002/03/13 17:37:11 fredb Exp $ +# $NetBSD: Makefile,v 1.9 2002/09/04 14:47:37 agc Exp $ DISTNAME= kdegraphics-2.2.2 PKGREVISION= 1 @@ -16,11 +16,8 @@ USE_BUILDLINK_ONLY= YES CONFIGURE_ARGS+= --without-kamera # requires gPhoto2, gpio -.include "../../mk/bsd.prefs.mk" - -.if ${OPSYS} == "NetBSD" -LIBS= -Wl,--export-dynamic -.endif +# Ensure we export symbols in the linked shared object. +LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS} .include "../../graphics/tiff/buildlink.mk" .include "../../x11/kde2/buildlink.mk" diff --git a/graphics/kdegraphics3/Makefile b/graphics/kdegraphics3/Makefile index 58b63c14f49..237b09a5640 100644 --- a/graphics/kdegraphics3/Makefile +++ b/graphics/kdegraphics3/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.4 2002/08/28 07:15:28 skrll Exp $ +# $NetBSD: Makefile,v 1.5 2002/09/04 14:47:37 agc Exp $ DISTNAME= kdegraphics-3.0.3 CATEGORIES= graphics @@ -14,11 +14,8 @@ USE_BUILDLINK_ONLY= YES CONFIGURE_ARGS+= --without-kamera # requires gPhoto2, gpio -.include "../../mk/bsd.prefs.mk" - -.if ${OPSYS} == "NetBSD" -LIBS= -Wl,--export-dynamic -.endif +# Ensure we export symbols in the linked shared object. +LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS} #.include "../../graphics/tiff/buildlink.mk" .include "../../graphics/imlib/buildlink.mk" -- cgit v1.2.3