@@ -137,10 +137,39 @@ PHP coding standards now use the C99 standard.
137137Idea to move CMake forward and additionally use Conan was started on the
138138[PHP  internals  mailing  list](https ://externals.io/message/116655).
139139
140+ # # PHP 8.2 (2022)
141+ 
142+ <details>
143+ <summary>Changelog</summary>
144+ 
145+ # ## PHP 8.2 build system changes
146+ 
147+ * The build system now requires PHP 7.4.0 at least. Previously PHP 7.1 was
148+   required.
149+ * Unsupported libxml2 2.10.0 symbols are no longer exported on Windows.
150+ * Identifier names for namespaced functions generated from stub files through
151+   `gen_stub.php` have been changed. This requires that namespaced functions
152+   should be declared via the `PHP_FUNCTION` macro by using the fully qualified
153+   function name (whereas each part is separated by `_`) instead of just the
154+   function name itself.
155+ </details>
156+ 
140157# # PHP 8.3 (2023)
141158
142159Windows 8 became the minimum supported version by the PHP Windows build system.
143160
161+ <details>
162+ <summary>Changelog</summary>
163+ 
164+ # ## PHP 8.3 build system changes
165+ 
166+ * `PHP_EXTRA_VERSION` can be passed to configure script to control custom PHP
167+   build  versions : `./configure PHP_EXTRA_VERSION="-acme"`
168+ * `LDFLAGS` are not unset anymore allowing them to be adjusted e.g.
169+   `LDFLAGS ="..." ./configure` 
170+ *  Removed the `  HAVE_DEV_URANDOM`  compile time  check. 
171+ < /details> 
172+ 
144173# # PHP 8.4 (2024)
145174
146175Autotools-based build system was cleaned-up, updated, and refactored using the 
@@ -150,7 +179,7 @@ overrides on many places. C preprocessor macros inconsistencies between Windows
150179and Autotools configuration headers were synced to a nearly identical behavior. 
151180
152181< details> 
153- <summary>PHP 8.4 build system changes </summary>
182+ < summary> Changelog < /summary> 
154183
155184# ## PHP 8.4 build system changes
156185
@@ -169,13 +198,21 @@ and Autotools configuration headers were synced to a nearly identical behavior.
169198
170199# ### Autotools
171200
172- * The configure options `--with-imap-ssl`, `--with-oci8`, `--with-zlib-dir`, and
173-   `--with-kerberos` have been removed.
174- * The configure option `--with-openssl-dir` has been removed. SSL support in
175-   ext/ftp and ext/mysqlnd is enabled implicitly, when building with ext/openssl
201+ *  Added php-config `  --lib-dir`  and  `  --lib-embed`  options for  PHP embed SAPI. 
202+ *  Removed linking with obsolete dnet_stub library in  ext/pdo_dblib.
203+ *  Removed checking and linking with obsolete libbind for  some functions.
204+ 
205+ # #### Autotools configure options
206+ 
207+ *  The `  --with-imap-ssl` ,  `  --with-oci8` ,  `  --with-zlib-dir` , and  `  --with-kerberos` 
208+   have been removed. 
209+ *  The `  --with-openssl-dir`  has been removed. SSL support in  ext/ftp and 
210+   ext/mysqlnd is enabled implicitly, when building with ext/openssl 
176211  (` --with-openssl`  ), or explicitly by using new configure options 
177212   `  --with-ftp-ssl`  and  `  --with-mysqlnd-ssl` . 
178- * Added php-config `--lib-dir` and `--lib-embed` options for PHP embed SAPI.
213+ 
214+ # #### Changes to main/php_config.h
215+ 
179216*  `  COOKIE_IO_FUNCTIONS_T`  symbol has been removed in  favor of 
180217   `  cookie_io_functions_t` . 
181218*  `  HAVE_SOCKADDR_UN_SUN_LEN`  symbol renamed to  `  HAVE_STRUCT_SOCKADDR_UN_SUN_LEN` . 
@@ -205,6 +242,9 @@ and Autotools configuration headers were synced to a nearly identical behavior.
205242*  Symbols `  PHP_HAVE_AVX512_SUPPORTS`  and  `  PHP_HAVE_AVX512_VBMI_SUPPORTS`  are now 
206243  either defined to 1 or undefined. 
207244*  Symbol `  HAVE_LIBCRYPT`  has been removed. 
245+ 
246+ # #### Autoconf macros
247+ 
208248*  Autoconf macro `  PHP_DEFINE`  (atomic includes) removed in  favor of  `  AC_DEFINE` 
209249  and extensions' s config.h. 
210250* Autoconf macro `PHP_WITH_SHARED` has been removed in favor of `PHP_ARG_WITH`. 
@@ -277,11 +317,22 @@ and Autotools configuration headers were synced to a nearly identical behavior.
277317   ` $(... ) ` . Passing double escaped Makefile variables  `  \\$(VAR ) `  to some 
278318  Autoconf macros should be now done  with  `  \$(VAR ) `  or by using regular shell 
279319  variables. 
280- *  Removed linking with obsolete dnet_stub library in  ext/pdo_dblib.
281- *  Removed checking and linking with obsolete libbind for  some functions.
282320
283321# ### Windows
284322
323+ *  Building with Visual Studio requires at least Visual Studio 2019.
324+ *  Added Bison flag `  -Wall`  when generating lexer files as done  in  \* nix 
325+   build system. 
326+ *  `  FIBER_ASSEMBLER`  and  `  FIBER_ASM_ARCH`  Makefile variables removed in  favor of 
327+    `  PHP_ASSEMBLER`  and  `  FIBER_ASM_ABI` . 
328+ *  The `  win32/build/libs_version.txt`  file has been removed. 
329+ *  MSVC builds use the new preprocessor (` /Zc:preprocessor`  ).
330+ *  The `  CHECK_HEADER_ADD_INCLUDE`  function  consistently  defines preprocessor 
331+   macros  `  HAVE_<header>_H`  either to value 1 or leaves them undefined to 
332+   match the Autotools headers checks. 
333+ 
334+ # #### Windows configure options
335+ 
285336*  The configure options `  --with-oci8-11g` ,  `  --with-oci8-12c` , 
286337   `  --with-oci8-19` , and  `  --enable-apache2-2handler`  have been removed. 
287338*  The configure option `  --enable-apache2-4handler`  became an alias  for  the 
@@ -290,36 +341,28 @@ and Autotools configuration headers were synced to a nearly identical behavior.
290341  debug mode. 
291342*  Added support for  native AVX-512 builds with
292343   `  --enable-native-intrinsics=avx512`  configure option. 
293- *  Building with Visual Studio requires at least Visual Studio 2019. 
294- *  Added Bison flag  ` -Wall `  when generating lexer files as  done   in   \* nix 
295-   build system. 
344+ 
345+ # #### Changes to main/config.w32.h 
346+ 
296347*  `  HAVE_WIN32_NATIVE_THREAD` ,  `  USE_WIN32_NATIVE_THREAD` ,  `  ENABLE_THREADS` 
297348  symbols in  ext/mbstring/libmbfl removed. 
298- *  `  FIBER_ASSEMBLER`  and  `  FIBER_ASM_ARCH`  Makefile variables removed in  favor of 
299-    `  PHP_ASSEMBLER`  and  `  FIBER_ASM_ABI` . 
300349*  `  HAVE_PHP_SOAP`  symbol renamed to  `  HAVE_SOAP` . 
301350*  Unused symbols `  CONFIGURATION_FILE_PATH` ,  `  DISCARD_PATH` ,  `  HAVE_ERRMSG_H` , 
302351   `  HAVE_REGCOMP` ,  `  HAVE_RINT` ,  `  NEED_ISBLANK` ,  `  PHP_URL_FOPEN` ,  `  REGEX` , 
303352   `  HSREGEX` , and  `  USE_CONFIG_FILE`  have been removed. 
304353*  The `  HAVE_OPENSSL`  symbol has been removed. 
305354*  The `  HAVE_OPENSSL_EXT`  symbol consistently defined to value 1 whether the 
306355  openssl extension is available either as shared or built statically. 
307- *  The `  win32/build/libs_version.txt`  file has been removed. 
308- *  MSVC builds use the new preprocessor (` /Zc:preprocessor`  ).
309- *  The `  CHECK_HEADER_ADD_INCLUDE`  function  consistently  defines preprocessor 
310-   macros  `  HAVE_<header>_H`  either to value 1 or leaves them undefined to 
311-   match the Autotools headers checks. 
312- 
313356< /details> 
314357
315358# # PHP 8.5 (2025)
316359
317360PHP coding standards now use the C11 standard. 
318361
319362< details> 
320- < summary> PHP 8.5 changelog < /summary> 
363+ < summary> Changelog < /summary> 
321364
322- # ## PHP 8.5 changelog 
365+ # ## PHP 8.5 build system changes 
323366
324367# ### Abstract
325368
0 commit comments