9c57a19888048caa8c86ab848bdd8a0b1ec7c768
[mirror/winof/.git] / OFED / BuildRelease.bat
1 @echo off\r
2 setlocal\r
3 rem tabstop=4\r
4 \r
5 rem version: 2.1.0\r
6 \r
7 rem EXAMPLE - Build entire openIB-windows release & WIX installers (.msi) files.\r
8 rem           Binary release is constructed in WinOF\Wix\OS\bin.\r
9 rem           Processor architecture specific WIX installers are constructed\r
10 rem           in %IDIR%\r
11 rem\r
12 rem BuildRelease option\r
13 rem  option: all | allnoforce | allf | allnf | compile | compilenoforce |\r
14 rem          compf path | compnf path | makebin | msi |sign | wix | clean |\r
15 rem          msi-label | msi-del | msi-dir {OPENIB_REV}\r
16 \r
17 rem This script is an 'example' of a one-command entire IB stack build to\r
18 rem single-file installer; used to build a WinOF releases.\r
19 rem Script is designed to be invoked from the <whatever>\gen1\trunk folder with\r
20 rem <whatever>\gen1\trunk\WinOF\Wix\* present.\r
21 rem\r
22 rem Verify the following env vars are suitible for your system configuration.\r
23 rem     _DDK, _PSDK, SVN, IDIR\r
24 \r
25 rem 'nf path' command variants are required due to a bug in the WDK build env.\r
26 rem ipoib\ & ipoib_ndis6_cm\ both build ipoib.sys just for different OS\r
27 rem versions. The problem arises when a compile is forced on one folder or the\r
28 rem other, all instances of ipoib.sys are deleted\r
29 \r
30 \r
31 if "%1" == "" goto usage\r
32 if "%1" == "/?" goto usage\r
33 if "%1" == "-h" goto usage\r
34 if "%1" == "all" goto OK\r
35 if "%1" == "allnoforce" goto OK\r
36 if "%1" == "allf" (\r
37 :allf\r
38     if "%2" == "" goto usage\r
39     set FPATH=%2\r
40     if exist "%2" goto OK\r
41         echo %0 Err - path .\%2 does not exist?\r
42         exit /B 1\r
43 )\r
44 if "%1" == "allnf" goto allf\r
45 if "%1" == "compile" goto OK\r
46 if "%1" == "compilenoforce" goto OK\r
47 if "%1" == "compf" (\r
48 :cpf\r
49     if "%2" == "" goto usage\r
50     set FPATH=%2\r
51     if exist "%2" goto OK\r
52         echo %0 Err - path .\%2 does not exist?\r
53         exit /B 1\r
54 )\r
55 if "%1" == "compnf" goto cpf\r
56 if "%1" == "makebin" goto OK\r
57 if "%1" == "msi" goto OK\r
58 if "%1" == "sign" goto OK\r
59 if "%1" == "wix" goto OK\r
60 if "%1" == "clean" goto OK\r
61 if "%1" == "msi-label" goto OK\r
62 if "%1" == "msi-del" goto OK\r
63 if "%1" == "msi-dir" goto OK\r
64 \r
65 echo Unknown arg '%1' ?\r
66 \r
67 :usage\r
68 \r
69 echo "usage: BuildRelease command {OPENIB_REV value}"\r
70 echo where 'command' may be:\r
71 echo    all - force recompile, install binaries to WIX tree(makebin),\r
72 echo          sign drivers and build installers.\r
73 echo    allnoforce - recompile only if needed, makebin, sign drivers and \r
74 echo                 build installers.\r
75 echo    allf path - force recompile the specified folder, makebin,\r
76 echo                sign drivers and build installers.\r
77 echo    allnf path - recompile specified folder ONLY if required, makebin,\r
78 echo                sign drivers and build installers.\r
79 echo    compile - force a recompile/link of everything then exit.\r
80 echo    compilenoforce - recompile/link only if needed then exit.\r
81 echo    compf path - force recompile (all arch*) specified folder\r
82 echo    compnf path - No-force recompile (all arch*) specified folder\r
83 echo    makebin - assumes binaries are built, installs binaries to WIX tree\r
84 echo              then exit.\r
85 echo    msi - assumes binaries are installed in WIX tree, signs drivers and\r
86 echo          create installers (.msi files) in IDIR.\r
87 echo    sign - assumes binaries are built and installed, sign drivers, exit.\r
88 echo    wix - build .msi installers, assumes (drivers signed) .cat files exist\r
89 echo    clean - remove build artifacts for a clean build: .obj, .sys, ...\r
90 echo    msi-label {OPENIB_REV}\r
91 echo           rename WOF_os*_arch*.msi to WOF_os*_arch*_svn#.msi \r
92 echo           Uniquely identify installers just created.\r
93 echo           If OPENIB_REV arg used, then rename WOF_os*_arch*argVal.msi\r
94 echo           otherwise, use SVN# from path.\r
95 echo    msi-del - del %windir%\temp\WOF_os*_arch*.msi\r
96 echo    msi-dir - del %windir%\temp\WOF_os*_arch*.msi\r
97 echo :\r
98 echo    {OPENIB_REV}\r
99 echo       optional, if set then OPENIB_REV is assigned this value.\r
100 echo            example: BuildRelease all 1414\r
101 \r
102 exit /B 1 \r
103 \r
104 :OK\r
105 \r
106 if not "%WDM_INC_PATH%" == "" (\r
107     echo %0: Error - %0 unable to run from WDK window,\r
108     echo     use %comspec%\r
109     exit /B 1\r
110 )\r
111 \r
112 rem assumes %CD% == '<...>\gen1\trunk'\r
113 set BSE=%CD%\r
114 set WIX=%CD%\WinOF\WIX\r
115 \r
116 rem Setup Wix 3.0 items\r
117 \r
118 set WIX_BIN=wix3.0.5419.0-binaries\r
119 \r
120 \r
121 set RBIN_W7=%WIX%\win7\bin%\r
122 set RBIN_WLH=%WIX%\wlh\bin%\r
123 set RBIN_WNET=%WIX%\wnet\bin%\r
124 set RBIN_WXP=%WIX%\wxp\bin%\r
125 \r
126 rem remove build artifacts\r
127 if "%1" == "clean" (\r
128     echo Removing build artifacts and folders...\r
129     call %CD%\etc\clean-build.bat\r
130     if exist %WIX%\win7\bin (\r
131                 echo Removing %WIX%\win7\bin\r
132                 rmdir /Q /S %WIX%\win7\bin\r
133     )\r
134     if exist %WIX%\wlh\bin (\r
135                 echo Removing %WIX%\wlh\bin\r
136                 rmdir /Q /S %WIX%\wlh\bin\r
137     )\r
138     if exist %WIX%\wnet\bin (\r
139                 echo Removing %WIX%\wnet\bin\r
140                 rmdir /Q /S %WIX%\wnet\bin\r
141     )\r
142     if exist %WIX%\wxp\bin (\r
143                 echo Removing %WIX%\wxp\bin\r
144                 rmdir /Q /S %WIX%\wxp\bin\r
145     )\r
146     exit /B 0\r
147 )\r
148 \r
149 rem Driver Signing Certificate filename, assumes %WIX%\%CERTFILE% is valid.\r
150 rem set CERTFILE=noCert\r
151 set CERTFILE=MSCV-VSClass3.cer\r
152 set SW_PUBLISHER="OpenFabrics Alliance"\r
153 \r
154 rem A Digital driver signing certificate store name may be required.\r
155 \r
156 if "%1" == "all" goto chk_cert\r
157 if "%1" == "allf" goto chk_cert\r
158 if "%1" == "allnf" goto chk_cert\r
159 if "%1" == "msi" goto chk_cert\r
160 if "%1" == "sign" goto chk_cert\r
161 \r
162 goto cert_OK\r
163 \r
164 :chk_cert\r
165     if "%CERTFILE%" == "noCert" set /P CERTFILE=[Enter Cross Certificate FileName] \r
166     if "%CERTFILE%" == "" (\r
167         echo %0\r
168         echo %0: Err - MS cross certificate %CERTFILE% required.\r
169         echo %0: see certmgr.exe\r
170         exit /B 1\r
171     )\r
172 )\r
173 \r
174 :cert_OK\r
175 \r
176 set WIN7=yes\r
177 \r
178 rem Use this WDK\r
179 \r
180 if "%WIN7%" == "yes" (\r
181         rem Windows 7 WDK\r
182         set _DDK_VER=7600.16385.0\r
183         set _COIN_VER=01009\r
184 ) else (\r
185         rem Server 2008 WDK & WdfCoInstaller version\r
186         set _DDK_VER=6001.18001\r
187         set _COIN_VER=01007\r
188 )\r
189 \r
190 rem Full DDK root path\r
191 set _DDK=%SystemDrive%\WinDDK\%_DDK_VER%\r
192 \r
193 if NOT EXIST %_DDK% (\r
194     echo Missing WDK @ %_DDK%\r
195     exit /B 1\r
196 )\r
197 \r
198 rem Platform SDK path - watchout for missing LoadPerf.h (installsp.c)\r
199 \r
200 if DEFINED PLATFORM_SDK_PATH (\r
201     set _PSDK=%PLATFORM_SDK_PATH%\r
202 ) else (\r
203     set _PSDK=C:\PROGRA~1\MICROS~3\Windows\v6.1\r
204 )\r
205 if NOT EXIST %_PSDK% (\r
206     echo Missing PLATFORM SDK @ %_PSDK%\r
207     exit /B 1\r
208 )\r
209 \r
210 if not DEFINED ND_SDK_PATH (\r
211     set ND_SDK_PATH=C:\PROGRA~1\MICROS~4\NetworkDirect\r
212 )\r
213 if NOT EXIST %ND_SDK_PATH% (\r
214     echo Missing Network Direct SDK @ %ND_SDK_PATH%\r
215     exit /B 1\r
216 )\r
217 \r
218 rem set this to be the current svn commit number; overrides svn in path\r
219 rem processing. Additionally if set to 'latest' code expects ..\..\..\latest.txt\r
220 rem to contain the SVN number to use.\r
221 rem set USE_SVN=1748\r
222 set USE_SVN=latest\r
223 \r
224 rem %2 can be either a file spec or IPENIB_REV value.\r
225 rem Based on %1 command, FPATH will/will-not be set to a file spec.\r
226 \r
227 if Not "%FPATH%" == "" goto svn\r
228 \r
229 rem setup value for OPENIB_REV assignment\r
230 if not "%2" == "" (\r
231         rem set SVN commit number.\r
232         set SVN=%2\r
233         set LBL=%2\r
234         goto svn_set\r
235 )\r
236 \r
237 :svn\r
238 \r
239 rem Determine SVN value from current path.\r
240 rem WARNING - SVN value depends on the path '\openIB-windows-svn\XXX\gen1',\r
241 rem where SVN is set to XXX\r
242 rem  substring[23rd...26th] chars (offset counting) == xxxx\r
243 rem Note - OPENIB_REV is assigned SVN in a child script.\r
244 \r
245 if "%USE_SVN%" == "" (\r
246     set SVN=%CD:~22,4%\r
247 ) else (\r
248         if "%USE_SVN%" == "latest" (\r
249 rem                     set /P SVN=<F:\openIB-windows-svn\latest.txt\r
250                 set /P SVN=< ..\..\..\latest.txt\r
251         ) else (\r
252                 set SVN=%USE_SVN%\r
253         )\r
254 )\r
255 set LBL=_svn.!SVN!\r
256 \r
257 :svn_set\r
258 \r
259 if NOT EXIST "%WIX%\build-all-MSI.bat" (\r
260     echo %0 - Missing .msi installer build script\r
261     echo    %WIX%\build-all-MSI.bat\r
262     exit /B 1\r
263 )\r
264 \r
265 rem WIX Installer files (.msi) destination folder - set for local environment.\r
266 set IDIR=%SystemRoot%\temp\r
267 \r
268 if "%1" == "msi-label" (\r
269     pushd %IDIR%\r
270     if exist WOF_wxp_x86.msi (\r
271         if exist WOF_wxp_x86%LBL%.msi del /F/Q WOF_wxp_x86%LBL%.msi\r
272         rename WOF_wxp_x86.msi WOF_wxp_x86%LBL%.msi\r
273     )\r
274 \r
275     if exist WOF_wnet_x86.msi (\r
276         if exist WOF_wnet_x86%LBL%.msi del /F/Q WOF_wnet_x86%LBL%.msi\r
277         rename WOF_wnet_x86.msi WOF_wnet_x86%LBL%.msi\r
278     )\r
279     if exist WOF_wnet_x64.msi (\r
280         if exist WOF_wnet_x64%LBL%.msi del /F/Q WOF_wnet_x64%LBL%.msi\r
281         rename WOF_wnet_x64.msi WOF_wnet_x64%LBL%.msi\r
282     )\r
283     if exist WOF_wnet_ia64.msi (\r
284        if exist WOF_wnet_ia64%LBL%.msi del /F/Q WOF_wnet_ia64%LBL%.msi\r
285        rename WOF_wnet_ia64.msi WOF_wnet_ia64%LBL%.msi\r
286     )\r
287 \r
288     if exist WOF_wlh_x86.msi (\r
289         if exist WOF_wlh_x86%LBL%.msi del /F/Q WOF_wlh_x86%LBL%.msi\r
290         rename WOF_wlh_x86.msi WOF_wlh_x86%LBL%.msi\r
291     )\r
292     if exist WOF_wlh_x64.msi  (\r
293         if exist WOF_wlh_x64%LBL%.msi del /F/Q WOF_wlh_x64%LBL%.msi\r
294         rename WOF_wlh_x64.msi WOF_wlh_x64%LBL%.msi\r
295     )\r
296     if exist WOF_wlh_ia64.msi  (\r
297         if exist WOF_wlh_ia64%LBL%.msi del /F/Q WOF_wlh_ia64%LBL%.msi\r
298         rename WOF_wlh_ia64.msi WOF_wlh_ia64%LBL%.msi\r
299     )\r
300     dir WOF_*%LBL%.msi\r
301     popd\r
302     exit /B 0\r
303 )\r
304 \r
305 if "%1" == "msi-del" (\r
306     echo Deleting WOF_{wxp,wnet,wlh}_{x86,x64,ia64}%LBL%.msi\r
307     pushd %IDIR%\r
308     if exist WOF_wxp_x86%LBL%.msi del /F/P WOF_wxp_x86%LBL%.msi\r
309 \r
310     if exist WOF_wnet_x86%LBL%.msi del /F/P WOF_wnet_x86%LBL%.msi\r
311     if exist WOF_wnet_x64%LBL%.msi del /F/P WOF_wnet_x64%LBL%.msi\r
312     if exist WOF_wnet_ia64%LBL%.msi del /F/P WOF_wnet_ia64%LBL%.msi\r
313 \r
314     if exist WOF_wlh_x86%LBL%.msi del /F/P WOF_wlh_x86%LBL%.msi\r
315     if exist WOF_wlh_x64%LBL%.msi del /F/P WOF_wlh_x64%LBL%.msi\r
316     if exist WOF_wlh_ia64%LBL%.msi del /F/P WOF_wlh_ia64%LBL%.msi\r
317 \r
318     dir /N/OD WOF_*.msi\r
319     popd\r
320     exit /B 0\r
321 )\r
322 \r
323 if "%1" == "msi-dir" (\r
324     pushd %IDIR%\r
325     dir /N/OD WOF_*.msi\r
326     popd\r
327     exit /B 0\r
328 )\r
329 \r
330 echo %0 - Building with WDK @ %_DDK%\r
331 echo Building for OPENIB_REV %SVN%, installer files (.msi) @ %IDIR%\r
332 echo   Drivers signed using Certificate '%CERTFILE%'\r
333 \r
334 rem pause thoughtfully.\r
335 if exist %windir%\system32\timeout.exe (\r
336     timeout /T 10\r
337 ) else (\r
338     pause\r
339 )\r
340 \r
341 if NOT EXIST "%IDIR%" (\r
342     echo %0 - Missing Installer file destination folder\r
343         echo %0     %IDIR%\r
344     exit /B 1\r
345 )\r
346 \r
347 rem Verify WIX toolset is available - if not, download from\r
348 rem http://sourceforge.net/project/showfiles.php?group_id=105970&package_id=114109\r
349 rem   <...>\WinOF\WIX\WIX_tools\\r
350 rem\r
351 if NOT EXIST %WIX%\WIX_tools\%WIX_BIN% (\r
352     echo %0 - Missing WIX tools @ %WIX%\WIX_tools\%WIX_BIN% \r
353     exit /B 1\r
354 )\r
355 \r
356 if NOT EXIST etc\makebin.bat (\r
357     echo %0 - Missing etc\makebin.bat, script must run from gen1\trunk\r
358     exit /B 1\r
359 )\r
360 set STIME=%TIME%\r
361 \r
362 rem skip build - assumes binaries already built and installed.\r
363 \r
364 if "%1" == "wix" (\r
365     set MSI_CMD=msi\r
366     goto mk_msi\r
367 )\r
368 \r
369 if "%1" == "makebin" goto InstallBin\r
370 \r
371 rem poor man's OR\r
372 if "%1" == "sign" (\r
373     set MSI_CMD=%1\r
374     goto do_msi_chk\r
375 ) else (\r
376     set MSI_CMD=all\r
377 )\r
378 if "%1" == "msi" goto do_msi_chk\r
379 goto compile\r
380 \r
381 :do_msi_chk\r
382 \r
383 rem make sure building a msi has files to work with.\r
384 if "%WIN7%" == "yes" (\r
385         if not EXIST "%RBIN_W7%"  goto InstallBin\r
386 )\r
387 if not EXIST "%RBIN_WLH%"  goto InstallBin\r
388 if not EXIST "%RBIN_WNET%" goto InstallBin\r
389 if not EXIST "%RBIN_WXP%"  goto InstallBin\r
390 goto mk_msi\r
391 \r
392 :compile\r
393 \r
394 set OPS=-wgcPM 3\r
395 if "%1" == "allnoforce" (\r
396     rem Compile everything only if needed.\r
397     set OPS=-wgPM 3\r
398 )\r
399 if "%1" == "compilenoforce" (\r
400     rem Compile everything only if needed.\r
401     set OPS=-wgPM 3\r
402 )\r
403 if "%1" == "allf" (\r
404     rem Force Compile everything\r
405     set OPS=-wgcfPM 3\r
406 )\r
407 if "%1" == "allnf" (\r
408     rem Compile only if necessary\r
409     set OPS=-wgPM 3\r
410 )\r
411 if "%1" == "compf" (\r
412     rem Force Compile everything\r
413     set OPS=-wgcfPM 3\r
414 )\r
415 if "%1" == "compnf" (\r
416     rem Compile only if necessary\r
417     set OPS=-wgPM 3\r
418 )\r
419 \r
420 if "%1" == "all" (\r
421     echo Removing build artifacts and folders...\r
422     call %CD%\etc\clean-build.bat\r
423     if exist %WIX%\wlh\bin (\r
424                 echo Removing %WIX%\wlh\bin\r
425                 rmdir /Q /S %WIX%\wlh\bin\r
426     )\r
427     if exist %WIX%\wnet\bin (\r
428                 echo Removing %WIX%\wnet\bin\r
429                 rmdir /Q /S %WIX%\wnet\bin\r
430     )\r
431     if exist %WIX%\wxp\bin (\r
432                 echo Removing %WIX%\wxp\bin\r
433                 rmdir /Q /S %WIX%\wxp\bin\r
434     )\r
435 )\r
436 \r
437 rem ************ Setup Env for Building \r
438 \r
439 set WDK_PATH=%_DDK%\r
440 set WINOF_PATH=%CD%\r
441 set OPENIB_REV=%SVN%\r
442 if not DEFINED PLATFORM_SDK_PATH  set PLATFORM_SDK_PATH=%_PSDK%\r
443 \r
444 rem Compile in a specific folder? compf | compnf | allf | allnf\r
445 if EXIST "%FPATH%" pushd %FPATH%\r
446 \r
447 rem ********* Compile for win7 - Windows 7\r
448 \r
449 if "%WIN7%" == "yes" (\r
450         rem win7 x64\r
451         echo %0 - Build win7 x64 Checked\r
452         %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x64 win7 %OPS%"\r
453         if ERRORLEVEL 1 exit /B 1\r
454         echo %0 - Build win7 x64 Free\r
455         %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x64 win7 %OPS%"\r
456         if ERRORLEVEL 1 exit /B 1\r
457 \r
458         rem win7 x86\r
459         echo %0 - Build win7 x86 Checked\r
460         %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x86 win7 %OPS%"\r
461         if ERRORLEVEL 1 exit /B 1\r
462         echo %0 - Build win7 x86 Free\r
463         %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x86 win7 %OPS%"\r
464         if ERRORLEVEL 1 exit /B 1\r
465 \r
466         rem win7 ia64\r
467         echo %0 - Build win7 ia64 Checked\r
468         %COMSPEC% /C "%BSE%\etc\bldwo.bat chk ia64 win7 %OPS%"\r
469         if ERRORLEVEL 1 exit /B 1\r
470         echo %0 - Build win7 ia64 Free\r
471         %COMSPEC% /C "%BSE%\etc\bldwo.bat fre ia64 win7 %OPS%"\r
472         if ERRORLEVEL 1 exit /B 1\r
473 )\r
474 \r
475 rem ********* Compile for WLH - Windows Server 2008 & Vista\r
476 \r
477 rem WLH x64\r
478 echo %0 - Build WLH x64 Checked\r
479 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x64 2008 %OPS%"\r
480 if ERRORLEVEL 1 exit /B 1\r
481 echo %0 - Build WLH x64 Free\r
482 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x64 2008 %OPS%"\r
483 if ERRORLEVEL 1 exit /B 1\r
484 \r
485 rem WLH x86\r
486 echo %0 - Build WLH x86 Checked\r
487 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x86 2008 %OPS%"\r
488 if ERRORLEVEL 1 exit /B 1\r
489 echo %0 - Build WLH x86 Free\r
490 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x86 2008 %OPS%"\r
491 if ERRORLEVEL 1 exit /B 1\r
492 \r
493 rem WLH ia64\r
494 echo %0 - Build WLH ia64 Checked\r
495 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk ia64 2008 %OPS%"\r
496 if ERRORLEVEL 1 exit /B 1\r
497 echo %0 - Build WLH ia64 Free\r
498 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre ia64 2008 %OPS%"\r
499 if ERRORLEVEL 1 exit /B 1\r
500 \r
501 rem ********* WXP - Windows XP - x86 only\r
502 \r
503 echo %0 - Build XP x86 Checked\r
504 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x86 xp %OPS%"\r
505 if ERRORLEVEL 1 exit /B 1\r
506 echo %0 - Build XP x86 Free\r
507 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x86 xp %OPS%"\r
508 if ERRORLEVEL 1 exit /B 1\r
509 \r
510 rem ********* WNET - Windows Server 2003\r
511 \r
512 echo %0 - Build WNET x64 Checked\r
513 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x64 2003 %OPS%"\r
514 if ERRORLEVEL 1 exit /B 1\r
515 echo %0 - Build WNET x64 Free\r
516 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x64 2003 %OPS%"\r
517 if ERRORLEVEL 1 exit /B 1\r
518 \r
519 echo %0 - Build WNET x86 Checked\r
520 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk x86 2003 %OPS%"\r
521 if ERRORLEVEL 1 exit /B 1\r
522 echo %0 - Build WNET x86 Free\r
523 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre x86 2003 %OPS%"\r
524 if ERRORLEVEL 1 exit /B 1\r
525 \r
526 echo %0 - Build WNET ia64 Checked\r
527 %COMSPEC% /C "%BSE%\etc\bldwo.bat chk ia64 2003 %OPS%"\r
528 if ERRORLEVEL 1 exit /B 1\r
529 echo %0 - Build WNET ia64 Free\r
530 %COMSPEC% /C "%BSE%\etc\bldwo.bat fre ia64 2003 %OPS%"\r
531 if ERRORLEVEL 1 exit /B 1\r
532 \r
533 rem compnf | compf | allf | allnf\r
534 if EXIST "%FPATH%" popd\r
535 \r
536 if "%1" == "compf" goto finito\r
537 if "%1" == "compnf" goto finito\r
538 if "%1" == "compile" goto finito\r
539 if "%1" == "compilenoforce" goto finito\r
540 \r
541 rem Install binaries into WIX environment, build msi installers.\r
542 \r
543 :InstallBin\r
544 \r
545 echo Create binary release tree - suitible for WinOF-WIX installer build.\r
546 \r
547 if EXIST "%RBIN_W7%"   (rmdir /S /Q %RBIN_W7% &  echo %0 - removed %RBIN_W7%)\r
548 if EXIST "%RBIN_WLH%"  (rmdir /S /Q %RBIN_WLH% &  echo %0 - removed %RBIN_WLH%)\r
549 if EXIST "%RBIN_WNET%" (rmdir /S /Q %RBIN_WNET% & echo %0 - removed %RBIN_WNET%)\r
550 if EXIST "%RBIN_WXP%"  (rmdir /S /Q %RBIN_WXP% &  echo %0 - removed %RBIN_WXP%)\r
551 \r
552 if "%WIN7%" == "yes"  mkdir %RBIN_W7%\r
553 mkdir %RBIN_WLH%\r
554 mkdir %RBIN_WNET%\r
555 mkdir %RBIN_WXP%\r
556 \r
557 if EXIST "%BSE%\etc\makebin.bat" (\r
558         if "%WIN7%" == "yes" (\r
559         call %BSE%\etc\makebin.bat %BSE% %RBIN_W7% win7 %_DDK% %_COIN_VER%\r
560         if ERRORLEVEL 1 (\r
561                 echo %0: Err in makebin.bat %BSE% %RBIN_W7% wlh %_DDK% %_COIN_VER%\r
562                 exit /B 1\r
563         )\r
564     )\r
565     call %BSE%\etc\makebin.bat %BSE% %RBIN_WLH% wlh %_DDK% %_COIN_VER%\r
566     if ERRORLEVEL 1 (\r
567         echo %0: Err in makebin.bat %BSE% %RBIN_WLH% wlh %_DDK% %_COIN_VER%\r
568         exit /B 1\r
569     )\r
570     call %BSE%\etc\makebin.bat %BSE% %RBIN_WNET% wnet %_DDK% %_COIN_VER%\r
571     if ERRORLEVEL 1 (\r
572         echo %0: Err in makebin.bat %BSE% %RBIN_WNET% wnet %_DDK% %_COIN_VER%\r
573         exit /B 1\r
574     )\r
575     call %BSE%\etc\makebin.bat %BSE% %RBIN_WXP% wxp %_DDK% %_COIN_VER%\r
576     if ERRORLEVEL 1 (\r
577         echo %0: Err in makebin.bat %BSE% %RBIN_WXP% wxp %_DDK% %_COIN_VER%\r
578         exit /B 1\r
579     )\r
580 )\r
581 \r
582 if "%1" == "makebin" goto finito\r
583 \r
584 :mk_msi\r
585 \r
586 echo %0 - Drivers Signed with %CERTFILE%\r
587 echo   Binary release trees created in\r
588 if "%WIN7%" == "yes"  echo     %RBIN_W7%\r
589 echo     %RBIN_WLH%\r
590 echo     %RBIN_WNET%\r
591 echo     %RBIN_WXP%\r
592 \r
593 rem build WIX installers --> see WinOF\WIX\r
594 \r
595 %COMSPEC% /V:on /E:on /C "%_DDK%\bin\setenv.bat %_DDK% fre X64 WNET no_oacr & cd /D %WIX% & build-all-MSI %MSI_CMD% %CERTFILE% %SW_PUBLISHER% %IDIR%"\r
596 \r
597 :finito\r
598 \r
599 echo .\r
600 echo %0: Finished %0 %*\r
601 echo %0:   Started  %STIME%\r
602 echo %0:   Finished %TIME%\r
603 \r
604 endlocal\r