Skip to content

Commit 2291560

Browse files
committed
c_import: extract behavior tests that use @cImport
This introduces the new test step `test-c-import`, and removes the ability of the behavior tests to `@cImport` paths relative to `test`. This allows the behavior tests to be run without translate c.
1 parent 556db2c commit 2291560

15 files changed

+36
-23
lines changed

build.zig

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -471,19 +471,34 @@ pub fn build(b: *std.Build) !void {
471471
.name = "behavior",
472472
.desc = "Run the behavior tests",
473473
.optimize_modes = optimization_modes,
474+
.include_paths = &.{},
474475
.skip_single_threaded = skip_single_threaded,
475476
.skip_non_native = skip_non_native,
476477
.skip_cross_glibc = skip_cross_glibc,
477478
.skip_libc = skip_libc,
478479
.max_rss = 1 * 1024 * 1024 * 1024,
479480
}));
480481

482+
test_step.dependOn(tests.addModuleTests(b, .{
483+
.test_filter = test_filter,
484+
.root_src = "test/c_import.zig",
485+
.name = "c-import",
486+
.desc = "Run the @cImport tests",
487+
.optimize_modes = optimization_modes,
488+
.include_paths = &.{"test/c_import"},
489+
.skip_single_threaded = true,
490+
.skip_non_native = skip_non_native,
491+
.skip_cross_glibc = skip_cross_glibc,
492+
.skip_libc = skip_libc,
493+
}));
494+
481495
test_step.dependOn(tests.addModuleTests(b, .{
482496
.test_filter = test_filter,
483497
.root_src = "lib/compiler_rt.zig",
484498
.name = "compiler-rt",
485499
.desc = "Run the compiler_rt tests",
486500
.optimize_modes = optimization_modes,
501+
.include_paths = &.{},
487502
.skip_single_threaded = true,
488503
.skip_non_native = skip_non_native,
489504
.skip_cross_glibc = skip_cross_glibc,
@@ -496,6 +511,7 @@ pub fn build(b: *std.Build) !void {
496511
.name = "universal-libc",
497512
.desc = "Run the universal libc tests",
498513
.optimize_modes = optimization_modes,
514+
.include_paths = &.{},
499515
.skip_single_threaded = true,
500516
.skip_non_native = skip_non_native,
501517
.skip_cross_glibc = skip_cross_glibc,
@@ -527,6 +543,7 @@ pub fn build(b: *std.Build) !void {
527543
.name = "std",
528544
.desc = "Run the standard library tests",
529545
.optimize_modes = optimization_modes,
546+
.include_paths = &.{},
530547
.skip_single_threaded = skip_single_threaded,
531548
.skip_non_native = skip_non_native,
532549
.skip_cross_glibc = skip_cross_glibc,

ci/aarch64-linux-debug.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,11 +99,11 @@ unset CXX
9999

100100
ninja install
101101

102-
stage3/bin/zig test ../test/behavior.zig -I../test
102+
stage3/bin/zig test ../test/behavior.zig
103103
stage3/bin/zig build -p stage4 \
104104
-Dstatic-llvm \
105105
-Dtarget=native-native-musl \
106106
-Dno-lib \
107107
--search-prefix "$PREFIX" \
108108
--zig-lib-dir "$(pwd)/../lib"
109-
stage4/bin/zig test ../test/behavior.zig -I../test
109+
stage4/bin/zig test ../test/behavior.zig

ci/aarch64-linux-release.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,11 +99,11 @@ unset CXX
9999

100100
ninja install
101101

102-
stage3/bin/zig test ../test/behavior.zig -I../test
102+
stage3/bin/zig test ../test/behavior.zig
103103
stage3/bin/zig build -p stage4 \
104104
-Dstatic-llvm \
105105
-Dtarget=native-native-musl \
106106
-Dno-lib \
107107
--search-prefix "$PREFIX" \
108108
--zig-lib-dir "$(pwd)/../lib"
109-
stage4/bin/zig test ../test/behavior.zig -I../test
109+
stage4/bin/zig test ../test/behavior.zig

ci/x86_64-linux-debug.sh

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@ rm -rf zig-out
2525
cc -o bootstrap bootstrap.c
2626
./bootstrap
2727
./zig2 build -Dno-lib
28-
# In order to run these behavior tests we need to move the `@cImport` ones to somewhere else.
29-
# ./zig-out/bin/zig test test/behavior.zig
28+
./zig-out/bin/zig test test/behavior.zig
3029

3130
export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"
3231
export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"
@@ -108,11 +107,11 @@ unset CXX
108107

109108
ninja install
110109

111-
stage3/bin/zig test ../test/behavior.zig -I../test
110+
stage3/bin/zig test ../test/behavior.zig
112111
stage3/bin/zig build -p stage4 \
113112
-Dstatic-llvm \
114113
-Dtarget=native-native-musl \
115114
-Dno-lib \
116115
--search-prefix "$PREFIX" \
117116
--zig-lib-dir "$(pwd)/../lib"
118-
stage4/bin/zig test ../test/behavior.zig -I../test
117+
stage4/bin/zig test ../test/behavior.zig

ci/x86_64-linux-release.sh

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@ rm -rf zig-out
2525
cc -o bootstrap bootstrap.c
2626
./bootstrap
2727
./zig2 build -Dno-lib
28-
# In order to run these behavior tests we need to move the `@cImport` ones to somewhere else.
29-
# ./zig-out/bin/zig test test/behavior.zig
28+
./zig-out/bin/zig test test/behavior.zig
3029

3130
export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"
3231
export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"
@@ -125,11 +124,11 @@ unset CXX
125124

126125
ninja install
127126

128-
stage3/bin/zig test ../test/behavior.zig -I../test
127+
stage3/bin/zig test ../test/behavior.zig
129128
stage3/bin/zig build -p stage4 \
130129
-Dstatic-llvm \
131130
-Dtarget=native-native-musl \
132131
-Dno-lib \
133132
--search-prefix "$PREFIX" \
134133
--zig-lib-dir "$(pwd)/../lib"
135-
stage4/bin/zig test ../test/behavior.zig -I../test
134+
stage4/bin/zig test ../test/behavior.zig

ci/x86_64-macos-release.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,7 @@ rm -rf zig-out
3131
cc -o bootstrap bootstrap.c
3232
./bootstrap
3333
./zig2 build -Dno-lib
34-
# In order to run these behavior tests we need to move the `@cImport` ones to somewhere else.
35-
# ./zig-out/bin/zig test test/behavior.zig
34+
./zig-out/bin/zig test test/behavior.zig
3635

3736
rm -rf build
3837
mkdir build

ci/x86_64-windows-debug.ps1

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,6 @@ Write-Output "Build x86_64-windows-msvc behavior tests using the C backend..."
6666
& "stage3-debug\bin\zig.exe" test `
6767
..\test\behavior.zig `
6868
--zig-lib-dir "$ZIG_LIB_DIR" `
69-
-I..\test `
70-
-I..\lib `
7169
-ofmt=c `
7270
-femit-bin="test-x86_64-windows-msvc.c" `
7371
--test-no-exec `

ci/x86_64-windows-release.ps1

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,6 @@ Write-Output "Build x86_64-windows-msvc behavior tests using the C backend..."
6565
& "stage3-release\bin\zig.exe" test `
6666
..\test\behavior.zig `
6767
--zig-lib-dir "$ZIG_LIB_DIR" `
68-
-I..\test `
69-
-I..\lib `
7068
-ofmt=c `
7169
-femit-bin="test-x86_64-windows-msvc.c" `
7270
--test-no-exec `

test/behavior.zig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ test {
1414
_ = @import("behavior/bool.zig");
1515
_ = @import("behavior/byteswap.zig");
1616
_ = @import("behavior/byval_arg_var.zig");
17-
_ = @import("behavior/c_char_signedness.zig");
1817
_ = @import("behavior/call.zig");
1918
_ = @import("behavior/call_tail.zig");
2019
_ = @import("behavior/cast.zig");
@@ -92,7 +91,6 @@ test {
9291
_ = @import("behavior/switch_prong_implicit_cast.zig");
9392
_ = @import("behavior/this.zig");
9493
_ = @import("behavior/threadlocal.zig");
95-
_ = @import("behavior/translate_c_macros.zig");
9694
_ = @import("behavior/truncate.zig");
9795
_ = @import("behavior/try.zig");
9896
_ = @import("behavior/tuple.zig");

test/c_import.zig

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
test {
2+
_ = @import("c_import/c_char_signedness.zig");
3+
_ = @import("c_import/macros.zig");
4+
}

0 commit comments

Comments
 (0)