aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsvidyuk <svidyuk@yandex-team.ru>2022-04-21 14:34:16 +0300
committersvidyuk <svidyuk@yandex-team.ru>2022-04-21 14:34:16 +0300
commit5926422543ed5e7d138866d5cd01f6f1af0221dc (patch)
tree9c521ff49013aa4843bd3c1714dac77ce79d8702
parent0c653b1c5be7c8acb9de91ef3c1fe5595589e1d0 (diff)
downloadydb-5926422543ed5e7d138866d5cd01f6f1af0221dc.tar.gz
On demand disable macos/ios fat object symbols hiding
DEVTOOLSSUPPORT-8463 ref:a4dd8d6107fb01db6d38f8d9aeeb3584e246828c
-rw-r--r--build/ymake.core.conf9
1 files changed, 9 insertions, 0 deletions
diff --git a/build/ymake.core.conf b/build/ymake.core.conf
index 308ea7c1d08..ea7cbfd5760 100644
--- a/build/ymake.core.conf
+++ b/build/ymake.core.conf
@@ -2659,6 +2659,11 @@ FAT_OBJECT_SEM=add_fat_object ${MODDIR} ${CMAKE_TARGET_NAME} ${hide:TARGET} ${hi
&& set_global_flags FAT_OBJECT_PREFIX ${MODULE_PREFIX} \
&& set_global_flags FAT_OBJECT_SUFFIX ${MODULE_SUFFIX}
+### Do not turn visibility=hidden symbos into static symbos of partially linked object file
+###
+### Note: This variable do not have any effect on platforms other than MacOS and iOS.
+KEEP_FAT_OBJECT_SYMBOLS=no
+
### @usage: FAT_OBJECT()
###
### The "fat" object module. It will contain all its transitive dependencies reachable by PEERDIRs:
@@ -2681,6 +2686,10 @@ module FAT_OBJECT: LIBRARY {
MODULE_SUFFIX=.o
}
+ when (($OS_DARWIN == "yes" || $OS_IOS == "yes") && $KEEP_FAT_OBJECT_SYMBOLS == "yes") {
+ LDFLAGS_GLOBAL += -keep_private_externs
+ }
+
_USE_LINKER()
# This module requires at least one .o which is not subject to removal so just add _fake_src.cpp as SRCS