mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-01 21:23:51 -09:00
package/xerces: fix build with recent versions of ICU
Since Buildroot commit dcee99507c in
2025.11-rc1 that bumped package/icu to version 77-1, the build of xerces
with ICU support enabled fails:
In file included from /home/bernd/buildroot/output/host/i586-buildroot-linux-gnu/sysroot/usr/include/unicode/uset.h:38,
from /home/bernd/buildroot/output/build/xerces-3.3.0/src/xercesc/util/regx/RangeToken.cpp:40:
/home/bernd/buildroot/output/host/i586-buildroot-linux-gnu/sysroot/usr/include/unicode/char16ptr.h:271:55:
error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
Indeed, ICU now requires C++17. Instead of using a patch from Gentoo[1]
we use a backported upstream commit, limited to CMakeLists.txt, to raise
the c++ version.
The build error was not recorded yet by the autobuilders but can be
reproduced with this defconfig:
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_PACKAGE_XERCES=y
BR2_PACKAGE_ICU=y
[1] https://bugs.gentoo.org/931105
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Arnout Vandecappelle <arnout@rnout.be>
This commit is contained in:
committed by
Arnout Vandecappelle
parent
513f800cf3
commit
7d4e403f02
@@ -0,0 +1,32 @@
|
|||||||
|
From 6883e346fa88f48022edf84328a09a4653b8c2fe Mon Sep 17 00:00:00 2001
|
||||||
|
From: Roger Leigh <rleigh@codelibre.net>
|
||||||
|
Date: Sat, 10 Mar 2018 21:27:27 +0000
|
||||||
|
Subject: [PATCH] XERCESC-2141: Enable C++17, C++14 or C++11 when available
|
||||||
|
|
||||||
|
Upstream: https://github.com/apache/xerces-c/commit/6883e346fa88f48022edf84328a09a4653b8c2fe
|
||||||
|
|
||||||
|
[Bernd: rebased for version 3.3.0, limited to CMakeLists.txt]
|
||||||
|
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 4 +-
|
||||||
|
configure.ac | 9 +
|
||||||
|
m4/ax_cxx_compile_stdcxx.m4 | 982 ++++++++++++++++++++++++++++++++++++
|
||||||
|
3 files changed, 993 insertions(+), 2 deletions(-)
|
||||||
|
create mode 100644 m4/ax_cxx_compile_stdcxx.m4
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 4254f89bb..f5cdb55cc 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -32,9 +32,9 @@ if (POLICY CMP0067)
|
||||||
|
|
||||||
|
cmake_minimum_required(VERSION 3.12.0)
|
||||||
|
|
||||||
|
-# Try C++14, then fall back to C++11 and C++98. Used for feature tests
|
||||||
|
+# Try C++17, then fall back to C++14, C++11 then C++98. Used for feature tests
|
||||||
|
# for optional features.
|
||||||
|
-set(CMAKE_CXX_STANDARD 14)
|
||||||
|
+set(CMAKE_CXX_STANDARD 17)
|
||||||
|
|
||||||
|
# Use folders (for IDE project grouping)
|
||||||
|
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||||
Reference in New Issue
Block a user