0027258: Configuration - generate built-in replacement for mandatory resource files
[occt.git] / adm / templates / env.bat
CommitLineData
910970ab 1@echo off
2
3rem Use:
4rem - first argument specifies version of Visual Studio (vc8, vc9, or vc10),
5rem - second argument specifies architecture (win32 or win64),
6rem - third argument specifies build mode (Debug or Release)
7rem Default options are:
8rem vc8 win32 Release
9
10set "SCRIPTROOT=%~dp0"
11set "SCRIPTROOT=%SCRIPTROOT:~0,-1%"
910970ab 12
13rem ----- Reset values to defaults -----
14set "CASDEB="
72c37458 15set "VCVER=vc10"
16set "ARCH=64"
910970ab 17set "VCVARS="
18set "HAVE_TBB=false"
19set "HAVE_OPENCL=false"
20set "HAVE_FREEIMAGE=false"
21set "HAVE_GL2PS=false"
910970ab 22set "HAVE_VTK=false"
1ce0716b 23set "HAVE_GLES2=false"
f60111dc 24set "HAVE_D3D=false"
910970ab 25set "CSF_OPT_INC="
26set "CSF_OPT_LIB32="
27set "CSF_OPT_LIB64="
28set "CSF_OPT_BIN32="
29set "CSF_OPT_BIN64="
30
31rem ----- Load local settings -----
32if exist "%~dp0custom.bat" (
33 call "%~dp0custom.bat" %1 %2 %3 %4 %5
34)
35
e31a8e52 36if not ["%CASROOT%"] == [""] if exist "%SCRIPTROOT%\%CASROOT%" set "CASROOT=%SCRIPTROOT%\%CASROOT%"
37if ["%CASROOT%"] == [""] set "CASROOT=%SCRIPTROOT%"
38
910970ab 39rem ----- Read script arguments (override local settings) -----
40if not ["%1"] == [""] set "VCVER=%1"
41if not ["%2"] == [""] set "ARCH=%2"
42if /I ["%ARCH%"] == ["win32"] set "ARCH=32"
43if /I ["%ARCH%"] == ["win64"] set "ARCH=64"
44if /I ["%3"] == ["debug"] set "CASDEB=d"
45if /I ["%3"] == ["d"] set "CASDEB=d"
316d77d9 46if /I ["%3"] == ["i"] set "CASDEB=i"
47if /I ["%3"] == ["relwithdeb"] set "CASDEB=i"
910970ab 48
72c37458 49set "CSF_OPT_LIB32D=%CSF_OPT_LIB32%"
50set "CSF_OPT_LIB64D=%CSF_OPT_LIB64%"
51set "CSF_OPT_BIN32D=%CSF_OPT_BIN32%"
52set "CSF_OPT_BIN64D=%CSF_OPT_BIN64%"
53set "CSF_OPT_LIB32I=%CSF_OPT_LIB32%"
54set "CSF_OPT_LIB64I=%CSF_OPT_LIB64%"
55set "CSF_OPT_BIN32I=%CSF_OPT_BIN32%"
56set "CSF_OPT_BIN64I=%CSF_OPT_BIN64%"
910970ab 57
58rem ----- Optional 3rd-parties should be enabled by HAVE macros -----
59set "CSF_OPT_CMPL="
60set "PRODUCTS_DEFINES="
61if ["%HAVE_TBB%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_TBB"
62if ["%HAVE_OPENCL%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_OPENCL"
63if ["%HAVE_GL2PS%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_GL2PS"
64if ["%HAVE_FREEIMAGE%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_FREEIMAGE"
65if ["%HAVE_VTK%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_VTK"
1ce0716b 66if ["%HAVE_GLES2%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_GLES2"
f60111dc 67if ["%HAVE_D3D%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_D3D"
910970ab 68if ["%HAVE_TBB%"] == ["true"] set "CSF_DEFINES=HAVE_TBB;%CSF_DEFINES%"
69if ["%HAVE_OPENCL%"] == ["true"] set "CSF_DEFINES=HAVE_OPENCL;%CSF_DEFINES%"
70if ["%HAVE_GL2PS%"] == ["true"] set "CSF_DEFINES=HAVE_GL2PS;%CSF_DEFINES%"
71if ["%HAVE_FREEIMAGE%"] == ["true"] set "CSF_DEFINES=HAVE_FREEIMAGE;%CSF_DEFINES%"
72if ["%HAVE_VTK%"] == ["true"] set "CSF_DEFINES=HAVE_VTK;%CSF_DEFINES%"
1ce0716b 73if ["%HAVE_GLES2%"] == ["true"] set "CSF_DEFINES=HAVE_GLES2;%CSF_DEFINES%"
f60111dc 74if ["%HAVE_D3D%"] == ["true"] set "CSF_DEFINES=HAVE_D3D;%CSF_DEFINES%"
910970ab 75
76rem Eliminate VS warning
77if ["%CSF_DEFINES%"] == [""] set "CSF_DEFINES=;"
78
79rem ----- Optional 3rd-parties should be enabled by HAVE macros -----
80if not ["%PRODUCTS_DEFINES%"] == [""] set "CSF_OPT_CMPL=%CSF_OPT_CMPL% %PRODUCTS_DEFINES%"
81
82rem ----- Colect 3rd-parties additional include paths into compiler options -----
83for %%a in ("%CSF_OPT_INC:;=";"%") do (
84 set "anItem=%%~a"
85 if not ["%%~a"] == [""] call :concatCmplInc %%~a
86)
87
88rem ----- Colect 3rd-parties additional library paths (32-bit) into linker options -----
89set "OPT_LIB32="
90for %%a in ("%CSF_OPT_LIB32:;=";"%") do (
91 set "anItem=%%~a"
92 if not ["%%~a"] == [""] call :concatLib32 %%~a
93)
94
95rem ----- Colect 3rd-parties additional library paths (64-bit) into linker options -----
96set "OPT_LIB64="
97for %%a in ("%CSF_OPT_LIB64:;=";"%") do (
98 set "anItem=%%~a"
99 if not ["%%~a"] == [""] call :concatLib64 %%~a
100)
101
910970ab 102set "CSF_OPT_LNK32=%CSF_OPT_LNK32% %OPT_LIB32%"
910970ab 103set "CSF_OPT_LNK64=%CSF_OPT_LNK64% %OPT_LIB64%"
316d77d9 104set "CSF_OPT_LNK32D=%CSF_OPT_LNK32D% %OPT_LIB32%"
910970ab 105set "CSF_OPT_LNK64D=%CSF_OPT_LNK64D% %OPT_LIB64%"
316d77d9 106set "CSF_OPT_LNK32I=%CSF_OPT_LNK32I% %OPT_LIB32%"
107set "CSF_OPT_LNK64I=%CSF_OPT_LNK64I% %OPT_LIB64%"
910970ab 108
4b3541c6 109rem ----- Default paths to sub-folders (can be different in install env) -----
110if "%CSF_OCCTIncludePath%" == "" set "CSF_OCCTIncludePath=%CASROOT%\inc"
111if "%CSF_OCCTResourcePath%" == "" set "CSF_OCCTResourcePath=%CASROOT%\src"
112if "%CSF_OCCTSamplesPath%" == "" set "CSF_OCCTSamplesPath=%CASROOT%\samples"
113if "%CSF_OCCTDataPath%" == "" set "CSF_OCCTDataPath=%CASROOT%\data"
114if "%CSF_OCCTTestsPath%" == "" set "CSF_OCCTTestsPath=%CASROOT%\tests"
115if "%CSF_OCCTBinPath%" == "" set "CSF_OCCTBinPath=%CASROOT%\win%ARCH%\%VCVER%\bin%CASDEB%"
116if "%CSF_OCCTLibPath%" == "" set "CSF_OCCTLibPath=%CASROOT%\win%ARCH%\%VCVER%\lib%CASDEB%"
910970ab 117
118rem ----- Set path to 3rd party and OCCT libraries -----
4b3541c6 119set "PATH=%CSF_OCCTBinPath%;%PATH%"
316d77d9 120if ["%CASDEB%"] == [""] if ["%ARCH%"] == ["32"] set "PATH=%CSF_OPT_BIN32%;%PATH%"
121if ["%CASDEB%"] == [""] if ["%ARCH%"] == ["64"] set "PATH=%CSF_OPT_BIN64%;%PATH%"
122if ["%CASDEB%"] == ["d"] if ["%ARCH%"] == ["32"] set "PATH=%CSF_OPT_BIN32D%;%PATH%"
123if ["%CASDEB%"] == ["d"] if ["%ARCH%"] == ["64"] set "PATH=%CSF_OPT_BIN64D%;%PATH%"
316d77d9 124if ["%CASDEB%"] == ["i"] if ["%ARCH%"] == ["32"] set "PATH=%CSF_OPT_BIN32I%;%PATH%"
125if ["%CASDEB%"] == ["i"] if ["%ARCH%"] == ["64"] set "PATH=%CSF_OPT_BIN64I%;%PATH%"
910970ab 126
127rem ----- Set envoronment variables used by OCCT -----
128set CSF_LANGUAGE=us
129set MMGT_CLEAR=1
4b3541c6 130set "CSF_SHMessage=%CSF_OCCTResourcePath%\SHMessage"
131set "CSF_MDTVTexturesDirectory=%CSF_OCCTResourcePath%\Textures"
132set "CSF_ShadersDirectory=%CSF_OCCTResourcePath%\Shaders"
133set "CSF_XSMessage=%CSF_OCCTResourcePath%\XSMessage"
134set "CSF_TObjMessage=%CSF_OCCTResourcePath%\TObj"
135set "CSF_StandardDefaults=%CSF_OCCTResourcePath%\StdResource"
136set "CSF_PluginDefaults=%CSF_OCCTResourcePath%\StdResource"
137set "CSF_XCAFDefaults=%CSF_OCCTResourcePath%\StdResource"
138set "CSF_TObjDefaults=%CSF_OCCTResourcePath%\StdResource"
139set "CSF_StandardLiteDefaults=%CSF_OCCTResourcePath%\StdResource"
4b3541c6 140set "CSF_IGESDefaults=%CSF_OCCTResourcePath%\XSTEPResource"
141set "CSF_STEPDefaults=%CSF_OCCTResourcePath%\XSTEPResource"
142set "CSF_XmlOcafResource=%CSF_OCCTResourcePath%\XmlOcafResource"
143set "CSF_MIGRATION_TYPES=%CSF_OCCTResourcePath%\StdResource\MigrationSheet.txt"
910970ab 144
145rem Draw Harness special stuff
4b3541c6 146if exist "%CSF_OCCTResourcePath%\DrawResources\DrawDefault" (
147 set "DRAWDEFAULT=%CSF_OCCTResourcePath%\DrawResources\DrawDefault"
148)
149if exist "%CSF_OCCTResourcePath%\DrawResources" (
150 set "DRAWHOME=%CSF_OCCTResourcePath%\DrawResources"
910970ab 151 set "CSF_DrawPluginDefaults=%DRAWHOME%"
152)
910970ab 153goto :eof
154
155:concatCmplInc
156set "CSF_OPT_CMPL=%CSF_OPT_CMPL% -I%1"
157goto :eof
158
159:concatLib32
7c65581d 160rem Compiler options for Code::Blocks: -L for gcc/mingw and /LIBPATH for msvc
161rem set "OPT_LIB32=%OPT_LIB32% /LIBPATH:%1"
162set "OPT_LIB32=%OPT_LIB32% -L%1"
910970ab 163goto :eof
164
165:concatLib64
7c65581d 166rem Compiler options for Code::Blocks: -L for gcc/mingw and /LIBPATH for msvc
167rem set "OPT_LIB64=%OPT_LIB64% /LIBPATH:%1"
168set "OPT_LIB64=%OPT_LIB64% -L%1"
910970ab 169goto :eof