[GIT-PULLS] [php-src] PR #22913: main/io build directory missing from PHP_ADD_BUILD_DIR, breaks out-of-tree (VPATH) builds
[email protected] (mati75) Tue, 28 Jul 2026 21:20:46 +0000
| Newsgroups | php.git-pulls |
|---|---|
| Message-ID | <[email protected]> |
Pull Request: https://github.com/php/php-src/pull/22913 Author: mati75 Building PHP 8.6.0alpha3 in an out-of-tree build directory (VPATH build, e.g. Debian's separate fpm-build/cli-build dirs) fails while compiling the new main/io/*.c files: ``` main/io/php_io_copy_freebsd.c:1: fatal error: opening dependency file main/io/php_io_copy_freebsd.dep: No such file or directory compilation terminated. make[2]: *** [Makefile:1841: main/io/php_io_copy_freebsd.lo] Error 1 ``` The same error occurs for php_io.c, php_io_copy_linux.c, php_io_copy_solaris.c, and php_io_copy_macos.c. configure.ac registers the sources via PHP_ADD_SOURCES([main/io], ...), but the main/io directory was never added to the PHP_ADD_BUILD_DIR([...]) list that configure uses to pre-create build directories for VPATH builds. Every other directory containing sources (main, main/poll, main/streams, TSRM, Zend, etc.) is listed there; main/io was simply omitted when the new I/O subsystem was introduced. As a result, main/io/ never gets created in the build tree, and the compiler can't write the .dep/.o files into it.