aboutsummaryrefslogtreecommitdiff
path: root/src/libcxx.zig
diff options
context:
space:
mode:
authorxavier <xavierb@gmail.com>2021-05-23 16:53:47 +0200
committerxavier <xavierb@gmail.com>2021-05-23 19:58:38 +0200
commita6e65f3a0ea4f8315be50f91338e4526b006f9d8 (patch)
treedebe95e917c255012bb755354fff2d2fd34bcb31 /src/libcxx.zig
parent40d8518253c2566fe9ba947c2e1fbce160a55940 (diff)
downloadzig-a6e65f3a0ea4f8315be50f91338e4526b006f9d8.tar.gz
zig-a6e65f3a0ea4f8315be50f91338e4526b006f9d8.zip
keep statically linked libc++ symbols hidden.
Diffstat (limited to 'src/libcxx.zig')
-rw-r--r--src/libcxx.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libcxx.zig b/src/libcxx.zig
index 39c5fabedd..4816637e2d 100644
--- a/src/libcxx.zig
+++ b/src/libcxx.zig
@@ -129,6 +129,8 @@ pub fn buildLibCXX(comp: *Compilation) !void {
try cflags.append("-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS");
try cflags.append("-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS");
try cflags.append("-D_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS");
+ try cflags.append("-fvisibility=hidden");
+ try cflags.append("-fvisibility-inlines-hidden");
if (target.abi.isMusl()) {
try cflags.append("-D_LIBCPP_HAS_MUSL_LIBC");
@@ -144,7 +146,6 @@ pub fn buildLibCXX(comp: *Compilation) !void {
try cflags.append("-fPIC");
}
try cflags.append("-nostdinc++");
- try cflags.append("-fvisibility-inlines-hidden");
try cflags.append("-std=c++14");
try cflags.append("-Wno-user-defined-literals");
@@ -249,6 +250,8 @@ pub fn buildLibCXXABI(comp: *Compilation) !void {
try cflags.append("-D_LIBCXXABI_BUILDING_LIBRARY");
try cflags.append("-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS");
try cflags.append("-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS");
+ try cflags.append("-fvisibility=hidden");
+ try cflags.append("-fvisibility-inlines-hidden");
if (target.abi.isMusl()) {
try cflags.append("-D_LIBCPP_HAS_MUSL_LIBC");