@@ -48,7 +48,7 @@ if [ -z "${PHP_VERSION}" ]; then
4848 export PHP_VERSION=" 8.4"
4949fi
5050# default extension set
51- defaultExtensions=" apcu,bcmath,bz2,calendar,ctype,curl,dba,dom,exif,fileinfo,filter,ftp,gd,gmp,gettext,iconv,igbinary,imagick,intl,ldap,mbregex,mbstring,mysqli,mysqlnd,opcache,openssl,parallel,pcntl,pdo,pdo_mysql,pdo_pgsql,pdo_sqlite,pgsql,phar,posix,protobuf,readline,redis,session,shmop,simplexml,soap,sockets,sodium,sqlite3,ssh2,sysvmsg,sysvsem,sysvshm,tidy,tokenizer,xlswriter,xml,xmlreader,xmlwriter,zip,zlib,yaml,zstd"
51+ defaultExtensions=" apcu,bcmath,bz2,calendar,ctype,curl,dba,dom,exif,ffi, fileinfo,filter,ftp,gd,gmp,gettext,iconv,igbinary,imagick,intl,ldap,mbregex,mbstring,mysqli,mysqlnd,opcache,openssl,parallel,pcntl,pdo,pdo_mysql,pdo_pgsql,pdo_sqlite,pgsql,phar,posix,protobuf,readline,redis,session,shmop,simplexml,soap,sockets,sodium,sqlite3,ssh2,sysvmsg,sysvsem,sysvshm,tidy,tokenizer,xlswriter,xml,xmlreader,xmlwriter,zip,zlib,yaml,zstd"
5252defaultExtensionLibs=" bzip2,freetype,libavif,libjpeg,liblz4,libwebp,libzip,nghttp2"
5353
5454md5binary=" md5sum"
@@ -226,12 +226,19 @@ if [ "${os}" = "mac" ]; then
226226elif [ " ${os} " = " linux" ] && [ -z " ${DEBUG_SYMBOLS} " ]; then
227227 CGO_LDFLAGS=" -Wl,-O1 -pie"
228228fi
229+ if [ " ${os} " = " linux" ] && [ " ${SPC_LIBC} " = " glibc" ]; then
230+ CGO_LDFLAGS=" ${CGO_LDFLAGS} -Wl,--allow-multiple-definition -Wl,--export-dynamic"
231+ fi
229232
230233CGO_LDFLAGS=" ${CGO_LDFLAGS} ${PWD} /buildroot/lib/libbrotlicommon.a ${PWD} /buildroot/lib/libbrotlienc.a ${PWD} /buildroot/lib/libbrotlidec.a ${PWD} /buildroot/lib/libwatcher-c.a $( ${spcCommand} spc-config " ${PHP_EXTENSIONS} " --with-libs=" ${PHP_EXTENSION_LIBS} " --libs) "
231234if [ " ${os} " = " linux" ]; then
232235 if echo " ${PHP_EXTENSIONS} " | grep -qE " \b(intl|imagick|grpc|v8js|protobuf|mongodb|tbb)\b" ; then
233236 CGO_LDFLAGS=" ${CGO_LDFLAGS} -lstdc++"
234237 fi
238+ if [ " ${SPC_LIBC} " = " glibc" ]; then
239+ CGO_LDFLAGS=$( echo " $CGO_LDFLAGS " | sed ' s|-lphp|-Wl,--whole-archive -lphp -Wl,--no-whole-archive|g' )
240+ ar d ${PWD} /buildroot/lib/libphp.a $( ar t ${PWD} /buildroot/lib/libphp.a | grep ' \.a$' )
241+ fi
235242fi
236243
237244export CGO_LDFLAGS
0 commit comments