/[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 54824 - (show annotations)
Fri Sep 30 15:47:17 2005 UTC (14 years, 4 months ago) by manus
File size: 9774 byte(s)
Changed the order of building the runtimes for Microsoft. We first do the
  dynamic one first and then the non-dynamic. This was actually a bug to
  do the other way around, because when we compile the compiler we were
  using the dynamic runtime to build against it.
  This stopped working when the compiler started to require the multithreaded
  version of the run-time.

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

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.23