From 271022f40d58f544b7534e35e283d882d8c8a4f4 Mon Sep 17 00:00:00 2001 From: jlam Date: Sat, 20 Oct 2001 17:46:50 +0000 Subject: Only link -lgcc whole-archive on NetBSD ELF platforms, to allow a.out platforms to correctly links this package. --- www/apache/Makefile | 10 +++++----- www/apache6/Makefile | 10 +++++----- www/php4/Makefile | 15 ++++++++------- 3 files changed, 18 insertions(+), 17 deletions(-) (limited to 'www') diff --git a/www/apache/Makefile b/www/apache/Makefile index 9188fdd5d04..97fd06dfbc8 100644 --- a/www/apache/Makefile +++ b/www/apache/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.79 2001/10/19 09:52:22 veego Exp $ +# $NetBSD: Makefile,v 1.80 2001/10/20 17:46:50 jlam Exp $ # # This pkg does not compile in mod_ssl, only the `mod_ssl EAPI' (a set of # code hooks that allow mod_ssl to be compiled separately later, if desired). @@ -83,11 +83,11 @@ APACHE_CUSTOM_CFLAGS+= -DBUFFERED_LOGS APACHE_CUSTOM_CFLAGS+= -O6 -fomit-frame-pointer -fexpensive-optimizations .endif -# On NetBSD, we need to link libgcc.a whole-archive so that certain symbols -# from the C++ implementation (__get_eh_context, etc.) referenced by DSOs -# written in C++ will resolve correctly. +# On NetBSD ELF platforms, we need to link libgcc.a whole-archive so that +# certain symbols from the C++ implementation (__get_eh_context, etc.) +# referenced by DSOs written in C++ will resolve correctly. # -.if (${OPSYS} == "NetBSD") +.if (${OPSYS} == "NetBSD") && (${OBJECT_FMT} == "ELF") LINK_LIBGCC_LDFLAGS= -Wl,--whole-archive -lgcc -Wl,--no-whole-archive MAKE_ENV+= LINK_LIBGCC_LDFLAGS="${LINK_LIBGCC_LDFLAGS}" .endif diff --git a/www/apache6/Makefile b/www/apache6/Makefile index 16df28d4f06..1cab62a6969 100644 --- a/www/apache6/Makefile +++ b/www/apache6/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.40 2001/10/17 19:27:27 jlam Exp $ +# $NetBSD: Makefile,v 1.41 2001/10/20 17:46:50 jlam Exp $ # # This package does not compile in mod_ssl support hooks, as it conflicts # with IPv6-enable patch. @@ -78,11 +78,11 @@ APACHE_CUSTOM_CFLAGS+= -DBUFFERED_LOGS APACHE_CUSTOM_CFLAGS+= -O6 -fomit-frame-pointer -fexpensive-optimizations .endif -# On NetBSD, we need to link libgcc.a whole-archive so that certain symbols -# from the C++ implementation (__get_eh_context, etc.) referenced by DSOs -# written in C++ will resolve correctly. +# On NetBSD ELF platforms, we need to link libgcc.a whole-archive so that +# certain symbols from the C++ implementation (__get_eh_context, etc.) +# referenced by DSOs written in C++ will resolve correctly. # -.if (${OPSYS} == "NetBSD") +.if (${OPSYS} == "NetBSD") && (${OBJECT_FMT} == "ELF") LINK_LIBGCC_LDFLAGS= -Wl,--whole-archive -lgcc -Wl,--no-whole-archive MAKE_ENV+= LINK_LIBGCC_LDFLAGS="${LINK_LIBGCC_LDFLAGS}" .endif diff --git a/www/php4/Makefile b/www/php4/Makefile index 280f3e78779..55a02a65beb 100644 --- a/www/php4/Makefile +++ b/www/php4/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.15 2001/10/16 12:44:16 tron Exp $ +# $NetBSD: Makefile,v 1.16 2001/10/20 17:46:50 jlam Exp $ .include "Makefile.php" @@ -28,13 +28,14 @@ FILES_SUBST+= CP=${CP:Q} FILES_SUBST+= RM=${RM:Q} FILES_SUBST_SED= ${FILES_SUBST:S/=/@!/:S/$/!g/:S/^/ -e s!@/} -# On NetBSD, we need to link libgcc.a whole-archive so that certain symbols -# from the C++ implementation (__get_eh_context, etc.) referenced by DSOs -# written in C++ will resolve correctly. We need to prefix the linker flags -# "-whole-archive -lgcc -no-whole-archive" with "-Wl," to force all of the -# flags to be passed down to the linker without change. +# On NetBSD ELF platforms, we need to link libgcc.a whole-archive so that +# certain symbols from the C++ implementation (__get_eh_context, etc.) +# referenced by DSOs written in C++ will resolve correctly. We need to +# prefix the linker flags "-whole-archive -lgcc -no-whole-archive" with +# "-Wl," to force all of the flags to be passed down to the linker through +# libtool without change. # -.if ${OPSYS} == "NetBSD" +.if (${OPSYS} == "NetBSD") && (${OBJECT_FMT} == "ELF") LINK_LIBGCC_LDFLAGS= -Wl,--whole-archive -Wl,-lgcc -Wl,--no-whole-archive MAKE_ENV+= LINK_LIBGCC_LDFLAGS="${LINK_LIBGCC_LDFLAGS}" .endif -- cgit v1.2.3