aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2024-12-22 15:42:22 -0800
committerAndrew Kelley <andrew@ziglang.org>2025-01-15 15:11:36 -0800
commit9cd7cad42ec65bf2bfa2875dfedf5e84da950ced (patch)
treeaab95ecedc46bfa174de88764f44a8b1ae3865b4
parent0d028e4407e4c14f1343b62ab7fdf881c208ffc9 (diff)
downloadzig-9cd7cad42ec65bf2bfa2875dfedf5e84da950ced.tar.gz
zig-9cd7cad42ec65bf2bfa2875dfedf5e84da950ced.zip
Compilation: account for C objects and resources in prelink
-rw-r--r--src/Compilation.zig4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Compilation.zig b/src/Compilation.zig
index 4dfae7c893..ea514ee9ec 100644
--- a/src/Compilation.zig
+++ b/src/Compilation.zig
@@ -1725,6 +1725,7 @@ pub fn create(gpa: Allocator, arena: Allocator, options: CreateOptions) !*Compil
};
comp.c_object_table.putAssumeCapacityNoClobber(c_object, {});
}
+ comp.remaining_prelink_tasks += @intCast(comp.c_object_table.count());
// Add a `Win32Resource` for each `rc_source_files` and one for `manifest_file`.
const win32_resource_count =
@@ -1742,6 +1743,8 @@ pub fn create(gpa: Allocator, arena: Allocator, options: CreateOptions) !*Compil
};
comp.win32_resource_table.putAssumeCapacityNoClobber(win32_resource, {});
}
+ comp.remaining_prelink_tasks += @intCast(comp.win32_resource_table.count());
+
if (options.manifest_file) |manifest_path| {
const win32_resource = try gpa.create(Win32Resource);
errdefer gpa.destroy(win32_resource);
@@ -1751,6 +1754,7 @@ pub fn create(gpa: Allocator, arena: Allocator, options: CreateOptions) !*Compil
.src = .{ .manifest = manifest_path },
};
comp.win32_resource_table.putAssumeCapacityNoClobber(win32_resource, {});
+ comp.remaining_prelink_tasks += 1;
}
}