summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBernd Kuhls <bernd.kuhls@t-online.de>2017-06-10 10:43:33 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-06-10 23:03:52 +0200
commit214a76d045f906c1a8d687b7c7e7bc85c5b09906 (patch)
treeab1f6a08c765c18861903897c8e96dedc7a5d1c6
parent2af5c1ff75932eb78a4ecd9b98148ae69867d12a (diff)
downloadbuildroot-214a76d045f906c1a8d687b7c7e7bc85c5b09906.tar.gz
buildroot-214a76d045f906c1a8d687b7c7e7bc85c5b09906.zip
package/php: fix icu support
Propagate icu reverse dependencies. Php lacks "-std=c++11", provided by icu-config, when compiling icu support leading to a build failure: /home/peko/autobuild/instance-1/output/host/usr/sh4-buildroot-linux-uclibc/sysroot/usr/include/unicode/umachine.h:347:13: error: 'char16_t' does not name a type typedef char16_t UChar; Fixes http://autobuild.buildroot.net/results/238/238d0e4bb205c0e7288903c6498e6c1787d86a1b/ Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-rw-r--r--package/php/Config.ext9
-rw-r--r--package/php/php.mk4
2 files changed, 10 insertions, 3 deletions
diff --git a/package/php/Config.ext b/package/php/Config.ext
index 43cc4b3289..bb6ada6a91 100644
--- a/package/php/Config.ext
+++ b/package/php/Config.ext
@@ -180,17 +180,22 @@ config BR2_PACKAGE_PHP_EXT_ICONV
config BR2_PACKAGE_PHP_EXT_INTL
bool "intl"
+ depends on BR2_HOST_GCC_AT_LEAST_4_8 # icu
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # icu
depends on !BR2_BINFMT_FLAT # icu
depends on BR2_TOOLCHAIN_HAS_THREADS # icu
select BR2_PACKAGE_ICU
help
Internationalization support
-comment "intl support needs a toolchain w/ C++, wchar, threads"
+comment "intl support needs a toolchain w/ C++, wchar, threads, gcc >= 4.8, host gcc >= 4.8"
depends on !BR2_BINFMT_FLAT
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS || \
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
+ !BR2_HOST_GCC_AT_LEAST_4_8
config BR2_PACKAGE_PHP_EXT_MBSTRING
bool "mbstring"
diff --git a/package/php/php.mk b/package/php/php.mk
index ed12dd354a..fe531a4ae9 100644
--- a/package/php/php.mk
+++ b/package/php/php.mk
@@ -55,6 +55,7 @@ endif
PHP_CONFIG_SCRIPTS = php-config
PHP_CFLAGS = $(TARGET_CFLAGS)
+PHP_CXXFLAGS = $(TARGET_CXXFLAGS)
# The OPcache extension isn't cross-compile friendly
# Throw some defines here to avoid patching heavily
@@ -173,6 +174,7 @@ endif
ifeq ($(BR2_PACKAGE_PHP_EXT_INTL),y)
PHP_CONF_OPTS += --enable-intl --with-icu-dir=$(STAGING_DIR)/usr
+PHP_CXXFLAGS += "`$(STAGING_DIR)/usr/bin/icu-config --cxxflags`"
PHP_DEPENDENCIES += icu
# The intl module is implemented in C++, but PHP fails to use
# g++ as the compiler for the final link. As a workaround,
@@ -343,6 +345,6 @@ endef
PHP_POST_INSTALL_TARGET_HOOKS += PHP_INSTALL_FIXUP
-PHP_CONF_ENV += CFLAGS="$(PHP_CFLAGS)"
+PHP_CONF_ENV += CFLAGS="$(PHP_CFLAGS)" CXXFLAGS="$(PHP_CXXFLAGS)"
$(eval $(autotools-package))
OpenPOWER on IntegriCloud