@@ -61,11 +61,6 @@ public function __construct(array $options = [])
6161 */
6262 public function buildPHP (int $ build_target = BUILD_TARGET_NONE ): void
6363 {
64- // ---------- Update extra-libs ----------
65- $ extra_libs = getenv ('SPC_EXTRA_LIBS ' ) ?: '' ;
66- $ extra_libs .= (empty ($ extra_libs ) ? '' : ' ' ) . implode (' ' , $ this ->getAllStaticLibFiles ());
67- f_putenv ('SPC_EXTRA_LIBS= ' . $ extra_libs );
68-
6964 $ enableCli = ($ build_target & BUILD_TARGET_CLI ) === BUILD_TARGET_CLI ;
7065 $ enableFpm = ($ build_target & BUILD_TARGET_FPM ) === BUILD_TARGET_FPM ;
7166 $ enableMicro = ($ build_target & BUILD_TARGET_MICRO ) === BUILD_TARGET_MICRO ;
@@ -162,8 +157,10 @@ public function buildCli(): void
162157 {
163158 SourcePatcher::patchWindowsCLITarget ();
164159
160+ $ extra_libs = getenv ('SPC_EXTRA_LIBS ' ) ?: '' ;
161+
165162 // add nmake wrapper
166- FileSystem::writeFile (SOURCE_PATH . '\php-src\nmake_cli_wrapper.bat ' , "nmake /nologo LIBS_CLI= \"{ $ this -> getOption ( ' extra-libs ' )} ws2_32.lib shell32.lib \" EXTRA_LD_FLAGS_PROGRAM= %* " );
163+ FileSystem::writeFile (SOURCE_PATH . '\php-src\nmake_cli_wrapper.bat ' , "nmake /nologo LIBS_CLI= \"ws2_32.lib shell32.lib { $ extra_libs } \" EXTRA_LD_FLAGS_PROGRAM= %* " );
167164
168165 cmd ()->cd (SOURCE_PATH . '\php-src ' )->exec ("{$ this ->sdk_prefix } nmake_cli_wrapper.bat --task-args php.exe " );
169166
@@ -197,9 +194,11 @@ public function buildMicro(): void
197194 }
198195 FileSystem::writeFile (SOURCE_PATH . '\php-src\Makefile ' , $ makefile );
199196
197+ $ extra_libs = getenv ('SPC_EXTRA_LIBS ' ) ?: '' ;
198+
200199 // add nmake wrapper
201200 $ fake_cli = $ this ->getOption ('with-micro-fake-cli ' , false ) ? ' /DPHP_MICRO_FAKE_CLI" ' : '' ;
202- $ wrapper = "nmake /nologo LIBS_MICRO= \"{ $ this -> getOption ( ' extra-libs ' )} ws2_32.lib shell32.lib \" CFLAGS_MICRO= \"/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 {$ fake_cli }\" %* " ;
201+ $ wrapper = "nmake /nologo LIBS_MICRO= \"ws2_32.lib shell32.lib { $ extra_libs } \" CFLAGS_MICRO= \"/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 {$ fake_cli }\" %* " ;
203202 FileSystem::writeFile (SOURCE_PATH . '\php-src\nmake_micro_wrapper.bat ' , $ wrapper );
204203
205204 // phar patch for micro
0 commit comments