5 LIBCXXRTDIR= ${.CURDIR}/../../contrib/libcxxrt
6 HDRDIR= ${.CURDIR}/../../contrib/libc++/include
7 SRCDIR= ${.CURDIR}/../../contrib/libc++/src
8 CXXINCLUDEDIR= ${INCLUDEDIR}/c++/v${SHLIB_MAJOR}
14 SHLIB_LDSCRIPT= libc++.ldscript
19 condition_variable.cpp\
43 CXXRT_SRCS+= libelftc_dem_gnu3.c\
53 .for _S in ${CXXRT_SRCS}
54 STATICOBJS+= cxxrt_${_S:R}.o
56 ln -sf ${LIBCXXRTDIR}/${_S} ${.TARGET}
60 CFLAGS+= -I${HDRDIR} -I${LIBCXXRTDIR} -nostdlib -DLIBCXXRT
61 .if empty(CXXFLAGS:M-std=*)
67 INCSGROUPS= STD EXP EXT
69 STD_HEADERS= __bit_reference\
166 RT_HEADERS= cxxabi.h\
171 .for hdr in ${STD_HEADERS}
172 STD+= ${HDRDIR}/${hdr}
173 INCSLINKS+= ${CXXINCLUDEDIR}/${hdr} ${CXXINCLUDEDIR}/tr1/${hdr}
175 .for hdr in ${RT_HEADERS}
176 STD+= ${LIBCXXRTDIR}/${hdr}
178 STDDIR= ${CXXINCLUDEDIR}
180 EXP_HEADERS= __config\
187 .for hdr in ${EXP_HEADERS}
188 EXP+= ${HDRDIR}/experimental/${hdr}
190 EXPDIR= ${CXXINCLUDEDIR}/experimental
196 .for hdr in ${EXT_HEADERS}
197 EXT+= ${HDRDIR}/ext/${hdr}
199 EXTDIR= ${CXXINCLUDEDIR}/ext
201 .if ${MK_GNUCXX} == "no" && ${COMPILER_TYPE} == "gcc"
202 CLEANFILES+= libstdc++.so libstdc++.a
205 ln -sf ${DESTDIR}${LIBDIR}/lib${LIB}.so \
206 ${.OBJDIR}/libstdc++.so
207 ln -sf ${DESTDIR}${LIBDIR}/lib${LIB}.a \
208 ${.OBJDIR}/libstdc++.a
211 .include <bsd.lib.mk>