zig/test/standalone/coff_dwarf/build.zig
kcbanner 85d87c9ca1 coff: fix incorrect default image_base values and re-enable shared library tests on Windows
This was the cause of aarch64-windows shared libraries causing  "bad image" errors
during load-time linking. I also re-enabled the tests that were surfacing this bug.
2024-10-21 22:54:52 -07:00

37 lines
1.0 KiB
Zig

const std = @import("std");
const builtin = @import("builtin");
/// This tests the path where DWARF information is embedded in a COFF binary
pub fn build(b: *std.Build) void {
const test_step = b.step("test", "Test it");
b.default_step = test_step;
const optimize: std.builtin.OptimizeMode = .Debug;
const target = if (builtin.os.tag == .windows)
b.standardTargetOptions(.{})
else
b.resolveTargetQuery(.{ .os_tag = .windows });
const exe = b.addExecutable(.{
.name = "main",
.root_source_file = b.path("main.zig"),
.optimize = optimize,
.target = target,
});
const lib = b.addSharedLibrary(.{
.name = "shared_lib",
.optimize = optimize,
.target = target,
});
lib.addCSourceFile(.{ .file = b.path("shared_lib.c"), .flags = &.{"-gdwarf"} });
lib.linkLibC();
exe.linkLibrary(lib);
const run = b.addRunArtifact(exe);
run.expectExitCode(0);
run.skip_foreign_checks = true;
test_step.dependOn(&run.step);
}