From a7fa5f07942d358d7723129df9148432e9609e58 Mon Sep 17 00:00:00 2001 From: Bernd Kuhls Date: Sun, 31 May 2015 13:29:42 +0200 Subject: [PATCH] package/php: Fix static linking by reworking static libs handling Fixes http://autobuild.buildroot.net/results/157/157749f8b44bc02fbed0232a2b33137aba495134/ http://autobuild.buildroot.net/results/df4/df4e2ea098b0126867455af1891837c6d7d99a92/ http://autobuild.buildroot.net/results/e69/e6993d66aeebbe994063a60871412b2235ce5455/ [Peter: unixodbc only needs -lpthread if toolchain has threads support] Signed-off-by: Bernd Kuhls Signed-off-by: Peter Korsgaard --- package/php/php.mk | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/package/php/php.mk b/package/php/php.mk index 89d22aa04..c9bcfe30e 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -25,6 +25,10 @@ PHP_CONF_ENV = \ ac_cv_func_strcasestr=yes \ EXTRA_LIBS="$(PHP_EXTRA_LIBS)" +ifeq ($(BR2_STATIC_LIBS),y) +PHP_CONF_ENV += LIBS="$(PHP_STATIC_LIBS)" +endif + ifeq ($(BR2_TARGET_LOCALTIME),) PHP_LOCALTIME = UTC else @@ -112,9 +116,7 @@ PHP_CONF_OPTS += --with-openssl=$(STAGING_DIR)/usr PHP_DEPENDENCIES += openssl # openssl needs zlib, but the configure script forgets to link against # it causing detection failures with static linking -ifeq ($(BR2_STATIC_LIBS),y) -PHP_CONF_ENV += LIBS='-lz' -endif +PHP_STATIC_LIBS += $(shell $(PKG_CONFIG_HOST_BINARY) --libs --static openssl) endif ifeq ($(BR2_PACKAGE_PHP_EXT_LIBXML2),y) @@ -185,6 +187,7 @@ endif ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y) PHP_CONF_OPTS += --with-sqlite3=$(STAGING_DIR)/usr PHP_DEPENDENCIES += sqlite +PHP_STATIC_LIBS += $(shell $(PKG_CONFIG_HOST_BINARY) --libs --static sqlite3) endif ### PDO @@ -206,6 +209,9 @@ endif ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_UNIXODBC),y) PHP_CONF_OPTS += --with-pdo-odbc=unixODBC,$(STAGING_DIR)/usr PHP_DEPENDENCIES += unixodbc +ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) +PHP_STATIC_LIBS += -lpthread +endif endif endif