]>
Commit | Line | Data |
---|---|---|
2ce79e48 JS |
1 | #!/bin/sh |
2 | ||
3 | # Make a distribution of an application on MSW. | |
4 | # Example: | |
5 | # ../distrib/msw/makesetup.sh --wxmsw --verbose 2>&1 | cat > log | |
6 | ||
7 | # If your zip accepts Cygwin-style paths, then | |
8 | # use cygpath, else substitute echo | |
9 | CYGPATHPROG=cygpath | |
10 | #CYGPATHPROG=echo | |
11 | ||
12 | INNO=1 | |
13 | SPINMSW=0 | |
14 | SPINMAC=0 | |
15 | SPINOS2=0 | |
16 | SPINDOCS=1 | |
17 | SPINALL=1 | |
18 | VERBOSE=0 | |
19 | ZIPFLAGS= | |
20 | ||
21 | PROGNAME=$0 | |
22 | SCRIPTDIR=$WXWIN/distrib/msw | |
23 | WEBFILES=c:/wx2dev/wxWebSite | |
24 | # Set this to the required version | |
93f467a3 | 25 | VERSION=2.5.1 |
2ce79e48 JS |
26 | |
27 | . $SCRIPTDIR/setup.var | |
28 | ||
29 | doreplace() | |
30 | { | |
31 | thefile=$1 | |
32 | theexpr=$2 | |
33 | ||
34 | if [ -f $thefile ]; then | |
35 | sed -e "$theexpr" < $thefile > $thefile.tmp | |
36 | mv $thefile.tmp $thefile | |
37 | else | |
38 | echo "*** $thefile not found." | |
39 | fi | |
40 | } | |
41 | ||
42 | unix2dosname() | |
43 | { | |
44 | echo $1 | sed -e "s/\//\\\\\\\/g" > /tmp/filename.tmp | |
45 | RETVALUE=`cat /tmp/filename.tmp` | |
46 | rm -f /tmp/filename.tmp | |
47 | } | |
48 | ||
49 | unix2dosname2() | |
50 | { | |
51 | echo $1 | sed -e "s/\//\\\\/g" > /tmp/filename.tmp | |
52 | RETVALUE=`cat /tmp/filename.tmp` | |
53 | rm -f /tmp/filename.tmp | |
54 | } | |
55 | ||
56 | doinit() | |
57 | { | |
58 | if [ "$VERBOSE" != "1" ]; then | |
59 | ZIPFLAGS=-q | |
60 | fi | |
61 | } | |
62 | ||
63 | rearchive() | |
64 | { | |
65 | archive=$1 | |
66 | dirname=$2 | |
67 | changeto=$3 | |
68 | ||
69 | echo Re-archiving $archive as $dirname | |
70 | ||
71 | pushd $changeto | |
72 | ||
73 | if [ -d $dirname ]; then | |
74 | rm -f -r $dirname | |
75 | fi | |
76 | mkdir $dirname | |
77 | cd $dirname | |
78 | unzip $ZIPFLAGS ../$archive | |
79 | cd .. | |
80 | rm -f $archive | |
81 | zip $ZIPFLAGS -r $archive $dirname/* | |
82 | ||
83 | popd | |
84 | } | |
85 | ||
86 | # Find the version from wx/version.h | |
87 | # Not yet used | |
88 | findversion() | |
89 | { | |
90 | echo "#include <stdio.h>" > /tmp/appver.c | |
91 | echo "#include \"$VERSIONSYMBOLFILE\"" >> /tmp/appver.c | |
92 | echo "int main() { printf(\"%.2f\", $VERSIONSYMBOL); }" >> /tmp/appver.c | |
93 | gcc /tmp/appver.c -I$APPDIR -o /tmp/appver | |
94 | VERSION=`/tmp/appver` | |
95 | rm -f /tmp/appver /tmp/appver.c | |
96 | } | |
97 | ||
98 | dospinos2() | |
99 | { | |
100 | cd $APPDIR | |
101 | echo Zipping OS/2 | |
102 | ||
103 | # Zip up the complete wxOS2-xxx.zip file | |
104 | zip $ZIPFLAGS -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/generic.rsp | |
105 | zip $ZIPFLAGS -@ -u $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/os2.rsp | |
106 | zip $ZIPFLAGS -@ -u $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/jpeg.rsp | |
107 | zip $ZIPFLAGS -@ -u $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/tiff.rsp | |
108 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/tiff.rsp | |
109 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/jpeg.rsp | |
110 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/utils.rsp | |
111 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/tex2rtf.rsp | |
112 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/ogl.rsp | |
113 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/xml.rsp | |
114 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/contrib.rsp | |
115 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/deprecated.rsp | |
116 | zip $ZIPFLAGS -u -@ $DESTDIR/wxOS2-$VERSION.zip < $APPDIR/distrib/msw/makefile.rsp | |
117 | ||
118 | # Rearchive under wxWindows-$VERSION | |
119 | if [ -d $DESTDIR/wxWindows-$VERSION ]; then | |
120 | rm -f -r $DESTDIR/wxWindows-$VERSION | |
121 | fi | |
122 | ||
123 | mkdir $DESTDIR/wxWindows-$VERSION | |
124 | cd $DESTDIR/wxWindows-$VERSION | |
125 | unzip $ZIPFLAGS ../wxOS2-$VERSION.zip | |
8a82c9ec JS |
126 | # No longer do this, configure should be OK (maybe) |
127 | # echo Overwriting with OS2-specific versions of configure files... | |
128 | # unzip $ZIPFLAGS -o $APPDIR/distrib/os2/os2-specific.zip | |
2ce79e48 JS |
129 | rm -f src/gtk/descrip.mms src/motif/descrip.mms docs/pdf/*.pdf |
130 | rm -f src/tiff/*.mcp src/jpeg/*.mcp src/png/*.mcp src/zlib/*.mcp | |
1cb14841 | 131 | rm -f -r docs/html/tex2rtf |
2ce79e48 | 132 | |
46c81560 JS |
133 | # echo Making OS/2 files lower case... |
134 | # no longer necessary | |
135 | # $SCRIPTDIR/namedown include/wx/os2/*.H | |
136 | # $SCRIPTDIR/namedown src/os2/*.CPP src/os2/*.I | |
2ce79e48 | 137 | |
71da8cff JS |
138 | echo Copying readme files... |
139 | cp $APPDIR/docs/os2/install.txt INSTALL-OS2.txt | |
140 | cp $APPDIR/docs/licence.txt LICENCE.txt | |
141 | cp $APPDIR/docs/lgpl.txt COPYING.LIB | |
142 | cp $APPDIR/docs/changes.txt CHANGES.txt | |
143 | cp $APPDIR/docs/readme.txt README.txt | |
144 | ||
2ce79e48 JS |
145 | cd $DESTDIR |
146 | ||
147 | rm -f wxOS2-$VERSION.zip | |
148 | zip $ZIPFLAGS -r wxOS2-$VERSION.zip wxWindows-$VERSION/* | |
149 | } | |
150 | ||
151 | dospinmac() | |
152 | { | |
153 | cd $APPDIR | |
154 | ||
155 | echo Zipping wxMac distribution | |
156 | ||
157 | cp $APPDIR/include/wx/mac/setup0.h $APPDIR/include/wx/setup.h | |
158 | ||
159 | zip $ZIPFLAGS -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/generic.rsp | |
160 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/mac.rsp | |
161 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/cw_mac.rsp | |
162 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/tiff.rsp | |
163 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/jpeg.rsp | |
164 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/utils.rsp | |
165 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/tex2rtf.rsp | |
166 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/ogl.rsp | |
167 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/xml.rsp | |
168 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/stc.rsp | |
169 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/contrib.rsp | |
170 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/deprecated.rsp | |
171 | zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/makefile.rsp | |
172 | ||
173 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-CW-Mac.zip < $APPDIR/distrib/msw/cw_mac.rsp | |
174 | ||
175 | rm -f $APPDIR/include/wx/setup.h | |
176 | ||
177 | if [ -d $DESTDIR/wxWindows-$VERSION ]; then | |
178 | rm -f -r $DESTDIR/wxWindows-$VERSION | |
179 | fi | |
180 | ||
181 | mkdir $DESTDIR/wxWindows-$VERSION | |
182 | cd $DESTDIR/wxWindows-$VERSION | |
183 | unzip $ZIPFLAGS ../wxMac-$VERSION.zip | |
184 | rm -f src/gtk/descrip.mms src/motif/descrip.mms docs/pdf/*.pdf | |
1cb14841 | 185 | rm -f -r docs/html/tex2rtf docs/htmlhelp |
2ce79e48 | 186 | |
71da8cff JS |
187 | echo Copying readme files... |
188 | cp $APPDIR/docs/mac/readme.txt README-MAC.txt | |
189 | cp $APPDIR/docs/mac/install.txt INSTALL-MAC.txt | |
190 | cp $APPDIR/docs/licence.txt LICENCE.txt | |
191 | cp $APPDIR/docs/lgpl.txt COPYING.LIB | |
192 | cp $APPDIR/docs/changes.txt CHANGES.txt | |
193 | cp $APPDIR/docs/readme.txt README.txt | |
194 | ||
2ce79e48 JS |
195 | cd $DESTDIR |
196 | ||
197 | rm -f wxMac-$VERSION.zip | |
198 | zip $ZIPFLAGS -r wxMac-$VERSION.zip wxWindows-$VERSION/* | |
199 | } | |
200 | ||
201 | dospinmsw() | |
202 | { | |
203 | cd $APPDIR | |
204 | ||
205 | # Create wxWindows-$VERSION-win.zip which is used to create wxMSW | |
206 | echo Zipping individual components | |
207 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/generic.rsp | |
208 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/makefile.rsp | |
209 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/msw.rsp | |
210 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/ogl.rsp | |
211 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/mmedia.rsp | |
212 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/stc.rsp | |
213 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/tex2rtf.rsp | |
214 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/jpeg.rsp | |
215 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/tiff.rsp | |
216 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/xml.rsp | |
217 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/contrib.rsp | |
218 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/deprecated.rsp | |
219 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/utils.rsp | |
220 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/utilmake.rsp | |
221 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/univ.rsp | |
222 | ||
71da8cff JS |
223 | # rearchive wxWindows-$VERSION-win.zip wxWindows-$VERSION $DESTDIR |
224 | ||
225 | if [ -d $DESTDIR/wxWindows-$VERSION ]; then | |
226 | rm -f -r $DESTDIR/wxWindows-$VERSION | |
227 | fi | |
228 | ||
229 | mkdir $DESTDIR/wxWindows-$VERSION | |
230 | cd $DESTDIR/wxWindows-$VERSION | |
231 | unzip $ZIPFLAGS ../wxWindows-$VERSION-win.zip | |
2ce79e48 JS |
232 | |
233 | echo Removing .mms files | |
71da8cff JS |
234 | rm -f src/gtk/descrip.mms src/motif/descrip.mms |
235 | ||
236 | echo Copying readme files... | |
237 | cp $APPDIR/docs/msw/readme.txt README-MSW.txt | |
238 | cp $APPDIR/docs/msw/install.txt INSTALL-MSW.txt | |
239 | cp $APPDIR/docs/licence.txt LICENCE.txt | |
240 | cp $APPDIR/docs/lgpl.txt COPYING.LIB | |
241 | cp $APPDIR/docs/changes.txt CHANGES.txt | |
242 | cp $APPDIR/docs/readme.txt README.txt | |
243 | ||
244 | cd $DESTDIR | |
245 | ||
246 | rm -f wxWindows-$VERSION-win.zip | |
247 | zip $ZIPFLAGS -r wxWindows-$VERSION-win.zip wxWindows-$VERSION/* | |
2ce79e48 JS |
248 | } |
249 | ||
250 | dospindocs() | |
251 | { | |
252 | cd $APPDIR | |
253 | ||
254 | echo Creating $DESTDIR/wxWindows-$VERSION-DocSource.zip | |
255 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-DocSource.zip < $APPDIR/distrib/msw/docsrc.rsp | |
256 | rearchive wxWindows-$VERSION-DocSource.zip wxWindows-$VERSION $DESTDIR | |
257 | ||
258 | echo Creating $DESTDIR/wxWindows-$VERSION-WinHelp.zip | |
259 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-WinHelp.zip < $APPDIR/distrib/msw/wx_hlp.rsp | |
260 | rearchive wxWindows-$VERSION-WinHelp.zip wxWindows-$VERSION $DESTDIR | |
261 | ||
262 | echo Creating $DESTDIR/wxWindows-$VERSION-HTML.zip | |
263 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTML.zip < $APPDIR/distrib/msw/wx_html.rsp | |
264 | rearchive wxWindows-$VERSION-HTML.zip wxWindows-$VERSION $DESTDIR | |
265 | ||
266 | echo Creating $DESTDIR/wxWindows-$VERSION-PDF.zip | |
267 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-PDF.zip < $APPDIR/distrib/msw/wx_pdf.rsp | |
268 | rearchive wxWindows-$VERSION-PDF.zip wxWindows-$VERSION $DESTDIR | |
269 | ||
270 | # zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-Word.zip < $APPDIR/distrib/msw/wx_word.rsp | |
271 | # rearchive wxWindows-$VERSION-Word.zip wxWindows-$VERSION $DESTDIR | |
272 | ||
273 | echo Creating $DESTDIR/wxWindows-$VERSION-HTB.zip | |
274 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTB.zip < $APPDIR/distrib/msw/wx_htb.rsp | |
275 | rearchive wxWindows-$VERSION-HTB.zip wxWindows-$VERSION $DESTDIR | |
276 | ||
277 | echo Creating $DESTDIR/wxWindows-$VERSION-HTMLHelp.zip | |
278 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTMLHelp.zip < $APPDIR/distrib/msw/wx_chm.rsp | |
279 | rearchive wxWindows-$VERSION-HTMLHelp.zip wxWindows-$VERSION $DESTDIR | |
280 | ||
281 | # Add Linuxy docs to a separate archive to be transported to Linux for the | |
282 | # Linux-based releases | |
283 | echo Creating $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip | |
284 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_html.rsp | |
285 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_pdf.rsp | |
286 | zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_htb.rsp | |
287 | ||
288 | # PDF/HTML docs that should go into the Windows setup because | |
289 | # there are no WinHelp equivalents | |
290 | echo Creating $DESTDIR/wxWindows-$VERSION-ExtraDoc.zip | |
291 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-ExtraDoc.zip < $APPDIR/distrib/msw/extradoc.rsp | |
292 | rearchive wxWindows-$VERSION-ExtraDoc.zip wxWindows-$VERSION $DESTDIR | |
293 | } | |
294 | ||
295 | dospinmisc() | |
296 | { | |
297 | cd $APPDIR | |
298 | ||
299 | # zip up Univ-specific files | |
300 | echo Creating $DESTDIR/wxWindows-$VERSION-Univ.zip | |
301 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-Univ.zip < $APPDIR/distrib/msw/univ.rsp | |
302 | rearchive wxWindows-$VERSION-Univ.zip wxWindows-$VERSION $DESTDIR | |
303 | ||
304 | # VC++ project files | |
305 | echo Creating $DESTDIR/wxWindows-$VERSION-VC.zip | |
306 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-VC.zip < $APPDIR/distrib/msw/vc.rsp | |
307 | # rearchive wxWindows-$VERSION-VC.zip wxWindows-$VERSION $DESTDIR | |
308 | ||
309 | # BC++ project files | |
310 | echo Creating $DESTDIR/wxWindows-$VERSION-BC.zip | |
311 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-BC.zip < $APPDIR/distrib/msw/bc.rsp | |
312 | # rearchive wxWindows-$VERSION-BC.zip wxWindows-$VERSION $DESTDIR | |
313 | ||
314 | # CodeWarrior project files | |
315 | echo Creating $DESTDIR/wxWindows-$VERSION-CW.zip | |
316 | zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-CW.zip < $APPDIR/distrib/msw/cw.rsp | |
317 | # rearchive wxWindows-$VERSION-CW.zip wxWindows-$VERSION $DESTDIR | |
318 | } | |
319 | ||
320 | dospinsetup() | |
321 | { | |
322 | cd $DESTDIR | |
323 | ||
324 | # Put all archives for transit to Linux in a zip file | |
325 | echo Creating $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip | |
326 | rm -f $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip | |
327 | zip $ZIPFLAGS $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip wxWindows-$VERSION-LinuxDocs.zip wxWindows-$VERSION-VC.zip wxWindows-$VERSION-CW-Mac.zip | |
328 | ||
329 | echo Unzipping the Windows files into wxWindows-$VERSION | |
330 | ||
331 | unzip $ZIPFLAGS -o wxWindows-$VERSION-win.zip | |
332 | unzip $ZIPFLAGS -o wxWindows-$VERSION-VC.zip -d wxWindows-$VERSION | |
333 | unzip $ZIPFLAGS -o wxWindows-$VERSION-BC.zip -d wxWindows-$VERSION | |
334 | unzip $ZIPFLAGS -o wxWindows-$VERSION-CW.zip -d wxWindows-$VERSION | |
335 | unzip $ZIPFLAGS -o wxWindows-$VERSION-HTMLHelp.zip | |
336 | unzip $ZIPFLAGS -o wxWindows-$VERSION-ExtraDoc.zip | |
337 | ||
338 | # After this change of directory, we're in the | |
339 | # temporary 'wx' directory and not acting on | |
340 | # the source wxWindows directory. | |
341 | cd $DESTDIR/wxWindows-$VERSION | |
342 | ||
343 | # Now delete a few files that are unnecessary | |
344 | #attrib -R * | |
345 | rm -f BuildCVS.txt descrip.mms | |
346 | rm -f setup.h_vms | |
347 | rm -f docs/html/wxbook.htm docs/html/roadmap.htm | |
348 | rm -f -r contrib/docs/latex/ogl | |
349 | rm -f src/mingegcs.bat | |
350 | rm -f distrib | |
351 | rm -f *.spec | |
352 | rm -f -r contrib/utils/wxrcedit | |
353 | ||
354 | # Now cp some binary files to 'bin' | |
355 | if [ ! -d bin ]; then | |
356 | mkdir bin | |
357 | fi | |
2ce79e48 | 358 | cp $APPDIR/bin/tex2rtf.exe bin |
b1c1e25b | 359 | cp $APPDIR/bin/tex2rtf.chm bin |
2ce79e48 | 360 | cp $APPDIR/bin/widgets.exe bin |
2ce79e48 | 361 | cp $APPDIR/bin/life.exe bin |
2ce79e48 | 362 | cp $APPDIR/demos/life/breeder.lif bin |
2ce79e48 JS |
363 | cp $APPDIR/docs/htmlhelp/tex2rtf.chm bin |
364 | ||
365 | if [ ! -d docs/pdf ]; then | |
366 | mkdir docs/pdf | |
367 | fi | |
368 | #cp $APPDIR/docs/pdf/wxTutorial.pdf docs/pdf | |
369 | ||
370 | # Make wxMSW-xxx.zip | |
371 | cd $DESTDIR | |
372 | zip $ZIPFLAGS -r wxMSW-$VERSION.zip wxWindows-$VERSION/* | |
373 | cd wxWindows-$VERSION | |
374 | ||
375 | echo Generating $SETUPSCRIPTNAME | |
376 | rm -f $SETUPSCRIPTNAME | |
377 | ||
378 | sh $SCRIPTDIR/makeinno.sh $SETUPIMAGEDIR $INNOTOP $INNOBOTTOM $SETUPSCRIPTNAME | |
379 | ||
380 | if [ ! -f $SETUPSCRIPTNAME ]; then | |
381 | echo "*** Error - something went wrong with the script file generation." | |
382 | exit 1 | |
383 | fi | |
384 | ||
385 | # Now replace %VERSION% with the real application version, and other | |
386 | # variables | |
387 | echo Replacing variables in the setup script | |
388 | doreplace $SETUPSCRIPTNAME "s/%VERSION%/$VERSION/g" | |
389 | doreplace $SETUPSCRIPTNAME "s/%COPYRIGHTHOLDER%/$AUTHOR/g" | |
390 | doreplace $SETUPSCRIPTNAME "s/%VENDOR%/$VENDOR/g" | |
391 | ||
392 | unix2dosname $READMEFILE | |
393 | doreplace $SETUPSCRIPTNAME "s;%READMEFILE%;$RETVALUE;g" | |
394 | ||
395 | unix2dosname $READMEAFTERFILE | |
396 | doreplace $SETUPSCRIPTNAME "s;%READMEAFTERFILE%;$RETVALUE;g" | |
397 | ||
398 | unix2dosname $LICENSEFILE | |
399 | doreplace $SETUPSCRIPTNAME "s;%LICENSEFILE%;$RETVALUE;g" | |
400 | ||
401 | doreplace $SETUPSCRIPTNAME "s/%APPNAME%/$APPNAME/g" | |
402 | doreplace $SETUPSCRIPTNAME "s/%APPTITLE%/$APPTITLE/g" | |
403 | ||
404 | unix2dosname $SETUPIMAGEDIR | |
405 | doreplace $SETUPSCRIPTNAME "s;%SOURCEDIR%;$RETVALUE;g" | |
406 | ||
407 | unix2dosname $DESTDIR | |
408 | doreplace $SETUPSCRIPTNAME "s;%OUTPUTDIR%;$RETVALUE;g" | |
409 | ||
410 | doreplace $SETUPSCRIPTNAME "s/%APPEXTENSION%/$APPEXTENSION/g" | |
411 | ||
412 | # FIXME: how do we get the first name in the list? | |
413 | if [ "$MANUALFILES" != "" ]; then | |
414 | HELPFILE=`basename $MANUALFILES` | |
415 | unix2dosname $HELPFILE | |
416 | doreplace $SETUPSCRIPTNAME "s;%HELPFILE%;$RETVALUE;g" | |
417 | fi | |
418 | ||
419 | rm -f $DESTDIR/setup*.* | |
420 | ||
421 | # Inno Setup complains if this step is not done | |
422 | unix2dos --unix2dos $SETUPSCRIPTNAME | |
423 | ||
424 | # Now invoke INNO compiler on the new ISS file | |
425 | # First, make a DOS filename or Inno Setup will get confused. | |
426 | ||
427 | unix2dosname2 $SETUPSCRIPTNAME | |
428 | DOSFILENAME=$RETVALUE | |
429 | ||
430 | # Note: the double slash is Mingw32/MSYS convention for | |
431 | # denoting a switch, that must not be converted into | |
432 | # a path (otherwise /c = c:/) | |
433 | ||
434 | cd `dirname $SETUPSCRIPTNAME` | |
435 | BASESCRIPTNAME=`basename $SETUPSCRIPTNAME` | |
436 | echo Invoking Inno Setup compiler on $BASESCRIPTNAME | |
437 | ||
438 | "$SETUPCOMPILER" //cc $BASESCRIPTNAME | |
439 | ||
440 | if [ ! -f $DESTDIR/setup.exe ]; then | |
441 | echo "*** Error - the setup.exe was not generated." | |
442 | exit | |
443 | fi | |
444 | ||
445 | cd $DESTDIR | |
446 | # mv setup.exe $APPNAME-$VERSION-setup.exe | |
447 | ||
448 | echo Putting all the setup files into a single zip archive | |
449 | zip wxMSW-$VERSION-setup.zip readme-$VERSION.txt setup*.* | |
450 | ||
451 | rm -f wxWindows-$VERSION-win.zip | |
452 | rm -f wxWindows-$VERSION-ExtraDoc.zip | |
453 | ||
454 | echo If you saw no warnings or errors, $APPTITLE was successfully spun. | |
455 | echo | |
456 | } | |
457 | ||
458 | makesetup() | |
459 | { | |
460 | # if [ -d $SETUPIMAGEDIR ]; then | |
461 | # echo Removing contents of existing $SETUPIMAGEDIR | |
462 | # rm -f -r $SETUPIMAGEDIR/* | |
463 | # fi | |
464 | ||
465 | if [ ! -d $SETUPIMAGEDIR ]; then | |
466 | echo Making the $SETUPIMAGEDIR for preparing the setup | |
467 | mkdir -p $SETUPIMAGEDIR | |
468 | fi | |
469 | ||
470 | # Copying readmes | |
471 | if [ "$READMEFILE" != "" ] && [ -f $READMEFILE ]; then | |
472 | echo Copying readme.txt | |
473 | cp $READMEFILE $SETUPIMAGEDIR | |
474 | # else | |
475 | # echo "*** Warning - $READMEFILE not found" | |
476 | fi | |
477 | ||
478 | if [ "$LICENSEFILE" != "" ] && [ -f $LICENSEFILE ]; then | |
479 | echo Copying licence.txt | |
480 | cp $LICENSEFILE $SETUPIMAGEDIR | |
481 | # else | |
482 | # echo "*** Warning - $LICENSEFILE not found" | |
483 | fi | |
484 | ||
485 | if [ "$MAKEMANUAL" != "0" ]; then | |
486 | if [ -d $MANUALDIR ]; then | |
487 | cd $MANUALDIR | |
488 | make | |
489 | else | |
490 | echo "*** Warning - $MANUALDIR not found" | |
491 | fi | |
492 | fi | |
493 | ||
494 | rm -f $DESTDIR/wx*.zip | |
495 | rm -f $DESTDIR/*.htb | |
496 | rm -f $DESTDIR/ogl3*.zip | |
497 | rm -f $DESTDIR/contrib*.zip | |
498 | rm -f $DESTDIR/tex2rtf2*.zip | |
499 | rm -f $DESTDIR/mmedia*.zip | |
500 | rm -f $DESTDIR/jpeg*.zip | |
501 | rm -f $DESTDIR/tiff*.zip | |
502 | rm -f $DESTDIR/utils*.zip | |
503 | rm -f $DESTDIR/extradoc*.zip | |
504 | rm -f $DESTDIR/stc*.zip | |
505 | rm -f $DESTDIR/*-win32*.zip | |
506 | rm -f $DESTDIR/setup*.* | |
507 | rm -f $DESTDIR/*.txt | |
508 | rm -f $DESTDIR/make* | |
509 | ||
510 | if [ -d $DESTDIR/wx ]; then | |
511 | rm -f -r $DESTDIR/wx | |
512 | fi | |
513 | ||
514 | if [ ! -d $DESTDIR ]; then | |
515 | mkdir $DESTDIR | |
516 | fi | |
517 | if [ -d $DESTDIR/wxWindows-$VERSION ]; then | |
518 | rm -f -r $DESTDIR/wxWindows-$VERSION | |
519 | fi | |
520 | ||
521 | # Copy FAQ from wxWebSite CVS | |
522 | if [ ! -d $WEBFILES ]; then | |
523 | echo Error - $WEBFILES does not exist | |
524 | exit | |
525 | fi | |
526 | ||
527 | echo Copying FAQ and other files from $WEBFILES | |
528 | cp $WEBFILES/site/faq*.htm $APPDIR/docs/html | |
529 | cp $WEBFILES/site/platform.htm $APPDIR/docs/html | |
530 | cp $WEBFILES/site/i18n.htm $APPDIR/docs/html | |
531 | ||
532 | # Copy setup0.h files to setup.h | |
533 | cp $APPDIR/include/wx/os2/setup0.h $APPDIR/include/wx/os2/setup.h | |
534 | cp $APPDIR/include/wx/msw/setup0.h $APPDIR/include/wx/msw/setup.h | |
535 | cp $APPDIR/include/wx/univ/setup0.h $APPDIR/include/wx/univ/setup.h | |
536 | ||
537 | # Do OS/2 spin | |
538 | if [ "$SPINOS2" = "1" ] || [ "$SPINALL" = "1" ]; then | |
539 | dospinos2 | |
540 | fi | |
541 | ||
542 | # Do Mac spin | |
543 | if [ "$SPINMAC" = "1" ] || [ "$SPINALL" = "1" ]; then | |
544 | dospinmac | |
545 | fi | |
546 | ||
547 | # Do MSW spin | |
548 | if [ "$SPINMSW" = "1" ] || [ "$SPINALL" = "1" ]; then | |
549 | dospinmsw | |
550 | fi | |
551 | ||
552 | # Do docs spin | |
553 | if [ "$SPINDOCS" = "1" ] || [ "$SPINALL" = "1" ]; then | |
554 | dospindocs | |
555 | fi | |
556 | ||
557 | # Do misc files spin | |
558 | dospinmisc | |
559 | ||
560 | cp $APPDIR/docs/changes.txt $DESTDIR/changes-$VERSION.txt | |
561 | cp $APPDIR/docs/msw/install.txt $DESTDIR/install-msw-$VERSION.txt | |
562 | cp $APPDIR/docs/mac/install.txt $DESTDIR/install-mac-$VERSION.txt | |
563 | cp $APPDIR/docs/motif/install.txt $DESTDIR/install-motif-$VERSION.txt | |
564 | cp $APPDIR/docs/gtk/install.txt $DESTDIR/install-gtk-$VERSION.txt | |
565 | cp $APPDIR/docs/x11/install.txt $DESTDIR/install-x11-$VERSION.txt | |
566 | cp $APPDIR/docs/readme.txt $DESTDIR/readme-$VERSION.txt | |
567 | cp $APPDIR/docs/motif/readme.txt $DESTDIR/readme-motif-$VERSION.txt | |
568 | cp $APPDIR/docs/gtk/readme.txt $DESTDIR/readme-gtk-$VERSION.txt | |
569 | cp $APPDIR/docs/x11/readme.txt $DESTDIR/readme-x11-$VERSION.txt | |
570 | cp $APPDIR/docs/x11/readme-nanox.txt $DESTDIR/readme-nanox-$VERSION.txt | |
571 | cp $APPDIR/docs/msw/readme.txt $DESTDIR/readme-msw-$VERSION.txt | |
572 | cp $APPDIR/docs/mac/readme.txt $DESTDIR/readme-mac-$VERSION.txt | |
573 | cp $APPDIR/docs/base/readme.txt $DESTDIR/readme-base-$VERSION.txt | |
574 | cp $APPDIR/docs/os2/install.txt $DESTDIR/install-os2-$VERSION.txt | |
575 | cp $APPDIR/docs/univ/readme.txt $DESTDIR/readme-univ-$VERSION.txt | |
576 | cp $APPDIR/docs/readme_vms.txt $DESTDIR/readme-vms-$VERSION.txt | |
577 | # cp $APPDIR/docs/motif/makewxmotif $DESTDIR/makewxmotif-$VERSION | |
578 | # cp $APPDIR/docs/gtk/makewxgtk $DESTDIR/makewxgtk-$VERSION | |
579 | ||
580 | # Time to regenerate the Inno Install script | |
581 | if [ "$INNO" != "0" ]; then | |
582 | dospinsetup | |
583 | fi | |
584 | } | |
585 | ||
586 | # We can't use e.g. this: | |
587 | # ls `cat $SRC/distrib/msw/makefile.rsp` zip -@ -u $DEST/wxWindows-$VERSION-gen.zip | |
588 | # because there's not enough space on the command line, plus we need to ignore the | |
589 | # blank lines. | |
590 | # So if we need to (not in this script so far) we do something like this instead: | |
591 | # expandlines $SRC/setup/files.rsp temp.txt | |
592 | # zip -@ `$CYGPATHPROG -w $DEST/archive.zip` < temp.txt | |
593 | ||
594 | expandlines() | |
595 | { | |
596 | toexpand=$1 | |
597 | outputfile=$2 | |
598 | ||
599 | rm -f $outputfile | |
600 | touch $outputfile | |
601 | for line in `cat $toexpand` ; do | |
602 | if [ $line != "" ]; then | |
603 | ls $line >> $outputfile | |
604 | fi | |
605 | done | |
606 | } | |
607 | ||
608 | usage() | |
609 | { | |
610 | echo "Usage: $PROGNAME [ options ]" 1>&2 | |
611 | echo Options: | |
612 | echo " --help Display this help message" | |
613 | echo " --upx Compress executable with UPX" | |
614 | echo " --no-upx Do not compress executable with UPX" | |
615 | echo " --inno Build the setup.exe" | |
616 | echo " --no-inno Do not build the setup.exe" | |
617 | echo " --wxmac Build wxMac distribution" | |
618 | echo " --wxmsw Build wxMSW distribution" | |
619 | echo " --wxos2 Build wxOS2 distribution" | |
620 | echo " --docs Build docs archives" | |
621 | echo " --all Build all distributions (the default)" | |
b1c1e25b | 622 | echo " --verbose Verbose zip operation" |
2ce79e48 JS |
623 | echo. |
624 | echo Note that options only override settings in $SCRIPTDIR/setup.var. | |
625 | exit 1 | |
626 | } | |
627 | ||
628 | # Process command line options. | |
629 | ||
630 | for i in "$@"; do | |
631 | case "$i" in | |
632 | --inno) INNO=1 ;; | |
633 | --no-inno) INNO=0 ;; | |
634 | --upx) UPX=1 ;; | |
635 | --no-upx) UPX=0 ;; | |
636 | --wxmac) SPINMAC=1; SPINALL=0 ;; | |
637 | --wxmsw) SPINMSW=1; SPINALL=0 ;; | |
638 | --wxos2) SPINOS2=1; SPINALL=0 ;; | |
639 | --docs) SPINDOCS=1; SPINALL=0 ;; | |
640 | --all) SPINALL=1 ;; | |
641 | --verbose) VERBOSE=1 ;; | |
642 | *) | |
643 | usage | |
644 | exit | |
645 | ;; | |
646 | esac | |
647 | done | |
648 | ||
649 | doinit | |
650 | ||
651 | # findversion | |
652 | makesetup | |
653 |