Index: build/config/gcc/BUILD.gn |
diff --git a/build/config/gcc/BUILD.gn b/build/config/gcc/BUILD.gn |
index 2c1c61f6afd10d7ad439155642da1576cd47fd5e..c7afcdf544f2b5ad1799cc922ff7ba13f7344a30 100644 |
--- a/build/config/gcc/BUILD.gn |
+++ b/build/config/gcc/BUILD.gn |
@@ -18,7 +18,14 @@ import("//build/toolchain/toolchain.gni") |
config("symbol_visibility_hidden") { |
# Note that -fvisibility-inlines-hidden is set globally in the compiler |
# config since that can almost always be applied. |
- cflags = [ "-fvisibility=hidden" ] |
+ |
+ # XCTests inject a dynamic library into an iOS application. If fvisibility |
+ # is set to hidden, then some symbols from the application needed by XCTests |
+ # may not be available. XCTests are used for iOS integration tests. Make sure |
+ # all symbols are exported for Debug configurations on iOS. |
+ if (!is_ios || !is_debug) { |
+ cflags = [ "-fvisibility=hidden" ] |
+ } |
} |
# The rpath is the dynamic library search path. Setting this config on a link |