/[eiffelstudio]/trunk/Delivery/scripts/windows/make_exes.btm
ViewVC logotype

Contents of /trunk/Delivery/scripts/windows/make_exes.btm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 32729 - (show annotations)
Fri Jul 5 19:05:28 2002 UTC (17 years, 7 months ago) by manus
File size: 11690 byte(s)
Enable scripts to generate a free or enterprise version of EiffelStudio.

1 REM Clean up the files
2 remtrace Update all source files.
3 cdd %EIFFEL_SRC
4 exprt -r %DEFAULT_CVS_TAG -d Eiffel Eiffel
5 exprt -r %DEFAULT_CVS_TAG -d dotnet "Src/dotnet"
6 exprt -r %DEFAULT_CVS_TAG -d C_library "Src/C_library"
7
8 remtrace Compile C code of the libraries
9 remtrace "A tout seigneur tout honneur", let's start with the run-time
10 md %INSTALL_DIR\releases
11 md %INSTALL_DIR\releases\enterprise
12 md %INSTALL_DIR\releases\free_version
13 md %INSTALL_DIR\releases\evaluation
14
15 mkdir %INSTALL_DIR\releases\free_version\lib
16 mkdir %INSTALL_DIR\releases\free_version\lib\bcb
17 mkdir %INSTALL_DIR\releases\free_version\lib\msc
18 mkdir %INSTALL_DIR\releases\enterprise\lib
19 mkdir %INSTALL_DIR\releases\enterprise\lib\bcb
20 mkdir %INSTALL_DIR\releases\enterprise\lib\msc
21
22
23 iff not defined BUILD_ENTERPRISE_ONLY then
24 remtrace Compile the non-commercial run-times
25 remtrace Compile a run-time for Borland
26 exprt -r %DEFAULT_CVS_TAG -d C runtime
27 cd C\run-time
28 sed -e "s/\/\*\#define\ NON_COMMERCIAL\*\/$/\#define\ NON_COMMERCIAL/g" main.c >> new_main.c
29 move new_main.c main.c
30 cd ..
31 alias pause echo
32 call configure win32 b >>& %INSTALL_LOG
33 unalias pause
34 cd %EIFFEL_SRC
35 copy C\run-time\LIB\*.lib %INSTALL_DIR\releases\free_version\lib\bcb
36 fullrf %INSTALL_DIR\releases\free_version\lib\bcb\ebench.lib
37
38 remtrace Compile a dynamic run-time
39 fullrd C
40 exprt -r %DEFAULT_CVS_TAG -d C runtime
41 cd C\run-time
42 sed -e "s/\/\*\#define\ NON_COMMERCIAL\*\/$/\#define\ NON_COMMERCIAL/g" main.c >> new_main.c
43 move new_main.c main.c
44 cd ..
45 sed -e "s/d:\\apps\\MSVC\\VC98/%C_COMPILER_PATH/g" config.msh >> new_config.msh
46 move new_config.msh config.msh
47 sed -e "s/\-W3/\-DEIF_MAKE_DLL\ \-W3/g" config.msh >> new_config.msh
48 move new_config.msh config.msh
49 sed -e "s/standard\ mtstandard/dll\ mtdll/g" config.msh >> new_config.msh
50 move new_config.msh config.msh
51 alias pause echo
52 call configure win32 m >>& %INSTALL_LOG
53 unalias pause
54 cd %EIFFEL_SRC
55 copy C\run-time\LIB\*dll* %INSTALL_DIR\releases\free_version\lib\msc
56 fullrf %INSTALL_DIR\releases\free_version\lib\msc\*.exp
57 fullrf %INSTALL_DIR\releases\free_version\lib\msc\ebench.lib
58 cd %EIFFEL_SRC
59
60 remtrace Compile a run-time for Microsoft
61 fullrd C
62 exprt -r %DEFAULT_CVS_TAG -d C runtime
63 cd C\run-time
64 sed -e "s/\/\*\#define\ NON_COMMERCIAL\*\/$/\#define\ NON_COMMERCIAL/g" main.c >> new_main.c
65 move new_main.c main.c
66 cd ..
67 sed -e "s/d:\\apps\\MSVC\\VC98/%C_COMPILER_PATH/g" config.msh >> new_config.msh
68 move new_config.msh config.msh
69 alias pause echo
70 call configure win32 m >>& %INSTALL_LOG
71 unalias pause
72 cd %EIFFEL_SRC
73 copy C\run-time\LIB\*.lib %INSTALL_DIR\releases\free_version\lib\msc
74 copy C\desc\ise_desc.dll %INSTALL_DIR\releases\free_version\lib\msc
75 copy C\desc\ise_desc.lib %INSTALL_DIR\releases\free_version\lib\msc
76 fullrf %INSTALL_DIR\releases\free_version\lib\msc\ebench.lib
77
78 remtrace Copying header to new delivery
79 copy %EIFFEL_SRC\C\run-time\*.h %INSTALL_DIR\studio\spec\%ISE_PLATFORM\include
80 copy %EIFFEL_SRC\C\eif_confmagic.h %INSTALL_DIR\studio\spec\%ISE_PLATFORM\include
81 cd %EIFFEL_SRC
82 endiff
83
84 remtrace Compile the commercial run-times
85 remtrace Compile a run-time for Borland
86 fullrd C
87 exprt -r %DEFAULT_CVS_TAG -d C runtime
88 cd C
89 alias pause echo
90 call configure win32 b >>& %INSTALL_LOG
91 unalias pause
92 cd %EIFFEL_SRC
93 copy C\run-time\LIB\*.lib %INSTALL_DIR\releases\enterprise\lib\bcb
94 fullrf %INSTALL_DIR\releases\enterprise\lib\bcb\ebench.lib
95 remtrace Compile a dynamic run-time
96 fullrd C
97 exprt -r %DEFAULT_CVS_TAG -d C runtime
98 cd C
99 sed -e "s/d:\\apps\\MSVC\\VC98/%C_COMPILER_PATH/g" config.msh >> new_config.msh
100 move new_config.msh config.msh
101 sed -e "s/\-W3/\-DEIF_MAKE_DLL\ \-W3/g" config.msh >> new_config.msh
102 move new_config.msh config.msh
103 sed -e "s/standard\ mtstandard/dll\ mtdll/g" config.msh >> new_config.msh
104 move new_config.msh config.msh
105 alias pause echo
106 call configure win32 m >>& %INSTALL_LOG
107 unalias pause
108 cd %EIFFEL_SRC
109 copy C\run-time\LIB\*dll* %INSTALL_DIR\releases\enterprise\lib\msc
110 fullrf %INSTALL_DIR\releases\enterprise\lib\msc\*.exp
111 fullrf %INSTALL_DIR\releases\enterprise\lib\msc\ebench.lib
112 cd %EIFFEL_SRC
113 remtrace Compile a run-time for Microsoft
114 fullrd C
115 exprt -r %DEFAULT_CVS_TAG -d C runtime
116 cd C
117 sed -e "s/d:\\apps\\MSVC\\VC98/%C_COMPILER_PATH/g" config.msh >> new_config.msh
118 move new_config.msh config.msh
119 alias pause echo
120 call configure win32 m >>& %INSTALL_LOG
121 unalias pause
122 cd %EIFFEL_SRC
123 copy C\run-time\LIB\*.lib %INSTALL_DIR\releases\enterprise\lib\msc
124 copy C\desc\ise_desc.dll %INSTALL_DIR\releases\enterprise\lib\msc
125 copy C\desc\ise_desc.lib %INSTALL_DIR\releases\enterprise\lib\msc
126 fullrf %INSTALL_DIR\releases\enterprise\lib\msc\ebench.lib
127
128 remtrace Copy the header files
129 copy %EIFFEL_SRC\C\run-time\*.h %INSTALL_DIR\studio\spec\%ISE_PLATFORM\include
130 copy %EIFFEL_SRC\C\eif_confmagic.h %INSTALL_DIR\studio\spec\%ISE_PLATFORM\include
131 cd %EIFFEL_SRC
132
133 remtrace We need to copy finalized.lib to ISE_EIFFEL so that the new run-time is used to compile the exe's.
134 cd %ISE_EIFFEL\studio\spec\%ISE_PLATFORM\lib\msc
135 move finalized.lib finalized.lib_backup
136 copy %EIFFEL_SRC\C\run-time\LIB\finalized.lib .
137
138 remtrace Then the C libraries
139 cd %EIFFEL_SRC\C_library
140 fullrd .libs
141 remtrace expat
142 cd %EIFFEL_SRC\C_library\expat
143 safe_md %EIFFEL_SRC\C_library\expat\lib
144 msdev expat.dsw /make ALL - RELEASE >>& %INSTALL_LOG
145 iff not exist %EIFFEL_SRC\C_library\expat\bin\xmlparse.dll then
146 echo Couldn't recompile xmlparse.dll
147 CANCEL
148 endiff
149 iff not exist %EIFFEL_SRC\C_library\expat\bin\xmltok.dll then
150 echo Couldn't recompile xmltok.dll
151 CANCEL
152 endiff
153 copy %EIFFEL_SRC\C_library\expat\bin\xmlparse.dll %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
154 copy %EIFFEL_SRC\C_library\expat\bin\xmltok.dll %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
155 copy %EIFFEL_SRC\C_library\expat\xmlparse\Release\xmlparse.lib %EIFFEL_SRC\C_library\expat\lib
156 copy %EIFFEL_SRC\C_library\expat\xmltok\Release\xmltok.lib %EIFFEL_SRC\C_library\expat\lib
157
158 remtrace libpng
159 cd %EIFFEL_SRC\C_library\libpng
160 default_make
161 remtrace zlib
162 cd %EIFFEL_SRC\C_library\zlib
163 default_make
164 copy %ISE_EIFFEL\library\vision2\spec\msc\lib\*lib*.lib %EIFFEL_SRC\library\vision2\spec\msc\lib
165
166 REM These directories should already have been created by make_delivery. Whatever...
167 safe_md %INSTALL_DIR\studio\spec
168 safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM
169 safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
170
171 remtrace CLI writer
172 cd %EIFFEL_SRC\Eiffel\library\cli_writer\Clib
173 call nmake
174
175 remtrace Copying .NET components
176 cd %EIFFEL_SRC\Eiffel\eiffel\com_il_generation\core\run-time
177 call nmake
178 copy ise_runtime.dll %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
179
180 iff defined BUILD_ENTERPRISE_ONLY then
181 remtrace Recompile EiffelStudio
182 cdd %FINALIZATION_DIR
183 copy %EIFFEL_SRC\Eiffel\Ace\newbench.mswin.ace finalizedbench.ace
184 copy %EIFFEL_SRC\Eiffel\Ace\*.* .
185 iff not exist finalizedbench.ace then
186 echo Cannot find the finalization Ace for EiffelStudio
187 CANCEL
188 endiff
189
190 remtrace Enterprise edition
191 clean_project
192 finalize finalizedbench.ace
193 fff
194 cleanup_eiffel ec.exe
195 iff not exist ec.exe then
196 echo Could not finalize a new "enterprise" EiffelStudio
197 CANCEL
198 endiff
199 move ec.exe %INSTALL_DIR\releases\enterprise
200 else
201 iff not defined NO_NEW_EC then
202 remtrace compiling EiffelStudio
203 cdd %FINALIZATION_DIR
204 copy %EIFFEL_SRC\Eiffel\Ace\newbench.mswin.ace finalizedbench.ace
205 copy %EIFFEL_SRC\Eiffel\Ace\*.* .
206 iff not exist finalizedbench.ace then
207 echo Cannot find the finalization Ace for EiffelStudio
208 CANCEL
209 endiff
210
211 remtrace Enterprise edition
212 clean_project
213 finalize finalizedbench.ace
214 fff
215 cleanup_eiffel ec.exe
216 iff not exist ec.exe then
217 echo Could not finalize a new "enterprise" EiffelStudio
218 CANCEL
219 endiff
220 move ec.exe %INSTALL_DIR\releases\enterprise
221
222 remtrace Free edition
223 cdd %EIFFEL_SRC\Eiffel\API\constants
224 sed -e "s/Version_type_name:\ STRING\ is\ \"Enterprise\ Edition\"/Version_type_name:\ STRING\ is\ \"Free\ Edition\"/g" system_constants.e >> new_system_constants.e
225 move new_system_constants.e system_constants.e
226 sed -e "s/\ has_case:\ BOOLEAN\ is\ True/\ has_case:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
227 move new_eiffel_env.e eiffel_env.e
228 sed -e "s/\ has_metrics:\ BOOLEAN\ is\ True/\ has_metrics:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
229 move new_eiffel_env.e eiffel_env.e
230 sed -e "s/\ has_profiler:\ BOOLEAN\ is\ True/\ has_profiler:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
231 move new_eiffel_env.e eiffel_env.e
232 sed -e "s/\ has_documentation_generation:\ BOOLEAN\ is\ True/\ has_documentation_generation:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
233 move new_eiffel_env.e eiffel_env.e
234 sed -e "s/\ has_xmi_generation:\ BOOLEAN\ is\ True/\ has_xmi_generation:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
235 move new_eiffel_env.e eiffel_env.e
236 sed -e "s/\ has_dll_generation:\ BOOLEAN\ is\ True/\ has_dll_generation:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
237 move new_eiffel_env.e eiffel_env.e
238 sed -e "s/\ has_signable_generation:\ BOOLEAN\ is\ True/\ has_signable_generation:\ BOOLEAN\ is\ False/g" eiffel_env.e >> new_eiffel_env.e
239 move new_eiffel_env.e eiffel_env.e
240 cdd %EIFFEL_SRC\Eiffel\switch\license\time_lock
241 sed -e "s/Is_free_version:\ BOOLEAN\ is\ False/\Is_free_version:\ BOOLEAN\ is\ True/g" bench_licence.e >> new_bench_license.e
242 move new_bench_license.e bench_licence.e
243 cdd %FINALIZATION_DIR
244 clean_project
245 finalize finalizedbench.ace
246 fff
247 cleanup_eiffel ec.exe
248 iff not exist ec.exe then
249 echo Could not finalize a new "Free Edition" EiffelStudio
250 CANCEL
251 endiff
252 move ec.exe %INSTALL_DIR\releases\free_version
253
254 cdd %INSTALL_DIR\releases
255 copy enterprise\ec.exe evaluation
256 endiff
257 endiff
258
259 remtrace Recompile finish_freezing
260 cdd %EIFFEL_SRC\Eiffel\extra\finish_freezing
261 clean_project
262 finalize mswin-finish_freezing.ace
263 fff
264 cleanup_eiffel finish_freezing.exe
265 iff not exist finish_freezing.exe then
266 echo Could not finalize a new finish_freezing
267 CANCEL
268 endiff
269 move finish_freezing.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
270
271 remtrace Recompile quick_finalize
272 cdd %EIFFEL_SRC\Eiffel\extra\quick_c_compilation
273 clean_project
274 finalize Ace.ace
275 fff
276 cleanup_eiffel quick_finalize.exe
277 iff not exist quick_finalize.exe then
278 echo Could not finalize a new quick_finalize
279 CANCEL
280 endiff
281 move quick_finalize.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
282
283 remtrace Put estudio.exe in the new delivery
284 REM It should already have been compiled by the configure of the run-time.
285 cdd %EIFFEL_SRC\C\ipc\daemon
286 iff not exist estudio.exe then
287 echo Could not finalize a new estudio
288 CANCEL
289 endiff
290 move estudio.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
291
292 remtrace Put x2c.exe in the new delivery
293 REM It should already have been compiled by the configure of the run-time.
294 cdd %EIFFEL_SRC\C\run-time
295 iff not exist x2c.exe then
296 echo Could not finalize a new x2c
297 CANCEL
298 endiff
299 move x2c.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
300
301 remtrace Recompile h2e
302 cdd %EIFFEL_SRC\library\wel\extra
303 clean_project
304 finalize h2ew32.ace
305 fff
306 cleanup_eiffel h2e.exe
307 iff not exist h2e.exe then
308 echo Could not finalize a new h2e
309 CANCEL
310 endiff
311 move h2e.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
312
313 remtrace Recompile Legacy++
314 cdd %EIFFEL_SRC
315 exprt -r %DEFAULT_CVS_TAG -d legacy "Src/tools/legacy"
316 cd %EIFFEL_SRC\legacy\PCCTS
317 safe_md bin
318 nmake /f makefile.win
319 cd ..
320 cd legacy
321 msdev legaproj.dsw /make ALL - RELEASE >>& %INSTALL_LOG
322 iff not exist legacy.exe then
323 remtrace Couldnt generate legacy.exe
324 CANCEL
325 endiff
326 move legacy.exe %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin
327
328 remtrace Put the last files into the bin directory
329 REM quick_move studio\spec\%ISE_PLATFORM\bin\legacy.exe

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23