From 9e4a622f428044cecb70e9856b0ee3afb7e12c61 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Thu, 7 May 2026 14:55:45 +0800 Subject: [PATCH] SPC_DEFAULT_CXX_FLAGS renamed to SPC_DEFAULT_CXXFLAGS --- config/env.ini | 8 ++++---- src/StaticPHP/Package/LibraryPackage.php | 4 ++-- src/StaticPHP/Toolchain/ZigToolchain.php | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/config/env.ini b/config/env.ini index 4a13ac5a..19ade5c1 100644 --- a/config/env.ini +++ b/config/env.ini @@ -103,7 +103,7 @@ AR=${SPC_DEFAULT_AR} LD=${SPC_DEFAULT_LD} ; default compiler flags, used in CMake toolchain file, openssl and pkg-config build SPC_DEFAULT_CFLAGS="-fPIC -O3 -pipe -fno-plt -fno-semantic-interposition -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffunction-sections -fdata-sections" -SPC_DEFAULT_CXX_FLAGS="${SPC_DEFAULT_CFLAGS}" +SPC_DEFAULT_CXXFLAGS="${SPC_DEFAULT_CFLAGS}" SPC_DEFAULT_LD_FLAGS="-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -Wl,-z,noexecstack -Wl,--gc-sections" ; upx executable path UPX_EXEC=${PKG_ROOT_PATH}/bin/upx @@ -122,7 +122,7 @@ SPC_CMD_VAR_PHP_EMBED_TYPE="static" ; EXTRA_CFLAGS for `configure` and `make` php SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fno-ident -fPIE -fvisibility=hidden -fvisibility-inlines-hidden ${SPC_DEFAULT_CFLAGS}" ; EXTRA_CXXFLAGS for `configure` and `make` php -SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fPIE -fvisibility=hidden -fvisibility-inlines-hidden ${SPC_DEFAULT_CXX_FLAGS}" +SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fPIE -fvisibility=hidden -fvisibility-inlines-hidden ${SPC_DEFAULT_CXXFLAGS}" ; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.so SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS="" @@ -143,7 +143,7 @@ AR=${SPC_DEFAULT_AR} LD=${SPC_DEFAULT_LD} ; default compiler flags, used in CMake toolchain file, openssl and pkg-config build SPC_DEFAULT_CFLAGS="--target=${MAC_ARCH}-apple-darwin -O3 -fno-plt -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffunction-sections -fdata-sections" -SPC_DEFAULT_CXX_FLAGS="${SPC_DEFAULT_CFLAGS}" +SPC_DEFAULT_CXXFLAGS="${SPC_DEFAULT_CFLAGS}" SPC_DEFAULT_LD_FLAGS="-Wl,-dead_strip" ; phpmicro patches, for more info, see: https://github.com/easysoft/phpmicro/tree/master/patches SPC_MICRO_PATCHES=cli_checks,macos_iconv @@ -160,7 +160,7 @@ SPC_CMD_VAR_PHP_EMBED_TYPE="static" ; EXTRA_CFLAGS for `configure` and `make` php SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS="-g -fstack-protector-strong -fpic -fpie -fvisibility=hidden -fvisibility-inlines-hidden -Werror=unknown-warning-option ${SPC_DEFAULT_CFLAGS}" ; EXTRA_CXXFLAGS for `configure` and `make` php -SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fpie -fvisibility=hidden -fvisibility-inlines-hidden -Werror=unknown-warning-option ${SPC_DEFAULT_CXX_FLAGS}" +SPC_CMD_VAR_PHP_MAKE_EXTRA_CXXFLAGS="-g -fstack-protector-strong -fno-ident -fpie -fvisibility=hidden -fvisibility-inlines-hidden -Werror=unknown-warning-option ${SPC_DEFAULT_CXXFLAGS}" ; EXTRA_LDFLAGS for `make` php, can use -release to set a soname for libphp.dylib SPC_CMD_VAR_PHP_MAKE_EXTRA_LDFLAGS="" ; minimum compatible macOS version (LLVM vars, availability not guaranteed) diff --git a/src/StaticPHP/Package/LibraryPackage.php b/src/StaticPHP/Package/LibraryPackage.php index 15f8824f..5d501299 100644 --- a/src/StaticPHP/Package/LibraryPackage.php +++ b/src/StaticPHP/Package/LibraryPackage.php @@ -142,8 +142,8 @@ class LibraryPackage extends Package // get environment variable $env = getenv($this->getSnakeCaseName() . '_CXXFLAGS') ?: ''; // get default cxx flags - $arch_cxx_flags = getenv('SPC_DEFAULT_CXX_FLAGS') ?: ''; - if (!empty(getenv('SPC_DEFAULT_CXX_FLAGS')) && !str_contains($env, $arch_cxx_flags)) { + $arch_cxx_flags = getenv('SPC_DEFAULT_CXXFLAGS') ?: ''; + if (!empty(getenv('SPC_DEFAULT_CXXFLAGS')) && !str_contains($env, $arch_cxx_flags)) { $env .= ' ' . $arch_cxx_flags; } return trim($env); diff --git a/src/StaticPHP/Toolchain/ZigToolchain.php b/src/StaticPHP/Toolchain/ZigToolchain.php index 23f1b92e..36e42d04 100644 --- a/src/StaticPHP/Toolchain/ZigToolchain.php +++ b/src/StaticPHP/Toolchain/ZigToolchain.php @@ -45,13 +45,13 @@ class ZigToolchain implements UnixToolchainInterface GlobalEnvManager::addPathIfNotExists($this->getPath()); f_passthru('ulimit -n 2048'); // zig opens extra file descriptors, so when a lot of extensions are built statically, 1024 is not enough $cflags = getenv('SPC_DEFAULT_CFLAGS') ?: ''; - $cxxflags = getenv('SPC_DEFAULT_CXX_FLAGS') ?: ''; + $cxxflags = getenv('SPC_DEFAULT_CXXFLAGS') ?: ''; $extraCflags = getenv('SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS') ?: ''; $cflags = trim($cflags . ' -Wno-date-time'); $cxxflags = trim($cxxflags . ' -Wno-date-time'); $extraCflags = trim($extraCflags . ' -Wno-date-time'); GlobalEnvManager::putenv("SPC_DEFAULT_CFLAGS={$cflags}"); - GlobalEnvManager::putenv("SPC_DEFAULT_CXX_FLAGS={$cxxflags}"); + GlobalEnvManager::putenv("SPC_DEFAULT_CXXFLAGS={$cxxflags}"); GlobalEnvManager::putenv("SPC_CMD_VAR_PHP_MAKE_EXTRA_CFLAGS={$extraCflags}"); GlobalEnvManager::putenv('RANLIB=zig-ranlib'); GlobalEnvManager::putenv('OBJCOPY=zig-objcopy');