Commit a6fbdfabb9

Jakub Konka <kubkon@jakubkonka.com>
2022-06-25 00:36:42
link-tests: add -headerpad_size test scenario
1 parent 8c1feef
Changed files (2)
test
link
macho
headerpad_size
test/link/macho/headerpad_size/build.zig
@@ -0,0 +1,25 @@
+const std = @import("std");
+const Builder = std.build.Builder;
+
+pub fn build(b: *Builder) void {
+    const mode = b.standardReleaseOptions();
+
+    const test_step = b.step("test", "Test");
+    test_step.dependOn(b.getInstallStep());
+
+    const exe = b.addExecutable("main", null);
+    exe.setBuildMode(mode);
+    exe.addCSourceFile("main.c", &.{});
+    exe.linkLibC();
+    exe.headerpad_size = 0x10000;
+
+    const check = exe.checkObject(.macho);
+    check.checkStart("sectname __text");
+    check.checkNext("offset {offset}");
+    check.checkComputeCompare("offset", .{ .op = .gte, .value = .{ .literal = 0x10000 } });
+
+    test_step.dependOn(&check.step);
+
+    const run = exe.run();
+    test_step.dependOn(&run.step);
+}
test/link/macho/headerpad_size/main.c
@@ -0,0 +1,3 @@
+int main(int argc, char* argv[]) {
+  return 0;
+}