4 # Build wxWindows 2 for Windows distribution.
5 # This builds all required binaries and documents before calling
6 # zipdist.sh to make the archives.
8 # To use this script, you need:
10 # - CygWin installation, for bash etc.
11 # - VC++ 6 or higher, to compile the binaries
12 # - WinHelp compiler, HTML Help compiler, Tex2RTF on your path
14 # - Word 97 (not tested with higher versions)
15 # - Adobe Acrobat & Distiller
17 # Before running this script, you will need to:
19 # - update the readmes, change log, manual version etc.
21 # - update distrib/msw/wisetop.txt, wisebott.txt with the correct version
22 # number, plus any hard-wired wxWindows paths
23 # - test on a variety of compilers
27 # - generation of PDF (only PDF RTF generated so far)
28 # - perhaps prompt the user to read the important release docs,
31 # Julian Smart, October 2000
33 SRC
=`cygpath -u $WXWIN`
35 TMPDIR
=`cygpath -u $TEMP`
46 # For some reason, if we pipe output to egrep, we see output, but not otherwise.
47 WARNINGS
=": decorated name|: see reference|: see declaration|C4786|VC98\\\\INCLUDE|template<>"
50 VCPATH
="/c/Program Files/Microsoft Visual Studio/common/msdev98/bin:/c/Program Files/Microsoft Visual Studio/VC98/bin:DevStudio/VC/bin:/c/Program Files/Microsoft Visual Studio/common/tools:/c/Program Files/HTML Help Workshop"
51 INCLUDE
="C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE;C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE;C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE;C:\Program Files\Tcl\include;C:\Program Files\HTML Help Workshop\include"
52 LIB
="C:\Program Files\Microsoft Visual Studio\VC98\lib;C:\Program Files\Microsoft Visual Studio\VC98\MFC\lib;C:\Program Files\Tcl\lib;C:\Program Files\HTML Help Workshop\lib"
53 TCLHOME
=C
:/PROGRA~
1/Tcl
export TCLHOME
54 PATH
="$PATH:$VCPATH" export PATH
57 WORDEXE
="/c/Program Files/Microsoft Office/Office/WINWORD.EXE"
61 egrep ": error C|fatal error" $TMPDIR/buildlog.txt
> $TMPDIR/errorlog.txt
62 if [ -s $TMPDIR/errorlog.txt
]; then
63 echo Did not build
$0 successfully.
69 if [ ! -d "$SRC" ]; then
70 echo "$SRC" does not exist.
74 if [ ! -d "$SRC/deliver" ]; then
78 if [ ! -e $SRC/include
/wx
/msw
/setup.h
]; then
79 cp "$SRC/include/wx/msw/setup0.h" "$SRC/include/wx/msw/setup.h"
80 echo setup0.h has been copied to setup.h.
81 echo You must now edit this
file to restore release settings
,
82 echo then run this
script again.
84 notepad.exe
"$SRC/include/wx/msw/setup.h"
86 if [ ! -d "$SRC/bin" ]; then
89 if [ ! -e "$SRC/bin/DBGVIEW.EXE" ]; then
90 echo Please put DBGVIEW.EXE
, DBGVIEW.CNT
, DBGVIEW.HLP into
$SRC/bin
91 echo and run the
script again.
98 echo "---------------------------------"
99 echo "Building wxWindows documents"
100 nmake
-f makefile.vc cleandocs docs
102 cd "$SRC/utils/dialoged/src"
103 nmake
-f makefile.vc html htmlhelp htb hlp pdfrtf
105 cd "$SRC/utils/tex2rtf/src"
106 nmake
-f makefile.vc html htmlhelp htb hlp pdfrtf
108 cd "$SRC/contrib/src/ogl"
109 nmake
-f makefile.vc html htmlhelp htb hlp pdfrtf
111 cd "$SRC/contrib/src/mmedia"
112 nmake
-f makefile.vc html htmlhelp htb hlp pdfrtf
115 # TODO: Make PDF via Word, if Word and Adobe Acrobat are present.
116 # This has to be interactive at present.
118 echo "---------------------------------"
119 echo "Building wxWindows PDF documents"
120 if [ -e "$WORDEXE" ]; then
121 "$WORDEXE" "$WXWIN\\docs\\pdf\\wx.rtf"
122 "$WORDEXE" "$WXWIN\\docs\\pdf\\dialoged.rtf"
123 "$WORDEXE" "$WXWIN\\docs\\pdf\\tex2rtf.rtf"
124 "$WORDEXE" "$WXWIN\\contrib\\docs\\pdf\\ogl.rtf"
125 "$WORDEXE" "$WXWIN\\contrib\\docs\\mmedia\\ogl.rtf"
127 echo MS Word not present. Not doing PDF build.
133 echo "---------------------------------"
134 echo "Building wxWindows using VC++"
136 echo Building wxWindows Release library
in `pwd`
137 echo Command
: msdev wxvc.dsw
/useenv
/make "wxvc - Win32 Release" /rebuild
138 msdev wxvc.dsw
/useenv
/make "wxvc - Win32 Release" /rebuild
| egrep -v "$WARNINGS"
141 build_dialog_editor
() {
142 echo "---------------------------------"
143 echo "Building Dialog Editor using VC++"
144 cd "$SRC/utils/dialoged/src"
145 msdev DialogEdVC.dsw
/useenv
/make "DialogEdVC - Win32 Release" /rebuild
| egrep -v "$WARNINGS" | tee $TMPDIR/buildlog.txt
147 check_compile
"Dialog Editor"
151 echo "---------------------------------"
152 echo "Building Tex2RTF using VC++"
153 cd "$SRC/utils/tex2rtf/src"
154 msdev Tex2RTFVC.dsw
/useenv
/make "Tex2RTFVC - Win32 Release" /rebuild
| egrep -v "$WARNINGS" | tee $TMPDIR/buildlog.txt
156 check_compile
"Tex2RTF"
160 echo "---------------------------------"
161 echo "Building Life! using VC++"
163 msdev LifeVC.dsw
/useenv
/make "LifeVC - Win32 Release" /rebuild
| egrep -v "$WARNINGS" | tee $TMPDIR/buildlog.txt
165 check_compile
"Life! Demo"
168 build_executables
() {
175 cp "$SRC/utils/dialoged/src/Release/dialoged.exe" "$SRC/bin"
176 cp "$SRC/docs/winhelp/dialoged.hlp" "$SRC/docs/winhelp/dialoged.cnt" "$SRC/bin"
178 cp "$SRC/utils/tex2rtf/src/Release/tex2rtf.exe" "$SRC/bin"
179 cp "$SRC/docs/winhelp/tex2rtf.hlp" "$SRC/docs/winhelp/tex2rtf.cnt" "$SRC/bin"
181 cp "$SRC/demos/life/Release/life.exe" "$SRC/demos/life/breeder.lif" "$SRC/bin"
184 # Process command line options.
212 echo Usage
: $0 "[ options ]"
213 echo Generates documentation and binaries
for creating a distribution
,
214 echo and optionally generates the zip
/setup.exe distribution by
215 echo calling zipdist.sh.
218 echo " --help Display this help message"
219 echo " --wise Additonally, build zips and setup.exe"
220 echo " --pdf Additionally, try to generate PDF"
221 echo " --wise-only Only do zip/setup phase"
222 echo " --wxwin-only Only do wxWin lib building phase"
223 echo " --docs-only Only do docs building phase"
224 echo " --pdf-only Only do PDF building phase"
225 echo " --bin-only Only do .exe building phase"
231 mkdir -p $SRC/docs
/pdf
232 mkdir -p $SRC/docs
/html
233 mkdir -p $SRC/docs
/htmlhelp
234 mkdir -p $SRC/docs
/htb
235 mkdir -p $SRC/docs
/winhelp
236 mkdir -p $SRC/contrib
/docs
/pdf
237 mkdir -p $SRC/contrib
/docs
/html
238 mkdir -p $SRC/contrib
/docs
/htmlhelp
239 mkdir -p $SRC/contrib
/docs
/htb
240 mkdir -p $SRC/contrib
/docs
/winhelp
245 if [ "$OK" = "1" ]; then
246 if [ "$DOCSONLY" = "1" ] || [ "$DOALL" = "1" ]; then
251 if [ "$OK" = "1" ] && [ "$DOPDF" = "1" ]; then
252 if [ "$PDFONLY" = "1" ] || [ "$DOALL" = "1" ]; then
257 if [ "$OK" = "1" ]; then
258 if [ "$WXWINONLY" = "1" ] || [ "$DOALL" = "1" ]; then
263 if [ "$OK" = "1" ]; then
264 if [ "$BINONLY" = "1" ] || [ "$DOALL" = "1" ]; then
269 if [ "$OK" = "1" ]; then
273 if [ "$OK" = "1" ] && [ "$DOWISE" = "1" ]; then
274 if [ "$WISEONLY" = "1" ] || [ "$DOALL" = "1" ]; then
275 $SRC/distrib
/msw
/zipdist.sh
--wise
279 if [ "$OK" = "1" ]; then
280 echo Finished successfully.
282 echo Finished unsuccessfully. There were errors.
285 echo Press
return to
continue.