diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch')
-rw-r--r-- | meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch new file mode 100644 index 000000000..deada1ff9 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch @@ -0,0 +1,111 @@ +From: Hugh McMaster <hugh.mcmaster@outlook.com> +Date: Wed, 5 Dec 2018 23:27:30 +1100 +Subject: ext/intl: Use pkg-config to detect icu + +The developers of icu recommend using pkg-config to detect icu, +because icu-config is deprecated. +--- + acinclude.m4 | 56 +++++++----------------------------------------------- + ext/intl/config.m4 | 16 ++++++---------- + 2 files changed, 13 insertions(+), 59 deletions(-) + +--- php7.3.orig/acinclude.m4 ++++ php7.3/acinclude.m4 +@@ -2168,58 +2168,16 @@ dnl + dnl Common setup macro for ICU + dnl + AC_DEFUN([PHP_SETUP_ICU],[ +- PHP_ARG_WITH(icu-dir,, +- [ --with-icu-dir=DIR Specify where ICU libraries and headers can be found], DEFAULT, no) ++ PKG_CHECK_MODULES([ICU], [icu-io >= 50.1]) + +- if test "$PHP_ICU_DIR" = "no"; then +- PHP_ICU_DIR=DEFAULT +- fi +- +- if test "$PHP_ICU_DIR" = "DEFAULT"; then +- dnl Try to find icu-config +- AC_PATH_PROG(ICU_CONFIG, icu-config, no, [$PATH:/usr/local/bin]) +- else +- ICU_CONFIG="$PHP_ICU_DIR/bin/icu-config" +- fi +- +- AC_MSG_CHECKING([for location of ICU headers and libraries]) +- +- dnl Trust icu-config to know better what the install prefix is.. +- icu_install_prefix=`$ICU_CONFIG --prefix 2> /dev/null` +- if test "$?" != "0" || test -z "$icu_install_prefix"; then +- AC_MSG_RESULT([not found]) +- AC_MSG_ERROR([Unable to detect ICU prefix or $ICU_CONFIG failed. Please verify ICU install prefix and make sure icu-config works.]) +- else +- AC_MSG_RESULT([$icu_install_prefix]) +- +- dnl Check ICU version +- AC_MSG_CHECKING([for ICU 4.0 or greater]) +- icu_version_full=`$ICU_CONFIG --version` +- ac_IFS=$IFS +- IFS="." +- set $icu_version_full +- IFS=$ac_IFS +- icu_version=`expr [$]1 \* 1000 + [$]2` +- AC_MSG_RESULT([found $icu_version_full]) +- +- if test "$icu_version" -lt "4000"; then +- AC_MSG_ERROR([ICU version 4.0 or later is required]) +- fi ++ PHP_EVAL_INCLINE($ICU_CFLAGS) ++ PHP_EVAL_LIBLINE($ICU_LIBS, $1) + +- ICU_VERSION=$icu_version +- ICU_INCS=`$ICU_CONFIG --cppflags-searchpath` +- ICU_LIBS=`$ICU_CONFIG --ldflags --ldflags-icuio` +- PHP_EVAL_INCLINE($ICU_INCS) +- PHP_EVAL_LIBLINE($ICU_LIBS, $1) ++ ICU_CFLAGS="$ICU_CFLAGS -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1" ++ ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit" + +- ICU_CXXFLAGS=`$ICU_CONFIG --cxxflags` +- if test "$icu_version" -ge "49000"; then +- ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit" +- ICU_CFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1" +- fi +- if test "$icu_version" -ge "60000"; then +- ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1" +- fi ++ if $PKG_CONFIG icu-io --atleast-version=60; then ++ ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1" + fi + ]) + +--- php7.3.orig/ext/intl/config.m4 ++++ php7.3/ext/intl/config.m4 +@@ -9,15 +9,7 @@ if test "$PHP_INTL" != "no"; then + PHP_SETUP_ICU(INTL_SHARED_LIBADD) + PHP_SUBST(INTL_SHARED_LIBADD) + PHP_REQUIRE_CXX() +- INTL_COMMON_FLAGS="$ICU_INCS $ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1" +- if test "$icu_version" -ge "4002"; then +- icu_spoof_src=" spoofchecker/spoofchecker_class.c \ +- spoofchecker/spoofchecker.c\ +- spoofchecker/spoofchecker_create.c\ +- spoofchecker/spoofchecker_main.c" +- else +- icu_spoof_src="" +- fi ++ INTL_COMMON_FLAGS="$ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1" + PHP_NEW_EXTENSION(intl, php_intl.c \ + intl_error.c \ + intl_convert.c \ +@@ -68,7 +60,11 @@ if test "$PHP_INTL" != "no"; then + transliterator/transliterator_methods.c \ + uchar/uchar.c \ + idn/idn.c \ +- $icu_spoof_src, $ext_shared,,$INTL_COMMON_FLAGS,cxx) ++ spoofchecker/spoofchecker_class.c \ ++ spoofchecker/spoofchecker.c\ ++ spoofchecker/spoofchecker_create.c\ ++ spoofchecker/spoofchecker_main.c \ ++ , $ext_shared,,$INTL_COMMON_FLAGS,cxx) + + PHP_INTL_CXX_SOURCES="intl_convertcpp.cpp \ + common/common_enum.cpp \ |