]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - gnu/lib/libsupc++/Makefile
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / gnu / lib / libsupc++ / Makefile
1 # $FreeBSD$
2
3 .include <bsd.own.mk>
4
5 GCCVER= 4.2
6 GCCDIR= ${.CURDIR}/../../../contrib/gcc
7 GCCLIB= ${.CURDIR}/../../../contrib/gcclibs
8 SRCDIR= ${.CURDIR}/../../../contrib/libstdc++/libsupc++
9
10 .PATH: ${SRCDIR} ${GCCLIB}/libiberty
11
12 LIB=    supc++
13 SHLIB_MAJOR=1
14 SRCS+=  del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc eh_alloc.cc eh_arm.cc \
15         eh_aux_runtime.cc eh_call.cc eh_catch.cc eh_exception.cc eh_globals.cc \
16         eh_personality.cc eh_term_handler.cc eh_terminate.cc eh_throw.cc \
17         eh_type.cc eh_unex_handler.cc guard.cc new_handler.cc new_op.cc \
18         new_opnt.cc new_opv.cc new_opvnt.cc pure.cc tinfo.cc tinfo2.cc \
19         vec.cc vterminate.cc
20
21 # from libiberty:
22 SRCS+=  cp-demangle.c
23
24 CFLAGS+=        -DIN_GLIBCPP_V3 -DHAVE_CONFIG_H
25 .if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} == "no"
26 CFLAGS+=        -D_GLIBCXX_SJLJ_EXCEPTIONS=1
27 .endif
28 CFLAGS+=        -I${GCCLIB}/include -I${SRCDIR} -I${GCCDIR}
29 CFLAGS+=        -I${.CURDIR}/../libstdc++ -I.
30 CFLAGS+=        -frandom-seed=RepeatabilityConsideredGood
31 CXXFLAGS+=      -fno-implicit-templates -ffunction-sections -fdata-sections
32 PO_CXXFLAGS=    ${CXXFLAGS:N-ffunction-sections}
33
34 HDRS=   exception new typeinfo cxxabi.h exception_defines.h
35 INCS=   ${HDRS:S;^;${SRCDIR}/;}
36 INCSDIR=${INCLUDEDIR}/c++/${GCCVER}
37
38 .if ${MACHINE_CPUARCH} == "arm" && ${MK_ARM_EABI} != "no"
39 unwind.h: ${GCCDIR}/config/arm/unwind-arm.h
40 .else
41 unwind.h: ${GCCDIR}/unwind-generic.h
42 .endif
43
44 unwind.h:
45         ln -sf ${.ALLSRC} ${.TARGET}
46
47 SRCS+=          unwind.h
48 CLEANFILES+=    unwind.h
49
50 # Symbol versioning
51
52 VERSION_MAP=    ${.CURDIR}/Version.map
53
54
55 .include <bsd.lib.mk>
56
57 # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98.
58 CXXFLAGS:=      ${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]}
59
60 .if ${COMPILER_TYPE} == "clang"
61 CXXFLAGS+=      -stdlib=libstdc++
62 .endif