[246] | 1 | @ECHO OFF |
---|
| 2 | SETLOCAL |
---|
| 3 | |
---|
| 4 | REM # |
---|
| 5 | REM # File produced by the obuild tool version 1.0 |
---|
| 6 | REM # for the package snovis with version v1r1. |
---|
| 7 | REM # |
---|
| 8 | |
---|
| 9 | REM #//////////////////////////////////////////////// |
---|
| 10 | REM # Usage : |
---|
| 11 | REM # DOS> CD some_path\pack\version\obuild |
---|
| 12 | REM # DOS> DOS\build_G4Lab |
---|
| 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 |
---|
[246] | 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" ( |
---|
| 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 | |
---|
| 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 |
---|
[246] | 101 | SET obuild_cxx_command=cl.exe |
---|
[276] | 102 | :end_if_platform_0 |
---|
[246] | 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 |
---|
[246] | 113 | SET obuild_cxx_optimize=/O2 |
---|
[276] | 114 | :end_if_platform_1 |
---|
[246] | 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 |
---|
[246] | 124 | SET obuild_cxx_debug=/ZI /Od |
---|
[276] | 125 | :end_if_platform_2 |
---|
[246] | 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 |
---|
[246] | 135 | SET obuild_cxx_options=/nologo /DWIN32 /MD /GX /GR /W3 |
---|
[276] | 136 | :end_if_platform_3 |
---|
[246] | 137 | SET obuild_platform_result= |
---|
| 138 | |
---|
[276] | 139 | IF NOT %obuild_debug% == yes GOTO else_if_db_build_dll_G4Lab_sh_4 |
---|
[246] | 140 | SET obuild_cxx_debug_local=%obuild_cxx_debug% |
---|
[276] | 141 | GOTO end_if_db_build_dll_G4Lab_sh_4 |
---|
| 142 | :else_if_db_build_dll_G4Lab_sh_4 |
---|
[246] | 143 | SET obuild_cxx_debug_local= |
---|
[276] | 144 | :end_if_db_build_dll_G4Lab_sh_4 |
---|
[246] | 145 | |
---|
[276] | 146 | IF NOT %obuild_optimize% == yes GOTO else_if_opt_build_dll_G4Lab_sh_5 |
---|
[246] | 147 | SET obuild_cxx_optimize_local=%obuild_cxx_optimize% |
---|
[276] | 148 | GOTO end_if_opt_build_dll_G4Lab_sh_5 |
---|
| 149 | :else_if_opt_build_dll_G4Lab_sh_5 |
---|
[246] | 150 | SET obuild_cxx_optimize_local= |
---|
[276] | 151 | :end_if_opt_build_dll_G4Lab_sh_5 |
---|
[246] | 152 | |
---|
| 153 | |
---|
| 154 | |
---|
| 155 | SET obuild_cxx_includes=/I"%obuild_snovis_path%\source" |
---|
| 156 | |
---|
| 157 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab" RMDIR /S /Q "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab" |
---|
| 158 | IF 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 |
---|
| 161 | cd "%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 |
---|
| 165 | cd "%obuild_snovis_path%\obuild" |
---|
| 166 | |
---|
| 167 | @IF %obuild_verbose% == yes @ECHO OFF |
---|
| 168 | |
---|
| 169 | FOR /F "usebackq delims=;" %%d IN (`cd`) DO SET obuild_pwd_snovis_0=%%d |
---|
| 170 | cd "%obuild_snovis_path%\%obuild_dir_bin%" |
---|
| 171 | IF EXIST .\dll_G4Lab\tmp_objs DEL .\dll_G4Lab\tmp_objs |
---|
| 172 | FOR %%f IN (.\dll_G4Lab\*.obj) DO ECHO %%f >> .\dll_G4Lab\tmp_objs |
---|
| 173 | |
---|
| 174 | REM # Create the archive library G4Lab : |
---|
| 175 | @IF %obuild_verbose% == yes @ECHO ON |
---|
| 176 | lib.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 | |
---|
| 180 | REM # Build the obuild_windef.exe utility program : |
---|
| 181 | cl.exe /nologo /DWIN32 /MD /O2 /W3 /Feobuild_windef.exe "%obuild_snovis_path%\obuild\cpp\obuild_windef.c" 1> NUL |
---|
| 182 | IF EXIST obuild_windef.obj DEL obuild_windef.obj |
---|
| 183 | |
---|
| 184 | REM # Building the .def file : |
---|
| 185 | @IF %obuild_verbose% == yes @ECHO ON |
---|
| 186 | dumpbin.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 |
---|
| 191 | REM # Building the linking library : |
---|
| 192 | REM # It produces a .exp file. |
---|
| 193 | @IF %obuild_verbose% == yes @ECHO ON |
---|
| 194 | lib.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 | |
---|
| 199 | REM # Building the DLL : |
---|
| 200 | IF EXIST .\G4Lab.dll DEL .\G4Lab.dll |
---|
| 201 | @IF %obuild_verbose% == yes @ECHO ON |
---|
| 202 | link.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 | |
---|
| 205 | cd "%obuild_pwd_snovis_0%" |
---|
| 206 | SET obuild_pwd_snovis_0= |
---|
| 207 | REM # Some cleanup : |
---|
| 208 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab\tmp_objs" DEL "%obuild_snovis_path%\%obuild_dir_bin%\dll_G4Lab\tmp_objs" |
---|
| 209 | IF EXIST "%obuild_snovis_path%\%obuild_dir_bin%\G4Lab.exp" DEL "%obuild_snovis_path%\%obuild_dir_bin%\G4Lab.exp" |
---|
| 210 | |
---|
| 211 | :obuild_return |
---|
| 212 | ENDLOCAL |
---|
| 213 | @ECHO ON |
---|