source: snovis/trunk/obuild/DOS/build_dll_G4Lab.bat @ 276

Last change on this file since 276 was 276, checked in by barrand, 17 years ago
  • Property svn:executable set to *
File size: 7.7 KB
Line 
1@ECHO OFF
2SETLOCAL
3
4REM #
5REM # File produced by the obuild tool version 1.0
6REM # for the package snovis with version v1r1.
7REM #
8
9REM #////////////////////////////////////////////////
10REM # Usage :
11REM #   DOS> CD some_path\pack\version\obuild
12REM #   DOS> DOS\build_G4Lab
13REM #
14REM #////////////////////////////////////////////////
15
16REM #////////////////////////////////////////////////
17REM #/// Get path of this file :
18REM #////////////////////////////////////////////////
19SET obuild_snovis_path=%~dp0
20REM # Remove ending \obuild\DOS\
21SET obuild_snovis_path=%obuild_snovis_path:~0,-12%
22
23REM #////////////////////////////////////////////////
24REM #/// Treat arguments :
25REM #////////////////////////////////////////////////
26
27SET obuild_verbose=no
28SET obuild_debug=no
29SET obuild_optimize=yes
30SET obuild_set_x=no
31
32:next_arg
33IF "%1%" == "" GOTO end_args
34
35IF NOT "%1%" == "-v" GOTO end_if_v
36  SET obuild_verbose=yes
37  SHIFT
38  GOTO next_arg
39:end_if_v
40
41IF NOT "%1%" == "-g" GOTO end_if_g
42  SET obuild_debug=yes
43  SHIFT
44  GOTO next_arg
45:end_if_g
46
47IF NOT "%1%" == "-x" GOTO end_if_x
48  SET obuild_set_x=yes
49  SHIFT
50  GOTO next_arg
51:end_if_x
52
53:end_args
54
55REM #////////////////////////////////////////////////
56REM #/// End arguments.
57REM #////////////////////////////////////////////////
58
59IF %obuild_set_x% == yes ECHO ON
60
61IF %obuild_debug% == yes SET obuild_optimize=no
62
63IF "%OBUILD_PLATFORM%" == "" (
64  IF "%OS%" == "" ECHO Environment variable OS not found. & GOTO obuild_return
65  SET obuild_platform=%OS%
66) ELSE (
67  SET obuild_platform=%OBUILD_PLATFORM%
68)
69
70IF "%obuild_platform%" == "" (
71  ECHO obuild_platform variable not defined.
72  GOTO obuild_return
73)
74
75IF "%OBUILD_DIR_BIN%" == "" (
76  SET obuild_dir_bin=bin_obuild
77) ELSE (
78  SET obuild_dir_bin=%OBUILD_DIR_BIN%
79)
80
81IF "%obuild_dir_bin%" == "" (
82  ECHO obuild_dir_bin variable not defined.
83  GOTO obuild_return
84)
85
86IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%"
87
88IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%"
89IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%\obuild_platform.exe" (
90  cl.exe /nologo /DWIN32 /MD /O2 /W3  /GX /GR /Fe"%obuild_snovis_path%\%obuild_dir_bin%\obuild_platform.exe" "%obuild_snovis_path%\obuild\cpp\obuild_platform.cpp" 1> NUL
91  IF EXIST obuild_platform.obj DEL obuild_platform.obj
92)
93
94FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
95cd "%obuild_snovis_path%\%obuild_dir_bin%"
96IF NOT EXIST .\obuild_platform.exe  ECHO Program obuild_platform.exe not found.  && GOTO obuild_return
97FOR /F "usebackq" %%j IN (`.\obuild_platform.exe  %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
98cd "%obuild_pwd_snovis_0%"
99SET obuild_pwd_snovis_0=
100IF NOT %obuild_platform_result% == yes GOTO end_if_platform_0
101SET obuild_cxx_command=cl.exe
102:end_if_platform_0
103SET obuild_platform_result=
104IF "%obuild_cxx_command%" == ""  ECHO Variable obuild_cxx_command not defined.  && GOTO obuild_return
105
106FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
107cd "%obuild_snovis_path%\%obuild_dir_bin%"
108IF NOT EXIST .\obuild_platform.exe  ECHO Program obuild_platform.exe not found.  && GOTO obuild_return
109FOR /F "usebackq" %%j IN (`.\obuild_platform.exe  %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
110cd "%obuild_pwd_snovis_0%"
111SET obuild_pwd_snovis_0=
112IF NOT %obuild_platform_result% == yes GOTO end_if_platform_1
113SET obuild_cxx_optimize=/O2
114:end_if_platform_1
115SET obuild_platform_result=
116
117FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
118cd "%obuild_snovis_path%\%obuild_dir_bin%"
119IF NOT EXIST .\obuild_platform.exe  ECHO Program obuild_platform.exe not found.  && GOTO obuild_return
120FOR /F "usebackq" %%j IN (`.\obuild_platform.exe  %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
121cd "%obuild_pwd_snovis_0%"
122SET obuild_pwd_snovis_0=
123IF NOT %obuild_platform_result% == yes GOTO end_if_platform_2
124SET obuild_cxx_debug=/ZI /Od
125:end_if_platform_2
126SET obuild_platform_result=
127
128FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
129cd "%obuild_snovis_path%\%obuild_dir_bin%"
130IF NOT EXIST .\obuild_platform.exe  ECHO Program obuild_platform.exe not found.  && GOTO obuild_return
131FOR /F "usebackq" %%j IN (`.\obuild_platform.exe  %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
132cd "%obuild_pwd_snovis_0%"
133SET obuild_pwd_snovis_0=
134IF NOT %obuild_platform_result% == yes GOTO end_if_platform_3
135SET obuild_cxx_options=/nologo /DWIN32 /MD /GX /GR /W3
136:end_if_platform_3
137SET obuild_platform_result=
138
139IF NOT %obuild_debug% == yes GOTO else_if_db_build_dll_G4Lab_sh_4
140  SET obuild_cxx_debug_local=%obuild_cxx_debug%
141  GOTO end_if_db_build_dll_G4Lab_sh_4
142:else_if_db_build_dll_G4Lab_sh_4
143  SET obuild_cxx_debug_local=
144:end_if_db_build_dll_G4Lab_sh_4
145
146IF NOT %obuild_optimize% == yes GOTO else_if_opt_build_dll_G4Lab_sh_5
147  SET obuild_cxx_optimize_local=%obuild_cxx_optimize%
148  GOTO end_if_opt_build_dll_G4Lab_sh_5
149:else_if_opt_build_dll_G4Lab_sh_5
150  SET obuild_cxx_optimize_local=
151:end_if_opt_build_dll_G4Lab_sh_5
152
153
154
155SET obuild_cxx_includes=/I"%obuild_snovis_path%\source"
156
157IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab" RMDIR /S /Q "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab"
158IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab"
159
160@IF %obuild_verbose% == yes @ECHO ON
161cd "%obuild_snovis_path%\%obuild_dir_bin%"
162%obuild_cxx_command% /c %obuild_cxx_debug_local% %obuild_cxx_optimize_local% %obuild_cxx_options% %obuild_cxx_macros% %obuild_cxx_includes% /Fo.\dll_G4Lab\Callbacks.obj  /Tp"..\source\G4Lab\cxx\Callbacks.cxx" 1> cl_exe_error
163@IF ERRORLEVEL 1 @TYPE cl_exe_error && @GOTO obuild_return
164@IF NOT ERRORLEVEL 1 @DEL cl_exe_error
165cd "%obuild_snovis_path%\obuild"
166
167@IF %obuild_verbose% == yes @ECHO OFF
168
169FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
170cd "%obuild_snovis_path%\%obuild_dir_bin%"
171IF EXIST .\dll_G4Lab\tmp_objs DEL .\dll_G4Lab\tmp_objs
172FOR %%f IN (.\dll_G4Lab\*.obj) DO ECHO %%f >> .\dll_G4Lab\tmp_objs
173
174REM # Create the archive library G4Lab :
175@IF %obuild_verbose% == yes @ECHO ON
176lib.exe /nologo /machine:ix86 /out:.\dll_G4Lab\G4Lab.arc @.\dll_G4Lab\tmp_objs
177@IF ERRORLEVEL 1 @GOTO obuild_return
178@IF %obuild_verbose% == yes @ECHO OFF
179
180REM # Build the obuild_windef.exe utility program :
181cl.exe /nologo /DWIN32 /MD /O2 /W3 /Feobuild_windef.exe "%obuild_snovis_path%\obuild\cpp\obuild_windef.c" 1> NUL
182IF EXIST obuild_windef.obj DEL obuild_windef.obj
183
184REM # Building the .def file :
185@IF %obuild_verbose% == yes @ECHO ON
186dumpbin.exe /symbols /out:.\dll_G4Lab\tmp .\dll_G4Lab\G4Lab.arc 1> dumpbin_exe_error .\dll_G4Lab\G4Lab.arc
187@IF ERRORLEVEL 1 @TYPE dumpbin_exe_error && @GOTO obuild_return
188@IF NOT ERRORLEVEL 1 @DEL dumpbin_exe_error
189@IF %obuild_verbose% == yes @ECHO OFF
190.\obuild_windef.exe G4Lab < .\dll_G4Lab\tmp > .\dll_G4Lab\G4Lab.def
191REM # Building the linking library :
192REM # It produces a .exp file.
193@IF %obuild_verbose% == yes @ECHO ON
194lib.exe /nologo /machine:ix86 /out:.\dll_G4Lab\G4Lab.lib /def:.\dll_G4Lab\G4Lab.def 1> lib_exe_error
195@IF ERRORLEVEL 1 @TYPE lib_exe_error && @GOTO obuild_return
196@IF NOT ERRORLEVEL 1 @DEL lib_exe_error
197@IF %obuild_verbose% == yes @ECHO OFF
198
199REM # Building the DLL :
200IF EXIST .\G4Lab.dll DEL .\G4Lab.dll
201@IF %obuild_verbose% == yes @ECHO ON
202link.exe /nologo /dll /out:.\G4Lab.dll .\dll_G4Lab\G4Lab.exp .\dll_G4Lab\G4Lab.arc %obuild_linked_libraries%
203@IF %obuild_verbose% == yes @ECHO OFF
204
205cd "%obuild_pwd_snovis_0%"
206SET obuild_pwd_snovis_0=
207REM # Some cleanup :
208IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab\tmp_objs" DEL "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab\tmp_objs"
209IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\G4Lab.exp" DEL "%obuild_snovis_path%\%obuild_dir_bin%\G4Lab.exp"
210
211:obuild_return
212ENDLOCAL
213@ECHO ON
Note: See TracBrowser for help on using the repository browser.