summaryrefslogtreecommitdiff
path: root/mk/compiler.mk
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
commit29952c062d5c7e11250813e502bac7a51bdf9598 (patch)
treebee4a3dc82880b30493d3e930375deeacf522859 /mk/compiler.mk
parent0cc7719e361dcf6025b4990d8b8e7010e5d97608 (diff)
downloadpkgsrc-29952c062d5c7e11250813e502bac7a51bdf9598.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.
Diffstat (limited to 'mk/compiler.mk')
-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