summaryrefslogtreecommitdiffstats
path: root/lib/libc++
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2012-08-25 13:15:44 +0000
committerdim <dim@FreeBSD.org>2012-08-25 13:15:44 +0000
commit9e6c8f62e01395ccaed081037785ded263361096 (patch)
treee18e7c0ac0bbc9ebbb9382c8cfe2f0df93506c0e /lib/libc++
parented5bc52cd31c1c95121758aa5ae13e0125a4f2e6 (diff)
downloadFreeBSD-src-9e6c8f62e01395ccaed081037785ded263361096.zip
FreeBSD-src-9e6c8f62e01395ccaed081037785ded263361096.tar.gz
Add libcxxrt's objects (prefixing them with cxxrt_ to avoid collisions)
to libc++.a and libc++_p.a, to make static linking of C++ executables with libc++ easier. This is similar to the approach used in libstdc++. MFC after: 2 weeks
Diffstat (limited to 'lib/libc++')
-rw-r--r--lib/libc++/Makefile19
1 files changed, 18 insertions, 1 deletions
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index 1c65cc3..6e95823 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -35,8 +35,25 @@ SRCS+= algorithm.cpp\
utility.cpp\
valarray.cpp
+CXXRT_SRCS+= libelftc_dem_gnu3.c\
+ terminate.cc\
+ dynamic_cast.cc\
+ memory.cc\
+ auxhelper.cc\
+ exception.cc\
+ stdexcept.cc\
+ typeinfo.cc\
+ guard.cc
+
+.for _S in ${CXXRT_SRCS}
+STATICOBJS+= cxxrt_${_S:R}.o
+cxxrt_${_S}:
+ ln -sf ${LIBCXXRTDIR}/${_S} ${.TARGET}
+.endfor
+
WARNS= 0
-CXXFLAGS+= -I${HDRDIR} -I${LIBCXXRTDIR} -std=c++0x -nostdlib -DLIBCXXRT
+CFLAGS+= -I${HDRDIR} -I${LIBCXXRTDIR} -nostdlib -DLIBCXXRT
+CXXFLAGS+= -std=c++0x
DPADD= ${LIBCXXRT}
LDADD= -lcxxrt
OpenPOWER on IntegriCloud