-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate libs-through-symlinks
and translation
run-make tests to rmake
#129011
base: master
Are you sure you want to change the base?
Conversation
This PR modifies cc @jieyouxu |
This comment has been minimized.
This comment has been minimized.
☔ The latest upstream changes (presumably #129092) made this pull request unmergeable. Please resolve the merge conflicts. |
// translation of rustc's error messages. | ||
rustc() | ||
.arg("-Ztranslate-lang=tlh") | ||
// .input("test.rs") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remark: commented out
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Original test:
sysroot-missing:
$(RUSTC) $< -Ztranslate-lang=tlh 2>&1 | $(CGREP) "missing locale directory"
Note how the ususal test.rs
next to the section header sysroot-missing:
is absent. I have no idea what the $<
is slotting in.
ea3ebb5
to
af4bdbf
Compare
The job Click to see the possible cause of the failure (guessed by this bot)
|
rm -f $(FAKEROOT)/share | ||
mkdir -p $(FAKEROOT)/share/locale/zh-CN/ | ||
ln -s $(CURDIR)/working.ftl $(FAKEROOT)/share/locale/zh-CN/basic-translation.ftl | ||
$(RUSTC) $< --sysroot $(FAKEROOT) -Ztranslate-lang=zh-CN 2>&1 | $(CGREP) "this is a test message" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remark (to myself): $< ?
☔ The latest upstream changes (presumably #129443) made this pull request unmergeable. Please resolve the merge conflicts. |
@rustbot blocked (on fixing symlink cleanup in compiletest and bootstrap) |
The symlink trouble I observed previously from compiletest and bootstrap likely came from somehow under non-admin mode artifacts can be produced under admin ownership, which doesn't block this PR now that run_make_support symlink handling is rectified. |
@jieyouxu Nice joke, this had to be reverted then re-fixed in #134659. |
libs-through-symlink extracted to #134829. |
…inks, r=lqd Migrate `libs-through-symlink` to rmake.rs Part of rust-lang#121876. This PR migrates `tests/run-make/libs-through-symlink/` to use rmake.rs. - Regression test for rust-lang#13890. - Original fix PR is rust-lang#13903. - Document test intent, backlink to rust-lang#13890 and fix PR rust-lang#13903. - Fix the test logic: the `Makefile` version seems to not actually be exercising the "library search traverses symlink" logic, because the actual symlinked-to-library is present under the `$(TMPDIR)` directory tree when `bar.rs` is compiled, because the `$(RUSTC)` invocation has an implicit `-L $(TMPDIR)`. The symlink itself was actually broken, i.e. it should've been `ln -nsf $(TMPDIR)/outdir/$(NAME) $(TMPDIR)` but it used `ln -nsf outdir/$(NAME) $(TMPDIR)`. The rmake.rs version now explicitly separates the two directory trees and sets the CWD of the `bar.rs` rustc invocation so that the actual library is *not* present under its CWD tree. I.e. it is now ``` $test_output/ # rustc foo.rs -o actual_lib_dir/libfoo.rlib actual_lib_dir/ libfoo.rlib symlink_lib_dir/ # CWD set; rustc -L . bar.rs libfoo.rlib --> $test_output/actual_lib_dir/libfoo.rlib ``` Partially supersedes rust-lang#129011. This PR is co-authored with `@Oneirical.` r? compiler
Rollup merge of rust-lang#134829 - jieyouxu:migrate-libs-through-symlinks, r=lqd Migrate `libs-through-symlink` to rmake.rs Part of rust-lang#121876. This PR migrates `tests/run-make/libs-through-symlink/` to use rmake.rs. - Regression test for rust-lang#13890. - Original fix PR is rust-lang#13903. - Document test intent, backlink to rust-lang#13890 and fix PR rust-lang#13903. - Fix the test logic: the `Makefile` version seems to not actually be exercising the "library search traverses symlink" logic, because the actual symlinked-to-library is present under the `$(TMPDIR)` directory tree when `bar.rs` is compiled, because the `$(RUSTC)` invocation has an implicit `-L $(TMPDIR)`. The symlink itself was actually broken, i.e. it should've been `ln -nsf $(TMPDIR)/outdir/$(NAME) $(TMPDIR)` but it used `ln -nsf outdir/$(NAME) $(TMPDIR)`. The rmake.rs version now explicitly separates the two directory trees and sets the CWD of the `bar.rs` rustc invocation so that the actual library is *not* present under its CWD tree. I.e. it is now ``` $test_output/ # rustc foo.rs -o actual_lib_dir/libfoo.rlib actual_lib_dir/ libfoo.rlib symlink_lib_dir/ # CWD set; rustc -L . bar.rs libfoo.rlib --> $test_output/actual_lib_dir/libfoo.rlib ``` Partially supersedes rust-lang#129011. This PR is co-authored with `@Oneirical.` r? compiler
…inks, r=lqd Migrate `libs-through-symlink` to rmake.rs Part of rust-lang#121876. This PR migrates `tests/run-make/libs-through-symlink/` to use rmake.rs. - Regression test for rust-lang#13890. - Original fix PR is rust-lang#13903. - Document test intent, backlink to rust-lang#13890 and fix PR rust-lang#13903. - Fix the test logic: the `Makefile` version seems to not actually be exercising the "library search traverses symlink" logic, because the actual symlinked-to-library is present under the `$(TMPDIR)` directory tree when `bar.rs` is compiled, because the `$(RUSTC)` invocation has an implicit `-L $(TMPDIR)`. The symlink itself was actually broken, i.e. it should've been `ln -nsf $(TMPDIR)/outdir/$(NAME) $(TMPDIR)` but it used `ln -nsf outdir/$(NAME) $(TMPDIR)`. The rmake.rs version now explicitly separates the two directory trees and sets the CWD of the `bar.rs` rustc invocation so that the actual library is *not* present under its CWD tree. I.e. it is now ``` $test_output/ # rustc foo.rs -o actual_lib_dir/libfoo.rlib actual_lib_dir/ libfoo.rlib symlink_lib_dir/ # CWD set; rustc -L . bar.rs libfoo.rlib --> $test_output/actual_lib_dir/libfoo.rlib ``` Partially supersedes rust-lang#129011. This PR is co-authored with `@Oneirical.` r? compiler
Part of #121876 and the associated Google Summer of Code project.
Everything here works locally... except line 57 (the test works if it is commented out):
This will therefore initially fail CI.
try-job: aarch64-gnu
try-job: aarch64-apple
try-job: x86_64-msvc
try-job: i686-mingw
try-job: test-various
try-job: armhf-gnu