diff --git a/.gitignore b/.gitignore index fc1043b..edfc0d7 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,7 @@ # Driver Verification Log /wintun.DVL.XML + +# WHQL Driver +/whql/x86 +/whql/amd64 diff --git a/README.md b/README.md index bb38309..eaf30d8 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ msbuild wintun.proj [/t:] - `DVL`: Runs the `SDV`, and creates a Driver Verification Log, only for AMD64 release configurations. - - `MSM`: Builds Microsoft Installer Merge Modules in `\wintun--.msm`. + - `MSM`: Builds Microsoft Installer Merge Modules in `\wintun--.msm`. Requires WHLK signed driver (See: [Building Microsoft Installer Merge Modules]). The driver output folders are: @@ -66,6 +66,14 @@ AMD64 Release | `amd64\Release\wintun` ARM64 Debug | `arm64\Debug\wintun` ARM64 Release | `arm64\Release\wintun` +### Building Microsoft Installer Merge Modules + +1. `msbuild wintun.proj /t:DVL;Build` +2. Perform Windows Hardware Lab Kit tests; Submit submission package to Microsoft; Get WHQL signed driver. +3. Copy WHQL signed driver to `whql\x86` and `whql\amd64` subfolders. +4. `msbuild wintun.proj /t:MSM` +5. MSM files are placed in `dist` subfolder. + ## Usage diff --git a/wintun.proj b/wintun.proj index 45faaa1..bd4a32c 100644 --- a/wintun.proj +++ b/wintun.proj @@ -63,10 +63,10 @@ - + - + diff --git a/wintun.wixproj b/wintun.wixproj index 25ddfdf..8474034 100644 --- a/wintun.wixproj +++ b/wintun.wixproj @@ -27,7 +27,8 @@ WINTUN_VERSION=$(WintunVersion);$(DefineConstants) 1006;1086;$(SuppressSpecificWarnings) 1103;$(LinkerSuppressSpecificWarnings) - -b output_dir="$(IntermediateOutputPath.TrimEnd('\'))" $(LinkerAdditionalOptions) + ICE30;$(SuppressIces) + -b output_dir="$(IntermediateOutputPath.TrimEnd('\'))" -b whwl_dir="whql\$(WintunPlatform)" $(LinkerAdditionalOptions) true diff --git a/wintun.wxs b/wintun.wxs index ddd2c25..db57721 100644 --- a/wintun.wxs +++ b/wintun.wxs @@ -25,9 +25,26 @@ + + + + + + + + + + + + + + + + +