]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - lib/libc++/Makefile
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.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 .if empty(CXXFLAGS:M-std=*)
57 CXXFLAGS+=      -std=c++0x
58 .endif
59
60 DPADD=          ${LIBCXXRT}
61 LDADD=          -lcxxrt
62 LDFLAGS+=       --verbose
63 INCSGROUPS=     STD EXT
64
65 STD_HEADERS=    __bit_reference\
66                 __config\
67                 __debug\
68                 __functional_03\
69                 __functional_base\
70                 __functional_base_03\
71                 __hash_table\
72                 __locale\
73                 __mutex_base\
74                 __split_buffer\
75                 __sso_allocator\
76                 __std_stream\
77                 __tree\
78                 __tuple\
79                 __tuple_03\
80                 __undef_min_max\
81                 algorithm\
82                 array\
83                 atomic\
84                 bitset\
85                 cassert\
86                 ccomplex\
87                 cctype\
88                 cerrno\
89                 cfenv\
90                 cfloat\
91                 chrono\
92                 cinttypes\
93                 ciso646\
94                 climits\
95                 clocale\
96                 cmath\
97                 codecvt\
98                 complex\
99                 complex.h\
100                 condition_variable\
101                 csetjmp\
102                 csignal\
103                 cstdarg\
104                 cstdbool\
105                 cstddef\
106                 cstdint\
107                 cstdio\
108                 cstdlib\
109                 cstring\
110                 ctgmath\
111                 ctime\
112                 cwchar\
113                 cwctype\
114                 deque\
115                 exception\
116                 forward_list\
117                 fstream\
118                 functional\
119                 future\
120                 initializer_list\
121                 iomanip\
122                 ios\
123                 iosfwd\
124                 iostream\
125                 istream\
126                 iterator\
127                 limits\
128                 list\
129                 locale\
130                 map\
131                 memory\
132                 mutex\
133                 new\
134                 numeric\
135                 ostream\
136                 queue\
137                 random\
138                 ratio\
139                 regex\
140                 scoped_allocator\
141                 set\
142                 sstream\
143                 stack\
144                 stdexcept\
145                 streambuf\
146                 string\
147                 strstream\
148                 system_error\
149                 tgmath.h\
150                 thread\
151                 tuple\
152                 type_traits\
153                 typeindex\
154                 typeinfo\
155                 unordered_map\
156                 unordered_set\
157                 utility\
158                 valarray\
159                 vector
160 RT_HEADERS=     cxxabi.h\
161                 unwind.h\
162                 unwind-arm.h\
163                 unwind-itanium.h
164
165 .for hdr in ${STD_HEADERS}
166 STD+=           ${HDRDIR}/${hdr}
167 .endfor
168 .for hdr in ${RT_HEADERS}
169 STD+=           ${LIBCXXRTDIR}/${hdr}
170 .endfor
171 STDDIR=         ${CXXINCLUDEDIR}
172
173 EXT_HEADERS=    __hash\
174                 hash_map\
175                 hash_set
176
177 .for hdr in ${EXT_HEADERS}
178 EXT+=           ${HDRDIR}/ext/${hdr}
179 .endfor
180 EXTDIR=         ${CXXINCLUDEDIR}/ext
181
182 .include <bsd.lib.mk>