--- /dev/null
+@echo off\r
+echo %1 %2\r
+\r
+if "%1"=="" goto usage\r
+\r
+if "%2"=="" goto usage\r
+\r
+if not exist %1 goto usage\r
+if not exist %2 goto usage\r
+\r
+if not exist %1\bin\kernel\objfre_wnet_amd64\amd64 goto error1\r
+if not exist %1\bin\kernel\objfre_wnet_ia64\ia64 goto error2\r
+if not exist %1\bin\kernel\objfre_wnet_x86\i386 goto error3\r
+if not exist %1\bin\user\objfre_wnet_amd64\amd64 goto error4\r
+if not exist %1\bin\user\objfre_wnet_ia64\ia64 goto error5\r
+if not exist %1\bin\user\objfre_wnet_x86\i386 goto error6\r
+if not exist %1\bin\user\objchk_wnet_amd64\amd64 goto error7\r
+if not exist %1\bin\user\objchk_wnet_ia64\ia64 goto error8\r
+if not exist %1\bin\user\objchk_wnet_x86\i386 goto error9\r
+\r
+setlocal\r
+\r
+rem\r
+rem KERNEL MODE\r
+rem\r
+\r
+rem Copy AMD64 drivers\r
+set bin_dir=%1\bin\kernel\objfre_wnet_amd64\amd64\r
+set dest_dir=%2\HCA\amd64\\r
+for %%i in (%bin_dir%\ibbus.sys, %bin_dir%\ibiou.sys, %bin_dir%\mthca.sys, %bin_dir%\mt23108.sys, %bin_dir%\thca.sys) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\ipoib.sys %2\net\amd64\ /y\r
+xcopy %bin_dir%\vnic.sys %2\net\amd64\ /y\r
+xcopy %bin_dir%\ibsrp.sys %2\storage\amd64\ /y\r
+\r
+rem Copy IA64 drivers\r
+set bin_dir=%1\bin\kernel\objfre_wnet_ia64\ia64\r
+set dest_dir=%2\HCA\ia64\\r
+for %%i in (%bin_dir%\ibbus.sys, %bin_dir%\ibiou.sys, %bin_dir%\mthca.sys, %bin_dir%\mt23108.sys, %bin_dir%\thca.sys) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\ipoib.sys %2\net\ia64\ /y\r
+xcopy %bin_dir%\vnic.sys %2\net\ia64\ /y\r
+xcopy %bin_dir%\ibsrp.sys %2\storage\ia64\ /y\r
+\r
+rem Copy x86 drivers\r
+set bin_dir=%1\bin\kernel\objfre_wnet_x86\i386\r
+set dest_dir=%2\HCA\x86\\r
+for %%i in (%bin_dir%\ibbus.sys, %bin_dir%\ibiou.sys, %bin_dir%\mthca.sys, %bin_dir%\mt23108.sys, %bin_dir%\thca.sys) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\ipoib.sys %2\net\x86\ /y\r
+xcopy %bin_dir%\vnic.sys %2\net\x86\ /y\r
+xcopy %bin_dir%\ibsrp.sys %2\storage\x86\ /y\r
+\r
+rem\r
+rem USER MODE\r
+rem\r
+\r
+set bin_dir=%1\bin\user\objchk_wnet_amd64\amd64\r
+set dest_dir=%2\HCA\amd64\\r
+for %%i in (%bin_dir%\ibald.dll, %bin_dir%\complibd.dll, %bin_dir%\mthcaud.dll, %bin_dir%\mt23108ud.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\*.exe %2\tools\amd64\debug\ /y\r
+xcopy %bin_dir%\dapld.dll %2\DAPL\amd64\ /y\r
+xcopy %bin_dir%\datd.dll %2\DAPL\amd64\ /y\r
+\r
+rem Copy IA64 drivers\r
+set bin_dir=%1\bin\user\objchk_wnet_ia64\ia64\r
+set dest_dir=%2\HCA\ia64\\r
+for %%i in (%bin_dir%\ibald.dll, %bin_dir%\complibd.dll, %bin_dir%\mthcaud.dll, %bin_dir%\mt23108ud.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\*.exe %2\tools\ia64\debug\ /y\r
+xcopy %bin_dir%\dapld.dll %2\DAPL\ia64\ /y\r
+xcopy %bin_dir%\datd.dll %2\DAPL\ia64\ /y\r
+\r
+rem Copy x86 drivers\r
+set bin_dir=%1\bin\user\objchk_wnet_x86\i386\r
+set dest_dir=%2\HCA\x86\\r
+for %%i in (%bin_dir%\ibald.dll, %bin_dir%\complibd.dll, %bin_dir%\mthcaud.dll, %bin_dir%\mt23108ud.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\*.exe %2\tools\x86\debug\ /y\r
+xcopy %bin_dir%\dapld.dll %2\DAPL\x86\ /y\r
+xcopy %bin_dir%\datd.dll %2\DAPL\x86\ /y\r
+\r
+rem WOW64 DLLs\r
+xcopy %bin_dir%\installsp.exe %2\tools\x86\debug /y\r
+xcopy %bin_dir%\ibald.dll %2\HCA\amd64\ibal32d.dll /y\r
+xcopy %bin_dir%\complibd.dll %2\HCA\amd64\cl32d.dll /y\r
+xcopy %bin_dir%\ibald.dll %2\HCA\ia64\ibal32d.dll /y\r
+xcopy %bin_dir%\complibd.dll %2\HCA\ia64\cl32d.dll /y\r
+xcopy %bin_dir%\mthcaud.dll %2\HCA\amd64\mthca32d.dll /y\r
+xcopy %bin_dir%\mthcaud.dll %2\HCA\ia64\mthca32d.dll /y\r
+xcopy %bin_dir%\mt23108ud.dll %2\HCA\amd64\mtuvp32d.dll /y\r
+xcopy %bin_dir%\mt23108ud.dll %2\HCA\ia64\mtuvp32d.dll /y\r
+xcopy %bin_dir%\dapld.dll %2\DAPL\amd64\dapl32d.dll /y\r
+xcopy %bin_dir%\datd.dll %2\DAPL\amd64\dat32d.dll /y\r
+xcopy %bin_dir%\dapld.dll %2\DAPL\ia64\dapl32d.dll /y\r
+xcopy %bin_dir%\datd.dll %2\DAPL\ia64\dat32d.dll /y\r
+\r
+set bin_dir=%1\bin\user\objfre_wnet_amd64\amd64\r
+set dest_dir=%2\HCA\amd64\\r
+for %%i in (%bin_dir%\ibal.dll, %bin_dir%\complib.dll, %bin_dir%\mthcau.dll, %bin_dir%\mt23108u.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\ibwsd.dll %2\net\amd64\ /y\r
+xcopy %bin_dir%\installsp.exe %2\net\amd64\ /y\r
+xcopy %bin_dir%\*.exe %2\tools\amd64\release\ /y\r
+xcopy %bin_dir%\dapl.dll %2\DAPL\amd64\ /y\r
+xcopy %bin_dir%\dat.dll %2\DAPL\amd64\ /y\r
+xcopy %bin_dir%\mtcr.dll %2\FwTools\amd64\ /y\r
+xcopy %bin_dir%\flint.exe %2\FwTools\amd64\ /y\r
+xcopy %bin_dir%\mst.exe %2\FwTools\amd64\ /y\r
+\r
+rem Copy IA64 drivers\r
+set bin_dir=%1\bin\user\objfre_wnet_ia64\ia64\r
+set dest_dir=%2\HCA\ia64\\r
+for %%i in (%bin_dir%\ibal.dll, %bin_dir%\complib.dll, %bin_dir%\mthcau.dll, %bin_dir%\mt23108u.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\ibwsd.dll %2\net\ia64\ /y\r
+xcopy %bin_dir%\installsp.exe %2\net\ia64\ /y\r
+xcopy %bin_dir%\*.exe %2\tools\ia64\release\ /y\r
+xcopy %bin_dir%\dapl.dll %2\DAPL\ia64\ /y\r
+xcopy %bin_dir%\dat.dll %2\DAPL\ia64\ /y\r
+xcopy %bin_dir%\mtcr.dll %2\FwTools\ia64\ /y\r
+xcopy %bin_dir%\flint.exe %2\FwTools\ia64\ /y\r
+xcopy %bin_dir%\mst.exe %2\FwTools\ia64\ /y\r
+\r
+rem Copy x86 drivers\r
+set bin_dir=%1\bin\user\objfre_wnet_x86\i386\r
+set dest_dir=%2\HCA\x86\\r
+for %%i in (%bin_dir%\ibal.dll, %bin_dir%\complib.dll, %bin_dir%\mthcau.dll, %bin_dir%\mt23108u.dll, %bin_dir%\IbInstaller.dll) do xcopy %%i %dest_dir% /y\r
+xcopy %bin_dir%\*.exe %2\tools\x86\release\ /y\r
+xcopy %bin_dir%\dapl.dll %2\DAPL\x86\ /y\r
+xcopy %bin_dir%\dat.dll %2\DAPL\x86\ /y\r
+xcopy %bin_dir%\mtcr.dll %2\FwTools\x86\ /y\r
+xcopy %bin_dir%\flint.exe %2\FwTools\x86\ /y\r
+xcopy %bin_dir%\mst.exe %2\FwTools\x86\ /y\r
+\r
+rem WOW64 DLLs\r
+xcopy %bin_dir%\ibwsd.dll %2\net\x86\ /y\r
+xcopy %bin_dir%\installsp.exe %2\net\x86\ /y\r
+xcopy %bin_dir%\installsp.exe %2\tools\x86\release /y\r
+xcopy %bin_dir%\ibwsd.dll %2\net\amd64\ibwsd32.dll /y\r
+xcopy %bin_dir%\ibwsd.dll %2\net\ia64\ibwsd32.dll /y\r
+xcopy %bin_dir%\ibal.dll %2\HCA\amd64\ibal32.dll /y\r
+xcopy %bin_dir%\complib.dll %2\HCA\amd64\cl32.dll /y\r
+xcopy %bin_dir%\ibal.dll %2\HCA\ia64\ibal32.dll /y\r
+xcopy %bin_dir%\complib.dll %2\HCA\ia64\cl32.dll /y\r
+xcopy %bin_dir%\mthcau.dll %2\HCA\amd64\mthca32.dll /y\r
+xcopy %bin_dir%\mthcau.dll %2\HCA\ia64\mthca32.dll /y\r
+xcopy %bin_dir%\mt23108u.dll %2\HCA\amd64\mtuvp32.dll /y\r
+xcopy %bin_dir%\mt23108u.dll %2\HCA\ia64\mtuvp32.dll /y\r
+xcopy %bin_dir%\dapl.dll %2\DAPL\amd64\dapl32.dll /y\r
+xcopy %bin_dir%\dat.dll %2\DAPL\amd64\dat32.dll /y\r
+xcopy %bin_dir%\dapl.dll %2\DAPL\ia64\dapl32.dll /y\r
+xcopy %bin_dir%\dat.dll %2\DAPL\ia64\dat32.dll /y\r
+\r
+rem Copy INF files\r
+xcopy %1\hw\mthca\kernel\mthca.inf %2\HCA\ /y\r
+xcopy %1\hw\mt23108\kernel\infinihost.inf %2\HCA\ /y\r
+xcopy %1\core\bus\kernel\ib_bus.inf %2\HCA\ /y\r
+xcopy %1\ulp\ipoib\kernel\netipoib.inf %2\net\ /y\r
+xcopy %1\ulp\inic\kernel\netvnic.inf %2\net\ /y\r
+xcopy %1\ulp\srp\kernel\ib_srp.inf %2\storage\ /y\r
+\r
+xcopy %1\bin %2\bin\ /ey\r
+xcopy %1\bin\*.pdb %2\symbols\ /ey\r
+\r
+pushd %2\r
+del /s bin\*.pdb\r
+del /s ibtest*\r
+del /s pingpong*\r
+del /s *Sdp*\r
+del /s Select*\r
+del /s usrp*\r
+del /s *.lib\r
+del /s *.exp\r
+popd\r
+\r
+goto end\r
+\r
+:usage\r
+echo makebin src dest\r
+echo src base directory.\r
+echo dest directory in which to build the installable binary tree.\r
+goto end\r
+\r
+:error1\r
+echo %1\bin\kernel\objfre_wnet_amd64\amd64 missing \r
+:error2\r
+echo %1\bin\kernel\objfre_wnet_ia64\ia64 missing \r
+:error3\r
+echo %1\bin\kernel\objfre_wnet_x86\i386 missing \r
+:error4\r
+echo %1\bin\user\objfre_wnet_amd64\amd64 missing \r
+:error5\r
+echo %6\bin\user\objfre_wnet_ia64\ia64 missing \r
+:error6\r
+echo %1\bin\user\objfre_wnet_x86\i386 missing \r
+:error7\r
+echo %1\bin\user\objchk_wnet_amd64\amd64 missing \r
+:error8\r
+echo %1\bin\user\objchk_wnet_ia64\ia64 missing \r
+:error9\r
+echo %1\bin\user\objchk_wnet_x86\i386 missing \r
+\r
+echo missin \r
+\r
+:end\r