rust/tests/run-make
bors 3148b35f6a Auto merge of #128079 - Oneirical:testiges-of-civilization, r=jieyouxu
Migrate `static-dylib-by-default`, `sanitizer-dylib-link`, `sanitizer-cdylib-link` and `sanitizer-staticlib-link` `run-make` tests to rmake

Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html).

Please try:

try-job: x86_64-msvc
try-job: armhf-gnu
try-job: test-various
try-job: i686-msvc
try-job: x86_64-mingw
try-job: x86_64-gnu-llvm-18
2024-07-28 04:16:12 +00:00
..
a-b-a-linker-guard
alloc-no-oom-handling
alloc-no-rc
alloc-no-sync
allocator-shim-circular-deps
allow-warnings-cmdline-stability
archive-duplicate-names rewrite archive-duplicate-names to rmake 2024-07-18 09:28:50 -04:00
arguments-non-c-like-enum Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
artifact-incr-cache
artifact-incr-cache-no-obj
atomic-lock-free Migrate atomic-lock-free to rmake 2024-07-17 16:47:39 -04:00
bare-outfile
bin-emit-no-symbols
box-struct-no-segfault
branch-protection-check-IBT
c-dynamic-dylib rewrite c-dynamic-dylib to rmake 2024-07-23 10:31:21 -04:00
c-dynamic-rlib rewrite c-dynamic-dylib to rmake 2024-07-23 10:31:21 -04:00
c-link-to-rust-dylib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
c-link-to-rust-staticlib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
c-link-to-rust-va-list-fn Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
c-static-dylib rewrite pass-non-c-like-enum-to-c to rmake 2024-07-19 12:27:47 -04:00
c-static-rlib rewrite pass-non-c-like-enum-to-c to rmake 2024-07-19 12:27:47 -04:00
c-unwind-abi-catch-lib-panic rewrite export-executable-symbols to rmake 2024-07-26 10:17:39 -04:00
c-unwind-abi-catch-panic rewrite c-unwind-abi-catch-panic to rmake 2024-07-19 14:39:42 -04:00
cat-and-grep-sanity-check
cdylib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
cdylib-dylib-linkage
cdylib-fewer-symbols rewrite symbols-include-type-name to rmake 2024-07-09 14:30:57 -04:00
clear-error-blank-output
codegen-options-parsing
comment-section tests: update for rfs rename 2024-07-17 13:34:18 +00:00
compile-stdin
compiler-builtins tests: update for rfs rename 2024-07-17 13:34:18 +00:00
compiler-lookup-paths tests: update for rfs rename 2024-07-17 13:34:18 +00:00
compiler-lookup-paths-2 rewrite compiler-lookup-paths-2 to rmake 2024-07-19 16:48:21 -04:00
compiler-rt-works-on-mingw rewrite incr-foreign-head-span to rmake 2024-07-25 11:08:07 -04:00
compressed-debuginfo Rollup merge of #127201 - GuillaumeGomez:improve-run-make-support, r=Kobzol 2024-07-01 20:29:59 +02:00
const_fn_mir
const-prop-lint tests: update for rfs rename 2024-07-17 13:34:18 +00:00
core-no-fp-fmt-parse
core-no-oom-handling
crate-data-smoke
crate-hash-rustc-version Use llvm-readobj for run-make/crate-hash-rustc-version 2024-07-17 06:49:23 -04:00
crate-name-priority tests: update for rfs rename 2024-07-17 13:34:18 +00:00
cross-lang-lto
cross-lang-lto-clang
cross-lang-lto-pgo-smoketest
cross-lang-lto-riscv-abi
cross-lang-lto-upstream-rlibs
CURRENT_RUSTC_VERSION tests: update for rfs rename 2024-07-17 13:34:18 +00:00
debug-assertions rewrite emit-stack-sizes to rmake 2024-06-28 11:18:46 -04:00
debugger-visualizer-dep-info
dep-graph
dep-info
dep-info-doesnt-run-much
dep-info-spaces
deref-impl-rustdoc-ice
doctests-keep-binaries tests: update for rfs rename 2024-07-17 13:34:18 +00:00
doctests-runtool tests: update for rfs rename 2024-07-17 13:34:18 +00:00
dump-ice-to-disk rewrite panic-abort-eh_frame to rmake 2024-07-25 11:17:34 -04:00
dump-mono-stats tests: update for rfs rename 2024-07-17 13:34:18 +00:00
duplicate-output-flavors
dylib-chain tests: update for rfs rename 2024-07-17 13:34:18 +00:00
dylib-soname linker: Link dylib crates by path 2024-07-02 11:43:17 +03:00
emit
emit-named-files tests: update for rfs rename 2024-07-17 13:34:18 +00:00
emit-path-unhashed tests: update for rfs rename 2024-07-17 13:34:18 +00:00
emit-shared-files rewrite emit-shared-files to rmake 2024-07-05 10:06:27 -04:00
emit-stack-sizes rewrite emit-stack-sizes to rmake 2024-06-28 11:18:46 -04:00
emit-to-stdout
env-dep-info rewrite env-dep-info to rmake 2024-07-12 10:58:20 -04:00
error-found-staticlib-instead-crate
error-writing-dependencies
exit-code
export-executable-symbols rewrite export-executable-symbols to rmake 2024-07-26 10:17:39 -04:00
extern-diff-internal-name rewrite extern-multiple-copies2 to rmake 2024-07-23 15:08:40 -04:00
extern-flag-disambiguates use shorter link and remove entries wrongly added in rebase 2024-07-25 12:20:04 -04:00
extern-flag-fun
extern-flag-pathless tests: update for rfs rename 2024-07-17 13:34:18 +00:00
extern-flag-rename-transitive
extern-fn-explicit-align rewrite extern-fn-explicit-align to rmake 2024-07-17 15:33:07 -04:00
extern-fn-generic rewrite extern-fn-with-union to rmake 2024-07-19 12:27:47 -04:00
extern-fn-mangle rewrite extern-fn-mangle to rmake 2024-07-17 15:33:17 -04:00
extern-fn-reachable
extern-fn-slice-no-ice rewrite and rename issue-25581 2024-07-17 15:33:06 -04:00
extern-fn-struct-passing-abi rewrite extern-fn-struct-passing-abi to rmake 2024-07-17 15:33:07 -04:00
extern-fn-with-extern-types rewrite extern-fn-with-extern-types to rmake 2024-07-17 15:33:05 -04:00
extern-fn-with-packed-struct rewrite extern-fn-with-packed-struct to rmake 2024-07-17 15:33:07 -04:00
extern-fn-with-union rewrite extern-fn-with-union to rmake 2024-07-19 12:27:47 -04:00
extern-multiple-copies rewrite extern-multiple-copies2 to rmake 2024-07-23 15:08:40 -04:00
extern-multiple-copies2 rewrite extern-multiple-copies2 to rmake 2024-07-23 15:08:40 -04:00
extern-overrides-distribution
external-crate-panic-handle-no-lint
extra-filename-with-temp-outputs tests: update for rfs rename 2024-07-17 13:34:18 +00:00
fmt-write-bloat
forced-unwind-terminate-pof
foreign-double-unwind
foreign-exceptions
foreign-rust-exceptions rewrite export-executable-symbols to rmake 2024-07-26 10:17:39 -04:00
glibc-staticlib-args Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
ice-dep-cannot-find-dep tests: update for rfs rename 2024-07-17 13:34:18 +00:00
ice-static-mir rewrite and rename issue-85401-static-mir 2024-07-17 16:10:22 -04:00
inaccessible-temp-dir tests: update for rfs rename 2024-07-17 13:34:18 +00:00
include-all-symbols-linking rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
include-bytes-deps rewrite rmeta-preferred to rmake 2024-07-04 10:05:56 -04:00
incr-add-rust-src-component
incr-foreign-head-span rewrite incr-foreign-head-span to rmake 2024-07-25 11:08:07 -04:00
incr-prev-body-beyond-eof tests: update for rfs rename 2024-07-17 13:34:18 +00:00
incr-test-moved-file tests: update for rfs rename 2024-07-17 13:34:18 +00:00
incremental-debugger-visualizer tests: update for rfs rename 2024-07-17 13:34:18 +00:00
incremental-session-fail tests: update for rfs rename 2024-07-17 13:34:18 +00:00
inline-always-many-cgu tests: update for rfs rename 2024-07-17 13:34:18 +00:00
interdependent-c-libraries rewrite incr-foreign-head-span to rmake 2024-07-25 11:08:07 -04:00
intrinsic-unreachable tests: update for rfs rename 2024-07-17 13:34:18 +00:00
invalid-library tests: update for rfs rename 2024-07-17 13:34:18 +00:00
invalid-so tests: update for rfs rename 2024-07-17 13:34:18 +00:00
invalid-staticlib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
invalid-symlink-search-path Rewrite and rename issue-26006 to rmake 2024-07-18 11:14:07 -04:00
invalid-tmpdir-env-var rewrite and rename issue-107094 to rmake 2024-07-22 10:12:00 -04:00
issue-35164
issue-36710
issue-47551
issue-69368
issue-84395-lto-embed-bitcode
issue-88756-default-output
issue-107495-archive-permissions tests: update for rfs rename 2024-07-17 13:34:18 +00:00
issue-125484-used-dependencies
jobserver-error
lib-trait-for-trait-no-ice shallow_find_files function for run_make_support 2024-07-08 09:59:08 -04:00
libs-through-symlinks
libtest-json
libtest-junit
libtest-padding rewrite libtest-padding to rmake 2024-06-26 11:44:23 -04:00
libtest-thread-limit
link-arg Test that --print link-args ends in newline 2024-07-09 23:07:38 +01:00
link-args-order
link-cfg
link-dedup
link-framework Migrate run-make/link-framework to rmake.rs 2024-07-22 23:21:59 +02:00
link-native-static-lib-to-dylib Rename tests/run-make/issue-15460 into tests/run-make/link-native-static-lib-to-dylib 2024-07-23 11:47:11 +02:00
link-path-order rewrite link-path-order to rmake 2024-07-18 16:27:34 -04:00
linkage-attr-on-static rewrite linkage-attr-on-static to rmake 2024-07-19 12:27:47 -04:00
llvm-ident Improve code of run-make/llvm-ident 2024-07-08 20:18:21 +02:00
llvm-outputs
long-linker-command-lines
long-linker-command-lines-cmd-exe
longjmp-across-rust rewrite longjmp-across-rust to rmake 2024-07-17 15:33:07 -04:00
ls-metadata tests: update for rfs rename 2024-07-17 13:34:18 +00:00
lto-avoid-object-duplication
lto-dylib-dep rewrite lto-dylib-dep to rmake 2024-06-26 13:32:30 -04:00
lto-empty
lto-linkage-used-attr rewrite pgo-gen-no-imp-symbols to rmake 2024-07-22 13:25:39 -04:00
lto-no-link-whole-rlib rewrite lto-no-link-whole-rlib to rmake 2024-07-19 12:27:47 -04:00
lto-readonly-lib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
lto-smoke
lto-smoke-c rewrite link-path-order to rmake 2024-07-18 16:27:34 -04:00
macos-deployment-target
macos-fat-archive rewrite macos-fat-archive to rmake 2024-07-18 09:28:30 -04:00
manual-crate-name
manual-link rewrite manual-link to rmake 2024-07-18 09:28:30 -04:00
many-crates-but-no-match tests: update for rfs rename 2024-07-17 13:34:18 +00:00
metadata-dep-info rewrite metadata-dep-info to rmake 2024-06-28 16:45:29 -04:00
metadata-flag-frobs-symbols
metadata-only-crate-no-ice rewrite rmeta-preferred to rmake 2024-07-04 10:05:56 -04:00
min-global-align
mingw-export-call-convention
mismatching-target-triples
missing-crate-dependency rewrite unstable-flag-required to rmake 2024-07-17 16:11:11 -04:00
mixing-deps
mixing-formats
mixing-libs tests: update for rfs rename 2024-07-17 13:34:18 +00:00
moved-src-dir-fingerprint-ice tests: update for rfs rename 2024-07-17 13:34:18 +00:00
multiple-emits
native-lib-load-order rewrite and rename issue-28595 to rmake 2024-07-19 12:27:46 -04:00
native-link-modifier-bundle
native-link-modifier-verbatim-linker
native-link-modifier-verbatim-rustc
native-link-modifier-whole-archive
no-alloc-shim
no-builtins-attribute
no-builtins-lto
no-cdylib-as-rdylib
no-duplicate-libs rewrite pgo-gen-no-imp-symbols to rmake 2024-07-22 13:25:39 -04:00
no-input-file
no-intermediate-extras
non-pie-thread-local
non-unicode-env tests: update for rfs rename 2024-07-17 13:34:18 +00:00
non-unicode-in-incremental-dir tests: update for rfs rename 2024-07-17 13:34:18 +00:00
notify-all-emit-artifacts
obey-crate-type-flag tests: update for rfs rename 2024-07-17 13:34:18 +00:00
optimization-remarks-dir add shallow_find_files helper function to run-make-support 2024-07-04 10:05:56 -04:00
optimization-remarks-dir-pgo add shallow_find_files helper function to run-make-support 2024-07-04 10:05:56 -04:00
output-filename-conflicts-with-directory tests: update for rfs rename 2024-07-17 13:34:18 +00:00
output-filename-overwrites-input tests: update for rfs rename 2024-07-17 13:34:18 +00:00
output-type-permutations tests: update for rfs rename 2024-07-17 13:34:18 +00:00
output-with-hyphens
override-aliased-flags Migrate run-make/override-aliased-flags to rmake.rs 2024-06-29 11:55:30 +02:00
overwrite-input rewrite overwrite-input to rmake 2024-06-26 13:11:46 -04:00
panic-abort-eh_frame rewrite panic-abort-eh_frame to rmake 2024-07-25 11:17:34 -04:00
panic-impl-transitive
parallel-rustc-no-overwrite tests: update for rfs rename 2024-07-17 13:34:18 +00:00
pass-linker-flags rewrite pass-linker-flags-flavor to rmake 2024-07-04 13:16:11 -04:00
pass-linker-flags-flavor rewrite pass-linker-flags-from-dep to rmake 2024-07-05 12:47:19 -04:00
pass-linker-flags-from-dep rewrite pass-linker-flags-from-dep to rmake 2024-07-05 12:47:19 -04:00
pass-non-c-like-enum-to-c rewrite pass-non-c-like-enum-to-c to rmake 2024-07-19 12:27:47 -04:00
pdb-alt-path
pdb-buildinfo-cl-cmd
pgo-branch-weights tests: update for rfs rename 2024-07-17 13:34:18 +00:00
pgo-gen Add shallow_find_files helper function to run-make-support 2024-07-05 10:25:48 -04:00
pgo-gen-lto
pgo-gen-no-imp-symbols rewrite pgo-gen-no-imp-symbols to rmake 2024-07-22 13:25:39 -04:00
pgo-indirect-call-promotion
pgo-use tests: update for rfs rename 2024-07-17 13:34:18 +00:00
pointer-auth-link-with-c rewrite pointer-auth-link-with-c to rmake 2024-07-22 11:14:34 -04:00
prefer-dylib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
prefer-rlib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
pretty-print-to-file rewrite pretty-print-to-file to rmake 2024-06-26 11:44:11 -04:00
pretty-print-with-dep-file tests: update for rfs rename 2024-07-17 13:34:18 +00:00
print-calling-conventions
print-cfg tests: update for rfs rename 2024-07-17 13:34:18 +00:00
print-check-cfg Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
print-native-static-libs
print-target-list
print-to-output tests: update for rfs rename 2024-07-17 13:34:18 +00:00
proc-macro-init-order
proc-macro-three-crates rewrite track-pgo-dep-info to rmake 2024-07-08 10:31:05 -04:00
profile rewrite profile to rmake 2024-07-05 10:17:48 -04:00
prune-link-args build_native_static_lib with llvm_ar for run_make_support 2024-07-16 15:34:04 -04:00
raw-dylib-alt-calling-convention
raw-dylib-c
raw-dylib-cross-compilation rewrite used-cdylib-macos to rmake 2024-06-28 16:28:57 -04:00
raw-dylib-custom-dlltool rewrite raw-dylib-custom-dlltool to rmake 2024-07-12 16:41:28 -04:00
raw-dylib-import-name-type
raw-dylib-inline-cross-dylib rewrite raw-dylib-custom-dlltool to rmake 2024-07-12 16:41:28 -04:00
raw-dylib-link-ordinal
raw-dylib-stdcall-ordinal
raw-fn-pointer-opt-undefined-behavior
reachable-extern-fn-available-lto
redundant-libs
relocation-model
relro-levels
remap-path-prefix tests: update for rfs rename 2024-07-17 13:34:18 +00:00
remap-path-prefix-dwarf
repr128-dwarf tests: update for rfs rename 2024-07-17 13:34:18 +00:00
reproducible-build
reproducible-build-2
reset-codegen-1 tests: update for rfs rename 2024-07-17 13:34:18 +00:00
resolve-rename tests: update for rfs rename 2024-07-17 13:34:18 +00:00
return-non-c-like-enum Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
return-non-c-like-enum-from-c rewrite return-non-c-like-enum-from-c to rmake 2024-07-19 12:27:26 -04:00
rlib-chain tests: update for rfs rename 2024-07-17 13:34:18 +00:00
rlib-format-packed-bundled-libs
rlib-format-packed-bundled-libs-2
rlib-format-packed-bundled-libs-3 rewrite and rename issue-97463-abi-param-passing to rmake 2024-07-22 13:05:07 -04:00
rmeta-preferred rewrite rmeta-preferred to rmake 2024-07-04 10:05:56 -04:00
run-in-tmpdir-self-test
rust-lld
rust-lld-by-default-beta-stable Add a run-make test that LLD is not being used by default on the x64 beta/stable channel 2024-06-29 10:10:59 +02:00
rust-lld-by-default-nightly Add a run-make test that LLD is not being used by default on the x64 beta/stable channel 2024-06-29 10:10:59 +02:00
rust-lld-custom-target
rustc-macro-dep-files rewrite env-dep-info to rmake 2024-07-12 10:58:20 -04:00
rustdoc-cfgspec-parsing Rewrite and rename issue-26006 to rmake 2024-07-18 11:14:07 -04:00
rustdoc-determinism
rustdoc-error-lines
rustdoc-io-error Disable rmake test rustdoc-io-error on riscv64gc-gnu 2024-07-03 10:12:39 -07:00
rustdoc-map-file
rustdoc-output-path
rustdoc-scrape-examples-invalid-expr
rustdoc-scrape-examples-macros
rustdoc-scrape-examples-multiple
rustdoc-scrape-examples-ordering
rustdoc-scrape-examples-remap tests: update for rfs rename 2024-07-17 13:34:18 +00:00
rustdoc-scrape-examples-test
rustdoc-scrape-examples-whitespace
rustdoc-shared-flags
rustdoc-target-spec-json-path
rustdoc-test-args tests: update for rfs rename 2024-07-17 13:34:18 +00:00
rustdoc-themes tests: update for rfs rename 2024-07-17 13:34:18 +00:00
rustdoc-verify-output-files tests: update for rfs rename 2024-07-17 13:34:18 +00:00
rustdoc-with-out-dir-option
rustdoc-with-output-option
rustdoc-with-short-out-dir-option
sanitizer-cdylib-link rewrite sanitizer-cdylib-link to rmake 2024-07-23 10:26:35 -04:00
sanitizer-dylib-link rewrite sanitizer-dylib-link to rmake 2024-07-23 10:26:35 -04:00
sanitizer-staticlib-link rewrite sanitizer-staticlib-link to rmake 2024-07-26 11:45:19 -04:00
separate-link
separate-link-fail
sepcomp-cci-copies tests: update for rfs rename 2024-07-17 13:34:18 +00:00
sepcomp-inlining tests: update for rfs rename 2024-07-17 13:34:18 +00:00
sepcomp-separate tests: update for rfs rename 2024-07-17 13:34:18 +00:00
share-generics-dylib
share-generics-export-again
short-ice
silly-file-names tests: update for rfs rename 2024-07-17 13:34:18 +00:00
simd-ffi
split-debuginfo Disable run-make/split-debuginfo test for RISC-V 64 2024-07-19 14:32:32 +01:00
stable-symbol-names
static-dylib-by-default rewrite sanitizer-staticlib-link to rmake 2024-07-26 11:45:19 -04:00
static-extern-type rewrite static-extern-type to rmake 2024-07-17 15:33:07 -04:00
static-pie Improve target method API in run-make-support 2024-07-01 10:55:57 +02:00
static-unwinding
staticlib-blank-lib rewrite staticlib-blank-lib to rmake 2024-07-18 09:34:54 -04:00
staticlib-dylib-linkage
std-core-cycle rewrite and rename issue-18943 to rmake 2024-07-08 09:59:08 -04:00
stdin-rustc
stdin-rustdoc
suspicious-library
symbol-mangling-hashed
symbol-visibility
symbols-include-type-name rewrite symbols-include-type-name to rmake 2024-07-09 14:30:57 -04:00
symlinked-extern tests: update for rfs rename 2024-07-17 13:34:18 +00:00
symlinked-libraries tests: update for rfs rename 2024-07-17 13:34:18 +00:00
symlinked-rlib tests: update for rfs rename 2024-07-17 13:34:18 +00:00
sysroot-crates-are-unstable
target-cpu-native rewrite target-without-atomic-cas to rmake 2024-07-08 10:20:42 -04:00
target-specs tests: update for rfs rename 2024-07-17 13:34:18 +00:00
target-without-atomic-cas rewrite target-without-atomic-cas to rmake 2024-07-08 10:20:42 -04:00
test-benches rewrite compiler-lookup-paths-2 to rmake 2024-07-19 16:48:21 -04:00
test-harness rewrite test-harness to rmake 2024-07-02 11:37:59 -04:00
textrel-on-minimal-lib Improve run-make-support library args API 2024-06-30 12:40:24 +02:00
thumb-none-cortex-m
thumb-none-qemu
track-path-dep-info tests: update for rfs rename 2024-07-17 13:34:18 +00:00
track-pgo-dep-info tests: update for rfs rename 2024-07-17 13:34:18 +00:00
translation
type-mismatch-same-crate-name rewrite type-mismatch-same-crate-name to rmake 2024-07-09 16:34:22 -04:00
unknown-mod-stdin rewrite unknown-mod-stdin to rmake 2024-06-28 16:28:24 -04:00
unstable-flag-required rewrite unstable-flag-required to rmake 2024-07-17 16:11:11 -04:00
use-suggestions-rust-2018 rewrite use-suggestions-rust-2018 to rmake 2024-06-26 12:04:35 -04:00
used
used-cdylib-macos rewrite used-cdylib-macos to rmake 2024-06-28 16:28:57 -04:00
version-verbose-commit-hash rewrite and rename issue-107094 to rmake 2024-07-22 10:12:00 -04:00
volatile-intrinsics tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-custom-section tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-custom-sections-opt tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-exceptions-nostd Rollup merge of #126880 - Rejyr:migrate-rmake-vw, r=Kobzol 2024-07-01 20:29:57 +02:00
wasm-export-all-symbols tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-import-module tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-override-linker Migrate wasm-override-linker to rmake 2024-06-29 08:14:02 -04:00
wasm-panic-small Fix two new failing tests 2024-07-19 10:27:14 -07:00
wasm-spurious-import tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-stringify-ints-small Fix two new failing tests 2024-07-19 10:27:14 -07:00
wasm-symbols-different-module tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-symbols-not-exported tests: update for rfs rename 2024-07-17 13:34:18 +00:00
wasm-symbols-not-imported tests: update for rfs rename 2024-07-17 13:34:18 +00:00
weird-output-filenames tests: update for rfs rename 2024-07-17 13:34:18 +00:00
windows-binary-no-external-deps
windows-safeseh update run-make/windows-safeseh compiletest header 2024-06-28 20:32:31 +03:00
windows-spawn
windows-ws2_32 tests: update for rfs rename 2024-07-17 13:34:18 +00:00
x86_64-fortanix-unknown-sgx-lvi
zero-extend-abi-param-passing rewrite and rename issue-97463-abi-param-passing to rmake 2024-07-22 13:05:07 -04:00
git_clone_sha1.sh
README.md note that rmake.rs files are not subject to automatic formatting 2024-07-25 12:18:24 -04:00
tools.mk

