[ND] add fake ND build support; to be removed when ND src hits svn.
authorstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sat, 9 Aug 2008 00:11:54 +0000 (00:11 +0000)
committerstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sat, 9 Aug 2008 00:11:54 +0000 (00:11 +0000)
trunk/BuildRelease.bat
  Turn down tracing volume
  New Commands: assist in handling large # of WinOF installers.
    msi-label {tag}
       rename .msi files to WOF_os*_arch*tag; frequently svn version #
    msi-del
       delete .msi installers containing this tag
    msi-dir
       directory listing of current WinOF .msi installers

trunk\etc\makebin.bat
  Support:
    ND installation
    32 versions .cdf files
    Less tracing noise!
    Added comments.

trunk\ulp\
  dirs - added nd to the build

trunk\ulp\nd
  dirs - added user to the build
  user\ - ugly hack until ND sources show up in svn - pending legal issues with MS
     SOURCES
     fake.c
     makefile
     makefile.inc
     objfre_svr-03_amd64 - ND binaries from Mellanox
     objfre_svr-08_amd64
     objfre_svr-03_x86
     objfre_svr-08_x86
     objfre_svr-08_ia64 - side-steps ia64 ipoib.cdf & ipoib.inx install issues; actually x64 copies.

trunk\ulp\ipoib\kernel
  ipoib32.cdf - support ND signing for 32 bit systems
  ipoib32-xp.cdf - support XP32 signing
  ipoib.cdf - ND signing
  netipoib.inx - ND install
  netipoib-xp32.inf - XP32 install, no WSD/ND

git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@1470 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

