Re: [INTERNALS-WIN] Which Windows SDK versions to use for official builds?

[email protected] (Jean-Baptiste Nahan) Wed, 7 Aug 2024 17:55:13 +0200
Newsgroups php.internals.win
Message-ID <[email protected]>
Hello,

As long as there is no compatibility problem between the binaries generated w=
ith different versions of the Windows SDK, it seems to me more appropriate n=
ot to complicate the construction of PHP and the DLLs of the extensions.

Jean-Baptiste

Win32service Lead Dev
French PHP documentation translator

Ps : I search the email registered on the mailing list. Sorry for any inconv=
enience.
>=20
> Le 6 ao=C3=BBt 2024 =C3=A0 23:53, Christoph M. Becker <[email protected]> a=
 =C3=A9crit :
>=20
> =EF=BB=BFHi all,
>=20
> 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?
>=20
> 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.
>=20
> 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.
>=20
> 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).
>=20
> Of course, that wouldn't make sense if not coordinated across the
> relevant builders, i.e.
>=20
> * <https://github.com/php/php-windows-builder>
> * <https://github.com/php/setup-php-sdk>
> * <https://github.com/winlibs>
> * <https://github.com/cmb69/php-ftw>
>=20
> 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.
>=20
> Thoughts?
>=20
> Christoph