summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgrant <grant@pkgsrc.org>2003-10-18 09:14:47 +0000
committergrant <grant@pkgsrc.org>2003-10-18 09:14:47 +0000
commit092839e3964fe7cbf5580d3ff3edf3ee1d03f175 (patch)
treebee4a3dc82880b30493d3e930375deeacf522859
parent690410ee762058a0cb9dcba8106d4b4a8c44a9f3 (diff)
downloadpkgsrc-092839e3964fe7cbf5580d3ff3edf3ee1d03f175.tar.gz
move the libstdc++ fake libtool archive stuff out of
!defined(COMPILER_MK) for now. some packages include bsd.prefs.mk before defining USE_BUILDLINK2, which resulted in the libstdc++ fake-la target being missed. XXX the real fix is to include compiler.mk from both bsd.prefs.mk and XXX bsd.pkg.mk, and have compiler.mk make the right decisions based on XXX where it was included from.
-rw-r--r--mk/compiler.mk34
1 files changed, 20 insertions, 14 deletions
diff --git a/mk/compiler.mk b/mk/compiler.mk
index 77477da9c7a..5a315162133 100644
--- a/mk/compiler.mk
+++ b/mk/compiler.mk
@@ -1,4 +1,4 @@
-# $NetBSD: compiler.mk,v 1.20 2003/10/12 03:05:37 grant Exp $
+# $NetBSD: compiler.mk,v 1.21 2003/10/18 09:14:47 grant Exp $
# This Makefile fragment implements handling for supported
# C/C++/fortran compilers.
@@ -216,19 +216,6 @@ _GCC_LDFLAGS= -L${_GCC_ARCHDIR} -Wl,${RPATH_FLAG}${_GCC_ARCHDIR} -L${_GCC_PREFI
LDFLAGS+= ${_GCC_LDFLAGS}
.endif
-# create a fake libstdc++.la if one exists in /usr/lib.
-.if empty(USE_BUILDLINK2:M[nN][oO])
-. if defined(_CC_IS_GCC) && exists(/usr/lib/libstdc++.la)
-BUILDLINK_TARGETS+= libstdc++-buildlink-la
-
-libstdc++-buildlink-la:
- ${_PKG_SILENT}${_PKG_DEBUG} \
- lafile="${BUILDLINK_DIR}/lib/libstdc++.la"; \
- libpattern="/usr/lib/libstdc++.*"; \
- ${BUILDLINK_FAKE_LA}
-. endif
-.endif
-
# CC_VERSION can be tested by package Makefiles to tweak things based
# on the compiler being used.
#
@@ -263,3 +250,22 @@ IMAKEOPTS+= -DHasGcc2=YES -DHasGcc2ForCplusplus=YES
.endif
.endif # COMPILER_MK
+
+# XXX this test is outside if !defined(COMPILER_MK) because some
+# XXX packages include bsd.prefs.mk before defining USE_BUILDLINK2.
+#
+# create a fake libstdc++.la if one exists in /usr/lib.
+.if empty(USE_BUILDLINK2:M[nN][oO])
+. if defined(_CC_IS_GCC) && exists(/usr/lib/libstdc++.la)
+. if (!defined(BUILDLINK_TARGETS) || \
+ defined(BUILDLINK_TARGETS) && empty(BUILDLINK_TARGETS:Mlibstdc++-buildlink-la))
+BUILDLINK_TARGETS+= libstdc++-buildlink-la
+
+libstdc++-buildlink-la:
+ ${_PKG_SILENT}${_PKG_DEBUG} \
+ lafile="${BUILDLINK_DIR}/lib/libstdc++.la"; \
+ libpattern="/usr/lib/libstdc++.*"; \
+ ${BUILDLINK_FAKE_LA}
+. endif
+. endif
+.endif