Hide vendored HarfBuzz symbols on Apple (#4263)
This commit is contained in:
7
vendor/BUILD.bazel
vendored
7
vendor/BUILD.bazel
vendored
@@ -722,6 +722,13 @@ cc_library(
|
|||||||
# "HB_NO_WIN1256",
|
# "HB_NO_WIN1256",
|
||||||
"HB_TINY",
|
"HB_TINY",
|
||||||
],
|
],
|
||||||
|
# Keep bundled HarfBuzz symbols private so they do not interpose symbols from
|
||||||
|
# app dependencies. See https://github.com/maplibre/maplibre-native/issues/3777.
|
||||||
|
copts = select({
|
||||||
|
"@platforms//os:ios": ["-fvisibility=hidden"],
|
||||||
|
"@platforms//os:macos": ["-fvisibility=hidden"],
|
||||||
|
"//conditions:default": [],
|
||||||
|
}),
|
||||||
includes = [
|
includes = [
|
||||||
"freetype/include",
|
"freetype/include",
|
||||||
"harfbuzz/src",
|
"harfbuzz/src",
|
||||||
|
|||||||
6
vendor/harfbuzz.cmake
vendored
6
vendor/harfbuzz.cmake
vendored
@@ -15,6 +15,12 @@ if (MLN_TEXT_SHAPING_HARFBUZZ)
|
|||||||
target_include_directories(mbgl-harfbuzz PRIVATE ${CMAKE_CURRENT_LIST_DIR}/freetype/include)
|
target_include_directories(mbgl-harfbuzz PRIVATE ${CMAKE_CURRENT_LIST_DIR}/freetype/include)
|
||||||
target_compile_definitions(mbgl-harfbuzz PRIVATE -DHAVE_FREETYPE)
|
target_compile_definitions(mbgl-harfbuzz PRIVATE -DHAVE_FREETYPE)
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
# Keep bundled HarfBuzz symbols private so they do not interpose symbols from
|
||||||
|
# app dependencies. See https://github.com/maplibre/maplibre-native/issues/3777.
|
||||||
|
target_compile_options(mbgl-harfbuzz PRIVATE -fvisibility=hidden)
|
||||||
|
endif()
|
||||||
|
|
||||||
set_target_properties(
|
set_target_properties(
|
||||||
mbgl-harfbuzz
|
mbgl-harfbuzz
|
||||||
PROPERTIES
|
PROPERTIES
|
||||||
|
|||||||
Reference in New Issue
Block a user