Commit Graph

29 Commits

Author SHA1 Message Date
Simon Rozman
3e685569a1 props: inverse SDVHacks logic
SDV is allergic to code analysis. So, when we're doing SDV (SDVHacks is
"true"), we need to turn the code analysis off.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-08-25 12:02:01 +02:00
Simon Rozman
b239eb6505 props: unify import .lib of DLLs
This moves downlevelshim.lib and those .lib from any future DLLs in this
repo to the matching IntDir.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-08-10 12:01:26 +02:00
Jason A. Donenfeld
82a6130341 props: tie code analysis to sdv hacks rather than debug builds
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-08-04 04:09:02 +02:00
Jason A. Donenfeld
73a4cffee0 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-08-02 04:49:14 +02:00
Jason A. Donenfeld
caae8bca33 proj: fix header lines
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-08-02 04:49:13 +02:00
Jason A. Donenfeld
86521458e3 props: use ForcedTargetVersion for override
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Simon Rozman <simon@rozman.si>
2021-07-30 10:40:27 +02:00
Simon Rozman
7dffa4be72 vs: move shared configuration to wintun.props and upgrade
Remember to rename wintun.vcxproj.user file in your local working folder
to wintun.props.user manually.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-07-28 20:22:18 +02:00
Jason A. Donenfeld
48bbaa0be3 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-06-25 16:18:03 +02:00
Jason A. Donenfeld
0d96b900c3 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-05-10 19:23:28 +02:00
Jason A. Donenfeld
02f19b8c90 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-05-10 11:24:44 +02:00
Jason A. Donenfeld
d2db3b9977 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-05-05 11:25:44 +02:00
Jason A. Donenfeld
5edd8d2517 version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2021-04-13 15:55:08 -06:00
Simon Rozman
51a4f299c3 vs: put .pdb files in the intermediate folders
Wondering, why WinDbg is refusing to load symbols for wintun.sys
recently...

By default, building puts .pdb files to the output folder. Next to the
final binaries: wintun.sys, wintun.dll, example.exe... Wait?! But the
wintun.pdb from wintun.dll overwrites the wintun.pdb from wintun.sys
then.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-04-13 15:50:50 -06:00
Simon Rozman
a6fa9c1b67 project: add support for intermediate versioning
While the Wintun driver is typically released only at <major>.<minor>
milestones, the wintun.dll did see some intermediate releases.

To make MSI logic correctly decide to upgrade local wintun.dll file, the
version inscribed in wintun.dll file resources should increment in those
intermediate releases. MSI ignores file timestamps. One could use
REINSTALLMODE=emus Installer property to force copying wintun.dll when
its version doesn't change. But REINSTALLMODE applies to all files in
the MSI session and would be an additional requirement when authoring
MSI packages with wintun.dll.

Bumping only the final ZIP filename version is not sufficient.

Therefore, a <major>.<minor> or <major>.<minor>.<build> versioning is
introduced. Furthermore, we no longer distinguish between WintunVersion
and WintunVersionStr. All our releases used strictly numeric
<major>.<minor> notation, making WintunVersion and WintunVersionStr
always the same.

When the driver didn't change, just bump the version in wintun.proj and
run `msbuild wintun.proj /t:Zip` to rebuild the wintun.dll and make the
new ZIP file.

Signed-off-by: Simon Rozman <simon@rozman.si>
2021-03-19 11:52:11 +01:00
Jason A. Donenfeld
d440234d6e version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-16 18:23:41 +01:00
Jason A. Donenfeld
0f6296516a version: bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-09 15:34:38 +01:00
Simon Rozman
a00c8ca685 driver: move to subfolder
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-11-06 07:29:47 +01:00
Simon Rozman
5925f914e4 api: add support for WoW64
Some functions of SetupAPI only work when invoked from a native process.
Registry and filesystem reflection makes them fail on WoW64. For WoW64
processes, a minimum set of rundll32 functions are provided.

Signed-off-by: Simon Rozman <simon@rozman.si>
2020-10-30 16:50:59 +01:00
Jason A. Donenfeld
27e4d334fc Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-12-10 14:54:10 +01:00
Jason A. Donenfeld
a5cc2b2ed4 Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-10-06 13:28:31 +00:00
Simon Rozman
fa715c4863 Use WiX directly rather than via WiX's MSBuild
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-05 17:14:27 +02:00
Jason A. Donenfeld
03f356c492 Dynamically gather signtool full path
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-05 14:08:06 +02:00
Jason A. Donenfeld
c9da443273 Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-04 15:29:48 +00:00
Jason A. Donenfeld
9d71da2d37 Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-02 11:57:30 +02:00
Jason A. Donenfeld
22e2da002d Rewrite installer logic in C
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-02 09:43:32 +00:00
Jason A. Donenfeld
2e7809f0d1 Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-05 10:58:04 +02:00
Jason A. Donenfeld
f6663587da Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-04 14:34:56 +02:00
Jason A. Donenfeld
c7fbe74d0e Version bump
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-06-08 09:04:47 +00:00
Simon Rozman
9f31f27840 Switch from NMake to MSBuild
This allows common version and other configuration in wintun.props.

- MSM packaging migrated to WiX MSBuild project and extended to support
  digital signing
- Building supports single Platform|Configuration per run - again :(
- wintun.vcxproj cleanup

Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-19 15:25:44 +02:00