]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/config/test/link/bc_gen.sh
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / config / test / link / bc_gen.sh
1 #! /usr/bin/env bash
2
3 # copyright John Maddock 2005
4 # Use, modification and distribution are subject to the
5 # Boost Software License, Version 1.0. (See accompanying file
6 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7
8 libname=""
9 src=""
10 header=""
11 all_dep=""
12
13 # current makefile:
14 out=""
15 # temporary file:
16 tout=""
17 # install target temp file:
18 iout=""
19 # debug flag:
20 debug="no"
21 # compile options:
22 opts=""
23 # main output sub-directory:
24 subdir=""
25
26 #######################################################################
27 #
28 # section for C++ Builder
29 #
30 #######################################################################
31
32 function bcb_gen_lib()
33 {
34 all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe"
35 echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout
36 #
37 # set up section comments:
38 cat >> $tout << EOF
39 ########################################################
40 #
41 # section for $libname.lib
42 #
43 ########################################################
44 EOF
45 #
46 # process source files:
47 all_obj=""
48 all_lib_obj=""
49 for file in $src
50 do
51 obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
52 obj="$subdir\\$libname\\$obj"
53 all_obj="$all_obj $obj"
54 all_lib_obj="$all_lib_obj \"$obj\""
55 echo "$obj: $file \$(ALL_HEADER)" >> $tout
56 echo " bcc32 @&&|" >> $tout
57 echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -o$obj $file" >> $tout
58 echo "|" >> $tout
59 echo "" >> $tout
60 done
61 #
62 # now for the directories for this library:
63 echo "$subdir\\$libname : " >> $tout
64 echo " -@mkdir $subdir\\$libname" >> $tout
65 echo "" >> $tout
66 #
67 # now for the clean options for this library:
68 all_clean="$all_clean $libname""_clean"
69 echo "$libname"_clean : >> $tout
70 echo " del $subdir\\$libname\\"'*.obj' >> $tout
71 echo " del $subdir\\$libname\\"'*.il?' >> $tout
72 echo " del $subdir\\$libname\\"'*.csm' >> $tout
73 echo " del $subdir\\$libname\\"'*.tds' >> $tout
74 echo "" >> $tout
75 #
76 # now for the main target for this library:
77 echo $subdir\\$libname.lib : $all_obj >> $tout
78 echo " tlib @&&|" >> $tout
79 echo "/P128 /C /u /a \$(XSFLAGS) \"$subdir\\$libname.lib\" $all_lib_obj" >> $tout
80 echo "|" >> $tout
81 echo "" >> $tout
82 # now the test program:
83 echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout
84 echo " bcc32 \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout
85 echo " echo running test progam $subdir"'\'"$libname.exe" >> $tout
86 echo " $subdir"'\'"$libname.exe" >> $tout
87 echo "" >> $tout
88 }
89
90 function bcb_gen_dll()
91 {
92 all_dep="$all_dep $subdir\\$libname $subdir\\$libname.lib $subdir\\$libname.exe"
93 echo " copy $subdir\\$libname.lib \$(BCROOT)\\lib" >> $iout
94 echo " copy $subdir\\$libname.dll \$(BCROOT)\\bin" >> $iout
95 echo " copy $subdir\\$libname.tds \$(BCROOT)\\bin" >> $iout
96 #
97 # set up section comments:
98 cat >> $tout << EOF
99 ########################################################
100 #
101 # section for $libname.lib
102 #
103 ########################################################
104 EOF
105 #
106 # process source files:
107 all_obj=""
108 for file in $src
109 do
110 obj=`echo "$file" | sed 's/\(.*\)cpp/\1obj/g'`
111 obj="$subdir\\$libname\\$obj"
112 all_obj="$all_obj $obj"
113 echo "$obj: $file \$(ALL_HEADER)" >> $tout
114 echo " bcc32 @&&|" >> $tout
115 echo "-c \$(INCLUDES) $opts \$(CXXFLAGS) -DBOOST_DYN_LINK -o$obj $file" >> $tout
116 echo "|" >> $tout
117 echo "" >> $tout
118 done
119 #
120 # now for the directories for this library:
121 echo "$subdir\\$libname :" >> $tout
122 echo " -@mkdir $subdir\\$libname" >> $tout
123 echo "" >> $tout
124 #
125 # now for the clean options for this library:
126 all_clean="$all_clean $libname""_clean"
127 echo "$libname"_clean : >> $tout
128 echo " del $subdir\\$libname\\"'*.obj' >> $tout
129 echo " del $subdir\\$libname\\"'*.il?' >> $tout
130 echo " del $subdir\\$libname\\"'*.csm' >> $tout
131 echo " del $subdir\\$libname\\"'*.tds' >> $tout
132 echo " del $subdir\\"'*.tds' >> $tout
133 echo "" >> $tout
134 #
135 # now for the main target for this library:
136 echo $subdir\\$libname.lib : $all_obj >> $tout
137 echo " bcc32 @&&|" >> $tout
138 echo "-lw-dup -lw-dpl $opts -e$subdir\\$libname.dll \$(XLFLAGS) $all_obj \$(LIBS)" >> $tout
139 echo "|" >> $tout
140 echo " implib -w $subdir\\$libname.lib $subdir\\$libname.dll" >> $tout
141 echo "" >> $tout
142 # now the test program:
143 echo "$subdir\\$libname.exe : main.cpp $subdir\\$libname.lib" >> $tout
144 echo " bcc32 \$(INCLUDES) $opts /DBOOST_LIB_DIAGNOSTIC=1 \$(CXXFLAGS) -DBOOST_DYN_LINK -L./$subdir -e./$subdir/$libname.exe main.cpp" >> $tout
145 echo " echo running test program $subdir"'\'"$libname.exe" >> $tout
146 echo " $subdir"'\'"$libname.exe" >> $tout
147 echo "" >> $tout
148 }
149
150
151
152 function bcb_gen()
153 {
154 tout="temp"
155 iout="temp_install"
156 all_dep="$subdir"
157 all_clean=""
158 echo > $out
159 echo > $tout
160 rm -f $iout
161
162 libname="liblink_test-${subdir}-s-${boost_version}"
163 opts="-tWM- -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../"
164 bcb_gen_lib
165
166 libname="liblink_test-${subdir}-mt-s-${boost_version}"
167 opts="-tWM -D_NO_VCL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../"
168 bcb_gen_lib
169
170 libname="link_test-${subdir}-mt-${boost_version}"
171 opts="-tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
172 bcb_gen_dll
173
174 libname="link_test-${subdir}-${boost_version}"
175 opts="-tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
176 bcb_gen_dll
177
178 libname="liblink_test-${subdir}-mt-${boost_version}"
179 opts="-tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
180 bcb_gen_lib
181
182 libname="liblink_test-${subdir}-${boost_version}"
183 opts="-tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -O2 -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
184 bcb_gen_lib
185 #
186 # debug versions:
187 libname="liblink_test-${subdir}-sd-${boost_version}"
188 opts="-tWM- -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8037 -w-8057 -DSTRICT; -I\$(BCROOT)\include;../../../../"
189 bcb_gen_lib
190
191 libname="liblink_test-${subdir}-mt-sd-${boost_version}"
192 opts="-tWM -D_NO_VCL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../"
193 bcb_gen_lib
194
195 libname="link_test-${subdir}-mt-d-${boost_version}"
196 opts="-tWD -tWM -tWR -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
197 bcb_gen_dll
198
199 libname="link_test-${subdir}-d-${boost_version}"
200 opts="-tWD -tWR -tWM- -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
201 bcb_gen_dll
202
203 libname="liblink_test-${subdir}-mt-d-${boost_version}"
204 opts="-tWD -tWM -tWR -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
205 bcb_gen_lib
206
207 libname="liblink_test-${subdir}-d-${boost_version}"
208 opts="-tWD -tWR -tWM- -DBOOST_REGEX_STATIC_LINK -D_NO_VCL -D_RTLDLL -v -Ve -Vx -w-inl -w-aus -w-rch -w-8012 -w-8057 -w-8037 -DSTRICT; -I\$(BCROOT)\include;../../../../ -L\$(BCROOT)\lib;\$(BCROOT)\lib\release;"
209 bcb_gen_lib
210
211
212 cat > $out << EOF
213 # copyright John Maddock 2005
214 # Use, modification and distribution are subject to the
215 # Boost Software License, Version 1.0. (See accompanying file
216 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
217 #
218 # auto generated makefile for C++ Builder
219 #
220 # usage:
221 # make
222 # brings libraries up to date
223 # make install
224 # brings libraries up to date and copies binaries to your C++ Builder /lib and /bin directories (recomended)
225 # make clean
226 # removes all temporary files.
227
228 #
229 # Add additional compiler options here:
230 #
231 CXXFLAGS=
232 #
233 # Add additional include directories here:
234 #
235 INCLUDES=
236 #
237 # add additional linker flags here:
238 #
239 XLFLAGS=
240 #
241 # add additional libraries to link to here:
242 #
243 LIBS=
244 #
245 # add additional static-library creation flags here:
246 #
247 XSFLAGS=
248
249 !ifndef BCROOT
250 BCROOT=\$(MAKEDIR)\\..
251 !endif
252
253 EOF
254 echo "" >> $out
255 echo "ALL_HEADER=$header" >> $out
256 echo "" >> $out
257 echo "all : $all_dep" >> $out
258 echo >> $out
259 echo "clean : $all_clean" >> $out
260 echo >> $out
261 echo "install : all" >> $out
262 cat $iout >> $out
263 echo >> $out
264 echo $subdir : >> $out
265 echo " -@mkdir $subdir" >> $out
266 echo "" >> $out
267
268 cat $tout >> $out
269 }
270
271 . common.sh
272
273 #
274 # generate C++ Builder 6 files:
275 out="borland.mak"
276 subdir="borland"
277 has_stlport="yes"
278 bcb_gen
279
280
281
282
283
284
285
286