[WinOF]
[mirror/winof/.git] / WinOF / WIX / README.txt
index 2aef487..3005787 100644 (file)
@@ -1,4 +1,4 @@
-[11-13-08]\r
+[04-10-09]\r
 \r
 How to generate a Windows OpenFabrics Release (WinOF) using the WIX 2.0 open\r
 source installer tool set ( http://sourceforge.net/projects/wix/ ).\r
@@ -10,11 +10,12 @@ WIX References:
        WIX Introduction http://wix.sourceforge.net/manual-wix2/wix_index.htm   \r
 \r
 \r
-WinOF Revisions:\r
-  1.0  based on svn.614\r
+WinOF Revisions: (based on)\r
+  1.0  svn.614\r
   1.0.1        svn.864\r
   1.1  svn.1177\r
   2.0  svn.1763\r
+  2.0.2        svn.1975\r
 \r
 \r
 \r
@@ -24,15 +25,15 @@ Creating a binary release tree
 As of WinOF 2.0 release [Aug'08] the build environment has been switched over to\r
 Microsoft's WDK (Windows Driver Kit) version 6001.180001.\r
 \r
-See gen1\trunk\BuildRelease.bat file to generate a Wix installer (.msi file) containing\r
-signed driver files.\r
+See gen1\trunk\WinOF\BuildRelease.bat file to generate a Wix installer (.msi\r
+file) containing signed driver files.\r
 The OS flavor WLH\ - Vista/Server 2008[LongHorn], WNET\ - Server 2003+XP64\r
-and XP\ (x86 only) bin folders will be populated with the correct folder structure such that\r
-a WIX installer (.msi) files can be generated; either cd into OS\arch dir and\r
-run buildmsi.bat or use BuildRelease.bat from trunk\ folder.\r
+and XP\ (x86 only) bin\ folders will be populated with the correct folder\r
+structure such that a WIX installer (.msi) files can be generated; either\r
+cd into OS\arch dir and run buildmsi.bat or use WinOF\BuildRelease.bat.\r
 \r
 Warning - buildrelease.bat is not generic, some asembly required as the folder\r
-structure is assumed.\r
+structure is assumed; see SVN to set build SVN (aka OPENIB_REV).\r
 \r
 BuildRelease.bat will by default deposit 7 .msi files in\r
 '%SystemRoot%\temp\WinOF_OS_arch.msi'.\r
@@ -46,42 +47,46 @@ contents of WIX\bin\ yourself from a WDK/SDK build window which can run
      cd to trunk; build /wg from a WDK OS and arch specific command window; all\r
      are required by etc\makebin.bat.\r
 \r
-  2) cd trunk\etc; execute 'makebin src-dir dest-dir OS-flavor' for each OS flavor:\r
-     wnet, wlh and wxp.\r
+  2) from trunk: execute 'etc\makebin %CD% dest-dir OS-flavor' for each OS\r
+     flavor: wnet, wlh and wxp.\r
      Say your svn repository is at C:\open-ib\, then to populate the WIX bin\r
      folder for Server 2008 binaries from a command window:\r
-        makebin C:\open-ib\gen1\trunk C:\open-ib\gen1\branches\WinOF\Wix\WLH\bin WLH\r
-\r
-With the arrival of Windows Server 2008 & Vista (WLH - Windows LongHorn) driver signing\r
-is a requirement. The WIX\sign-all-drivers.bat script will create a .cat file for each\r
-driver .inf located. The generation of the .cat file is driven from the corresponding\r
-.cdf file (.inf + .cdf + all files listed in .cdf + inf2cat.exe & signtool.exe result\r
-in a .cat file).\r
-\r
-A SW publisher's digital-ID certificate is required in order for WinOF installers to\r
-be created. A test certificate can be generated for local use, requires overhead during\r
-installation ('bcdedit -set testsigning on', reboot & local certificate store updates).\r
-The MS prescribed procedure is to obtain a SW publisher's certificate from VeriSign or\r
-other agency; if your company is producing SW drivers for SVR2008/Vista, then you will\r
-likely have access to a cert file.\r
+        makebin C:\open-ib\gen1\trunk C:\open-ib\gen1\WinOF\Wix\WLH\bin WLH\r
+\r
+With the arrival of Windows Server 2008 & Vista (WLH - Windows LongHorn) driver\r
+signing is a requirement. The WIX\sign-all-drivers.bat script will create a .cat\r
+file for each driver .inf located. The generation of the .cat file is driven\r
+from the corresponding driver.inf file via inf2cat.exe creating the .cat file\r
+and signtool.exe signing the .cat and .sys files.\r
+\r
+A SW publisher's digital-ID certificate is required in order for WinOF\r
+installers to be created. A test certificate can be generated for local use,\r
+requires overhead during installation ('bcdedit -set testsigning on', reboot &\r
+local certificate store updates).\r
+The MS prescribed procedure is to obtain a SW publisher's certificate from\r
+VeriSign or other CA agency; if your company is producing SW drivers for\r
+SVR2008/Vista, then you will likely have access to a cert file.\r
 The OFA will be purchasing a certificate for WinOF publication.\r
