[INTERNALS-WIN] Which Windows SDK versions to use for official builds?
[email protected] ("Christoph M. Becker") Tue, 6 Aug 2024 23:52:53 +0200
| Newsgroups | php.internals.win |
|---|---|
| Message-ID | <[email protected]> |
Hi all, for a long time I'm wondering which version of the Windows SDK to use, and if that should be fixed for the release cycle of a minor version? That was less of an issue when there were dedicated build machines for PHP and the PECL extensions, where the installed Visual Studio received updates, but likely no new Windows SDK version was used during the release cycle of any minor PHP version. Although the winlibs had not been build on these machines, and as such may have used different Windows SDK versions. However, nowadays there are multiple build systems, usually building on hosted GH runners, where we have don't necessarily have control over which Windows SDK version is being used, since these build systems usually use just the latest available version. If Github deploys a new Windows SDK version for the hosted runners, that likely would be used for new builds. And while I'm not aware of any issues regarding different Windows SDK versions (and we have no control over the used VS C++ runtime anyway), it might be a good idea to consider to use a certain Windows SDK version for all these environments (if not available out-of-the-box, it could be installed upfront). Of course, that wouldn't make sense if not coordinated across the relevant builders, i.e. * <https://github.com/php/php-windows-builder> * <https://github.com/php/setup-php-sdk> * <https://github.com/winlibs> * <https://github.com/cmb69/php-ftw> And if we decide to use dedicated Windows SDK versions, it might make sense to add a flag to <https://github.com/php/php-sdk-binary-tools> to be able to choose the appropriate Windows SDK version. As it is now, that is left to vcvarsall.bat (contained in Visual Studio tools), which by default just uses the latest version. Thoughts? Christoph