wxWidgets/distrib/msw/makeall.bat
Julian Smart 963a1fcd6e Minor mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 10:17:58 +00:00

626 lines
15 KiB
Batchfile
Executable File

Rem @echo off
Rem This script compiles wxWindows and some samples/demos with
Rem a range of compilers.
Rem Note that it currently uses batch scripts local to Julian Smart's machine,
Rem to set up the environment correctly.
Rem This is a 4DOS batch file, though 4DOS dependencies have been kept to
Rem a minimum.
Rem Julian Smart, August 12th, 2000
Rem TODO: making a Unicode distribution by modifying setup.h programmatically.
Rem TODO: check differing setup.h options, again by programmatic modification
set WXDIR=%WXWIN%
set FATWXWIN=%WXDIR%
set FULLWXWIN=%WXDIR%
if not %@INDEX["%WXDIR%","wxWindows"] == "-1" set FATWXWIN=%@PATH[%WXDIR%]wxwind~1
if not %@INDEX["%WXDIR%","wxWindows"] == "-1" set FULLWXWIN=%@PATH[%WXDIR%]wxWindows
Rem The following line is for a specific environment -- edit, or comment out
Rem Not working in 4NT?
Rem if not %@INDEX["%WXDIR%","wx2stable"] == "-1" set FATWXWIN=c:\wx2sta~1\wxwind~1
echo Full wxWindows path is %FULLWXWIN%, FAT path is %FATWXWIN%
set BUILDDEST=%TEMP%\wxWinBuild
Rem Only carry on if we haven't specified a single target
set CARRYON=0
rem goto end
if "%1" == "vc6" goto dovc6
if "%1" == "bc55" goto dobc55
if "%1" == "bc50" goto dobc50
if "%1" == "ming2952" goto doming2952
if "%1" == "cygwin11" goto docygwin11
if "%1" == "vc1" goto dovc1
if "%1" == "bc16" goto dobc16
set CARRYON=1
if not direxist %BUILDDEST% mkdir /S %BUILDDEST%
:dovc6
cd %WXDIR%\samples
erase /S *.exe
cd %WXDIR%\demos
erase /S *.exe
cd %WXDIR%\contrib\samples
erase /S *.exe
cd %WXDIR%\utils\dialoged\src
erase /S *.exe
cd %WXDIR%\utils\tex2rtf\src
erase /S *.exe
echo Starting wxWindows build at %_TIME, %_DATE
Rem First, VC++ 6.
echo === VC++ 6 ===
echo ==============
Rem Set up the environment
call msvc6
echo *** VC++ Debug ***
Rem VC++ Debug
cd %WXDIR%\src\msw
nmake -f makefile.vc cleanall
nmake -f makefile.vc
if not direxist %BUILDDEST%\VC6Debug mkdir /S %BUILDDEST%\VC6Debug
erase /F /Y %BUILDDEST%\VC6Debug
cd %WXDIR%\samples
nmake -f makefile.vc clean
Rem Make one sample, just to make sure Debug mode is OK
cd %WXDIR%\samples\controls
nmake -f makefile.vc
copy controls.exe %BUILDDEST%\VC6Debug
nmake -f makefile.vc clean
cd %WXDIR%\src\msw
nmake -f makefile.vc cleanall
echo *** VC++ Release ***
nmake -f makefile.vc cleanall FINAL=1
nmake -f makefile.vc FINAL=1
if not direxist %BUILDDEST%\VC6Release mkdir /S %BUILDDEST%\VC6Release
erase /F /Y %BUILDDEST%\VC6Release
cd %WXDIR%\samples
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
Rem Copy all executables to VC6Release
Rem Euch, this is the only way I can think of right now
Rem to copy them to the same directory. Daft but...
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
cd %WXDIR%\demos
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
Rem Copy all executables to VC6Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
Rem Compile OGL
cd %WXDIR%\contrib\src\ogl
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
cd %WXDIR%\contrib\samples\ogl\ogledit
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
copy *.exe %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
cd %WXDIR%\contrib\samples\ogl\studio
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
copy *.exe %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
cd %WXDIR%\contrib\src\ogl
nmake -f makefile.vc clean FINAL=1
Rem Compile Dialog Editor
cd %WXDIR%\utils\dialoged\src
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
copy *.exe %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
Rem Compile Tex2RTF
cd %WXDIR%\utils\tex2rtf\src
nmake -f makefile.vc clean FINAL=1
nmake -f makefile.vc FINAL=1
copy *.exe %BUILDDEST%\VC6Release
nmake -f makefile.vc clean FINAL=1
Rem Clean up
cd %WXDIR%\src\msw
nmake -f makefile.vc cleanall FINAL=1
echo *** VC++ Debug DLL ***
nmake -f makefile.vc cleanall WXMAKINGDLL=1
nmake -f makefile.vc dll pch
if not direxist %BUILDDEST%\VC6DebugDLL mkdir /S %BUILDDEST%\VC6DebugDLL
erase /F /Y %BUILDDEST%\VC6DebugDLL
copy %WXDIR%\lib\*d.dll %BUILDDEST%\VC6DebugDLL
Rem Make one sample, for a sanity check
cd %WXDIR%\samples\controls
nmake -f makefile.vc WXUSINGDLL=1
copy controls.exe %BUILDDEST%\VC6DebugDLL
nmake -f makefile.vc clean
cd %WXDIR%\src\msw
nmake -f makefile.vc cleanall WXMAKINGDLL=1
echo *** VC++ Release DLL ***
nmake -f makefile.vc cleanall FINAL=1 WXMAKINGDLL=1
nmake -f makefile.vc dll pch FINAL=1
if not direxist %BUILDDEST%\VC6ReleaseDLL mkdir /S %BUILDDEST%\VC6ReleaseDLL
erase /F /Y %BUILDDEST%\VC6ReleaseDLL
copy %WXDIR%\lib\*.dll %BUILDDEST%\VC6ReleaseDLL
Rem Make one sample, for a sanity check
cd %WXDIR%\samples\controls
nmake -f makefile.vc WXUSINGDLL=1 FINAL=1
copy controls.exe %BUILDDEST%\VC6ReleaseDLL
nmake -f makefile.vc clean FINAL=1
cd %WXDIR%\src\msw
nmake -f makefile.vc cleanall WXMAKINGDLL=1 FINAL=1
if "%CARRYON" == "0" goto end
:dobc55
echo === BC++ 5.5 ===
echo ================
call bcb55
echo *** WIN32 BC++ Debug ***
Rem WIN32 BC++ Debug
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall
make -f makefile.b32
if not direxist %BUILDDEST%\BC55Debug mkdir /S %BUILDDEST%\BC55Debug
erase /F /Y %BUILDDEST%\BC55Debug
cd %WXDIR%\samples
make -f makefile.b32 clean
Rem Make one sample, just to make sure Debug mode is OK
cd %WXDIR%\samples\controls
make -f makefile.b32
copy controls.exe %BUILDDEST%\BC55Debug
make -f makefile.b32 clean
Rem Compile OGL
cd %WXDIR%\contrib\src\ogl
make -f makefile.b32 clean
make -f makefile.b32
cd %WXDIR%\contrib\samples\ogl\ogledit
make -f makefile.b32 clean
make -f makefile.b32
copy *.exe %BUILDDEST%\BC55Debug
make -f makefile.b32 clean
cd %WXDIR%\contrib\samples\ogl\studio
make -f makefile.b32 clean
make -f makefile.b32
copy *.exe %BUILDDEST%\BC55Debug
make -f makefile.b32 clean
cd %WXDIR%\contrib\src\ogl
make -f makefile.b32 clean
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall
goto bcdebugdll
echo *** WIN32 BC++ Release ***
make -f makefile.b32 cleanall FINAL=1
make -f makefile.b32 FINAL=1
if not direxist %BUILDDEST%\BC55Release mkdir /S %BUILDDEST%\BC55Release
erase /F /Y %BUILDDEST%\BC55Release
cd %WXDIR%\samples
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
Rem Copy all executables to BC55Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
cd %WXDIR%\demos
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
Rem Copy all executables to BC55Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
Rem Compile OGL
cd %WXDIR%\contrib\src\ogl
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
cd %WXDIR%\contrib\samples\ogl\ogledit
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
copy *.exe %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
cd %WXDIR%\contrib\samples\ogl\studio
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
copy *.exe %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
cd %WXDIR%\contrib\src\ogl
make -f makefile.b32 clean FINAL=1
Rem Compile Dialog Editor
cd %WXDIR%\utils\dialoged\src
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
copy *.exe %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
Rem Compile Tex2RTF
cd %WXDIR%\utils\tex2rtf\src
make -f makefile.b32 clean FINAL=1
make -f makefile.b32 FINAL=1
copy *.exe %BUILDDEST%\BC55Release
make -f makefile.b32 clean FINAL=1
Rem Clean up
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall FINAL=1
:bcdebugdll
echo *** WIN32 BC++ Debug DLL ***
make -f makefile.b32 cleanall
make -f makefile.b32 dll
if not direxist %BUILDDEST%\BC55DebugDLL mkdir /S %BUILDDEST%\BC55DebugDLL
erase /F /Y %BUILDDEST%\BC55DebugDLL
copy %WXDIR%\lib\*.dll %BUILDDEST%\BC55DebugDLL
Rem Make one sample, for a sanity check
cd %WXDIR%\samples\controls
make -f makefile.b32 WXUSINGDLL=1
copy controls.exe %BUILDDEST%\BC55DebugDLL
make -f makefile.b32 clean
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall
if "%CARRYON" == "0" goto end
Rem Skip BC++ 5.0, obsolete
goto docygwin11
:dobc50
echo === BC++ 5.0 ===
echo ================
call borland
echo *** WIN32 BC++ Debug ***
Rem WIN32 BC++ Debug
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall
make -f makefile.b32
if not direxist %BUILDDEST%\BC50Debug mkdir /S %BUILDDEST%\BC50Debug
erase /F /Y %BUILDDEST%\BC50Debug
cd %WXDIR%\samples
make -f makefile.b32 clean
Rem Make one sample, just to make sure Debug mode is OK
cd %WXDIR%\samples\controls
make -f makefile.b32
copy controls.exe %BUILDDEST%\BC50Debug
make -f makefile.b32 clean
cd %WXDIR%\src\msw
make -f makefile.b32 cleanall
if "%CARRYON" == "0" goto end
:docygwin11
echo === Cygwin 1.1 ===
echo ==================
call cygwin11
echo *** Cygwin Debug ***
Rem Cygwin Release
cd %WXDIR%\src\msw
make -f makefile.g95 cleanall
make -f makefile.g95 FINAL=1
if not direxist %BUILDDEST%\Cygwin11Release mkdir /S %BUILDDEST%\Cygwin11Release
erase /F /Y %BUILDDEST%\Cygwin11Release
cd %WXDIR%\samples
make -f makefile.g95 clean FINAL=1
if not direxist %BUILDDEST%\Cygwin11Release mkdir /S %BUILDDEST%\Cygwin11Release
erase /F /Y %BUILDDEST%\Cygwin11Release
cd %WXDIR%\samples
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
Rem Copy all executables to Cygwin11Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\demos
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
Rem Copy all executables to Cygwin11Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
Rem Compile OGL
cd %WXDIR%\contrib\src\ogl
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
cd %WXDIR%\contrib\samples\ogl\ogledit
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\contrib\samples\ogl\studio
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\contrib\src\ogl
make -f makefile.g95 clean FINAL=1
Rem Compile Dialog Editor
cd %WXDIR%\utils\dialoged\src
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
Rem Compile Tex2RTF
cd %WXDIR%\utils\tex2rtf\src
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Cygwin11Release
make -f makefile.g95 clean FINAL=1
echo Stripping executables...
strip %BUILDDEST%\Cygwin11Release\*.exe
Rem Cleanup
cd %WXDIR%\src\msw
make -f makefile.g95 cleanall
if "%CARRYON" == "0" goto end
:doming2952
echo === Mingw32 2.95.2 ===
echo ======================
call ming2952
echo *** Cygwin Debug ***
Rem Cygwin Release
cd %WXDIR%\src\msw
make -f makefile.g95 cleanall
make -f makefile.g95 FINAL=1
if not direxist %BUILDDEST%\Ming2952Release mkdir /S %BUILDDEST%\Ming2952Release
erase /F /Y %BUILDDEST%\Ming2952Release
cd %WXDIR%\samples
make -f makefile.g95 clean FINAL=1
if not direxist %BUILDDEST%\Ming2952Release mkdir /S %BUILDDEST%\Ming2952Release
erase /F /Y %BUILDDEST%\Ming2952Release
cd %WXDIR%\samples
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
Rem Copy all executables to Ming2952Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\demos
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
Rem Copy all executables to Ming2952Release
erase %TEMP%\temp.zip
zip16 -r %TEMP%\temp.zip *.exe
unzip32 -o %TEMP%\temp.zip -d %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
Rem Compile OGL
cd %WXDIR%\contrib\src\ogl
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
cd %WXDIR%\contrib\samples\ogl\ogledit
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\contrib\samples\ogl\studio
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
cd %WXDIR%\contrib\src\ogl
make -f makefile.g95 clean FINAL=1
Rem Compile Dialog Editor
cd %WXDIR%\utils\dialoged\src
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
Rem Compile Tex2RTF
cd %WXDIR%\utils\tex2rtf\src
make -f makefile.g95 clean FINAL=1
make -f makefile.g95 FINAL=1
copy *.exe %BUILDDEST%\Ming2952Release
make -f makefile.g95 clean FINAL=1
echo Stripping executables...
strip %BUILDDEST%\Ming2952Release\*.exe
Rem Cleanup
cd %WXDIR%\src\msw
make -f makefile.g95 cleanall
if "%CARRYON" == "0" goto end
:dovc1
echo === 16-bit VC++ ===
echo ===================
Rem Set up the environment
call msvc1
Rem Needs full wxWindows path for making libraries
set WXWIN=%FULLWXWIN%
echo *** VC++ Debug ***
Rem VC++ Debug
cd %WXDIR%\src\msw
nmake -f makefile.dos cleanall
nmake -f makefile.dos
if not direxist %BUILDDEST%\VC1Debug mkdir /S %BUILDDEST%\VC1Debug
erase /F /Y %BUILDDEST%\VC1Debug
Rem Make one sample, just to make sure Debug mode is OK
cd %WXDIR%\samples\minimal
nmake -f makefile.dos clean
Rem Needs FAT wxWindows path for making executables
set WXWIN=%FATWXWIN%
nmake -f makefile.dos
copy minimal.exe /S %BUILDDEST%\VC1Debug
nmake -f makefile.dos clean
cd %WXDIR%\src\msw
nmake -f makefile.dos cleanall
Rem Needs full wxWindows path for making libraries
set WXWIN=%FULLWXWIN%
echo *** VC++ Release ***
nmake -f makefile.dos cleanall FINAL=1
nmake -f makefile.dos FINAL=1
if not direxist %BUILDDEST%\VC1Release mkdir /S %BUILDDEST%\VC1Release
erase /F /Y %BUILDDEST%\VC1Release
Rem Make one sample, just to make sure Release mode is OK
cd %WXDIR%\samples\minimal
nmake -f makefile.dos clean
nmake -f makefile.dos FINAL=1
Rem Needs FAT wxWindows path for making executables
set WXWIN=%FATWXWIN%
nmake -f makefile.dos FINAL=1
copy minimal.exe /S %BUILDDEST%\VC1Release
nmake -f makefile.dos clean
set WXWIN=%tmpwxwin%
Rem Clean up
cd %WXDIR%\src\msw
nmake -f makefile.dos cleanall FINAL=1
if "%CARRYON" == "0" goto end
:dobc16
echo === 16-bit BC++ ===
echo ===================
Rem Set up the environment
call borland
echo *** 16-bit BC++ Debug ***
Rem 16-bit BC++ Debug
cd %WXDIR%\src\msw
make -f makefile.bcc cleanall
make -f makefile.bcc
if not direxist %BUILDDEST%\BC16Debug mkdir /S %BUILDDEST%\BC16Debug
erase /F /Y %BUILDDEST%\BC16Debug
Rem Make one sample, just to make sure Debug mode is OK
cd %WXDIR%\samples\minimal
make -f makefile.bcc clean
make -f makefile.bcc
copy minimal.exe /S %BUILDDEST%\BC16Debug
make -f makefile.bcc clean
cd %WXDIR%\src\msw
make -f makefile.bcc cleanall
echo *** 16-bit BC++ Release ***
make -f makefile.bcc cleanall FINAL=1
make -f makefile.bcc FINAL=1
if not direxist %BUILDDEST%\BC16Release mkdir /S %BUILDDEST%\BC16Release
erase /F /Y %BUILDDEST%\BC16Release
Rem Make one sample, just to make sure Release mode is OK
cd %WXDIR%\samples\minimal
make -f makefile.bcc clean
make -f makefile.bcc FINAL=1
copy minimal.exe /S %BUILDDEST%\BC16Release
make -f makefile.bcc clean
Rem Clean up
cd %WXDIR%\src\msw
make -f makefile.bcc cleanall FINAL=1
:end
echo Finished wxWindows build at %_TIME, %_DATE