-Scripts for signing drivers assume the .cer file will be resident in '...WinOF\Wix\*.cer'.\r
-see trunk\buildrelease.bat for an example of how to invoke driver\r
-signing; 'WIX\sign-all-drivers.bat'.\r
-Also see the Microsoft 'Kernel Mode Code Signing' document 'KMCS_Walkthrough.doc'; goggle\r
-for current URL.\r
+Scripts for signing drivers assume the MS cross-certification .cer file will be\r
+resident in 'trunk\WinOF\Wix\*.cer'; your company Cert must be placed in the\r
+local cert store under the default personal 'My' store. \r
+see trunk\winof\buildrelease.bat for an example of how to invoke driver\r
+signing or 'WIX\sign-all-drivers.bat'.\r
+Also see the Microsoft 'Kernel Mode Code Signing' document\r
+'KMCS_Walkthrough.doc'; goggle for current URL.\r
 \r
 \r
 Creating a WIX tool set\r
 -------------------------\r
 \r
 Download the WIX v2 (stable) tool set (http://sourceforge.net/projects/wix/)\r
-to \91WInOF\WIX\WIX_tools\\92.\r
+to \91WinOF\WIX\WIX_tools\\92.\r
 Unzip the archive to a folder within 'WIX_tools\' as this folder represents the\r
 version of the tool set.\r
 Something like unzip wix-2.0.5325.0-binaries.zip into wix-2.0.5325.0-binaries\.\r
 You would now have the following structure:\r
        WinOF\WIX\WIX_tools\wix-2.0.5325.0-binaries\{candle.exe, light.exe,...}\r
+Point being Trunk\WinOF\buildRelease.bat needs the path to the WIX tool set.\r
 \r
 \r
 \r
@@ -93,59 +98,68 @@ Update Release_notes.htm file.
         The file 'Release_notes.htm' represents the next to be released\r
         WinOF version, as reflected by is Release ID.\r
 \r
-       Release ID number (e.g., 1.0)\r
+       Release ID number (e.g., 1.0, point releases are 1.0.x)\r
 \r
        New features\r
 \r
        Know issues\r
 \r
-Update the trunk\doc\Manual.htm file for new features.\r
+Update the trunk\docs\Manual.htm file for new features.\r
 \r
 \r
 BUILDING a .msi installer image file\r
 ------------------------------------\r
 \r
 Easy way:\r
- place certificate file (.cer) in WIX\ folder; 'My Personal' cert store needs to be updated.\r
+ place MS cross certificate file (.cer) in WIX\ folder; 'My' cert store needs\r
+ to contain your company cert file; WinOF\BuildRelease.bat needs the name of\r
+ your company cert file; OFA case 'OpenFabrics Alliance'.\r
+ .\r
  cd trunk\\r
  From a standard DOS cmd window, not a WDK cmd window, say \r
-   buildrelease clean\r
-   buildrelease all            # .msi file created in %windir%\temp\*.msi\r
 \r
-   buildrelease makebin - assumes trunk\bin\* built, populates WIX\{wlh,wnet,wxp}\bin folders.\r
+   buildrelease all            # .msi files created in %windir%\temp\*.msi\r
+\r
+   buildrelease makebin - assumes trunk\bin\* built,\r
+                          populates WIX\{wlh,wnet,wxp}\bin folders.\r
+   buildrelease sign - sign driver files & exit, assumes makebin has been run.\r
    buildrelease msi - signs & creates installers assuming makebin has been run.\r
-   buildrelease wix - just creates .msi installers - assumes all bin\ folders populated.\r
+   buildrelease wix - creates .msi installers - assumes all bin\ folders\r
+                      populated and drivers signed.\r
 \r
 CPU specific builds\r
 \r
-CD to the WIX OS-flavor and architecture specific directory.  'nmake.exe' needs to be\r
-in your command window search path. Build three arch specific installers\r
+CD to the WIX OS-flavor and architecture specific directory. 'nmake.exe' needs\r
+to be in your command window search path. Build three arch specific installers\r
 (.msi files) for WLH and WNET; WXP is x86 only. \r
 \r
 WARNING:\r
-   assupmtion: .\bin is populated correctly from makebin.bat or BuildRelease.bat makebin.\r
+   assupmtion: .\bin is populated correctly from makebin.bat or\r
+   'BuildRelease makebin'.\r
 \r
-cd gen1\branches\WinOF\WIX\wlh\x86 & nmake\r
+cd gen1\trunk\WinOF\WIX\wlh\x86 & nmake\r
        Results in a .\WOF_wlh_x86.msi installer image.\r
 \r
-cd gen1\branches\WinOF\WIX\wlh\x64 & nmake\r
+cd gen1\trunk\WinOF\WIX\wlh\x64 & nmake\r
        Results in a WOF_wlh_x64.msi installer image.\r
 \r
-cd gen1\branches\WinOF\WIX\wlh\ia64 & nmake\r
+cd gen1\trunk\WinOF\WIX\wlh\ia64 & nmake\r
        Results in a WOF_wlh_ia64.msi installer image.\r
 \r
 \r
-DEBUG\r
------\r
+DEBUG Installation\r
+------------------\r
 Create a log file for a given .msi installation:\r
 \r
   msiexec /I "WOF_x86.msi" /Lv \temp\msi.log\r
 \r
-  Also see %windir%\inf\setupapi.dev.log on Svr08 & Vista for driver load logging.\r
+  Also see %windir%\inf\setupapi.dev.log on Svr08 & Vista for driver load\r
+  logging.\r
 \r
 Command line way to set an interface's IP address, netmask, no gateway:\r
 \r
-  netsh interface ip set address "Local Area Connection 3" static 10.10.4.200 255.255.255.0\r
+  netsh interface ip set \\r
+         address "Local Area Connection 3" static 10.10.4.200 255.255.255.0\r
   netsh interface ip show address "Local Area Connection 3"\r
 \r
 \r