The run-make test suite

The run-make test suite contains tests which are the most flexible out of all the rust-lang/rust test suites. run-make tests can basically contain arbitrary code, and are supported by the run_make_support library.

Infrastructure

There are two kinds of run-make tests:

  1. The new rmake.rs version: this allows run-make tests to be written in Rust (with rmake.rs as the main test file).
  2. The legacy Makefile version: this is what run-make tests were written with before support for rmake.rs was introduced.

The implementation for collecting and building the rmake.rs recipes (or Makefiles) are in src/tools/compiletest/src/runtest.rs, in run_rmake_v2_test and run_rmake_legacy_test.

Rust-based run-make tests: rmake.rs

The setup for the rmake.rs version is a 3-stage process:

  1. First, we build the run_make_support library in bootstrap as a tool lib.

  2. Then, we compile the rmake.rs "recipe" linking the support library and its dependencies in, and provide a bunch of env vars. We setup a directory structure within build/<target>/test/run-make/

    <test-name>/
        rmake.exe              # recipe binary
        rmake_out/             # sources from test sources copied over
    

    and copy non-rmake.rs input support files over to rmake_out/. The support library is made available as an extern prelude.

  3. Finally, we run the recipe binary and set rmake_out/ as the working directory.

Formatting

Note that files under tests/ are not formatted by ./x fmt, use rustfmt tests/path/to/file.rs to format a specific file if desired.