| [6] | 1 | @ECHO OFF
|
|---|
| 2 | SETLOCAL
|
|---|
| 3 |
|
|---|
| 4 | REM #
|
|---|
| 5 | REM # File produced by the obuild tool version 1.0
|
|---|
| [101] | 6 | REM # for the package snovis with version v1r1.
|
|---|
| [6] | 7 | REM #
|
|---|
| 8 |
|
|---|
| 9 | REM #////////////////////////////////////////////////
|
|---|
| 10 | REM # Usage :
|
|---|
| 11 | REM # DOS> CD some_path\pack\version\obuild
|
|---|
| 12 | REM # DOS> DOS\build_snovis
|
|---|
| 13 | REM #
|
|---|
| 14 | REM #////////////////////////////////////////////////
|
|---|
| 15 |
|
|---|
| 16 | REM #////////////////////////////////////////////////
|
|---|
| 17 | REM #/// Get path of this file :
|
|---|
| 18 | REM #////////////////////////////////////////////////
|
|---|
| 19 | SET obuild_snovis_path=%~dp0
|
|---|
| 20 | REM # Remove ending \obuild\DOS\
|
|---|
| 21 | SET obuild_snovis_path=%obuild_snovis_path:~0,-12%
|
|---|
| 22 |
|
|---|
| 23 | REM #////////////////////////////////////////////////
|
|---|
| 24 | REM #/// Treat arguments :
|
|---|
| 25 | REM #////////////////////////////////////////////////
|
|---|
| 26 |
|
|---|
| 27 | SET obuild_verbose=no
|
|---|
| 28 | SET obuild_debug=no
|
|---|
| 29 | SET obuild_optimize=yes
|
|---|
| 30 | SET obuild_set_x=no
|
|---|
| 31 |
|
|---|
| 32 | :next_arg
|
|---|
| 33 | IF "%1%" == "" GOTO end_args
|
|---|
| 34 |
|
|---|
| 35 | IF NOT "%1%" == "-v" GOTO end_if_v
|
|---|
| 36 | SET obuild_verbose=yes
|
|---|
| 37 | SHIFT
|
|---|
| 38 | GOTO next_arg
|
|---|
| 39 | :end_if_v
|
|---|
| 40 |
|
|---|
| 41 | IF NOT "%1%" == "-g" GOTO end_if_g
|
|---|
| 42 | SET obuild_debug=yes
|
|---|
| 43 | SHIFT
|
|---|
| 44 | GOTO next_arg
|
|---|
| 45 | :end_if_g
|
|---|
| 46 |
|
|---|
| 47 | IF 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 |
|
|---|
| 55 | REM #////////////////////////////////////////////////
|
|---|
| 56 | REM #/// End arguments.
|
|---|
| 57 | REM #////////////////////////////////////////////////
|
|---|
| 58 |
|
|---|
| 59 | IF %obuild_set_x% == yes ECHO ON
|
|---|
| 60 |
|
|---|
| 61 | IF %obuild_debug% == yes SET obuild_optimize=no
|
|---|
| 62 |
|
|---|
| 63 | IF "%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 |
|
|---|
| 70 | IF "%obuild_platform%" == "" (
|
|---|
| 71 | ECHO obuild_platform variable not defined.
|
|---|
| 72 | GOTO obuild_return
|
|---|
| 73 | )
|
|---|
| 74 |
|
|---|
| 75 | IF "%OBUILD_DIR_BIN%" == "" (
|
|---|
| [276] | 76 | SET obuild_dir_bin=bin_obuild
|
|---|
| [6] | 77 | ) ELSE (
|
|---|
| 78 | SET obuild_dir_bin=%OBUILD_DIR_BIN%
|
|---|
| 79 | )
|
|---|
| 80 |
|
|---|
| 81 | IF "%obuild_dir_bin%" == "" (
|
|---|
| 82 | ECHO obuild_dir_bin variable not defined.
|
|---|
| 83 | GOTO obuild_return
|
|---|
| 84 | )
|
|---|
| 85 |
|
|---|
| 86 | IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 87 |
|
|---|
| 88 | IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 89 | IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%\obuild_platform.exe" (
|
|---|
| [92] | 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
|
|---|
| [6] | 91 | IF EXIST obuild_platform.obj DEL obuild_platform.obj
|
|---|
| 92 | )
|
|---|
| 93 |
|
|---|
| 94 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 95 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 96 | IF NOT EXIST .\obuild_platform.exe ECHO Program obuild_platform.exe not found. && GOTO obuild_return
|
|---|
| 97 | FOR /F "usebackq" %%j IN (`.\obuild_platform.exe %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
|
|---|
| 98 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 99 | SET obuild_pwd_snovis_0=
|
|---|
| [276] | 100 | IF NOT %obuild_platform_result% == yes GOTO end_if_platform_0
|
|---|
| [6] | 101 | SET obuild_cxx_command=cl.exe
|
|---|
| [276] | 102 | :end_if_platform_0
|
|---|
| [6] | 103 | SET obuild_platform_result=
|
|---|
| 104 | IF "%obuild_cxx_command%" == "" ECHO Variable obuild_cxx_command not defined. && GOTO obuild_return
|
|---|
| 105 |
|
|---|
| 106 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 107 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 108 | IF NOT EXIST .\obuild_platform.exe ECHO Program obuild_platform.exe not found. && GOTO obuild_return
|
|---|
| 109 | FOR /F "usebackq" %%j IN (`.\obuild_platform.exe %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
|
|---|
| 110 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 111 | SET obuild_pwd_snovis_0=
|
|---|
| [276] | 112 | IF NOT %obuild_platform_result% == yes GOTO end_if_platform_1
|
|---|
| [6] | 113 | SET obuild_cxx_optimize=/O2
|
|---|
| [276] | 114 | :end_if_platform_1
|
|---|
| [6] | 115 | SET obuild_platform_result=
|
|---|
| 116 |
|
|---|
| 117 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 118 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 119 | IF NOT EXIST .\obuild_platform.exe ECHO Program obuild_platform.exe not found. && GOTO obuild_return
|
|---|
| 120 | FOR /F "usebackq" %%j IN (`.\obuild_platform.exe %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
|
|---|
| 121 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 122 | SET obuild_pwd_snovis_0=
|
|---|
| [276] | 123 | IF NOT %obuild_platform_result% == yes GOTO end_if_platform_2
|
|---|
| [6] | 124 | SET obuild_cxx_debug=/ZI /Od
|
|---|
| [276] | 125 | :end_if_platform_2
|
|---|
| [6] | 126 | SET obuild_platform_result=
|
|---|
| 127 |
|
|---|
| 128 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 129 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 130 | IF NOT EXIST .\obuild_platform.exe ECHO Program obuild_platform.exe not found. && GOTO obuild_return
|
|---|
| 131 | FOR /F "usebackq" %%j IN (`.\obuild_platform.exe %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
|
|---|
| 132 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 133 | SET obuild_pwd_snovis_0=
|
|---|
| [276] | 134 | IF NOT %obuild_platform_result% == yes GOTO end_if_platform_3
|
|---|
| [6] | 135 | SET obuild_cxx_options=/nologo /DWIN32 /MD /GX /GR /W3
|
|---|
| [276] | 136 | :end_if_platform_3
|
|---|
| [6] | 137 | SET obuild_platform_result=
|
|---|
| 138 |
|
|---|
| [276] | 139 | IF NOT %obuild_debug% == yes GOTO else_if_db_build_dll_snovis_sh_4
|
|---|
| [6] | 140 | SET obuild_cxx_debug_local=%obuild_cxx_debug%
|
|---|
| [276] | 141 | GOTO end_if_db_build_dll_snovis_sh_4
|
|---|
| 142 | :else_if_db_build_dll_snovis_sh_4
|
|---|
| [6] | 143 | SET obuild_cxx_debug_local=
|
|---|
| [276] | 144 | :end_if_db_build_dll_snovis_sh_4
|
|---|
| [92] | 145 |
|
|---|
| [276] | 146 | IF NOT %obuild_optimize% == yes GOTO else_if_opt_build_dll_snovis_sh_5
|
|---|
| [6] | 147 | SET obuild_cxx_optimize_local=%obuild_cxx_optimize%
|
|---|
| [276] | 148 | GOTO end_if_opt_build_dll_snovis_sh_5
|
|---|
| 149 | :else_if_opt_build_dll_snovis_sh_5
|
|---|
| [6] | 150 | SET obuild_cxx_optimize_local=
|
|---|
| [276] | 151 | :end_if_opt_build_dll_snovis_sh_5
|
|---|
| [6] | 152 |
|
|---|
| [92] | 153 |
|
|---|
| [244] | 154 |
|
|---|
| 155 | SET obuild_cxx_includes=/I"%obuild_snovis_path%"
|
|---|
| 156 | SET obuild_cxx_includes=%obuild_cxx_includes% /I"%obuild_snovis_path%\source"
|
|---|
| [6] | 157 |
|
|---|
| 158 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis" RMDIR /S /Q "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis"
|
|---|
| 159 | IF NOT EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis" MKDIR "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis"
|
|---|
| 160 |
|
|---|
| 161 | @IF %obuild_verbose% == yes @ECHO ON
|
|---|
| 162 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| [92] | 163 | %obuild_cxx_command% /c %obuild_cxx_debug_local% %obuild_cxx_optimize_local% %obuild_cxx_options% %obuild_cxx_macros% %obuild_cxx_includes% /Fo.\dll_snovis\Callbacks.obj /Tp"..\source\Callbacks.cxx" 1> cl_exe_error
|
|---|
| 164 | @IF ERRORLEVEL 1 @TYPE cl_exe_error && @GOTO obuild_return
|
|---|
| 165 | @IF NOT ERRORLEVEL 1 @DEL cl_exe_error
|
|---|
| [6] | 166 | cd "%obuild_snovis_path%\obuild"
|
|---|
| 167 |
|
|---|
| 168 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| [92] | 169 | %obuild_cxx_command% /c %obuild_cxx_debug_local% %obuild_cxx_optimize_local% %obuild_cxx_options% %obuild_cxx_macros% %obuild_cxx_includes% /Fo.\dll_snovis\InventorCallbacks.obj /Tp"..\source\InventorCallbacks.cxx" 1> cl_exe_error
|
|---|
| 170 | @IF ERRORLEVEL 1 @TYPE cl_exe_error && @GOTO obuild_return
|
|---|
| 171 | @IF NOT ERRORLEVEL 1 @DEL cl_exe_error
|
|---|
| [6] | 172 | cd "%obuild_snovis_path%\obuild"
|
|---|
| 173 |
|
|---|
| 174 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| [92] | 175 | %obuild_cxx_command% /c %obuild_cxx_debug_local% %obuild_cxx_optimize_local% %obuild_cxx_options% %obuild_cxx_macros% %obuild_cxx_includes% /Fo.\dll_snovis\Layouts.obj /Tp"..\source\Layouts.cxx" 1> cl_exe_error
|
|---|
| 176 | @IF ERRORLEVEL 1 @TYPE cl_exe_error && @GOTO obuild_return
|
|---|
| 177 | @IF NOT ERRORLEVEL 1 @DEL cl_exe_error
|
|---|
| [6] | 178 | cd "%obuild_snovis_path%\obuild"
|
|---|
| 179 |
|
|---|
| 180 | @IF %obuild_verbose% == yes @ECHO OFF
|
|---|
| 181 |
|
|---|
| [244] | 182 | SET obuild_linked_libraries=-L${Geant4_home}/lib -lG4physicslists
|
|---|
| [6] | 183 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 184 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 185 | IF NOT EXIST .\obuild_platform.exe ECHO Program obuild_platform.exe not found. && GOTO obuild_return
|
|---|
| 186 | FOR /F "usebackq" %%j IN (`.\obuild_platform.exe %obuild_platform% Windows_NT`) DO SET obuild_platform_result=%%j
|
|---|
| 187 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 188 | SET obuild_pwd_snovis_0=
|
|---|
| [276] | 189 | IF NOT %obuild_platform_result% == yes GOTO end_if_platform_12
|
|---|
| [6] | 190 | SET obuild_linked_libraries=%obuild_linked_libraries% glu32.lib opengl32.lib gdi32.lib user32.lib
|
|---|
| [276] | 191 | :end_if_platform_12
|
|---|
| [6] | 192 | SET obuild_platform_result=
|
|---|
| 193 |
|
|---|
| 194 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d
|
|---|
| 195 | cd "%obuild_snovis_path%\%obuild_dir_bin%"
|
|---|
| 196 | IF EXIST .\dll_snovis\tmp_objs DEL .\dll_snovis\tmp_objs
|
|---|
| 197 | FOR %%f IN (.\dll_snovis\*.obj) DO ECHO %%f >> .\dll_snovis\tmp_objs
|
|---|
| 198 |
|
|---|
| 199 | REM # Create the archive library snovis :
|
|---|
| 200 | @IF %obuild_verbose% == yes @ECHO ON
|
|---|
| 201 | lib.exe /nologo /machine:ix86 /out:.\dll_snovis\snovis.arc @.\dll_snovis\tmp_objs
|
|---|
| 202 | @IF ERRORLEVEL 1 @GOTO obuild_return
|
|---|
| 203 | @IF %obuild_verbose% == yes @ECHO OFF
|
|---|
| 204 |
|
|---|
| 205 | REM # Build the obuild_windef.exe utility program :
|
|---|
| [92] | 206 | cl.exe /nologo /DWIN32 /MD /O2 /W3 /Feobuild_windef.exe "%obuild_snovis_path%\obuild\cpp\obuild_windef.c" 1> NUL
|
|---|
| [6] | 207 | IF EXIST obuild_windef.obj DEL obuild_windef.obj
|
|---|
| 208 |
|
|---|
| 209 | REM # Building the .def file :
|
|---|
| 210 | @IF %obuild_verbose% == yes @ECHO ON
|
|---|
| [92] | 211 | dumpbin.exe /symbols /out:.\dll_snovis\tmp .\dll_snovis\snovis.arc 1> dumpbin_exe_error .\dll_snovis\snovis.arc
|
|---|
| 212 | @IF ERRORLEVEL 1 @TYPE dumpbin_exe_error && @GOTO obuild_return
|
|---|
| 213 | @IF NOT ERRORLEVEL 1 @DEL dumpbin_exe_error
|
|---|
| [6] | 214 | @IF %obuild_verbose% == yes @ECHO OFF
|
|---|
| 215 | .\obuild_windef.exe snovis < .\dll_snovis\tmp > .\dll_snovis\snovis.def
|
|---|
| 216 | REM # Building the linking library :
|
|---|
| 217 | REM # It produces a .exp file.
|
|---|
| 218 | @IF %obuild_verbose% == yes @ECHO ON
|
|---|
| [92] | 219 | lib.exe /nologo /machine:ix86 /out:.\dll_snovis\snovis.lib /def:.\dll_snovis\snovis.def 1> lib_exe_error
|
|---|
| 220 | @IF ERRORLEVEL 1 @TYPE lib_exe_error && @GOTO obuild_return
|
|---|
| 221 | @IF NOT ERRORLEVEL 1 @DEL lib_exe_error
|
|---|
| [6] | 222 | @IF %obuild_verbose% == yes @ECHO OFF
|
|---|
| 223 |
|
|---|
| 224 | REM # Building the DLL :
|
|---|
| 225 | IF EXIST .\snovis.dll DEL .\snovis.dll
|
|---|
| 226 | @IF %obuild_verbose% == yes @ECHO ON
|
|---|
| 227 | link.exe /nologo /dll /out:.\snovis.dll .\dll_snovis\snovis.exp .\dll_snovis\snovis.arc %obuild_linked_libraries%
|
|---|
| 228 | @IF %obuild_verbose% == yes @ECHO OFF
|
|---|
| 229 |
|
|---|
| 230 | cd "%obuild_pwd_snovis_0%"
|
|---|
| 231 | SET obuild_pwd_snovis_0=
|
|---|
| 232 | REM # Some cleanup :
|
|---|
| 233 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis\tmp_objs" DEL "%obuild_snovis_path%\%obuild_dir_bin%\dll_snovis\tmp_objs"
|
|---|
| 234 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\snovis.exp" DEL "%obuild_snovis_path%\%obuild_dir_bin%\snovis.exp"
|
|---|
| 235 |
|
|---|
| 236 | :obuild_return
|
|---|
| 237 | ENDLOCAL
|
|---|
| 238 | @ECHO ON
|
|---|