Makefile revision 253917
174462Salfred# $FreeBSD: head/lib/libc++/Makefile 253917 2013-08-03 16:23:43Z dim $
274462Salfred
3261046SmavLIBCXXRTDIR=	${.CURDIR}/../../contrib/libcxxrt
4261046SmavHDRDIR=		${.CURDIR}/../../contrib/libc++/include
5261046SmavSRCDIR=		${.CURDIR}/../../contrib/libc++/src
68870SrgrimesCXXINCLUDEDIR=	${INCLUDEDIR}/c++/v${SHLIB_MAJOR}
7261046Smav
8261046Smav.PATH: ${SRCDIR}
9261046Smav
10261046SmavLIB=		c++
11261046SmavSHLIB_MAJOR=	1
12261046SmavSHLIB_LDSCRIPT=	libc++.ldscript
13261046Smav
14261046SmavSRCS+=		algorithm.cpp\
15261046Smav		bind.cpp\
16261046Smav		chrono.cpp\
17261046Smav		condition_variable.cpp\
18261046Smav		debug.cpp\
19261046Smav		exception.cpp\
20261046Smav		future.cpp\
21261046Smav		hash.cpp\
22261046Smav		ios.cpp\
23261046Smav		iostream.cpp\
24261046Smav		locale.cpp\
25261046Smav		memory.cpp\
26261046Smav		mutex.cpp\
27261046Smav		new.cpp\
28261046Smav		random.cpp\
291901Swollman		regex.cpp\
3074462Salfred		stdexcept.cpp\
3174462Salfred		string.cpp\
3274462Salfred		strstream.cpp\
331901Swollman		system_error.cpp\
341901Swollman		thread.cpp\
35136581Sobrien		typeinfo.cpp\
3692990Sobrien		utility.cpp\
371901Swollman		valarray.cpp
3892990Sobrien
3992990SobrienCXXRT_SRCS+=	libelftc_dem_gnu3.c\
401901Swollman		terminate.cc\
418870Srgrimes		dynamic_cast.cc\
421901Swollman		memory.cc\
4374462Salfred		auxhelper.cc\
441901Swollman		exception.cc\
451901Swollman		stdexcept.cc\
461901Swollman		typeinfo.cc\
4775094Siedowse		guard.cc
4874462Salfred
4921070Speter.for _S in ${CXXRT_SRCS}
501901SwollmanSTATICOBJS+=	cxxrt_${_S:R}.o
5174462Salfredcxxrt_${_S}:
5274462Salfred	ln -sf ${LIBCXXRTDIR}/${_S} ${.TARGET}
5374462Salfred.endfor
541901Swollman
5574462SalfredWARNS=		0
5611666SphkCFLAGS+=	-I${HDRDIR} -I${LIBCXXRTDIR} -nostdlib -DLIBCXXRT
5771579Sdeischen.if empty(CXXFLAGS:M-std=*)
58156090SdeischenCXXFLAGS+=	-std=c++0x
591901Swollman.endif
6074462Salfred
6174462SalfredDPADD=		${LIBCXXRT}
6274462SalfredLDADD=		-lcxxrt
631901SwollmanLDFLAGS+=	--verbose
6474462SalfredINCSGROUPS=	STD EXT
6574462Salfred
6674462SalfredSTD_HEADERS=	__bit_reference\
6774462Salfred		__config\
6874462Salfred		__debug\
6974462Salfred		__functional_03\
7074462Salfred		__functional_base\
7174462Salfred		__functional_base_03\
7274462Salfred		__hash_table\
7374462Salfred		__locale\
7474462Salfred		__mutex_base\
7574462Salfred		__split_buffer\
7674462Salfred		__sso_allocator\
7774462Salfred		__std_stream\
78204950Sjhb		__tree\
79204950Sjhb		__tuple\
80204950Sjhb		__tuple_03\
8174462Salfred		__undef_min_max\
82204950Sjhb		algorithm\
8392905Sobrien		array\
8474462Salfred		atomic\
8574462Salfred		bitset\
8674462Salfred		cassert\
871901Swollman		ccomplex\
8874462Salfred		cctype\
8974462Salfred		cerrno\
9074462Salfred		cfenv\
9174462Salfred		cfloat\
9274462Salfred		chrono\
9374462Salfred		cinttypes\
9474462Salfred		ciso646\
9574462Salfred		climits\
9674462Salfred		clocale\
97204950Sjhb		cmath\
98204950Sjhb		codecvt\
99204950Sjhb		complex\
100204950Sjhb		complex.h\
101204950Sjhb		condition_variable\
102204950Sjhb		csetjmp\
103204950Sjhb		csignal\
10474462Salfred		cstdarg\
10574462Salfred		cstdbool\
10674462Salfred		cstddef\
10774462Salfred		cstdint\
10874462Salfred		cstdio\
10974462Salfred		cstdlib\
11074462Salfred		cstring\
11174462Salfred		ctgmath\
11274462Salfred		ctime\
11374462Salfred		cwchar\
11474462Salfred		cwctype\
11574462Salfred		deque\
11674462Salfred		exception\
11774462Salfred		forward_list\
11874462Salfred		fstream\
11974462Salfred		functional\
12074462Salfred		future\
12174462Salfred		initializer_list\
12274462Salfred		iomanip\
1231901Swollman		ios\
1241901Swollman		iosfwd\
12574462Salfred		iostream\
1261901Swollman		istream\
12774462Salfred		iterator\
12874462Salfred		limits\
12974462Salfred		list\
130204950Sjhb		locale\
131204950Sjhb		map\
132204950Sjhb		memory\
133204950Sjhb		mutex\
134204950Sjhb		new\
13574462Salfred		numeric\
13674462Salfred		ostream\
1371901Swollman		queue\
13874462Salfred		random\
13974462Salfred		ratio\
14074462Salfred		regex\
14174462Salfred		scoped_allocator\
14274462Salfred		set\
14374462Salfred		sstream\
14474462Salfred		stack\
14574462Salfred		stdexcept\
14674462Salfred		streambuf\
14774462Salfred		string\
14874462Salfred		strstream\
14974462Salfred		system_error\
15074462Salfred		tgmath.h\
1511901Swollman		thread\
152121651Smbr		tuple\
15374462Salfred		type_traits\
15474462Salfred		typeindex\
15574462Salfred		typeinfo\
15674462Salfred		unordered_map\
15774462Salfred		unordered_set\
15874462Salfred		utility\
15974462Salfred		valarray\
16074462Salfred		vector
16174462SalfredRT_HEADERS=	cxxabi.h\
16274462Salfred		unwind.h\
16374462Salfred		unwind-arm.h\
16474462Salfred		unwind-itanium.h
16574462Salfred
16674462Salfred.for hdr in ${STD_HEADERS}
16774462SalfredSTD+=		${HDRDIR}/${hdr}
16874462Salfred.endfor
16974462Salfred.for hdr in ${RT_HEADERS}
17074462SalfredSTD+=		${LIBCXXRTDIR}/${hdr}
1711901Swollman.endfor
17274462SalfredSTDDIR=		${CXXINCLUDEDIR}
17374462Salfred
17474462SalfredEXT_HEADERS=	__hash\
17574462Salfred		hash_map\
17674462Salfred		hash_set
1771901Swollman
1781901Swollman.for hdr in ${EXT_HEADERS}
17974462SalfredEXT+=		${HDRDIR}/ext/${hdr}
18074462Salfred.endfor
18174462SalfredEXTDIR=		${CXXINCLUDEDIR}/ext
18274462Salfred
18374462Salfred.include <bsd.lib.mk>
18474462Salfred