rust/tests/run-make
bors 0fdfb61795 Auto merge of #127006 - Oneirical:holmes-the-detestive, r=Kobzol
Migrate `extern-flag-pathless`, `silly-file-names`, `metadata-dep-info`, `cdylib-fewer-symbols` and `symbols-include-type-name` `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).

`cdylib-fewer-symbols` demands a Windows try-job. (Almost guaranteed to fail, but 7 years is a long time)

try-job: x86_64-gnu-distcheck
try-job: x86_64-msvc
try-job: aarch64-apple
2024-07-10 08:51:20 +00:00
..
CURRENT_RUSTC_VERSION Rewrite and rename `issue-26092` to rmake 2024-06-17 13:51:52 -04:00
a-b-a-linker-guard Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
alloc-no-oom-handling Do not use relative paths to Rust source root in run-make tests 2024-06-06 19:16:53 +02:00
alloc-no-rc Do not use relative paths to Rust source root in run-make tests 2024-06-06 19:16:53 +02:00
alloc-no-sync Do not use relative paths to Rust source root in run-make tests 2024-06-06 19:16:53 +02:00
allocator-shim-circular-deps rewrite allocator-shim-circular-deps to ui test 2024-06-18 14:25:59 -04:00
allow-warnings-cmdline-stability Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
archive-duplicate-names correct comments 2024-05-08 21:44:57 -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 Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
artifact-incr-cache-no-obj Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
atomic-lock-free Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
bare-outfile Fix `bare-outfile` test 2024-06-07 11:12:04 +02:00
bin-emit-no-symbols use llvm_readobj in run-make test instead of nm 2024-06-18 14:57:00 -04:00
box-struct-no-segfault Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
branch-protection-check-IBT (wip) Migrate `branch-protection-check-IBT` to `rmake` 2024-06-22 20:18:02 -04:00
c-dynamic-dylib Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
c-dynamic-rlib Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
c-link-to-rust-dylib Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
c-link-to-rust-staticlib Improve `run-make-support` library `args` API 2024-06-30 12:40:24 +02: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 correct comments 2024-05-08 21:44:57 -04:00
c-static-rlib correct comments 2024-05-08 21:44:57 -04:00
c-unwind-abi-catch-lib-panic Update Makefiles with explanatory comments 2024-05-07 22:12:36 -04:00
c-unwind-abi-catch-panic Update Makefiles with explanatory comments 2024-05-07 22:12:36 -04:00
cat-and-grep-sanity-check add FIXME 2024-05-09 13:29:46 -04:00
cdylib Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
cdylib-dylib-linkage correct comments 2024-05-08 21:44:57 -04:00
cdylib-fewer-symbols rewrite symbols-include-type-name to rmake 2024-07-09 14:30:57 -04:00
clear-error-blank-output Rewrite and rename `issue-26092` to rmake 2024-06-17 13:51:52 -04:00
codegen-options-parsing Migrate `run-make/codegen-options-parsing` to `rmake.rs` 2024-06-14 13:59:44 +02:00
comment-section Improve `target` method API in `run-make-support` 2024-07-01 10:55:57 +02:00
compile-stdin Migrate `run-make/compile-stdin` to `rmake.rs` 2024-05-27 11:37:27 +02:00
compiler-builtins Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
compiler-lookup-paths Update Makefiles with explanatory comments 2024-05-07 22:12:36 -04:00
compiler-lookup-paths-2 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
compiler-rt-works-on-mingw Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
compressed-debuginfo Rollup merge of #127201 - GuillaumeGomez:improve-run-make-support, r=Kobzol 2024-07-01 20:29:59 +02:00
const-prop-lint Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
const_fn_mir Add missing test annotation 2024-06-17 11:15:59 +02:00
core-no-fp-fmt-parse Do not use relative paths to Rust source root in run-make tests 2024-06-06 19:16:53 +02:00
core-no-oom-handling Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
crate-data-smoke Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
crate-hash-rustc-version Remove support for alias `-Z symbol-mangling-version` 2023-11-02 18:41:33 +11:00
crate-name-priority rewrite crate-name-priority to rmake 2024-06-20 16:09:39 -04:00
cross-lang-lto Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
cross-lang-lto-clang Rename `needs-matching-clang` to `needs-force-clang-based-tests` 2024-06-11 16:45:51 +10:00
cross-lang-lto-pgo-smoketest Rename `needs-matching-clang` to `needs-force-clang-based-tests` 2024-06-11 16:45:51 +10:00
cross-lang-lto-riscv-abi Rename `needs-matching-clang` to `needs-force-clang-based-tests` 2024-06-11 16:45:51 +10:00
cross-lang-lto-upstream-rlibs Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
debug-assertions rewrite emit-stack-sizes to rmake 2024-06-28 11:18:46 -04:00
debugger-visualizer-dep-info rewrite debugger-visualizer-dep-info to rmake 2024-06-18 16:05:56 -04:00
dep-graph Migrate `run-make/dep-graph` to `rmake.rs` 2024-06-15 17:34:43 +02:00
dep-info Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
dep-info-doesnt-run-much Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
dep-info-spaces Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
deref-impl-rustdoc-ice Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
doctests-keep-binaries Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
doctests-runtool Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
dump-ice-to-disk Use `YYYY-MM-DDTHH_MM_SS` as datetime format for ICE dump files 2023-10-17 17:31:47 +00:00
dump-mono-stats move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
duplicate-output-flavors Migrate `run-make/duplicate-output-flavors` to `rmake.rs` 2024-06-16 11:46:02 +02:00
dylib-chain rewrite rlib-chain to rmake 2024-07-02 11:37:58 -04:00
dylib-soname linker: Link dylib crates by path 2024-07-02 11:43:17 +03:00
emit Auto merge of #125383 - Oneirical:bundle-them-up, r=jieyouxu 2024-06-03 18:35:54 +00:00
emit-named-files Small `run-make-support` API improvements 2024-07-03 11:34:39 +02:00
emit-path-unhashed rewrite emit-path-unhashed to rmake 2024-07-05 10:06:27 -04: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 Bless run-make tests 2023-11-24 19:15:52 +01:00
env-dep-info move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
error-found-staticlib-instead-crate rewrite error-found-staticlib-instead-crate to rmake 2024-06-14 15:50:33 -04:00
error-writing-dependencies rewrite error-writing-dependencies to rmake 2024-06-19 16:43:22 -04:00
exit-code Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
export-executable-symbols [AUTO_GENERATED] Migrate compiletest to use `ui_test`-style `//@` directives 2024-02-22 16:04:04 +00:00
extern-diff-internal-name Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-flag-disambiguates Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-flag-fun rewrite incremental-session-fail to rmake 2024-06-17 13:01:15 -04:00
extern-flag-pathless rewrite symbols-include-type-name to rmake 2024-07-09 14:30:57 -04:00
extern-flag-rename-transitive rewrite extern-flag-rename-transitive to rmake 2024-06-18 15:59:33 -04:00
extern-fn-explicit-align Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-fn-generic ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-fn-mangle ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-fn-reachable Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-fn-struct-passing-abi Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-fn-with-extern-types ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-fn-with-packed-struct ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-fn-with-union ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-multiple-copies Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
extern-multiple-copies2 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
extern-overrides-distribution rewrite extern-overrides-distribution to rmake 2024-06-18 16:30:26 -04:00
external-crate-panic-handle-no-lint Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
extra-filename-with-temp-outputs ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
fmt-write-bloat Auto merge of #109770 - jyn514:run-make-fulldeps, r=Mark-Simulacrum 2023-04-03 01:34:05 +00:00
forced-unwind-terminate-pof Rollup merge of #126644 - Oneirical:testla-coil, r=jieyouxu 2024-06-20 18:20:12 +02:00
foreign-double-unwind Add needs-unwind annotations to tests that need stack unwinding 2023-05-02 12:07:55 +00:00
foreign-exceptions Add needs-unwind annotations to tests that need stack unwinding 2023-05-02 12:07:55 +00:00
foreign-rust-exceptions Add needs-unwind annotations to tests that need stack unwinding 2023-05-02 12:07:55 +00:00
glibc-staticlib-args Improve `run-make-support` library `args` API 2024-06-30 12:40:24 +02:00
inaccessible-temp-dir Disable rmake test rustdoc-io-error on riscv64gc-gnu 2024-07-03 10:12:39 -07: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 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
incr-foreign-head-span Validate crate name in CLI option --extern 2023-09-20 18:50:40 +02:00
incr-prev-body-beyond-eof Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
incremental-debugger-visualizer rewrite incremental-session-fail to rmake 2024-06-17 13:01:15 -04:00
incremental-session-fail rewrite incremental-session-fail to rmake 2024-06-17 13:01:15 -04:00
inline-always-many-cgu Migrate `run-make/inline-always-many-cgu` to `rmake.rs` 2024-06-22 12:35:58 +02:00
interdependent-c-libraries Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
intrinsic-unreachable rewrite sepcomp-inlining and -separate to rmake.rs 2024-07-08 10:14:42 -04:00
invalid-library Add `ar` command in `run-make-support` 2024-06-27 14:04:46 +02:00
invalid-so rewrite invalid-so to rmake 2024-06-25 14:45:49 -04:00
invalid-staticlib rewrite invalid-staticlib to rmake 2024-06-14 10:02:39 -04:00
issue-14698 Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
issue-15460 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
issue-18943 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
issue-22131 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
issue-25581 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
issue-26006 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
issue-28595 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
issue-33329 Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
issue-35164 Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
issue-36710 ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
issue-47551 Pass target to run-make issue-47551 2024-06-14 08:08:42 -07:00
issue-69368 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
issue-83045 Fix symbol conflict diagnostic mistakenly being shown instead of missing crate diagnostic 2023-05-23 07:37:16 +00:00
issue-83112-incr-test-moved-file move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
issue-84395-lto-embed-bitcode Rename `needs-matching-clang` to `needs-force-clang-based-tests` 2024-06-11 16:45:51 +10:00
issue-85019-moved-src-dir move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
issue-85401-static-mir move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
issue-88756-default-output rustdoc: Add support for --remap-path-prefix 2024-06-09 10:34:54 -07:00
issue-97463-abi-param-passing ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
issue-107094 Make commit-date pattern more specific in test for issue 107094 2023-04-17 18:53:52 +02:00
issue-107495-archive-permissions Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
issue-109934-lto-debuginfo debuginfo: split method declaration and definition 2023-05-03 15:52:31 -07:00
issue-125484-used-dependencies Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
jobserver-error Avoid a couple of unnecessary EarlyDiagCtxt uses 2024-06-22 17:06:47 +00:00
libs-through-symlinks ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
libtest-json Change default panic handler message format. 2023-07-29 11:42:50 +02:00
libtest-junit Add needs-unwind annotations to a couple of tests 2024-03-25 14:19:07 +00:00
libtest-padding rewrite libtest-padding to rmake 2024-06-26 11:44:23 -04:00
libtest-thread-limit Auto merge of #109770 - jyn514:run-make-fulldeps, r=Mark-Simulacrum 2023-04-03 01:34:05 +00:00
link-arg Rewrite and rename `issue-26092` to rmake 2024-06-17 13:51:52 -04:00
link-args-order make assert_stderr_contains print its contents on panic 2024-06-19 11:50:22 -04:00
link-cfg ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
link-dedup Rewrite and rename `issue-26092` to rmake 2024-06-17 13:51:52 -04:00
link-framework Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
link-path-order Fix up a few more tests 2024-05-20 11:13:10 -04:00
linkage-attr-on-static ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
llvm-ident Improve code of `run-make/llvm-ident` 2024-07-08 20:18:21 +02:00
llvm-outputs migrate tests/run-make/llvm-outputs to use rmake.rs 2024-06-10 05:30:58 -04:00
long-linker-command-lines Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
long-linker-command-lines-cmd-exe Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
longjmp-across-rust ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
ls-metadata Rewrite lto-readonly-lib to rmake 2024-06-18 12:55:44 -04:00
lto-avoid-object-duplication rewrite no-builtins-lto to rmake 2024-06-17 15:18:23 -04:00
lto-dylib-dep rewrite lto-dylib-dep to rmake 2024-06-26 13:32:30 -04:00
lto-empty rewrite lto-empty to rmake 2024-06-25 14:27:43 -04:00
lto-linkage-used-attr Update the minimum external LLVM to 17 2024-03-17 10:11:04 -07:00
lto-no-link-whole-rlib ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
lto-readonly-lib make assert_stderr_contains print its contents on panic 2024-06-19 11:50:22 -04:00
lto-smoke Rewrite simple-rlib to rmake 2024-05-28 11:41:53 -04:00
lto-smoke-c ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
macos-deployment-target Raise minimum supported macOS to 10.12 2023-09-23 19:14:25 -05:00
macos-fat-archive Make more of the test suite run on Mac Catalyst 2024-05-28 12:31:33 +02:00
manual-crate-name Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
manual-link ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
many-crates-but-no-match rewrite many-crates-but-no-match to rmake 2024-06-27 11:17:26 -04:00
metadata-dep-info rewrite metadata-dep-info to rmake 2024-06-28 16:45:29 -04:00
metadata-flag-frobs-symbols rewrite forced-unwind-terminate-pof to rmake 2024-06-19 14:39:09 -04:00
metadata-only-crate-no-ice rewrite rmeta-preferred to rmake 2024-07-04 10:05:56 -04:00
min-global-align Forbid implementing `Freeze` even if the trait is stabilized 2024-02-29 14:10:29 +00:00
mingw-export-call-convention rewrite mingw-export-call-convention to rmake 2024-06-25 12:46:58 -04:00
mismatching-target-triples rewrite mismatching-target-triples to rmake 2024-06-21 15:46:34 -04:00
missing-crate-dependency Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
mixing-deps Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
mixing-formats Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
mixing-libs Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
multiple-emits Migrate `run-make/multiple-emits` to `rmake.rs` 2024-06-11 14:09:38 +02:00
native-link-modifier-bundle move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
native-link-modifier-verbatim-linker rewrite native-link-modifier-linker to rmake 2024-06-17 14:45:19 -04:00
native-link-modifier-verbatim-rustc rewrite native-link-modifier-linker to rmake 2024-06-17 14:45:19 -04:00
native-link-modifier-whole-archive Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
no-alloc-shim Ignore test on MSVC for now 2023-05-11 14:47:56 +00:00
no-builtins-attribute Add the `no-builtins` attribute to functions when `no_builtins` is applied at the crate level. 2023-07-18 22:15:47 +08:00
no-builtins-lto rewrite no-builtins-lto to rmake 2024-06-17 15:18:23 -04:00
no-cdylib-as-rdylib port no-cdylib-as-rdylib test 2024-05-14 17:02:20 -04:00
no-duplicate-libs ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
no-input-file Avoid a couple of unnecessary EarlyDiagCtxt uses 2024-06-22 17:06:47 +00:00
no-intermediate-extras Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
non-pie-thread-local Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
non-unicode-env Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
non-unicode-in-incremental-dir Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
notify-all-emit-artifacts Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
obey-crate-type-flag ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05: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 rewrite native-link-modifier-linker to rmake 2024-06-17 14:45:19 -04:00
output-filename-overwrites-input rewrite output-filename-overwrites-input to rmake 2024-06-14 16:21:55 -04:00
output-type-permutations Improve `run-make/output-type-permutations` code and improve `filename_not_in_denylist` API 2024-07-07 13:05:07 +02:00
output-with-hyphens Add new test_while_readonly helper function to run-make-support 2024-06-17 14:37:49 -04:00
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 Run `AbortUnwindingCalls` after generator transform 2023-08-18 13:51:42 +01:00
panic-impl-transitive Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
parallel-rustc-no-overwrite Add new test_while_readonly helper function to run-make-support 2024-06-17 14:37:49 -04: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 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
pdb-alt-path rewrite mingw-export-call-convention to rmake 2024-06-25 12:46:58 -04:00
pdb-buildinfo-cl-cmd Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
pgo-branch-weights Remove `//@ ignore-windows-gnu` from tests that need the profiler 2024-06-14 13:31:46 +10:00
pgo-gen Add shallow_find_files helper function to run-make-support 2024-07-05 10:25:48 -04:00
pgo-gen-lto Remove `//@ ignore-windows-gnu` from tests that need the profiler 2024-06-14 13:31:46 +10:00
pgo-gen-no-imp-symbols Use `-Zno-profiler-runtime` instead of `//@ needs-profiler-support` 2024-06-14 13:31:46 +10:00
pgo-indirect-call-promotion Remove `//@ ignore-windows-gnu` from tests that need the profiler 2024-06-14 13:31:46 +10:00
pgo-use Add shallow_find_files helper function to run-make-support 2024-07-05 10:25:48 -04:00
pointer-auth-link-with-c Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
prefer-dylib Use `fs_wrapper` in `run-make/prefer-dylib` 2024-06-12 11:46:05 +02:00
prefer-rlib Remove unused import in `run-make/prefer-dylib/rmake.rs` 2024-06-12 11:44:33 +02: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 rewrite pretty-print-with-dep-file to rmake 2024-06-26 10:39:45 -04:00
print-calling-conventions move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
print-cfg Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
print-check-cfg Improve `run-make-support` library `args` API 2024-06-30 12:40:24 +02:00
print-native-static-libs De-duplicate all consecutive native libs regardless of their options 2024-06-25 13:18:19 +02:00
print-target-list Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
print-to-output Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
proc-macro-init-order Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
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 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-alt-calling-convention Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-c Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-cross-compilation rewrite used-cdylib-macos to rmake 2024-06-28 16:28:57 -04:00
raw-dylib-custom-dlltool Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-import-name-type Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-inline-cross-dylib Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-link-ordinal Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
raw-dylib-stdcall-ordinal tests/run-make: Use RUSTC_TEST_OP in more places 2023-10-07 08:30:40 +02:00
raw-fn-pointer-opt-undefined-behavior rewrite and rename issue-20626 to rmake 2024-06-25 15:02:19 -04:00
reachable-extern-fn-available-lto Remove unnecessary functions and the last mention of TMPDIR from `run-make-support` 2024-06-08 13:10:55 +02:00
redundant-libs ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
relocation-model rewrite crate-name-priority to rmake 2024-06-20 16:09:39 -04:00
relro-levels Enable cross compilation on `run-make/relro-levels` 2024-06-22 19:44:51 -04:00
remap-path-prefix rmeta_contains functions for remap-path-prefix 2024-06-28 16:30:17 -04:00
remap-path-prefix-dwarf Adjust tests for MacOS having different -Csplit-debuginfo default 2023-10-17 10:11:31 +02:00
repr128-dwarf Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
reproducible-build Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
reproducible-build-2 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
reset-codegen-1 Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
resolve-rename Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04: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 Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
rlib-chain rewrite rlib-chain to rmake 2024-07-02 11:37:58 -04:00
rlib-format-packed-bundled-libs move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
rlib-format-packed-bundled-libs-2 move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
rlib-format-packed-bundled-libs-3 stabilize combining +bundle and +whole-archive link modifiers 2023-08-15 15:51:18 -05:00
rmeta-preferred rewrite rmeta-preferred to rmake 2024-07-04 10:05:56 -04:00
run-in-tmpdir-self-test run-make: add run_in_tmpdir self-test 2024-06-10 10:46:36 +00:00
rust-lld Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
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 Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
rustc-macro-dep-files Improve `print_tts` by changing `tokenstream::Spacing`. 2023-12-11 09:19:09 +11:00
rustdoc-determinism Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
rustdoc-error-lines Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
rustdoc-io-error Disable rmake test rustdoc-io-error on riscv64gc-gnu 2024-07-03 10:12:39 -07:00
rustdoc-map-file tests/run-make: update tests to use new API 2024-06-11 09:14:28 +00:00
rustdoc-output-path Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
rustdoc-scrape-examples-invalid-expr Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
rustdoc-scrape-examples-macros tests/run-make: update tests to use new API 2024-06-11 09:14:28 +00:00
rustdoc-scrape-examples-multiple Migrate `run-make/rustdoc-scrape-examples-multiple` to `rmake.rs` 2024-05-21 12:11:17 +02:00
rustdoc-scrape-examples-ordering Migrate `run-make/rustdoc-scrape-examples-test` to new `rmake.rs` 2024-05-19 15:02:30 +02:00
rustdoc-scrape-examples-remap Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
rustdoc-scrape-examples-test Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
rustdoc-scrape-examples-whitespace Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
rustdoc-shared-flags Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
rustdoc-target-spec-json-path Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
rustdoc-test-args Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
rustdoc-themes Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
rustdoc-verify-output-files Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
rustdoc-with-out-dir-option tests/run-make: update tests to use new API 2024-06-11 09:14:28 +00:00
rustdoc-with-output-option tests/run-make: update tests to use new API 2024-06-11 09:14:28 +00:00
rustdoc-with-short-out-dir-option tests/run-make: update tests to use new API 2024-06-11 09:14:28 +00:00
sanitizer-cdylib-link Enable address sanitizer for MSVC targets using INFERASANLIBS linker flag 2024-01-03 10:00:15 -08:00
sanitizer-dylib-link Enable address sanitizer for MSVC targets using INFERASANLIBS linker flag 2024-01-03 10:00:15 -08:00
sanitizer-staticlib-link Enable address sanitizer for MSVC targets using INFERASANLIBS linker flag 2024-01-03 10:00:15 -08:00
separate-link rewrite allocator-shim-circular-deps to ui test 2024-06-18 14:25:59 -04:00
separate-link-fail rewrite separate-link-fail to rmake.rs 2024-06-17 15:59:39 -04:00
sepcomp-cci-copies rewrite sepcomp-inlining and -separate to rmake.rs 2024-07-08 10:14:42 -04:00
sepcomp-inlining rewrite sepcomp-inlining and -separate to rmake.rs 2024-07-08 10:14:42 -04:00
sepcomp-separate rewrite sepcomp-inlining and -separate to rmake.rs 2024-07-08 10:14:42 -04:00
share-generics-dylib Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
share-generics-export-again rewrite issue64319 and rename 2024-05-17 11:49:20 -04:00
short-ice Add set_backtrace_level helper function to run_make_support 2024-06-11 15:39:54 -04:00
silly-file-names rewrite silly-file-names to rmake 2024-06-28 16:44:50 -04:00
simd-ffi Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
split-debuginfo Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
stable-symbol-names Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
static-dylib-by-default ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
static-extern-type ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
static-pie Improve `target` method API in `run-make-support` 2024-07-01 10:55:57 +02:00
static-unwinding Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
staticlib-blank-lib Move almost all run-make-fulldeps to run-make 2023-03-30 07:34:55 -05:00
staticlib-dylib-linkage Ignore test when cross compiling 2023-04-27 18:22:06 +00:00
std-core-cycle ignore failing cross-compiled run-make tests 2023-03-30 08:46:31 -05:00
stdin-rustc Migrate runmake tests away from custom commands and `command_output` 2024-06-08 19:36:31 +02:00
stdin-rustdoc Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
suspicious-library Remove unnecessary functions and the last mention of TMPDIR from `run-make-support` 2024-06-08 13:10:55 +02:00
symbol-mangling-hashed Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
symbol-visibility Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
symbols-include-type-name rewrite symbols-include-type-name to rmake 2024-07-09 14:30:57 -04:00
symlinked-extern Add need-symlink directive to compiletest 2024-06-23 13:42:52 +00:00
symlinked-libraries Add need-symlink directive to compiletest 2024-06-23 13:42:52 +00:00
symlinked-rlib Add need-symlink directive to compiletest 2024-06-23 13:42:52 +00:00
sysroot-crates-are-unstable Apply changes to fix python linting errors 2023-06-16 20:56:01 -04:00
target-cpu-native rewrite target-without-atomic-cas to rmake 2024-07-08 10:20:42 -04:00
target-specs rewrite target-without-atomic-cas to rmake 2024-07-08 10:20:42 -04:00
target-without-atomic-cas rewrite target-without-atomic-cas to rmake 2024-07-08 10:20:42 -04:00
test-benches Add needs-unwind annotations to tests that need stack unwinding 2023-05-02 12:07:55 +00: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 move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
thumb-none-qemu move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
track-path-dep-info rewrite track-pgo-dep-info to rmake 2024-07-08 10:31:05 -04:00
track-pgo-dep-info rewrite track-pgo-dep-info to rmake 2024-07-08 10:31:05 -04:00
translation Fix `tests/run-make-translation` when download-rustc is enabled 2023-04-19 00:39:20 -05:00
type-mismatch-same-crate-name Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
unknown-mod-stdin rewrite unknown-mod-stdin to rmake 2024-06-28 16:28:24 -04:00
unstable-flag-required move `tools.mk` to run-make 2023-03-30 07:58:50 -05:00
use-suggestions-rust-2018 rewrite use-suggestions-rust-2018 to rmake 2024-06-26 12:04:35 -04:00
used Migrate `run-make/used` to `rmake.rs` 2024-06-17 00:23:28 +02:00
used-cdylib-macos rewrite used-cdylib-macos to rmake 2024-06-28 16:28:57 -04:00
volatile-intrinsics Migrate `volatile-intrinsics` to `rmake` 2024-06-29 08:14:00 -04:00
wasm-abi Refactor `wasm-abi` to use `cmd` 2024-06-29 08:14:56 -04:00
wasm-custom-section Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-custom-sections-opt Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04: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 Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-import-module Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-override-linker Migrate `wasm-override-linker` to `rmake` 2024-06-29 08:14:02 -04:00
wasm-panic-small Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-spurious-import Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-stringify-ints-small Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-symbols-different-module Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-symbols-not-exported Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
wasm-symbols-not-imported Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
weird-output-filenames Migrate `weird-output-filenames` to `rmake` 2024-06-29 08:14:02 -04:00
windows-binary-no-external-deps Fix windows test 2024-06-08 15:40:43 +02:00
windows-safeseh update `run-make/windows-safeseh` compiletest header 2024-06-28 20:32:31 +03:00
windows-spawn Remove all usages of `tmp_dir` from tests 2024-06-07 11:12:24 +02:00
windows-ws2_32 Implement fs wrapper for run_make_support 2024-06-11 09:53:31 -04:00
x86_64-fortanix-unknown-sgx-lvi Run rustfmt on `tests/run-make/`. 2024-05-31 21:30:08 +10:00
README.md run-make: add some basic docs about the test suite's setup 2024-06-08 18:16:49 +00:00
git_clone_sha1.sh Move /src/test to /tests 2023-01-11 09:32:08 +00:00
tools.mk Add synchronization library to run-make flags 2024-02-25 22:28:30 -03:00

README.md

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.