aboutsummaryrefslogtreecommitdiff
path: root/src/libcxx.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2021-02-25 21:04:23 -0700
committerAndrew Kelley <andrew@ziglang.org>2021-02-25 21:04:23 -0700
commit0b58b617998b79a765b54f88fbe90ca2798b3d3e (patch)
treeca6cc4b6bcc2b93166d196049ee49416afe781ad /src/libcxx.zig
parentdc325669e360f7a9dfa24f85a62fa386529dade6 (diff)
parentfd208d9d5913a0929e444deb97b91092c427bb14 (diff)
downloadzig-0b58b617998b79a765b54f88fbe90ca2798b3d3e.tar.gz
zig-0b58b617998b79a765b54f88fbe90ca2798b3d3e.zip
Merge remote-tracking branch 'origin/master' into llvm12
Conflicts: * src/clang.zig * src/llvm.zig - this file got moved to src/llvm/bindings.zig in master branch so I had to put the new LLVM arch/os enum tags into it. * lib/std/target.zig, src/stage1/target.cpp - haiku had an inconsistency with its default target ABI, gnu vs eabi. In this commit we make it gnu in both places to match the latest changes by @hoanga. * src/translate_c.zig
Diffstat (limited to 'src/libcxx.zig')
-rw-r--r--src/libcxx.zig24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/libcxx.zig b/src/libcxx.zig
index 370f056185..916c3168d3 100644
--- a/src/libcxx.zig
+++ b/src/libcxx.zig
@@ -139,8 +139,6 @@ pub fn buildLibCXX(comp: *Compilation) !void {
try cflags.append("-I");
try cflags.append(cxxabi_include_path);
- try cflags.append("-O3");
- try cflags.append("-DNDEBUG");
if (target_util.supports_fpic(target)) {
try cflags.append("-fPIC");
}
@@ -163,18 +161,20 @@ pub fn buildLibCXX(comp: *Compilation) !void {
.root_name = root_name,
.root_pkg = null,
.output_mode = output_mode,
- .rand = comp.rand,
+ .thread_pool = comp.thread_pool,
.libc_installation = comp.bin_file.options.libc_installation,
.emit_bin = emit_bin,
- .optimize_mode = comp.bin_file.options.optimize_mode,
+ .optimize_mode = comp.compilerRtOptMode(),
.link_mode = link_mode,
.want_sanitize_c = false,
.want_stack_check = false,
+ .want_red_zone = comp.bin_file.options.red_zone,
.want_valgrind = false,
+ .want_tsan = comp.bin_file.options.tsan,
.want_pic = comp.bin_file.options.pic,
.want_pie = comp.bin_file.options.pie,
.emit_h = null,
- .strip = comp.bin_file.options.strip,
+ .strip = comp.compilerRtStrip(),
.is_native_os = comp.bin_file.options.is_native_os,
.is_native_abi = comp.bin_file.options.is_native_abi,
.self_exe_path = comp.self_exe_path,
@@ -189,6 +189,7 @@ pub fn buildLibCXX(comp: *Compilation) !void {
.verbose_llvm_cpu_features = comp.verbose_llvm_cpu_features,
.clang_passthrough_mode = comp.clang_passthrough_mode,
.link_libc = true,
+ .skip_linker_dependencies = true,
});
defer sub_compilation.destroy();
@@ -256,16 +257,12 @@ pub fn buildLibCXXABI(comp: *Compilation) !void {
try cflags.append("-I");
try cflags.append(cxx_include_path);
- try cflags.append("-O3");
- try cflags.append("-DNDEBUG");
if (target_util.supports_fpic(target)) {
try cflags.append("-fPIC");
}
try cflags.append("-nostdinc++");
try cflags.append("-fstrict-aliasing");
try cflags.append("-funwind-tables");
- try cflags.append("-D_DEBUG");
- try cflags.append("-UNDEBUG");
try cflags.append("-std=c++11");
c_source_files[i] = .{
@@ -282,18 +279,20 @@ pub fn buildLibCXXABI(comp: *Compilation) !void {
.root_name = root_name,
.root_pkg = null,
.output_mode = output_mode,
- .rand = comp.rand,
+ .thread_pool = comp.thread_pool,
.libc_installation = comp.bin_file.options.libc_installation,
.emit_bin = emit_bin,
- .optimize_mode = comp.bin_file.options.optimize_mode,
+ .optimize_mode = comp.compilerRtOptMode(),
.link_mode = link_mode,
.want_sanitize_c = false,
.want_stack_check = false,
+ .want_red_zone = comp.bin_file.options.red_zone,
.want_valgrind = false,
+ .want_tsan = comp.bin_file.options.tsan,
.want_pic = comp.bin_file.options.pic,
.want_pie = comp.bin_file.options.pie,
.emit_h = null,
- .strip = comp.bin_file.options.strip,
+ .strip = comp.compilerRtStrip(),
.is_native_os = comp.bin_file.options.is_native_os,
.is_native_abi = comp.bin_file.options.is_native_abi,
.self_exe_path = comp.self_exe_path,
@@ -308,6 +307,7 @@ pub fn buildLibCXXABI(comp: *Compilation) !void {
.verbose_llvm_cpu_features = comp.verbose_llvm_cpu_features,
.clang_passthrough_mode = comp.clang_passthrough_mode,
.link_libc = true,
+ .skip_linker_dependencies = true,
});
defer sub_compilation.destroy();