| ... | @@ -61,6 +61,7 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { | ... | @@ -61,6 +61,7 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { |
| 61 | elf_step.dependOn(testAbsSymbols(b, .{ .target = musl_target })); | 61 | elf_step.dependOn(testAbsSymbols(b, .{ .target = musl_target })); |
| 62 | elf_step.dependOn(testCommonSymbols(b, .{ .target = musl_target })); | 62 | elf_step.dependOn(testCommonSymbols(b, .{ .target = musl_target })); |
| 63 | elf_step.dependOn(testCommonSymbolsInArchive(b, .{ .target = musl_target })); | 63 | elf_step.dependOn(testCommonSymbolsInArchive(b, .{ .target = musl_target })); |
| | 64 | elf_step.dependOn(testCommentString(b, .{ .target = musl_target })); |
| 64 | elf_step.dependOn(testEmptyObject(b, .{ .target = musl_target })); | 65 | elf_step.dependOn(testEmptyObject(b, .{ .target = musl_target })); |
| 65 | elf_step.dependOn(testEntryPoint(b, .{ .target = musl_target })); | 66 | elf_step.dependOn(testEntryPoint(b, .{ .target = musl_target })); |
| 66 | elf_step.dependOn(testGcSections(b, .{ .target = musl_target })); | 67 | elf_step.dependOn(testGcSections(b, .{ .target = musl_target })); |
| ... | @@ -83,6 +84,7 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { | ... | @@ -83,6 +84,7 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { |
| 83 | elf_step.dependOn(testAsNeeded(b, .{ .target = gnu_target })); | 84 | elf_step.dependOn(testAsNeeded(b, .{ .target = gnu_target })); |
| 84 | // https://github.com/ziglang/zig/issues/17430 | 85 | // https://github.com/ziglang/zig/issues/17430 |
| 85 | // elf_step.dependOn(testCanonicalPlt(b, .{ .target = gnu_target })); | 86 | // elf_step.dependOn(testCanonicalPlt(b, .{ .target = gnu_target })); |
| | 87 | elf_step.dependOn(testCommentString(b, .{ .target = gnu_target })); |
| 86 | elf_step.dependOn(testCopyrel(b, .{ .target = gnu_target })); | 88 | elf_step.dependOn(testCopyrel(b, .{ .target = gnu_target })); |
| 87 | // https://github.com/ziglang/zig/issues/17430 | 89 | // https://github.com/ziglang/zig/issues/17430 |
| 88 | // elf_step.dependOn(testCopyrelAlias(b, .{ .target = gnu_target })); | 90 | // elf_step.dependOn(testCopyrelAlias(b, .{ .target = gnu_target })); |
| ... | @@ -154,6 +156,8 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { | ... | @@ -154,6 +156,8 @@ pub fn testAll(b: *Build, build_opts: BuildOptions) *Step { |
| 154 | elf_step.dependOn(testThunks(b, .{ .target = aarch64_musl })); | 156 | elf_step.dependOn(testThunks(b, .{ .target = aarch64_musl })); |
| 155 | | 157 | |
| 156 | // x86_64 self-hosted backend | 158 | // x86_64 self-hosted backend |
| | 159 | elf_step.dependOn(testCommentString(b, .{ .use_llvm = false, .target = default_target })); |
| | 160 | elf_step.dependOn(testCommentStringStaticLib(b, .{ .use_llvm = false, .target = default_target })); |
| 157 | elf_step.dependOn(testEmitRelocatable(b, .{ .use_llvm = false, .target = x86_64_musl })); | 161 | elf_step.dependOn(testEmitRelocatable(b, .{ .use_llvm = false, .target = x86_64_musl })); |
| 158 | elf_step.dependOn(testEmitStaticLibZig(b, .{ .use_llvm = false, .target = x86_64_musl })); | 162 | elf_step.dependOn(testEmitStaticLibZig(b, .{ .use_llvm = false, .target = x86_64_musl })); |
| 159 | elf_step.dependOn(testGcSectionsZig(b, .{ .use_llvm = false, .target = default_target })); | 163 | elf_step.dependOn(testGcSectionsZig(b, .{ .use_llvm = false, .target = default_target })); |
| ... | @@ -364,6 +368,36 @@ fn testCanonicalPlt(b: *Build, opts: Options) *Step { | ... | @@ -364,6 +368,36 @@ fn testCanonicalPlt(b: *Build, opts: Options) *Step { |
| 364 | return test_step; | 368 | return test_step; |
| 365 | } | 369 | } |
| 366 | | 370 | |
| | 371 | fn testCommentString(b: *Build, opts: Options) *Step { |
| | 372 | const test_step = addTestStep(b, "comment-string", opts); |
| | 373 | |
| | 374 | const exe = addExecutable(b, opts, .{ .name = "main", .zig_source_bytes = |
| | 375 | \\pub fn main() void {} |
| | 376 | }); |
| | 377 | |
| | 378 | const check = exe.checkObject(); |
| | 379 | check.dumpSection(".comment"); |
| | 380 | check.checkContains("zig"); |
| | 381 | test_step.dependOn(&check.step); |
| | 382 | |
| | 383 | return test_step; |
| | 384 | } |
| | 385 | |
| | 386 | fn testCommentStringStaticLib(b: *Build, opts: Options) *Step { |
| | 387 | const test_step = addTestStep(b, "comment-string-static-lib", opts); |
| | 388 | |
| | 389 | const lib = addStaticLibrary(b, opts, .{ .name = "lib", .zig_source_bytes = |
| | 390 | \\export fn foo() void {} |
| | 391 | }); |
| | 392 | |
| | 393 | const check = lib.checkObject(); |
| | 394 | check.dumpSection(".comment"); |
| | 395 | check.checkContains("zig"); |
| | 396 | test_step.dependOn(&check.step); |
| | 397 | |
| | 398 | return test_step; |
| | 399 | } |
| | 400 | |
| 367 | fn testCommonSymbols(b: *Build, opts: Options) *Step { | 401 | fn testCommonSymbols(b: *Build, opts: Options) *Step { |
| 368 | const test_step = addTestStep(b, "common-symbols", opts); | 402 | const test_step = addTestStep(b, "common-symbols", opts); |
| 369 | | 403 | |