]> git.saurik.com Git - wxWidgets.git/blob - distrib/msw/makesetup.sh
unicode compilation fix
[wxWidgets.git] / distrib / msw / makesetup.sh
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
25 VERSION=2.5.0
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
126 echo Overwriting with OS2-specific versions of configure files...
127 unzip $ZIPFLAGS -o $APPDIR/distrib/os2/os2-specific.zip
128 rm -f src/gtk/descrip.mms src/motif/descrip.mms docs/pdf/*.pdf
129 rm -f src/tiff/*.mcp src/jpeg/*.mcp src/png/*.mcp src/zlib/*.mcp
130 rm -f -r docs/html/dialoged docs/html/tex2rtf
131
132 echo Making OS/2 files lower case...
133
134 $SCRIPTDIR/namedown include/wx/os2/*.H
135 $SCRIPTDIR/namedown src/os2/*.CPP src/os2/*.I
136
137 cd $DESTDIR
138
139 rm -f wxOS2-$VERSION.zip
140 zip $ZIPFLAGS -r wxOS2-$VERSION.zip wxWindows-$VERSION/*
141 }
142
143 dospinmac()
144 {
145 cd $APPDIR
146
147 echo Zipping wxMac distribution
148
149 cp $APPDIR/include/wx/mac/setup0.h $APPDIR/include/wx/setup.h
150
151 zip $ZIPFLAGS -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/generic.rsp
152 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/mac.rsp
153 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/cw_mac.rsp
154 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/tiff.rsp
155 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/jpeg.rsp
156 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/utils.rsp
157 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/tex2rtf.rsp
158 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/ogl.rsp
159 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/xml.rsp
160 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/stc.rsp
161 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/contrib.rsp
162 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/deprecated.rsp
163 zip $ZIPFLAGS -u -@ $DESTDIR/wxMac-$VERSION.zip < $APPDIR/distrib/msw/makefile.rsp
164
165 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-CW-Mac.zip < $APPDIR/distrib/msw/cw_mac.rsp
166
167 rm -f $APPDIR/include/wx/setup.h
168
169 if [ -d $DESTDIR/wxWindows-$VERSION ]; then
170 rm -f -r $DESTDIR/wxWindows-$VERSION
171 fi
172
173 mkdir $DESTDIR/wxWindows-$VERSION
174 cd $DESTDIR/wxWindows-$VERSION
175 unzip $ZIPFLAGS ../wxMac-$VERSION.zip
176 rm -f src/gtk/descrip.mms src/motif/descrip.mms docs/pdf/*.pdf
177 rm -f -r docs/html/dialoged docs/html/tex2rtf docs/htmlhelp
178
179 cd $DESTDIR
180
181 rm -f wxMac-$VERSION.zip
182 zip $ZIPFLAGS -r wxMac-$VERSION.zip wxWindows-$VERSION/*
183 }
184
185 dospinmsw()
186 {
187 cd $APPDIR
188
189 # Create wxWindows-$VERSION-win.zip which is used to create wxMSW
190 echo Zipping individual components
191 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/generic.rsp
192 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/makefile.rsp
193 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/msw.rsp
194 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/ogl.rsp
195 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/mmedia.rsp
196 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/stc.rsp
197 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/tex2rtf.rsp
198 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/jpeg.rsp
199 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/tiff.rsp
200 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/xml.rsp
201 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/contrib.rsp
202 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/deprecated.rsp
203 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/utils.rsp
204 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/utilmake.rsp
205 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-win.zip < $APPDIR/distrib/msw/univ.rsp
206
207 rearchive wxWindows-$VERSION-win.zip wxWindows-$VERSION $DESTDIR
208
209 echo Removing .mms files
210 zip $ZIPFLAGS -d $DESTDIR/wxWindows-$VERSION-win.zip wxWindows-$VERSION/src/gtk/descrip.mms wxWindows-$VERSION/src/motif/descrip.mms
211 }
212
213 dospindocs()
214 {
215 cd $APPDIR
216
217 echo Creating $DESTDIR/wxWindows-$VERSION-DocSource.zip
218 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-DocSource.zip < $APPDIR/distrib/msw/docsrc.rsp
219 rearchive wxWindows-$VERSION-DocSource.zip wxWindows-$VERSION $DESTDIR
220
221 echo Creating $DESTDIR/wxWindows-$VERSION-WinHelp.zip
222 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-WinHelp.zip < $APPDIR/distrib/msw/wx_hlp.rsp
223 rearchive wxWindows-$VERSION-WinHelp.zip wxWindows-$VERSION $DESTDIR
224
225 echo Creating $DESTDIR/wxWindows-$VERSION-HTML.zip
226 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTML.zip < $APPDIR/distrib/msw/wx_html.rsp
227 rearchive wxWindows-$VERSION-HTML.zip wxWindows-$VERSION $DESTDIR
228
229 echo Creating $DESTDIR/wxWindows-$VERSION-PDF.zip
230 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-PDF.zip < $APPDIR/distrib/msw/wx_pdf.rsp
231 rearchive wxWindows-$VERSION-PDF.zip wxWindows-$VERSION $DESTDIR
232
233 # zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-Word.zip < $APPDIR/distrib/msw/wx_word.rsp
234 # rearchive wxWindows-$VERSION-Word.zip wxWindows-$VERSION $DESTDIR
235
236 echo Creating $DESTDIR/wxWindows-$VERSION-HTB.zip
237 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTB.zip < $APPDIR/distrib/msw/wx_htb.rsp
238 rearchive wxWindows-$VERSION-HTB.zip wxWindows-$VERSION $DESTDIR
239
240 echo Creating $DESTDIR/wxWindows-$VERSION-HTMLHelp.zip
241 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-HTMLHelp.zip < $APPDIR/distrib/msw/wx_chm.rsp
242 rearchive wxWindows-$VERSION-HTMLHelp.zip wxWindows-$VERSION $DESTDIR
243
244 # Add Linuxy docs to a separate archive to be transported to Linux for the
245 # Linux-based releases
246 echo Creating $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip
247 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_html.rsp
248 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_pdf.rsp
249 zip $ZIPFLAGS -@ -u $DESTDIR/wxWindows-$VERSION-LinuxDocs.zip < $APPDIR/distrib/msw/wx_htb.rsp
250
251 # PDF/HTML docs that should go into the Windows setup because
252 # there are no WinHelp equivalents
253 echo Creating $DESTDIR/wxWindows-$VERSION-ExtraDoc.zip
254 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-ExtraDoc.zip < $APPDIR/distrib/msw/extradoc.rsp
255 rearchive wxWindows-$VERSION-ExtraDoc.zip wxWindows-$VERSION $DESTDIR
256 }
257
258 dospinmisc()
259 {
260 cd $APPDIR
261
262 # zip up Univ-specific files
263 echo Creating $DESTDIR/wxWindows-$VERSION-Univ.zip
264 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-Univ.zip < $APPDIR/distrib/msw/univ.rsp
265 rearchive wxWindows-$VERSION-Univ.zip wxWindows-$VERSION $DESTDIR
266
267 # VC++ project files
268 echo Creating $DESTDIR/wxWindows-$VERSION-VC.zip
269 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-VC.zip < $APPDIR/distrib/msw/vc.rsp
270 # rearchive wxWindows-$VERSION-VC.zip wxWindows-$VERSION $DESTDIR
271
272 # BC++ project files
273 echo Creating $DESTDIR/wxWindows-$VERSION-BC.zip
274 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-BC.zip < $APPDIR/distrib/msw/bc.rsp
275 # rearchive wxWindows-$VERSION-BC.zip wxWindows-$VERSION $DESTDIR
276
277 # CodeWarrior project files
278 echo Creating $DESTDIR/wxWindows-$VERSION-CW.zip
279 zip $ZIPFLAGS -@ $DESTDIR/wxWindows-$VERSION-CW.zip < $APPDIR/distrib/msw/cw.rsp
280 # rearchive wxWindows-$VERSION-CW.zip wxWindows-$VERSION $DESTDIR
281 }
282
283 dospinsetup()
284 {
285 cd $DESTDIR
286
287 # Put all archives for transit to Linux in a zip file
288 echo Creating $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip
289 rm -f $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip
290 zip $ZIPFLAGS $DESTDIR/wxWindows-$VERSION-LinuxTransit.zip wxWindows-$VERSION-LinuxDocs.zip wxWindows-$VERSION-VC.zip wxWindows-$VERSION-CW-Mac.zip
291
292 echo Unzipping the Windows files into wxWindows-$VERSION
293
294 unzip $ZIPFLAGS -o wxWindows-$VERSION-win.zip
295 unzip $ZIPFLAGS -o wxWindows-$VERSION-VC.zip -d wxWindows-$VERSION
296 unzip $ZIPFLAGS -o wxWindows-$VERSION-BC.zip -d wxWindows-$VERSION
297 unzip $ZIPFLAGS -o wxWindows-$VERSION-CW.zip -d wxWindows-$VERSION
298 unzip $ZIPFLAGS -o wxWindows-$VERSION-HTMLHelp.zip
299 unzip $ZIPFLAGS -o wxWindows-$VERSION-ExtraDoc.zip
300
301 # After this change of directory, we're in the
302 # temporary 'wx' directory and not acting on
303 # the source wxWindows directory.
304 cd $DESTDIR/wxWindows-$VERSION
305
306 # Now delete a few files that are unnecessary
307 #attrib -R *
308 rm -f BuildCVS.txt descrip.mms
309 rm -f setup.h_vms
310 rm -f docs/html/wxbook.htm docs/html/roadmap.htm
311 rm -f -r contrib/docs/latex/ogl
312 rm -f src/mingegcs.bat
313 rm -f distrib
314 rm -f *.spec
315 rm -f -r contrib/utils/wxrcedit
316
317 # Now cp some binary files to 'bin'
318 if [ ! -d bin ]; then
319 mkdir bin
320 fi
321 #cp $APPDIR/bin/dialoged.exe bin
322 #cp $APPDIR/bin/dialoged.hlp bin
323 #cp $APPDIR/bin/dialoged.chm bin
324 cp $APPDIR/bin/tex2rtf.exe bin
325 cp $APPDIR/bin/tex2rtf.hlp bin
326 cp $APPDIR/bin/tex2rtf.cnt bin
327 cp $APPDIR/bin/widgets.exe bin
328 cp $APPDIR/bin/widgets.exe.manifest bin
329 cp $APPDIR/bin/life.exe bin
330 cp $APPDIR/bin/life.exe.manifest bin
331 cp $APPDIR/demos/life/breeder.lif bin
332 #cp $APPDIR/docs/htmlhelp/dialoged.chm bin
333 cp $APPDIR/docs/htmlhelp/tex2rtf.chm bin
334
335 if [ ! -d docs/pdf ]; then
336 mkdir docs/pdf
337 fi
338 #cp $APPDIR/docs/pdf/wxTutorial.pdf docs/pdf
339
340 # Make wxMSW-xxx.zip
341 cd $DESTDIR
342 zip $ZIPFLAGS -r wxMSW-$VERSION.zip wxWindows-$VERSION/*
343 cd wxWindows-$VERSION
344
345 echo Generating $SETUPSCRIPTNAME
346 rm -f $SETUPSCRIPTNAME
347
348 sh $SCRIPTDIR/makeinno.sh $SETUPIMAGEDIR $INNOTOP $INNOBOTTOM $SETUPSCRIPTNAME
349
350 if [ ! -f $SETUPSCRIPTNAME ]; then
351 echo "*** Error - something went wrong with the script file generation."
352 exit 1
353 fi
354
355 # Now replace %VERSION% with the real application version, and other
356 # variables
357 echo Replacing variables in the setup script
358 doreplace $SETUPSCRIPTNAME "s/%VERSION%/$VERSION/g"
359 doreplace $SETUPSCRIPTNAME "s/%COPYRIGHTHOLDER%/$AUTHOR/g"
360 doreplace $SETUPSCRIPTNAME "s/%VENDOR%/$VENDOR/g"
361
362 unix2dosname $READMEFILE
363 doreplace $SETUPSCRIPTNAME "s;%READMEFILE%;$RETVALUE;g"
364
365 unix2dosname $READMEAFTERFILE
366 doreplace $SETUPSCRIPTNAME "s;%READMEAFTERFILE%;$RETVALUE;g"
367
368 unix2dosname $LICENSEFILE
369 doreplace $SETUPSCRIPTNAME "s;%LICENSEFILE%;$RETVALUE;g"
370
371 doreplace $SETUPSCRIPTNAME "s/%APPNAME%/$APPNAME/g"
372 doreplace $SETUPSCRIPTNAME "s/%APPTITLE%/$APPTITLE/g"
373
374 unix2dosname $SETUPIMAGEDIR
375 doreplace $SETUPSCRIPTNAME "s;%SOURCEDIR%;$RETVALUE;g"
376
377 unix2dosname $DESTDIR
378 doreplace $SETUPSCRIPTNAME "s;%OUTPUTDIR%;$RETVALUE;g"
379
380 doreplace $SETUPSCRIPTNAME "s/%APPEXTENSION%/$APPEXTENSION/g"
381
382 # FIXME: how do we get the first name in the list?
383 if [ "$MANUALFILES" != "" ]; then
384 HELPFILE=`basename $MANUALFILES`
385 unix2dosname $HELPFILE
386 doreplace $SETUPSCRIPTNAME "s;%HELPFILE%;$RETVALUE;g"
387 fi
388
389 rm -f $DESTDIR/setup*.*
390
391 # Inno Setup complains if this step is not done
392 unix2dos --unix2dos $SETUPSCRIPTNAME
393
394 # Now invoke INNO compiler on the new ISS file
395 # First, make a DOS filename or Inno Setup will get confused.
396
397 unix2dosname2 $SETUPSCRIPTNAME
398 DOSFILENAME=$RETVALUE
399
400 # Note: the double slash is Mingw32/MSYS convention for
401 # denoting a switch, that must not be converted into
402 # a path (otherwise /c = c:/)
403
404 cd `dirname $SETUPSCRIPTNAME`
405 BASESCRIPTNAME=`basename $SETUPSCRIPTNAME`
406 echo Invoking Inno Setup compiler on $BASESCRIPTNAME
407
408 "$SETUPCOMPILER" //cc $BASESCRIPTNAME
409
410 if [ ! -f $DESTDIR/setup.exe ]; then
411 echo "*** Error - the setup.exe was not generated."
412 exit
413 fi
414
415 cd $DESTDIR
416 # mv setup.exe $APPNAME-$VERSION-setup.exe
417
418 echo Putting all the setup files into a single zip archive
419 zip wxMSW-$VERSION-setup.zip readme-$VERSION.txt setup*.*
420
421 rm -f wxWindows-$VERSION-win.zip
422 rm -f wxWindows-$VERSION-ExtraDoc.zip
423
424 echo If you saw no warnings or errors, $APPTITLE was successfully spun.
425 echo
426 }
427
428 makesetup()
429 {
430 # if [ -d $SETUPIMAGEDIR ]; then
431 # echo Removing contents of existing $SETUPIMAGEDIR
432 # rm -f -r $SETUPIMAGEDIR/*
433 # fi
434
435 if [ ! -d $SETUPIMAGEDIR ]; then
436 echo Making the $SETUPIMAGEDIR for preparing the setup
437 mkdir -p $SETUPIMAGEDIR
438 fi
439
440 # Copying readmes
441 if [ "$READMEFILE" != "" ] && [ -f $READMEFILE ]; then
442 echo Copying readme.txt
443 cp $READMEFILE $SETUPIMAGEDIR
444 # else
445 # echo "*** Warning - $READMEFILE not found"
446 fi
447
448 if [ "$LICENSEFILE" != "" ] && [ -f $LICENSEFILE ]; then
449 echo Copying licence.txt
450 cp $LICENSEFILE $SETUPIMAGEDIR
451 # else
452 # echo "*** Warning - $LICENSEFILE not found"
453 fi
454
455 if [ "$MAKEMANUAL" != "0" ]; then
456 if [ -d $MANUALDIR ]; then
457 cd $MANUALDIR
458 make
459 else
460 echo "*** Warning - $MANUALDIR not found"
461 fi
462 fi
463
464 rm -f $DESTDIR/wx*.zip
465 rm -f $DESTDIR/*.htb
466 rm -f $DESTDIR/ogl3*.zip
467 rm -f $DESTDIR/contrib*.zip
468 rm -f $DESTDIR/tex2rtf2*.zip
469 rm -f $DESTDIR/mmedia*.zip
470 rm -f $DESTDIR/jpeg*.zip
471 rm -f $DESTDIR/tiff*.zip
472 rm -f $DESTDIR/utils*.zip
473 rm -f $DESTDIR/extradoc*.zip
474 rm -f $DESTDIR/stc*.zip
475 rm -f $DESTDIR/*-win32*.zip
476 rm -f $DESTDIR/setup*.*
477 rm -f $DESTDIR/*.txt
478 rm -f $DESTDIR/make*
479
480 if [ -d $DESTDIR/wx ]; then
481 rm -f -r $DESTDIR/wx
482 fi
483
484 if [ ! -d $DESTDIR ]; then
485 mkdir $DESTDIR
486 fi
487 if [ -d $DESTDIR/wxWindows-$VERSION ]; then
488 rm -f -r $DESTDIR/wxWindows-$VERSION
489 fi
490
491 # Copy FAQ from wxWebSite CVS
492 if [ ! -d $WEBFILES ]; then
493 echo Error - $WEBFILES does not exist
494 exit
495 fi
496
497 echo Copying FAQ and other files from $WEBFILES
498 cp $WEBFILES/site/faq*.htm $APPDIR/docs/html
499 cp $WEBFILES/site/platform.htm $APPDIR/docs/html
500 cp $WEBFILES/site/i18n.htm $APPDIR/docs/html
501
502 # Copy setup0.h files to setup.h
503 cp $APPDIR/include/wx/os2/setup0.h $APPDIR/include/wx/os2/setup.h
504 cp $APPDIR/include/wx/msw/setup0.h $APPDIR/include/wx/msw/setup.h
505 cp $APPDIR/include/wx/univ/setup0.h $APPDIR/include/wx/univ/setup.h
506
507 # Do OS/2 spin
508 if [ "$SPINOS2" = "1" ] || [ "$SPINALL" = "1" ]; then
509 dospinos2
510 fi
511
512 # Do Mac spin
513 if [ "$SPINMAC" = "1" ] || [ "$SPINALL" = "1" ]; then
514 dospinmac
515 fi
516
517 # Do MSW spin
518 if [ "$SPINMSW" = "1" ] || [ "$SPINALL" = "1" ]; then
519 dospinmsw
520 fi
521
522 # Do docs spin
523 if [ "$SPINDOCS" = "1" ] || [ "$SPINALL" = "1" ]; then
524 dospindocs
525 fi
526
527 # Do misc files spin
528 dospinmisc
529
530 cp $APPDIR/docs/changes.txt $DESTDIR/changes-$VERSION.txt
531 cp $APPDIR/docs/msw/install.txt $DESTDIR/install-msw-$VERSION.txt
532 cp $APPDIR/docs/mac/install.txt $DESTDIR/install-mac-$VERSION.txt
533 cp $APPDIR/docs/motif/install.txt $DESTDIR/install-motif-$VERSION.txt
534 cp $APPDIR/docs/gtk/install.txt $DESTDIR/install-gtk-$VERSION.txt
535 cp $APPDIR/docs/x11/install.txt $DESTDIR/install-x11-$VERSION.txt
536 cp $APPDIR/docs/readme.txt $DESTDIR/readme-$VERSION.txt
537 cp $APPDIR/docs/motif/readme.txt $DESTDIR/readme-motif-$VERSION.txt
538 cp $APPDIR/docs/gtk/readme.txt $DESTDIR/readme-gtk-$VERSION.txt
539 cp $APPDIR/docs/x11/readme.txt $DESTDIR/readme-x11-$VERSION.txt
540 cp $APPDIR/docs/x11/readme-nanox.txt $DESTDIR/readme-nanox-$VERSION.txt
541 cp $APPDIR/docs/msw/readme.txt $DESTDIR/readme-msw-$VERSION.txt
542 cp $APPDIR/docs/mac/readme.txt $DESTDIR/readme-mac-$VERSION.txt
543 cp $APPDIR/docs/base/readme.txt $DESTDIR/readme-base-$VERSION.txt
544 cp $APPDIR/docs/os2/install.txt $DESTDIR/install-os2-$VERSION.txt
545 cp $APPDIR/docs/univ/readme.txt $DESTDIR/readme-univ-$VERSION.txt
546 cp $APPDIR/docs/readme_vms.txt $DESTDIR/readme-vms-$VERSION.txt
547 # cp $APPDIR/docs/motif/makewxmotif $DESTDIR/makewxmotif-$VERSION
548 # cp $APPDIR/docs/gtk/makewxgtk $DESTDIR/makewxgtk-$VERSION
549
550 # Time to regenerate the Inno Install script
551 if [ "$INNO" != "0" ]; then
552 dospinsetup
553 fi
554 }
555
556 # We can't use e.g. this:
557 # ls `cat $SRC/distrib/msw/makefile.rsp` zip -@ -u $DEST/wxWindows-$VERSION-gen.zip
558 # because there's not enough space on the command line, plus we need to ignore the
559 # blank lines.
560 # So if we need to (not in this script so far) we do something like this instead:
561 # expandlines $SRC/setup/files.rsp temp.txt
562 # zip -@ `$CYGPATHPROG -w $DEST/archive.zip` < temp.txt
563
564 expandlines()
565 {
566 toexpand=$1
567 outputfile=$2
568
569 rm -f $outputfile
570 touch $outputfile
571 for line in `cat $toexpand` ; do
572 if [ $line != "" ]; then
573 ls $line >> $outputfile
574 fi
575 done
576 }
577
578 usage()
579 {
580 echo "Usage: $PROGNAME [ options ]" 1>&2
581 echo Options:
582 echo " --help Display this help message"
583 echo " --upx Compress executable with UPX"
584 echo " --no-upx Do not compress executable with UPX"
585 echo " --inno Build the setup.exe"
586 echo " --no-inno Do not build the setup.exe"
587 echo " --wxmac Build wxMac distribution"
588 echo " --wxmsw Build wxMSW distribution"
589 echo " --wxos2 Build wxOS2 distribution"
590 echo " --docs Build docs archives"
591 echo " --all Build all distributions (the default)"
592 echo.
593 echo Note that options only override settings in $SCRIPTDIR/setup.var.
594 exit 1
595 }
596
597 # Process command line options.
598
599 for i in "$@"; do
600 case "$i" in
601 --inno) INNO=1 ;;
602 --no-inno) INNO=0 ;;
603 --upx) UPX=1 ;;
604 --no-upx) UPX=0 ;;
605 --wxmac) SPINMAC=1; SPINALL=0 ;;
606 --wxmsw) SPINMSW=1; SPINALL=0 ;;
607 --wxos2) SPINOS2=1; SPINALL=0 ;;
608 --docs) SPINDOCS=1; SPINALL=0 ;;
609 --all) SPINALL=1 ;;
610 --verbose) VERBOSE=1 ;;
611 *)
612 usage
613 exit
614 ;;
615 esac
616 done
617
618 doinit
619
620 # findversion
621 makesetup
622