mirror of
https://git.freebsd.org/ports.git
synced 2025-07-07 12:29:16 -04:00
PR: 284316 Reported by: diizzy Obtained from: https://cgit.freebsd.org/ports/tree/www/chromium?id=ca048c2884dc9822310a87e2dfebb8b1647095e2
37 lines
1.5 KiB
Text
37 lines
1.5 KiB
Text
--- build/linux/unbundle/icu.gn.orig 2024-11-06 12:34:11 UTC
|
|
+++ build/linux/unbundle/icu.gn
|
|
@@ -17,6 +17,15 @@ config("icu_config") {
|
|
"USING_SYSTEM_ICU=1",
|
|
"ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC",
|
|
|
|
+ # As of icu 73 C++ nullptr, char16_t, override, final and noexcept are used
|
|
+ # instead of defines. These definitions can be removed when the bundled icu
|
|
+ # gets updated to 73. For more details, see:
|
|
+ # https://unicode-org.atlassian.net/browse/ICU-21833 and
|
|
+ # https://github.com/unicode-org/icu/commit/28643799377ecf654564f6f31854b02788cebe33
|
|
+ "U_FINAL=final",
|
|
+ "U_NOEXCEPT=noexcept",
|
|
+ "U_OVERRIDE=override",
|
|
+
|
|
# U_EXPORT (defined in unicode/platform.h) is used to set public visibility
|
|
# on classes through the U_COMMON_API and U_I18N_API macros (among others).
|
|
# When linking against the system ICU library, we want its symbols to have
|
|
@@ -35,6 +44,18 @@ config("icu_config") {
|
|
# please see: https://crbug.com/822820
|
|
"U_IMPORT=U_EXPORT",
|
|
]
|
|
+
|
|
+ _icu_version = exec_script(pkg_config_script,
|
|
+ common_pkg_config_args + pkg_config_args + [
|
|
+ "icu-i18n",
|
|
+ "--version-as-components",
|
|
+ ],
|
|
+ "value")
|
|
+
|
|
+ # Unbreak with icu 76 where private symbols are picked up
|
|
+ if (_icu_version[0] >= 76) {
|
|
+ defines += [ "U_HIDE_DRAFT_API" ]
|
|
+ }
|
|
}
|
|
|
|
pkg_config("system_icui18n") {
|