]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/blob - lib/libc++/Makefile
MFC r239680:
[FreeBSD/stable/9.git] / lib / libc++ / Makefile
1 # $FreeBSD$
2
3 LIBCXXRTDIR=    ${.CURDIR}/../../contrib/libcxxrt
4 HDRDIR=         ${.CURDIR}/../../contrib/libc++/include
5 SRCDIR=         ${.CURDIR}/../../contrib/libc++/src
6 CXXINCLUDEDIR=  ${INCLUDEDIR}/c++/v${SHLIB_MAJOR}
7
8 .PATH: ${SRCDIR}
9
10 LIB=            c++
11 SHLIB_MAJOR=    1
12
13 SRCS+=          algorithm.cpp\
14                 bind.cpp\
15                 chrono.cpp\
16                 condition_variable.cpp\
17                 debug.cpp\
18                 exception.cpp\
19                 future.cpp\
20                 hash.cpp\
21                 ios.cpp\
22                 iostream.cpp\
23                 locale.cpp\
24                 memory.cpp\
25                 mutex.cpp\
26                 new.cpp\
27                 random.cpp\
28                 regex.cpp\
29                 stdexcept.cpp\
30                 string.cpp\
31                 strstream.cpp\
32                 system_error.cpp\
33                 thread.cpp\
34                 typeinfo.cpp\
35                 utility.cpp\
36                 valarray.cpp
37
38 CXXRT_SRCS+=    libelftc_dem_gnu3.c\
39                 terminate.cc\
40                 dynamic_cast.cc\
41                 memory.cc\
42                 auxhelper.cc\
43                 exception.cc\
44                 stdexcept.cc\
45                 typeinfo.cc\
46                 guard.cc
47
48 .for _S in ${CXXRT_SRCS}
49 STATICOBJS+=    cxxrt_${_S:R}.o
50 cxxrt_${_S}:
51         ln -sf ${LIBCXXRTDIR}/${_S} ${.TARGET}
52 .endfor
53
54 WARNS=          0
55 CFLAGS+=        -I${HDRDIR} -I${LIBCXXRTDIR} -nostdlib -DLIBCXXRT
56 CXXFLAGS+=      -std=c++0x
57
58 DPADD=          ${LIBCXXRT}
59 LDADD=          -lcxxrt
60 LDFLAGS+=       --verbose
61 INCSGROUPS=     STD EXT
62
63 STD_HEADERS=    __bit_reference\
64                 __config\
65                 __debug\
66                 __functional_03\
67                 __functional_base\
68                 __functional_base_03\
69                 __hash_table\
70                 __locale\
71                 __mutex_base\
72                 __split_buffer\
73                 __sso_allocator\
74                 __std_stream\
75                 __tree\
76                 __tuple\
77                 __tuple_03\
78                 __undef_min_max\
79                 algorithm\
80                 array\
81                 atomic\
82                 bitset\
83                 cassert\
84                 ccomplex\
85                 cctype\
86                 cerrno\
87                 cfenv\
88                 cfloat\
89                 chrono\
90                 cinttypes\
91                 ciso646\
92                 climits\
93                 clocale\
94                 cmath\
95                 codecvt\
96                 complex\
97                 complex.h\
98                 condition_variable\
99                 csetjmp\
100                 csignal\
101                 cstdarg\
102                 cstdbool\
103                 cstddef\
104                 cstdint\
105                 cstdio\
106                 cstdlib\
107                 cstring\
108                 ctgmath\
109                 ctime\
110                 cwchar\
111                 cwctype\
112                 deque\
113                 exception\
114                 forward_list\
115                 fstream\
116                 functional\
117                 future\
118                 initializer_list\
119                 iomanip\
120                 ios\
121                 iosfwd\
122                 iostream\
123                 istream\
124                 iterator\
125                 limits\
126                 list\
127                 locale\
128                 map\
129                 memory\
130                 mutex\
131                 new\
132                 numeric\
133                 ostream\
134                 queue\
135                 random\
136                 ratio\
137                 regex\
138                 scoped_allocator\
139                 set\
140                 sstream\
141                 stack\
142                 stdexcept\
143                 streambuf\
144                 string\
145                 strstream\
146                 system_error\
147                 tgmath.h\
148                 thread\
149                 tuple\
150                 type_traits\
151                 typeindex\
152                 typeinfo\
153                 unordered_map\
154                 unordered_set\
155                 utility\
156                 valarray\
157                 vector
158 RT_HEADERS=     cxxabi.h\
159                 unwind.h\
160                 unwind-arm.h\
161                 unwind-itanium.h
162
163 .for hdr in ${STD_HEADERS}
164 STD+=           ${HDRDIR}/${hdr}
165 .endfor
166 .for hdr in ${RT_HEADERS}
167 STD+=           ${LIBCXXRTDIR}/${hdr}
168 .endfor
169 STDDIR=         ${CXXINCLUDEDIR}
170
171 EXT_HEADERS=    __hash\
172                 hash_map\
173                 hash_set
174
175 .for hdr in ${EXT_HEADERS}
176 EXT+=           ${HDRDIR}/ext/${hdr}
177 .endfor
178 EXTDIR=         ${CXXINCLUDEDIR}/ext
179
180 .include <bsd.lib.mk>