You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
--locked Assert that `Cargo.lock` will remain unchanged
70
72
-h, --help Print help
71
73
74
+
Feature Selection:
75
+
--all-features Activate all available features
76
+
--no-default-features Do not activate the `default` feature
77
+
-F, --features <FEATURES> Space-separated list of features to activate
78
+
72
79
Verbosity:
73
80
-v, --verbose... Increase logging verbosity
74
81
-q, --quiet... Decrease logging verbosity
75
82
```
76
83
77
-
`build` takes a number of inputs specifying build profile (`dev` or `release`), target architecture (`amd64` or `arm64`), a flag enabling signature verification and a flag indicating a sample driver along with verbosity flags.
84
+
`build` takes a number of inputs specifying build profile (`dev` or `release`), target architecture (`amd64` or `arm64`), the driver signing mode, a flag enabling signature verification and a flag indicating a sample driver along with verbosity flags.
78
85
79
86
When the command completes the packaged driver artifacts are emitted at the path `target\<profile>\<project-name>-package`.
80
87
@@ -90,9 +97,14 @@ If you have a workspace with a mix of sample and non-sample driver projects, the
90
97
91
98
#### Signing and Verification
92
99
93
-
To sign driver artifacts `build` looks for a certificate called `WDRLocalTestCert` in a store called `WDRTestCertStore`. Make sure you place your signing certificate there with that name. If no certificate is found, `build` will automatically generate a new self-signed one and add it for you.
100
+
The `build` command has a `--sign-mode` flag that controls how driver artifacts are signed. It accepts the following values:
101
+
102
+
-`test` (default): Sign with a test certificate. The command looks for a certificate called `WDRLocalTestCert` in a store called `WDRTestCertStore`. If you wish to use your own certificate, add it to the same store with the same name. Otherwise a self-signed certificate will be automatically generated, added, and used for signing.
103
+
-`off`: Skip signing entirely. This is useful when you intend to sign the artifacts later with your own toolchain.
94
104
95
-
If the `--verify-signature` flag is provided, the signatures are verified after signing. For verification to work, make sure you add a copy of the signing certificate in the `Trusted Root Certification Authorities` store. For security reasons `build` does not automatically do this even when it automatically generates the cert. You will have to always perform this step manually.
105
+
If the `--verify-signature` flag is provided, the signatures are verified after signing. For verification to work, make sure you add a copy of the signing certificate in the `Trusted Root Certification Authorities` store. For security reasons `build` does not automatically do this even when it automatically generates the cert. You will have to always perform this step manually.
106
+
107
+
`--verify-signature` cannot be combined with `--sign-mode=off` because if signing is off there is nothing to verify. Passing both will cause `build` to fail with an error.
96
108
97
109
#### Examples
98
110
@@ -113,3 +125,9 @@ If the `--verify-signature` flag is provided, the signatures are verified after
113
125
```pwsh
114
126
cargo wdk build --target-arch amd64
115
127
```
128
+
129
+
- To build a driver project with signing off, navigate to the root of the project and run:
0 commit comments