- add a python-win tool package that unzips the official python.org
nuget package into the pkgroot (venv and ensurepip included)
- meson uses it to build its venv and only falls back to a system
python, so no manual environment setup is needed
- static-libs@windows listed both libiconv.lib (the dll import lib) and
libiconv_a.lib; the import lib came first, so php.exe ended up
importing libiconv.dll and the cli smoke test died with
STATUS_DLL_NOT_FOUND on machines without it
- libpq authenticates through SSPI and the static libcrypto behind it
reads the system cert store; php.exe failed to link with unresolved
Cert* and SSPI symbols when the openssl extension is not in the build
- php.exe already links with /FORCE:MULTIPLE for extension-bundled
duplicate symbols, cgi and micro did not
- imagick's MagickCore defines gettimeofday, also defined in php's
time.obj, and both links failed with LNK2005
- the meson build assumed meson/ninja/win_flex/win_bison/perl on PATH,
which only held on machines that had them installed
- add meson, ninja and winflexbison tool packages and declare them via
tools@windows on postgresql, together with the existing strawberry-perl
- meson no longer ships a Windows MSI, so the wheel is installed offline
into a venv: postgres re-invokes meson through find_program, which
needs the real meson.exe launcher pip generates
Build Unix SQLite with SQLITE_ENABLE_COLUMN_METADATA so the metadata APIs are available on macOS and Linux.
Remove the pdo_sqlite configure override that forced PHP to treat sqlite3_column_table_name() as unavailable, and add sanity checks for both SQLite compile options and PDO column metadata.
Go passes the MinGW-only -mthreads flag to the C compiler for cgo builds
(golang/go#16932); Clang >= 20 rejects it for the MSVC target, so the final
frankenphp go build fails on current windows-latest (VS 18 / LLVM 20+).
Wrap Clang with a generated .bat that drops the -mthreads token and forwards
the rest, used only when the detected Clang refuses the flag.