diff --git a/config/env.ini b/config/env.ini index cfda622e..7448cc37 100644 --- a/config/env.ini +++ b/config/env.ini @@ -110,9 +110,7 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --disable ; *** default build vars for building php *** ; embed type for php, static (libphp.a) or shared (libphp.so) SPC_CMD_VAR_PHP_EMBED_TYPE="static" -; CFLAGS for configuring php -SPC_CMD_VAR_PHP_CONFIGURE_CFLAGS="${SPC_DEFAULT_C_FLAGS} -fPIE" -; EXTRA_CFLAGS for `make` php +; EXTRA_CFLAGS for `configure` and `make` php SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fno-ident -fPIE ${SPC_DEFAULT_C_FLAGS}" ; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.so SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS="" @@ -142,10 +140,8 @@ SPC_CMD_PREFIX_PHP_CONFIGURE="./configure --prefix= --with-valgrind=no --enable- ; *** default build vars for building php *** ; embed type for php, static (libphp.a) or shared (libphp.dylib) SPC_CMD_VAR_PHP_EMBED_TYPE="static" -; CFLAGS for configuring php -SPC_CMD_VAR_PHP_CONFIGURE_CFLAGS="${SPC_DEFAULT_C_FLAGS} -Werror=unknown-warning-option" -; EXTRA_CFLAGS for `make` php -SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie ${SPC_DEFAULT_C_FLAGS}" +; EXTRA_CFLAGS for `configure` and `make` php +SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie -Werror=unknown-warning-option ${SPC_DEFAULT_C_FLAGS}" [freebsd] ; compiler environments diff --git a/config/lib.json b/config/lib.json index 640d4ea9..aa7eb499 100644 --- a/config/lib.json +++ b/config/lib.json @@ -26,6 +26,10 @@ "watcher" ] }, + "frankenphp": { + "source": "frankenphp", + "type": "target" + }, "micro": { "type": "target", "source": "micro" @@ -970,9 +974,5 @@ "zstd.h", "zstd_errors.h" ] - }, - "frankenphp": { - "source": "frankenphp", - "type": "target" } } diff --git a/config/source.json b/config/source.json index ca1edfb0..fa16651c 100644 --- a/config/source.json +++ b/config/source.json @@ -301,6 +301,16 @@ "path": "LICENSE.MIT" } }, + "frankenphp": { + "type": "ghtar", + "repo": "php/frankenphp", + "prefer-stable": true, + "provide-pre-built": false, + "license": { + "type": "file", + "path": "LICENSE" + } + }, "freetype": { "type": "ghtagtar", "repo": "freetype/freetype", @@ -363,16 +373,6 @@ "path": "LICENSE" } }, - "frankenphp": { - "type": "ghtar", - "repo": "php/frankenphp", - "prefer-stable": true, - "provide-pre-build": false, - "license": { - "type": "file", - "path": "LICENSE" - } - }, "icu-static-win": { "type": "url", "url": "https://dl.static-php.dev/static-php-cli/deps/icu-static-windows-x64/icu-static-windows-x64.zip", diff --git a/src/SPC/builder/linux/LinuxBuilder.php b/src/SPC/builder/linux/LinuxBuilder.php index 68db5688..0d6f77fb 100644 --- a/src/SPC/builder/linux/LinuxBuilder.php +++ b/src/SPC/builder/linux/LinuxBuilder.php @@ -91,7 +91,7 @@ class LinuxBuilder extends UnixBuilderBase // prepare build php envs // $musl_flag = SPCTarget::getLibc() === 'musl' ? ' -D__MUSL__' : ' -U__MUSL__'; $php_configure_env = SystemUtil::makeEnvVarString([ - 'CFLAGS' => getenv('SPC_CMD_VAR_PHP_CONFIGURE_CFLAGS'), + 'CFLAGS' => getenv('SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS'), 'CPPFLAGS' => '-I' . BUILD_INCLUDE_PATH, // . ' -Dsomethinghere', // . $musl_flag, 'LDFLAGS' => '-L' . BUILD_LIB_PATH, // 'LIBS' => SPCTarget::getRuntimeLibs(), // do not pass static libraries here yet, they may contain polyfills for libc functions! @@ -284,10 +284,10 @@ class LinuxBuilder extends UnixBuilderBase // process libphp.so for shared embed $libphpSo = BUILD_LIB_PATH . '/libphp.so'; if (file_exists($libphpSo)) { - // deploy libphp.so - $this->deployBinary($libphpSo, $libphpSo, false); // post actions: rename libphp.so to libphp-.so if -release is set in LDFLAGS $this->processLibphpSoFile($libphpSo); + // deploy libphp.so + $this->deployBinary($libphpSo, $libphpSo, false); } // process shared extensions build-with-php diff --git a/src/SPC/builder/macos/MacOSBuilder.php b/src/SPC/builder/macos/MacOSBuilder.php index 849b350f..07ef275d 100644 --- a/src/SPC/builder/macos/MacOSBuilder.php +++ b/src/SPC/builder/macos/MacOSBuilder.php @@ -106,7 +106,7 @@ class MacOSBuilder extends UnixBuilderBase // prepare build php envs $envs_build_php = SystemUtil::makeEnvVarString([ - 'CFLAGS' => getenv('SPC_CMD_VAR_PHP_CONFIGURE_CFLAGS'), + 'CFLAGS' => getenv('SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS'), 'CPPFLAGS' => '-I' . BUILD_INCLUDE_PATH, 'LDFLAGS' => '-L' . BUILD_LIB_PATH, ]);