summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorbapt <bapt@FreeBSD.org>2014-10-21 20:04:05 +0000
committerbapt <bapt@FreeBSD.org>2014-10-21 20:04:05 +0000
commit8d38074b480de065e40ddec57f97d27bf46dff61 (patch)
treee4659b2092b277feb90b256c44710f036ff2f0c4 /lib
parent05f3c87701ea8b912d0755ddb161de0281791a9b (diff)
downloadFreeBSD-src-8d38074b480de065e40ddec57f97d27bf46dff61.zip
FreeBSD-src-8d38074b480de065e40ddec57f97d27bf46dff61.tar.gz
When using an external gcc 4.8+ and not building libstdc++ then create in the objectdir a
fake libstdc++.so and libstdc++.a which is a symlink on libc++ that allow g++ to satisfy its links dependencies in the least hackish way. Please note that this hacky libstds++ never get installed on the final system Reviewed by: imp
Diffstat (limited to 'lib')
-rw-r--r--lib/libc++/Makefile12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index 5f2c8e9..e55cf55 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -1,5 +1,7 @@
# $FreeBSD$
+.include <src.opts.mk>
+
LIBCXXRTDIR= ${.CURDIR}/../../contrib/libcxxrt
HDRDIR= ${.CURDIR}/../../contrib/libc++/include
SRCDIR= ${.CURDIR}/../../contrib/libc++/src
@@ -192,4 +194,14 @@ EXT+= ${HDRDIR}/ext/${hdr}
.endfor
EXTDIR= ${CXXINCLUDEDIR}/ext
+.if ${MK_GNUCXX} == "no" && ${COMPILER_TYPE} == "gcc"
+CLEANFILES+= libstdc++.so libstdc++.a
+
+afterinstall:
+ ln -sf ${DESTDIR}${LIBDIR}/lib${LIB}.so \
+ ${.OBJDIR}/libstdc++.so
+ ln -sf ${DESTDIR}${LIBDIR}/lib${LIB}.a \
+ ${.OBJDIR}/libstdc++.a
+.endif
+
.include <bsd.lib.mk>
OpenPOWER on IntegriCloud