Merge pull request #24103 from nxhack/php8-intl-icu75
php8: Support for icu 75
This commit is contained in:
commit
904b8814de
|
@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=php
|
||||
PKG_VERSION:=8.3.6
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
|
||||
PKG_LICENSE:=PHP-3.01
|
||||
|
@ -299,7 +299,6 @@ endif
|
|||
|
||||
ifneq ($(SDK)$(CONFIG_PACKAGE_php8-mod-intl),)
|
||||
CONFIGURE_ARGS+= --enable-intl=shared
|
||||
TARGET_CXXFLAGS+= -std=c++0x
|
||||
else
|
||||
CONFIGURE_ARGS+= --disable-intl
|
||||
endif
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
From e680bd98d34a86302db434c5be23d0cf9d23df23 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Beich <jbeich@FreeBSD.org>
|
||||
Date: Sat, 20 Apr 2024 23:49:22 +0200
|
||||
Subject: devel/php*-intl: unbreak build with ICU 75
|
||||
|
||||
In file included from ext/intl/intl_convertcpp.cpp:17:
|
||||
In file included from ./intl_convertcpp.h:22:
|
||||
In file included from /usr/local/include/unicode/unistr.h:39:
|
||||
/usr/local/include/unicode/stringpiece.h:133:29: error: no template named 'enable_if_t' in namespace 'std'
|
||||
typename = std::enable_if_t<
|
||||
~~~~~^
|
||||
/usr/local/include/unicode/stringpiece.h:134:23: error: no template named 'is_same_v' in namespace 'std'; did you mean 'is_same'?
|
||||
(std::is_same_v<decltype(T().data()), const char*>
|
||||
~~~~~^
|
||||
/usr/include/c++/v1/__type_traits/is_same.h:22:29: note: 'is_same' declared here
|
||||
struct _LIBCPP_TEMPLATE_VIS is_same : _BoolConstant<__is_same(_Tp, _Up)> { };
|
||||
^
|
||||
In file included from ext/intl/intl_convertcpp.cpp:17:
|
||||
In file included from ./intl_convertcpp.h:22:
|
||||
In file included from /usr/local/include/unicode/unistr.h:39:
|
||||
/usr/local/include/unicode/stringpiece.h:139:17: error: use of address-of-label extension outside of a function body
|
||||
std::is_same_v<decltype(T().size()), size_t>>>
|
||||
^
|
||||
/usr/local/include/unicode/stringpiece.h:139:62: error: expected member name or ';' after declaration specifiers
|
||||
std::is_same_v<decltype(T().size()), size_t>>>
|
||||
^
|
||||
PR: 278420
|
||||
Reported by: antoine (via exp-run)
|
||||
---
|
||||
|
||||
--- a/ext/intl/config.m4
|
||||
+++ b/ext/intl/config.m4
|
||||
@@ -80,7 +80,16 @@ if test "$PHP_INTL" != "no"; then
|
||||
breakiterator/codepointiterator_methods.cpp"
|
||||
|
||||
PHP_REQUIRE_CXX()
|
||||
- PHP_CXX_COMPILE_STDCXX(11, mandatory, PHP_INTL_STDCXX)
|
||||
+
|
||||
+ AC_MSG_CHECKING([if intl requires -std=gnu++17])
|
||||
+ AS_IF([test "$PKG_CONFIG icu-uc --atleast-version=74"],[
|
||||
+ AC_MSG_RESULT([yes])
|
||||
+ PHP_CXX_COMPILE_STDCXX(17, mandatory, PHP_INTL_STDCXX)
|
||||
+ ],[
|
||||
+ AC_MSG_RESULT([no])
|
||||
+ PHP_CXX_COMPILE_STDCXX(11, mandatory, PHP_INTL_STDCXX)
|
||||
+ ])
|
||||
+
|
||||
PHP_INTL_CXX_FLAGS="$INTL_COMMON_FLAGS $PHP_INTL_STDCXX $ICU_CXXFLAGS"
|
||||
case $host_alias in
|
||||
*cygwin*) PHP_INTL_CXX_FLAGS="$PHP_INTL_CXX_FLAGS -D_POSIX_C_SOURCE=200809L"
|
Loading…
Reference in New Issue