aboutsummaryrefslogtreecommitdiff
path: root/src/Compilation.zig
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alex@alexrp.com>2024-11-02 11:58:23 +0100
committerAlex Rønne Petersen <alex@alexrp.com>2024-11-03 09:29:33 +0100
commit3a2647b7d3b68fe32bab488f1fa8eaa1ec57f31a (patch)
treefd4b38ab1feb288b58ec6588246d2e9c91b942dc /src/Compilation.zig
parent4c70aea460d0cf4a5c1f77ec662837680e272220 (diff)
downloadzig-3a2647b7d3b68fe32bab488f1fa8eaa1ec57f31a.tar.gz
zig-3a2647b7d3b68fe32bab488f1fa8eaa1ec57f31a.zip
glibc: Don't build CRT objects that won't be used.
Diffstat (limited to 'src/Compilation.zig')
-rw-r--r--src/Compilation.zig4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Compilation.zig b/src/Compilation.zig
index 6d7097e5fa..51877d7973 100644
--- a/src/Compilation.zig
+++ b/src/Compilation.zig
@@ -1795,8 +1795,8 @@ pub fn create(gpa: Allocator, arena: Allocator, options: CreateOptions) !*Compil
.{ .glibc_crt_file = .crtn_o },
});
}
- if (!is_dyn_lib) {
- try comp.queueJob(.{ .glibc_crt_file = .scrt1_o });
+ if (glibc.needsCrt0(comp.config.output_mode)) |f| {
+ try comp.queueJobs(&.{.{ .glibc_crt_file = f }});
}
try comp.queueJobs(&[_]Job{
.{ .glibc_shared_objects = {} },