summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgrant <grant>2003-10-18 09:14:47 +0000
committergrant <grant>2003-10-18 09:14:47 +0000
commit201e938967ba9dd96b2dc98515b0c8b4d754c479 (patch)
treebee4a3dc82880b30493d3e930375deeacf522859
parent17a950e22f142f3315c7ca3691b2db83c719552e (diff)
downloadpkgsrc-201e938967ba9dd96b2dc98515b0c8b4d754c479.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