196126Sobrien# $FreeBSD: releng/10.3/gnu/lib/libsupc++/Makefile 260096 2013-12-30 20:15:46Z dim $ 296340Sobrien 3248624Scognet.include <bsd.own.mk> 4248624Scognet 5207995SobrienGCCVER= 4.2 697433SpeterGCCDIR= ${.CURDIR}/../../../contrib/gcc 7169718SkanGCCLIB= ${.CURDIR}/../../../contrib/gcclibs 897433SpeterSRCDIR= ${.CURDIR}/../../../contrib/libstdc++/libsupc++ 996340Sobrien 10207995Sobrien.PATH: ${SRCDIR} ${GCCLIB}/libiberty 1197433Speter 1297433SpeterLIB= supc++ 13233749StheravenSHLIB_MAJOR=1 14169718SkanSRCS+= del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_arm.cc \ 15169718Skan eh_aux_runtime.cc eh_call.cc eh_catch.cc eh_exception.cc eh_globals.cc \ 16161457Skan eh_personality.cc eh_term_handler.cc eh_terminate.cc eh_throw.cc \ 17161457Skan eh_type.cc eh_unex_handler.cc guard.cc new_handler.cc new_op.cc \ 18161457Skan new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc \ 19161457Skan vec.cc vterminate.cc 2096340Sobrien 2196340Sobrien# from libiberty: 22132751SkanSRCS+= cp-demangle.c 2396340Sobrien 2496340SobrienCFLAGS+= -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H 25248624Scognet.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no" 26248624ScognetCFLAGS+= -D_GLIBCXX_SJLJ_EXCEPTIONS=1 27248624Scognet.endif 28169718SkanCFLAGS+= -I${GCCLIB}/include -I${SRCDIR} -I${GCCDIR} 29169718SkanCFLAGS+= -I${.CURDIR}/../libstdc++ -I. 30149195ScpercivaCFLAGS+= -frandom-seed=RepeatabilityConsideredGood 3197433SpeterCXXFLAGS+= -fno-implicit-templates -ffunction-sections -fdata-sections 32202808SsepotvinPO_CXXFLAGS= ${CXXFLAGS:N-ffunction-sections} 3396340Sobrien 3496340SobrienHDRS= exception new typeinfo cxxabi.h exception_defines.h 3596462SruINCS= ${HDRS:S;^;${SRCDIR}/;} 36207995SobrienINCSDIR=${INCLUDEDIR}/c++/${GCCVER} 3796340Sobrien 38248624Scognet.if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no" 39248624Scognetunwind.h: ${GCCDIR}/config/arm/unwind-arm.h 40248624Scognet.else 41169718Skanunwind.h: ${GCCDIR}/unwind-generic.h 42248624Scognet.endif 43248624Scognet 44248624Scognetunwind.h: 45169718Skan ln -sf ${.ALLSRC} ${.TARGET} 46169718Skan 47169718SkanSRCS+= unwind.h 48169718SkanCLEANFILES+= unwind.h 49169718Skan 50233749Stheraven# Symbol versioning 51233749Stheraven 52233749StheravenVERSION_MAP= ${.CURDIR}/Version.map 53233749Stheraven 54233749Stheraven 5596340Sobrien.include <bsd.lib.mk> 56241960Sdim 57241960Sdim# Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98. 58241960SdimCXXFLAGS:= ${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]} 59255500Sdim 60260096SdimCXXFLAGS.clang+= -stdlib=libstdc++ 61