22 files changed:
BuildRelease.bat
etc/makebin.bat
ulp/dirs
ulp/ipoib/kernel/ipoib.cdf
ulp/ipoib/kernel/ipoib32.cdf
ulp/ipoib/kernel/netipoib-xp32.inf
ulp/ipoib/kernel/netipoib.inx
ulp/nd/dirs [new file with mode: 0644]
ulp/nd/user/SOURCES [new file with mode: 0644]
ulp/nd/user/fake.c [new file with mode: 0644]
ulp/nd/user/makefile [new file with mode: 0644]
ulp/nd/user/makefile.inc [new file with mode: 0644]
ulp/nd/user/objfre_svr-03_amd64/amd64/ibndprov.dll [new file with mode: 0644]
ulp/nd/user/objfre_svr-03_amd64/amd64/ndinstall.exe [new file with mode: 0644]
ulp/nd/user/objfre_svr-03_x86/i386/ibndprov.dll [new file with mode: 0644]
ulp/nd/user/objfre_svr-03_x86/i386/ndinstall.exe [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_amd64/amd64/ibndprov.dll [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_amd64/amd64/ndinstall.exe [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_ia64/ia64/ibndprov.dll [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_ia64/ia64/ndinstall.exe [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_x86/i386/ibndprov.dll [new file with mode: 0644]
ulp/nd/user/objfre_svr-08_x86/i386/ndinstall.exe [new file with mode: 0644]

index 798ee92..e911962 100644 (file)
@@ -7,7 +7,7 @@ rem           Processor architecture specific WIX installers are constructed
 rem           in %IDIR%\r
 rem\r
 rem BuildRelease option\r
-rem  option == all | allnoforce | compile | compilenoforce | makebin | msi | wix | clean {OPENIB_REV}\r
+rem  option == all | allnoforce | compile | compilenoforce | makebin | msi | wix | clean | msi-label | msi-del | msi-dir {OPENIB_REV}\r
 rem\r
 \r
 rem This script is an 'example' of a one-command entire IB stack build to\r
@@ -29,13 +29,16 @@ if "%1" == "makebin" goto OK
 if "%1" == "msi" goto OK\r
 if "%1" == "wix" goto OK\r
 if "%1" == "clean" goto OK\r
+if "%1" == "msi-label" goto OK\r
+if "%1" == "msi-del" goto OK\r
+if "%1" == "msi-dir" goto OK\r
 \r
 echo Unknown arg '%1' ?\r
 \r
 :usage\r
 \r
-echo "usage: BuildRelease all | allnoforce | compile | compilenoforce | makebin | msi | wix | clean {OPENIB_REV value}"\r
-echo where:\r
+echo "usage: BuildRelease command {OPENIB_REV value}"\r
+echo where 'command' may be:\r
 echo    all - force recompile, install binaries to WIX tree, sign drivers and\r
 echo          build installers.\r
 \r
@@ -49,6 +52,13 @@ echo    msi - assumes binaries are installed in WIX tree, signs drivers and
 echo          create installers (.msi files) in IDIR.\r
 echo    wix - build .msi installers, assumes (drivers signed) .cat files exist\r
 echo    clean - remove build artifacts for a clean build: .obj, .sys, ...\r
+echo    msi-label {OPENIB_REV}\r
+echo           rename WOF_os*_arch*.msi to WOF_os*_arch*_svn#.msi \r
+echo           Uniquely identify installers just created.\r
+echo           If OPENIB_REV arg used, then rename WOF_os*_arch*argVal.msi\r
+echo           otherwise, use SVN# from path.\r
+echo    msi-del - del %windir%\temp\WOF_os*_arch*.msi\r
+echo    msi-dir - del %windir%\temp\WOF_os*_arch*.msi\r
 echo :\r
 echo    {OPENIB_REV}\r
 echo       optional, if set then OPENIB_REV is assigned this value.\r
@@ -103,7 +113,6 @@ if NOT EXIST %_DDK% (
     echo Missing WDK @ %_DDK%\r
     exit /B 1\r
 )\r
-echo %0 - Building with WDK @ %_DDK%\r
 \r
 rem Platform SDK path - watchout for missing LoadPerf.h (installsp.c)\r
 set _PSDK=%SystemDrive%\progra~1\mi2578~1\r
@@ -112,6 +121,7 @@ rem setup value for OPENIB_REV assignment.
 \r
 if not "%2" == "" (\r
     set SVN=%2\r
+    set LBL=%2\r
 ) else (\r
     rem WARNING - SVN value depends on the path '\openIB-windows-svn\XXX\gen1',\r
     rem where SVN is set to XXX\r
@@ -119,6 +129,7 @@ if not "%2" == "" (
     rem Note - OPENIB_REV is assigned SVN in a child script.\r
 \r
     set SVN=%CD:~22,4%\r
+    set LBL=_svn.!SVN!\r
 )\r
 \r
 rem assumes %CD% == '...\gen1\trunk'\r
@@ -139,6 +150,69 @@ rem WIX Installer files (.msi) destination folder - set for local environment.
 rem \r
 set IDIR=%SystemRoot%\temp\r
 \r
+if "%1" == "msi-label" (\r
+    pushd %IDIR%\r
+    if exist WOF_wxp_x86.msi (\r
+        if exist WOF_wxp_x86%LBL%.msi del /F/Q WOF_wxp_x86%LBL%.msi\r
+        rename WOF_wxp_x86.msi WOF_wxp_x86%LBL%.msi\r
+    )\r
+\r
+    if exist WOF_wnet_x86.msi (\r
+        if exist WOF_wnet_x86%LBL%.msi del /F/Q WOF_wnet_x86%LBL%.msi\r
+        rename WOF_wnet_x86.msi WOF_wnet_x86%LBL%.msi\r
+    )\r
+    if exist WOF_wnet_x64.msi (\r
+        if exist WOF_wnet_x64%LBL%.msi del /F/Q WOF_wnet_x64%LBL%.msi\r
+        rename WOF_wnet_x64.msi WOF_wnet_x64%LBL%.msi\r
+    )\r
+    if exist WOF_wnet_ia64.msi (\r
+       if exist WOF_wnet_ia64%LBL%.msi del /F/Q WOF_wnet_ia64%LBL%.msi\r
+       rename WOF_wnet_ia64.msi WOF_wnet_ia64%LBL%.msi\r
+    )\r
+\r
+    if exist WOF_wlh_x86.msi (\r
+        if exist WOF_wlh_x86%LBL%.msi del /F/Q WOF_wlh_x86%LBL%.msi\r
+        rename WOF_wlh_x86.msi WOF_wlh_x86%LBL%.msi\r
+    )\r
+    if exist WOF_wlh_x64.msi  (\r
+        if exist WOF_wlh_x64%LBL%.msi del /F/Q WOF_wlh_x64%LBL%.msi\r
+        rename WOF_wlh_x64.msi WOF_wlh_x64%LBL%.msi\r
+    )\r
+    if exist WOF_wlh_ia64.msi  (\r
+        if exist WOF_wlh_ia64%LBL%.msi del /F/Q WOF_wlh_ia64%LBL%.msi\r
+        rename WOF_wlh_ia64.msi WOF_wlh_ia64%LBL%.msi\r
+    )\r
+    dir WOF_*%LBL%.msi\r
+    popd\r
+    exit /B 0\r
+)\r
+\r
+if "%1" == "msi-del" (\r
+    echo Deleting WOF_{wxp,wnet,wlh}_{x86,x64,ia64}%LBL%.msi\r
+    pushd %IDIR%\r
+    if exist WOF_wxp_x86%LBL%.msi del /F/P WOF_wxp_x86%LBL%.msi\r
+\r
+    if exist WOF_wnet_x86%LBL%.msi del /F/P WOF_wnet_x86%LBL%.msi\r
+    if exist WOF_wnet_x64%LBL%.msi del /F/P WOF_wnet_x64%LBL%.msi\r
+    if exist WOF_wnet_ia64%LBL%.msi del /F/P WOF_wnet_ia64%LBL%.msi\r
+\r
+    if exist WOF_wlh_x86%LBL%.msi del /F/P WOF_wlh_x86%LBL%.msi\r
+    if exist WOF_wlh_x64%LBL%.msi del /F/P WOF_wlh_x64%LBL%.msi\r
+    if exist WOF_wlh_ia64%LBL%.msi del /F/P WOF_wlh_ia64%LBL%.msi\r
+\r
+    dir /N/OD WOF_*.msi\r
+    popd\r
+    exit /B 0\r
+)\r
+\r
+if "%1" == "msi-dir" (\r
+    pushd %IDIR%\r
+    dir /N/OD WOF_*.msi\r
+    popd\r
+    exit /B 0\r
+)\r
+\r
+echo %0 - Building with WDK @ %_DDK%\r
 echo Building for OPENIB_REV %SVN%, installer files @ %IDIR%\r
 echo   Drivers signed using Certificate '%CERTNAME%'\r
 \r
@@ -280,19 +354,16 @@ mkdir %RBIN_WNET%
 mkdir %RBIN_WXP%\r
 \r
 if EXIST "%BSE%\etc\makebin.bat" (\r
-    echo etc\makebin.bat %BSE% %RBIN_WLH% wlh\r
     call %BSE%\etc\makebin.bat %BSE% %RBIN_WLH% wlh\r
     if ERRORLEVEL 1 (\r
         echo %0: Err in makebin.bat %BSE% %RBIN_WLH% wlh\r
         exit /B 1\r
     )\r
-    echo etc\makebin.bat %BSE% %RBIN_WNET% wnet\r
     call %BSE%\etc\makebin.bat %BSE% %RBIN_WNET% wnet\r
     if ERRORLEVEL 1 (\r
         echo %0: Err in makebin.bat %BSE% %RBIN_WNET% wnet\r
         exit /B 1\r
     )\r
-    echo etc\makebin.bat %BSE% %RBIN_WXP% wxp\r
     call %BSE%\etc\makebin.bat %BSE% %RBIN_WXP% wxp\r
     if ERRORLEVEL 1 (\r
         echo %0: Err in makebin.bat %BSE% %RBIN_WXP% wxp\r
index ad96055..8600ac0 100644 (file)
@@ -3,11 +3,22 @@ setlocal
 \r
 rem usage: makebin src dst [wlh,wnet,wxp]\r
 rem\r
-rem  src - ...\gen1\trunk\r
-rem  dst - full path where \bin is created.\r
-rem  OSE - (Operating System Environment) which windows version\r
-\r
-echo %1 %2 %3\r
+rem  src - OpenIB src path ...\gen1\trunk\r
+rem  dst - full path tp where binaries are copied, 'bin\' created here.\r
+rem  OSE - (Operating System Environment) which windows version {wxp,wlh,wnet}\r
+rem        representing {XP, server 2008 & server 2003}\r
+\r
+rem makebin is designed to take an openIB build tree path and produce a folder\r
+rem tree of binaries suitable for input to a WIX builder which procduces\r
+rem an OS .msi installer.\r
+rem Building a WinOF release is done is 3 phases, makebin is the 2nd phase.\r
+rem makebin is commonly run from trunk\buildrelease.bat although it can be\r
+rem run standalone.\r
+\r
+echo Starting makebin\r
+echo      Src %1\r
+echo      Dst %2\r
+echo      OS  %3\r
 \r
 if "%1"=="" goto usage\r
 if "%2"=="" goto usage\r
@@ -56,9 +67,9 @@ rem Copy AMD64 drivers
 set bin_dir=%1\bin\kernel\objfre_%OSE%_amd64\amd64\r
 set dest_dir=%2\HCA\amd64\\r
 \r
-if "%DBG%" == "TRUE" echo DBG: AMD64 free drivers to %dest_dir%\r
+if "%DBG%" == "TRUE" echo DBG: AMD64 free drivers\r
 \r
-set F=ibbus.sys ib_bus.inf ibiou.sys mthca.sys mthca.inf mlx4_hca.sys mlx4_bus.sys \r
+set F=ibbus.sys ib_bus.inf ibiou.sys mthca.sys mthca.inf mlx4_hca.sys mlx4_bus.sys mlx4_hca.inf mlx4_bus.inf \r
 for %%i in ( %F% ) do (\r
     xcopy %bin_dir%\%%i %dest_dir% /yq 1> nul\r
     if ERRORLEVEL 1 (\r
@@ -81,7 +92,7 @@ rem Copy IA64 drivers
 set bin_dir=%1\bin\kernel\objfre_%OSE%_ia64\ia64\r
 set dest_dir=%2\HCA\ia64\\r
 \r
-if "%DBG%" == "TRUE" echo DBG: ia64 free drivers to %dest_dir%\r
+if "%DBG%" == "TRUE" echo DBG: ia64 free drivers\r
 \r
 set F=ibbus.sys ib_bus.inf ibiou.sys mthca.sys mthca.inf\r
 for %%i in ( %F% ) do (\r
@@ -109,7 +120,7 @@ if "%DBG%" == "TRUE" echo DBG: x86 free drivers
 set bin_dir=%1\bin\kernel\objfre_%OSE%_x86\i386\r
 set dest_dir=%2\HCA\x86\\r
 \r
-set F=ibbus.sys ib_bus.inf ibiou.sys mthca.sys mthca.inf mlx4_hca.sys mlx4_bus.sys\r
+set F=ibbus.sys ib_bus.inf ibiou.sys mthca.sys mthca.inf mlx4_hca.sys mlx4_bus.sys mlx4_hca.inf mlx4_bus.inf \r
 for %%i in ( %F% ) do (\r
     xcopy %bin_dir%\%%i %dest_dir% /yq 1>nul\r
     if ERRORLEVEL 1 (\r
@@ -152,7 +163,7 @@ for %%i in (ibald.lib ibald.pdb complibd.lib complibd.pdb) do (
     )\r
 )\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\amd64\debug\ /yq\r
+echo xcopy *.exe tools\amd64\debug\\r
 xcopy %bin_dir%\*.exe %2\tools\amd64\debug\ /yq 1>nul\r
 \r
 set F=dapld.dll dapld.pdb datd.dll datd.lib datd.pdb\r
@@ -199,7 +210,7 @@ for %%i in (ibald.lib ibald.pdb complibd.lib complibd.pdb) do (
     )\r
 )\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\ia64\debug\ /yq \r
+echo xcopy *.exe tools\ia64\debug\ \r
 xcopy %bin_dir%\*.exe %2\tools\ia64\debug\ /yq 1>nul\r
 \r
 set F=dapld.dll dapld.pdb datd.dll datd.lib datd.pdb\r
@@ -248,7 +259,7 @@ for %%i in (ibald.lib ibald.pdb complibd.lib complibd.pdb) do (
     )\r
 )\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\x86\debug\ /yq\r
+if "%DBG%" == "TRUE"  echo DBG: copy debug *.exe to tools\x86\debug\ \r
 xcopy %bin_dir%\*.exe %2\tools\x86\debug\ /yq 1>nul\r
 \r
 set F=dapld.dll dapld.pdb datd.dll datd.lib datd.pdb\r
@@ -315,7 +326,7 @@ rem Copy Free x64 dll
 set bin_dir=%1\bin\user\objfre_%OSE%_amd64\amd64\r
 set dest_dir=%2\HCA\amd64\\r
 \r
-if "%DBG%" == "TRUE" echo DBG: amd64 Free dlls to %dest_dir%\r
+if "%DBG%" == "TRUE" echo DBG: copy amd64 Free dlls\r
 \r
 for %%i in (ibal.dll complib.dll mthcau.dll IbInstaller.dll mlx4u.dll) do (\r
     xcopy %bin_dir%\%%i %dest_dir% /yq 1>nul\r
@@ -335,8 +346,12 @@ for %%i in (ibal.lib ibal.pdb complib.lib complib.pdb) do (
 \r
 xcopy %bin_dir%\ibwsd.dll %2\net\amd64\ /yq\r
 xcopy %bin_dir%\installsp.exe %2\net\amd64\ /yq \r
+xcopy %bin_dir%\installsp.exe %2\tools\amd64\release\ /yq\r
+xcopy %bin_dir%\ndinstall.exe %2\net\amd64\ /yq \r
+xcopy %bin_dir%\ndinstall.exe %2\tools\amd64\release\ /yq\r
+xcopy %bin_dir%\ibndprov.dll %2\net\amd64\ /yq\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\amd64\release\ /y \r
+echo xcopy *.exe tools\amd64\release\ \r
 xcopy %bin_dir%\*.exe %2\tools\amd64\release\ /yq 1>nul\r
 \r
 set F=dapl.dll dapl.pdb dat.dll dat.lib dat.pdb\r
@@ -365,7 +380,7 @@ rem Copy Free IA64 dlls
 set bin_dir=%1\bin\user\objfre_%OSE%_ia64\ia64\r
 set dest_dir=%2\HCA\ia64\\r
 \r
-if "%DBG%" == "TRUE" echo DBG: IA64 Free dlls to %dest_dir%\r
+if "%DBG%" == "TRUE" echo DBG: copy IA64 Free dlls\r
 \r
 for %%i in (ibal.dll complib.dll mthcau.dll IbInstaller.dll) do (\r
     xcopy %bin_dir%\%%i %dest_dir% /yq 1>nul\r
@@ -385,8 +400,10 @@ for %%i in (ibal.lib ibal.pdb complib.lib complib.pdb) do (
 \r
 xcopy %bin_dir%\ibwsd.dll %2\net\ia64\ /yq\r
 xcopy %bin_dir%\installsp.exe %2\net\ia64\ /yq\r
+xcopy %bin_dir%\ndinstall.exe %2\net\ia64\ /yq\r
+xcopy %bin_dir%\ibndprov.dll %2\net\ia64\ /yq\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\ia64\release\ /y q\r
+echo xcopy *.exe tools\ia64\release\ \r
 xcopy %bin_dir%\*.exe %2\tools\ia64\release\ /yq 1>nul\r
 \r
 set F=dapl.dll dapl.pdb dat.dll dat.lib dat.pdb \r
@@ -417,7 +434,7 @@ rem Copy Free x86 drivers
 set bin_dir=%1\bin\user\objfre_%OSE%_x86\i386\r
 set dest_dir=%2\HCA\x86\\r
 \r
-if "%DBG%" == "TRUE" echo DBG: x86 Free dlls to %dest_dir%\r
+if "%DBG%" == "TRUE" echo DBG: copy x86 Free dlls\r
 \r
 for %%i in (ibal.dll complib.dll mthcau.dll IbInstaller.dll mlx4u.dll) do (\r
     xcopy %bin_dir%\%%i %dest_dir% /yq 1>nul\r
@@ -435,7 +452,7 @@ for %%i in (ibal.lib ibal.pdb complib.lib complib.pdb) do (
     )\r
 )\r
 \r
-echo xcopy %bin_dir%\*.exe %2\tools\x86\release\ /yq\r
+echo xcopy *.exe tools\x86\release\\r
 xcopy %bin_dir%\*.exe %2\tools\x86\release\ /yq 1>nul\r
 \r
 set F=dapl.dll dapl.pdb dat.dll dat.lib dat.pdb\r
@@ -463,16 +480,21 @@ if /I "%OSE%" == "wxp" goto inf_files
 \r
 rem free x86 items\r
 \r
-if "%DBG%" == "TRUE" echo DBG: x86 Free WSD to %dest_dir%\net\x86\r
+if "%DBG%" == "TRUE" echo DBG: copy x86 Free WSD\r
 \r
 copy %bin_dir%\ibwsd.dll %2\net\x86\ /y\r
 copy %bin_dir%\installsp.exe %2\net\x86\ /y\r
-copy %bin_dir%\installsp.exe %2\tools\x86\release /y\r
+copy %bin_dir%\installsp.exe %2\tools\x86\release\ /y\r
+copy %bin_dir%\ndinstall.exe %2\net\x86\ /y\r
+copy %bin_dir%\ndinstall.exe %2\tools\x86\release\ /y\r
+copy %bin_dir%\ibndprov.dll %2\net\x86\ /y\r
 \r
 rem free x86 DLLs --> WOW64 DLLs\r
 \r
 if "%DBG%" == "TRUE" echo DBG: x86 Free dlls to WOW64\r
 \r
+copy %bin_dir%\ibndprov.dll %2\net\amd64\ibndprov32.dll /y\r
+copy %bin_dir%\ibndprov.dll %2\net\ia64\ibndprov32.dll /y\r
 copy /B %bin_dir%\ibwsd.dll %2\net\amd64\ibwsd32.dll /y\r
 copy /B %bin_dir%\ibwsd.dll %2\net\ia64\ibwsd32.dll /y\r
 copy /B %bin_dir%\ibal.dll %2\HCA\amd64\ibal32.dll /y\r
@@ -512,36 +534,30 @@ rem .inf files now resident alongside .sys files
 \r
 if "%DBG%" == "TRUE" echo DBG: cpy %OSE% x86 INF files\r
 \r
-xcopy %1\hw\mthca\kernel\mthca.cdf %2\HCA\x86\ /yq\r
-xcopy %1\hw\mlx4\kernel\hca\mlx4_hca.inf %2\HCA\x86\ /yq\r
-xcopy %1\hw\mlx4\kernel\hca\mlx4_hca.cdf %2\HCA\x86\ /yq\r
-xcopy %1\hw\mlx4\kernel\bus\drv\mlx4_bus.inf %2\HCA\x86\ /yq\r
-xcopy %1\hw\mlx4\kernel\bus\drv\mlx4_bus.cdf %2\HCA\x86\ /yq\r
-\r
-xcopy %1\core\bus\kernel\ib_bus.cdf %2\HCA\x86\ /yq\r
+copy /A/Y %1\hw\mthca\kernel\mthca32.cdf %2\HCA\x86\mthca.cdf\r
+copy /A/Y %1\hw\mlx4\kernel\hca\mlx4_hca32.cdf %2\HCA\x86\mlx4_hca.cdf\r
+copy /A/Y %1\hw\mlx4\kernel\bus\drv\mlx4_bus32.cdf %2\HCA\x86\mlx4_bus.cdf\r
+copy /A/Y %1\core\bus\kernel\ib_bus32.cdf %2\HCA\x86\ib_bus.cdf\r
 \r
 rem No WSD support for XP32\r
 if /I "%OSE%" == "wxp" (\r
     copy /A /Y %1\ulp\ipoib\kernel\netipoib-xp32.inf %2\net\x86\netipoib.inf\r
-    copy /A /Y %1\ulp\ipoib\kernel\ipoib-xp32.cdf %2\net\x86\ipoib.cdf\r
+    copy /A /Y %1\ulp\ipoib\kernel\ipoib32-xp.cdf %2\net\x86\ipoib.cdf\r
 ) else (\r
-    xcopy %1\ulp\ipoib\kernel\ipoib.cdf %2\net\x86\ /yq\r
+    copy /A/Y %1\ulp\ipoib\kernel\ipoib32.cdf %2\net\x86\ipoib.cdf\r
     xcopy %1\tools\wsdinstall\user\installsp.exe.manifest %2\net\x86\ /yq\r
 )\r
 xcopy %1\ulp\qlgcvnic\kernel\netvnic.cdf %2\net\x86\ /yq\r
 xcopy %1\ulp\srp\kernel\ib_srp.cdf %2\storage\x86\ /yq\r
 \r
-\r
 if /I "%OSE%" == "wxp" goto cpy_bin_files\r
 \r
 if "%DBG%" == "TRUE" echo DBG: copy 64bit INF files\r
 \r
 xcopy %1\hw\mthca\kernel\mthca.cdf %2\HCA\amd64 /yq\r
 \r
-xcopy %1\hw\mlx4\kernel\hca\mlx4_hca.inf %2\HCA\amd64\ /yq\r
 xcopy %1\hw\mlx4\kernel\hca\mlx4_hca.cdf %2\HCA\amd64\ /yq\r
 xcopy %1\hw\mlx4\kernel\hca\mlx4_hca32.cdf %2\HCA\amd64\ /yq\r
-xcopy %1\hw\mlx4\kernel\bus\drv\mlx4_bus.inf %2\HCA\amd64\ /yq\r
 xcopy %1\hw\mlx4\kernel\bus\drv\mlx4_bus.cdf %2\HCA\amd64\ /yq\r
 xcopy %1\hw\mlx4\kernel\bus\drv\mlx4_bus32.cdf %2\HCA\amd64\ /yq\r
 \r
@@ -572,7 +588,7 @@ xcopy %1\ulp\srp\kernel\ib_srp.cdf %2\storage\ia64\ /yq
 \r
 rem bin\bin used to generate a web based symbol store in build-ofa-dist.bat.\r
 \r
-echo 'Copy bin\obj{chk,fre}_%3_{x86,amd64,ia64} to %2\bin'\r
+echo 'Copy bin\obj{chk,fre}_%3_{x86,amd64,ia64} to bin'\r
 rem xcopy %1\bin %2\bin\ /eyq\r
 rem instead of copying the entire bin\ folder, pick items of OS interest.\r
 \r
@@ -671,8 +687,8 @@ if "%DBG%" == "TRUE" echo DBG: Docs and SDK files
 if NOT exist %2\Misc (\r
     mkdir %2\Misc\r
 )\r
-copy /Y %1\Docs\Manual.htm %2\Misc\Manual.htm /A\r
-copy /Y %1\tests\cmtest\user\cmtest_main.c %2\Misc\cmtest.c /A\r
+copy /Y/A %1\Docs\Manual.htm %2\Misc\Manual.htm\r
+copy /Y/A %1\tests\cmtest\user\cmtest_main.c %2\Misc\cmtest.c\r
 \r
 goto end\r
 \r
@@ -711,4 +727,8 @@ goto end
 echo %1\bin\user\objchk_%OSE%_x86\i386 missing \r
 \r
 :end\r
+echo .\r
+echo Finished OS %3\r
+echo .\r
+\r
 endlocal\r
index 0812c82..fcd11f9 100644 (file)
--- a/ulp/dirs
+++ b/ulp/dirs
@@ -6,4 +6,5 @@ DIRS=\
        srp             \\r
        wsd             \\r
        qlgcvnic        \\r
-       libibverbs\r
+       libibverbs      \\r
+       nd\r
index 3710847..44a8ab9 100644 (file)
@@ -8,3 +8,5 @@ CATATTR1=0x10010001:OSAttr:2:6.0
 <hash>ipoib.sys=ipoib.sys\r
 <hash>ibwsd.dll=ibwsd.dll\r
 <hash>ibwsd32.dll=ibwsd32.dll\r
+<hash>ibndprov.dll=ibndprov.dll\r
+<hash>ibndprov32.dll=ibndprov32.dll\r
index 7afbe01..8e984a1 100644 (file)
@@ -7,3 +7,4 @@ CATATTR1=0x10010001:OSAttr:2:6.0
 <hash>netipoib.inf=netipoib.inf\r
 <hash>ipoib.sys=ipoib.sys\r
 <hash>ibwsd.dll=ibwsd.dll\r
+<hash>ibndprov.dll=ibndprov.dll\r
index 917c84f..a4d6694 100644 (file)
@@ -37,15 +37,17 @@ CopyFiles       = IpoibCopyFiles
 Characteristics = 0x81 ; NCF_HAS_UI | NCF_VIRTUAL\r
 AddReg          = IpoibAddReg\r
 CopyFiles       = IpoibCopyFiles\r
-CopyFiles              = WsdCopyFiles\r
-CopyFiles              = WOW64CopyFiles\r
+CopyFiles       = WsdCopyFiles\r
+CopyFiles       = NdCopyFiles\r
+CopyFiles       = WOW64CopyFiles\r
 \r
 [Ipoib.DDInstall.ntia64]\r
 Characteristics = 0x81 ; NCF_HAS_UI | NCF_VIRTUAL\r
 AddReg          = IpoibAddReg\r
 CopyFiles       = IpoibCopyFiles\r
-CopyFiles              = WsdCopyFiles\r
-CopyFiles              = WOW64CopyFiles\r
+CopyFiles       = WsdCopyFiles\r
+CopyFiles       = NdCopyFiles\r
+CopyFiles       = WOW64CopyFiles\r
 \r
 [Ipoib.DDInstall.ntx86.Services]\r
 AddService = ipoib, 2, IpoibService, IpoibEventLog\r
@@ -57,6 +59,7 @@ AddService = ipoib, 2, IpoibService, IpoibEventLog
 AddService = ipoib, 2, IpoibService, IpoibEventLog\r
 \r
 [IpoibAddReg]\r
+HKR, ,RDMACapable, %REG_DWORD%, 1\r
 HKR, Ndi,                       Service,    0, "ipoib"\r
 HKR, Ndi\Interfaces,            UpperRange, 0, "ndis5"\r
 HKR, Ndi\Interfaces,            LowerRange, 0, "ethernet"\r
@@ -125,6 +128,12 @@ HKR, Ndi\Params\PayloadMtu,                Default,        0, "2044"
 HKR, Ndi\Params\PayloadMtu,            Min,            0, "60"\r
 HKR, Ndi\Params\PayloadMtu,            Max,            0, "4092"\r
 \r
+HKR, Ndi\Params\MCLeaveRescan,         ParamDesc,      0, "MC leave rescan (sec)"\r
+HKR, Ndi\Params\MCLeaveRescan,         Type,           0, "dword"\r
+HKR, Ndi\Params\MCLeaveRescan,         Default,        0, "260"\r
+HKR, Ndi\Params\MCLeaveRescan,         Optional,       0, "0"\r
+HKR, Ndi\Params\MCLeaveRescan,         Min,            0, "1"\r
+HKR, Ndi\Params\MCLeaveRescan,         Max,            0, "3600"\r
 [IpoibService]\r
 DisplayName     = %IpoibServiceDispName%\r
 ServiceType     = 1 ;%SERVICE_KERNEL_DRIVER%\r
@@ -153,8 +162,12 @@ ipoib.sys,,,2
 [WsdCopyFiles]\r
 ibwsd.dll,,,0x00000002\r
 \r
+[NdCopyFiles]\r
+ibndprov.dll,,,0x00000002\r
+\r
 [WOW64CopyFiles]\r
 ibwsd.dll,ibwsd32.dll,,0x00000002\r
+ibndprov.dll,ibndprov32.dll,,0x00000002\r
 \r
 [SourceDisksNames.x86]\r
 1 = %IcsDisk1%,,,""\r
@@ -173,15 +186,20 @@ ipoib.sys = 1
 ipoib.sys = 1\r
 ibwsd.dll = 1\r
 ibwsd32.dll = 1\r
+ibndprov.dll = 1\r
+ibndprov32.dll = 1\r
 \r
 [SourceDisksFiles.ia64]\r
 ipoib.sys = 1\r
 ibwsd.dll = 1\r
 ibwsd32.dll = 1\r
+ibndprov.dll = 1\r
+ibndprov32.dll = 1\r
 \r
 [DestinationDirs]\r
 IpoibCopyFiles    = %DIRID_DRIVERS%\r
 WsdCopyFiles      = %DIRID_SYSTEM%\r
+NdCopyFiles       = %DIRID_SYSTEM%\r
 WOW64CopyFiles    = %DIRID_SYSTEM_X86%\r
 DefaultDestDir    = %DIRID_SYSTEM%\r
 \r
@@ -193,4 +211,5 @@ IcsDisk1             = "OpenIB IPoIB Disk #1"
 DIRID_SYSTEM         = 11\r
 DIRID_DRIVERS        = 12\r
 DIRID_SYSTEM_X86     = 16425\r
+REG_DWORD            = 0x00010001\r
 REG_DWORD_NO_CLOBBER = 0x00010003\r
index 7cf7b31..7a769ae 100644 (file)
@@ -32,21 +32,24 @@ ExcludeFromSelect = IBA\IPoIB
 Characteristics = 0x81 ; NCF_HAS_UI | NCF_VIRTUAL\r
 AddReg          = IpoibAddReg\r
 CopyFiles       = IpoibCopyFiles\r
-CopyFiles              = WsdCopyFiles\r
+CopyFiles       = WsdCopyFiles\r
+CopyFiles       = NdCopyFiles\r
 \r
 [Ipoib.DDInstall.ntamd64]\r
 Characteristics = 0x81 ; NCF_HAS_UI | NCF_VIRTUAL\r
 AddReg          = IpoibAddReg\r
 CopyFiles       = IpoibCopyFiles\r
-CopyFiles              = WsdCopyFiles\r
-CopyFiles              = WOW64CopyFiles\r
+CopyFiles       = WsdCopyFiles\r
+CopyFiles       = NdCopyFiles\r
+CopyFiles       = WOW64CopyFiles\r
 \r
 [Ipoib.DDInstall.ntia64]\r
 Characteristics = 0x81 ; NCF_HAS_UI | NCF_VIRTUAL\r
 AddReg          = IpoibAddReg\r
 CopyFiles       = IpoibCopyFiles\r
-CopyFiles              = WsdCopyFiles\r
-CopyFiles              = WOW64CopyFiles\r
+CopyFiles       = WsdCopyFiles\r
+CopyFiles       = NdCopyFiles\r
+CopyFiles       = WOW64CopyFiles\r
 \r
 [Ipoib.DDInstall.ntx86.Services]\r
 AddService = ipoib, 2, IpoibService, IpoibEventLog\r
@@ -161,8 +164,12 @@ ipoib.sys,,,2
 [WsdCopyFiles]\r
 ibwsd.dll,,,0x00000002\r
 \r
+[NdCopyFiles]\r
+ibndprov.dll,,,0x00000002\r
+\r
 [WOW64CopyFiles]\r
 ibwsd.dll,ibwsd32.dll,,0x00000002\r
+ibndprov.dll,ibndprov32.dll,,0x00000002\r
 \r
 [SourceDisksNames.x86]\r
 1 = %IcsDisk1%,,,""\r
@@ -176,20 +183,26 @@ ibwsd.dll,ibwsd32.dll,,0x00000002
 [SourceDisksFiles.x86]\r
 ipoib.sys = 1\r
 ibwsd.dll = 1\r
+ibndprov.dll = 1\r
 \r
 [SourceDisksFiles.amd64]\r
 ipoib.sys = 1\r
 ibwsd.dll = 1\r
 ibwsd32.dll = 1\r
+ibndprov.dll = 1\r
+ibndprov32.dll = 1\r
 \r
 [SourceDisksFiles.ia64]\r
 ipoib.sys = 1\r
 ibwsd.dll = 1\r
 ibwsd32.dll = 1\r
+ibndprov.dll = 1\r
+ibndprov32.dll = 1\r
 \r
 [DestinationDirs]\r
 IpoibCopyFiles    = %DIRID_DRIVERS%\r
 WsdCopyFiles      = %DIRID_SYSTEM%\r
+NdCopyFiles       = %DIRID_SYSTEM%\r
 WOW64CopyFiles    = %DIRID_SYSTEM_X86%\r
 DefaultDestDir    = %DIRID_SYSTEM%\r
 \r
diff --git a/ulp/nd/dirs b/ulp/nd/dirs
new file mode 100644 (file)
index 0000000..db5a897
--- /dev/null
@@ -0,0 +1,2 @@
+DIRS=\\r
+       user    \r
diff --git a/ulp/nd/user/SOURCES b/ulp/nd/user/SOURCES
new file mode 100644 (file)
index 0000000..95cbf93
--- /dev/null
@@ -0,0 +1,15 @@
+TARGETNAME=fake\r
+TARGETPATH=..\..\bin\user\obj$(BUILD_ALT_DIR)\r
+TARGETTYPE=PROGRAM\r
+UMTYPE=console\r
+USE_MSVCRT=1\r
+\r
+SOURCES=fake.c\r
+\r
+INCLUDES=..;..\..\..\inc;..\..\..\inc\kernel;\r
+\r
+ND_TARGET1=..\..\..\bin\user\$(O)\ibndprov.dll\r
+ND_TARGET2=..\..\..\bin\user\$(O)\ndinstall.exe\r
+\r
+NTTARGETFILES=$(ND_TARGET1) $(ND_TARGET2)\r
+\r
diff --git a/ulp/nd/user/fake.c b/ulp/nd/user/fake.c
new file mode 100644 (file)
index 0000000..34ad649
--- /dev/null
@@ -0,0 +1,2 @@
+\r
+int __cdecl main() { return 0; }\r
diff --git a/ulp/nd/user/makefile b/ulp/nd/user/makefile
new file mode 100644 (file)
index 0000000..a28a561
--- /dev/null
@@ -0,0 +1,8 @@
+#\r
+# DO NOT EDIT THIS FILE!!!  Edit .\sources. if you want to add a new source\r
+# file to this component.  This file merely indirects to the real make file\r
+# that is shared by all the driver components of the OpenIB Windows project.\r
+#\r
+MINIMUM_NT_TARGET_VERSION=0x502\r
+\r
+!INCLUDE ..\..\..\inc\openib.def\r
diff --git a/ulp/nd/user/makefile.inc b/ulp/nd/user/makefile.inc
new file mode 100644 (file)
index 0000000..924855b
--- /dev/null
@@ -0,0 +1,31 @@
+\r
+# files copied to the $(ND_TARGET*) folder \r
+# When ND sources hit svn, this hack will be removed.\r
+# recreate dir structure and nd binaries are obj*\ folders tend to get\r
+# removed; don't want to lose the ONLY copies of the ND binaries we have.\r
+#\r
+# ND on ia64 is not supported [8-07-08]. Building the ia64\ folders is a\r
+# blantant hack to keep the build happy; WIX installer does not use the\r
+# ia64 .exe or .dll. If someone knows how to force the build to skip for ia64,\r
+# please enlighten.\r
+\r
+.\$(O)\ibndprov.dll : \r
+       xcopy objfre_svr-03_amd64 objfre_wnet_amd64 /E/I/K/Y    \r
+       xcopy objfre_svr-03_amd64 objchk_wnet_amd64 /E/I/K/Y    \r
+       xcopy objfre_svr-03_x86   objfre_wnet_x86 /E/I/K/Y      \r
+       xcopy objfre_svr-03_x86   objchk_wnet_x86 /E/I/K/Y      \r
+       xcopy objfre_svr-08_amd64 objfre_wlh_amd64 /E/I/K/Y     \r
+       xcopy objfre_svr-08_amd64 objchk_wlh_amd64 /E/I/K/Y     \r
+       xcopy objfre_svr-08_x86   objfre_wlh_x86 /E/I/K/Y       \r
+       xcopy objfre_svr-08_x86   objchk_wlh_x86 /E/I/K/Y       \r
+       xcopy objfre_svr-08_ia64  objfre_wlh_ia64 /E/I/K/Y      \r
+       xcopy objfre_svr-08_ia64  objchk_wlh_ia64 /E/I/K/Y      \r
+       xcopy objfre_svr-08_ia64  objfre_wnet_ia64 /E/I/K/Y     \r
+       xcopy objfre_svr-08_ia64  objchk_wnet_ia64 /E/I/K/Y     \r
+\r
+$(ND_TARGET1) : .\$(O)\ibndprov.dll\r
+       copy /B/Y .\$(O)\$(@B).dll $@\r
+\r
+$(ND_TARGET2) : .\$(O)\ndinstall.exe\r
+       copy /B/Y .\$(O)\$(@B).exe $@\r
+\r
diff --git a/ulp/nd/user/objfre_svr-03_amd64/amd64/ibndprov.dll b/ulp/nd/user/objfre_svr-03_amd64/amd64/ibndprov.dll
new file mode 100644 (file)
index 0000000..9d87932
Binary files /dev/null and b/ulp/nd/user/objfre_svr-03_amd64/amd64/ibndprov.dll differ
diff --git a/ulp/nd/user/objfre_svr-03_amd64/amd64/ndinstall.exe b/ulp/nd/user/objfre_svr-03_amd64/amd64/ndinstall.exe
new file mode 100644 (file)
index 0000000..a67abab
Binary files /dev/null and b/ulp/nd/user/objfre_svr-03_amd64/amd64/ndinstall.exe differ
diff --git a/ulp/nd/user/objfre_svr-03_x86/i386/ibndprov.dll b/ulp/nd/user/objfre_svr-03_x86/i386/ibndprov.dll
new file mode 100644 (file)
index 0000000..e4b3225
Binary files /dev/null and b/ulp/nd/user/objfre_svr-03_x86/i386/ibndprov.dll differ
diff --git a/ulp/nd/user/objfre_svr-03_x86/i386/ndinstall.exe b/ulp/nd/user/objfre_svr-03_x86/i386/ndinstall.exe
new file mode 100644 (file)
index 0000000..cb4ca4a
Binary files /dev/null and b/ulp/nd/user/objfre_svr-03_x86/i386/ndinstall.exe differ
diff --git a/ulp/nd/user/objfre_svr-08_amd64/amd64/ibndprov.dll b/ulp/nd/user/objfre_svr-08_amd64/amd64/ibndprov.dll
new file mode 100644 (file)
index 0000000..347e84a
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_amd64/amd64/ibndprov.dll differ
diff --git a/ulp/nd/user/objfre_svr-08_amd64/amd64/ndinstall.exe b/ulp/nd/user/objfre_svr-08_amd64/amd64/ndinstall.exe
new file mode 100644 (file)
index 0000000..5ac605e
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_amd64/amd64/ndinstall.exe differ
diff --git a/ulp/nd/user/objfre_svr-08_ia64/ia64/ibndprov.dll b/ulp/nd/user/objfre_svr-08_ia64/ia64/ibndprov.dll
new file mode 100644 (file)
index 0000000..9d87932
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_ia64/ia64/ibndprov.dll differ
diff --git a/ulp/nd/user/objfre_svr-08_ia64/ia64/ndinstall.exe b/ulp/nd/user/objfre_svr-08_ia64/ia64/ndinstall.exe
new file mode 100644 (file)
index 0000000..a67abab
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_ia64/ia64/ndinstall.exe differ
diff --git a/ulp/nd/user/objfre_svr-08_x86/i386/ibndprov.dll b/ulp/nd/user/objfre_svr-08_x86/i386/ibndprov.dll
new file mode 100644 (file)
index 0000000..99c737e
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_x86/i386/ibndprov.dll differ
diff --git a/ulp/nd/user/objfre_svr-08_x86/i386/ndinstall.exe b/ulp/nd/user/objfre_svr-08_x86/i386/ndinstall.exe
new file mode 100644 (file)
index 0000000..16d497f
Binary files /dev/null and b/ulp/nd/user/objfre_svr-08_x86/i386/ndinstall.exe differ