[winpcap] Why is /Upgrade required in the build? #52459
|
Hello, I ran into this issue #47906 a while back which seems to have come up a few times before as well. The root cause of the problem is if Visual Studio Build Tools are used instead of the IDE to build winpcap, it fails when trying to call I was curious why the /upgrade was required. Cheers |
Replies: 1 comment
|
My guess is that /Upgrade is there because the upstream WinPcap source still ships old Visual Studio project/solution files, and the port currently relies on Visual Studio to upgrade them before building. The problem is that devenv.exe /Upgrade requires the full Visual Studio IDE. It is not available in Visual Studio Build Tools, so this makes the port fail in build-agent environments where only the Build Tools are installed. So I think there are two separate questions here:
Even if the upgrade step was necessary historically, it seems fragile for vcpkg because Build Tools-only environments are a normal CI setup. Ideally the port would either patch the project files into a buildable form up front, use MSBuild directly if possible, or install/use the WinPcap SDK instead of requiring the full IDE. The overlay/custom-registry workaround using the prebuilt SDK makes sense for consumers, but it would still be useful to understand whether the official port can avoid devenv.exe /Upgrade entirely. So my read is: /Upgrade is probably there to handle legacy WinPcap project files, but requiring the full IDE for a vcpkg dependency feels like the part worth revisiting. |
My guess is that /Upgrade is there because the upstream WinPcap source still ships old Visual Studio project/solution files, and the port currently relies on Visual Studio to upgrade them before building.
The problem is that devenv.exe /Upgrade requires the full Visual Studio IDE. It is not available in Visual Studio Build Tools, so this makes the port fail in build-agent environments where only the Build Tools are installed.
So I think there are two separate questions here:
Even if the upgrade step was necessary historically, it seems fragile for vcpkg because Build Tools-only environments…