Skip to content

Commit f682d09

Browse files
authored
Merge pull request #735 from rust-lang/sync_from_rust_2025_07_04
Sync from rust 2025/07/04
2 parents 8a9af5f + 4d16951 commit f682d09

File tree

17 files changed

+68
-622
lines changed

17 files changed

+68
-622
lines changed

.github/workflows/m68k.yml

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -82,16 +82,20 @@ jobs:
8282
- name: Build sample project with target defined as JSON spec
8383
run: |
8484
./y.sh prepare --only-libcore --cross
85-
./y.sh build --sysroot --features compiler_builtins/no-f16-f128 --target-triple m68k-unknown-linux-gnu --target ${{ github.workspace }}/target_specs/m68k-unknown-linux-gnu.json
85+
./y.sh build --sysroot --features compiler-builtins-no-f16-f128 --target-triple m68k-unknown-linux-gnu --target ${{ github.workspace }}/target_specs/m68k-unknown-linux-gnu.json
8686
CG_RUSTFLAGS="-Clinker=m68k-unknown-linux-gnu-gcc" ./y.sh cargo build --manifest-path=./tests/hello-world/Cargo.toml --target ${{ github.workspace }}/target_specs/m68k-unknown-linux-gnu.json
8787
./y.sh clean all
8888
8989
- name: Build
9090
run: |
9191
./y.sh prepare --only-libcore --cross
92-
./y.sh build --sysroot --features compiler_builtins/no-f16-f128 --target-triple m68k-unknown-linux-gnu
92+
./y.sh build --sysroot --features compiler-builtins-no-f16-f128 --target-triple m68k-unknown-linux-gnu
9393
./y.sh test --mini-tests --target-triple m68k-unknown-linux-gnu
94-
CG_GCC_TEST_TARGET=m68k-unknown-linux-gnu ./y.sh test --cargo-tests --target-triple m68k-unknown-linux-gnu
94+
# FIXME: since https://github.com/rust-lang/rust/pull/140809, we cannot run programs for architectures not
95+
# supported by the object crate, since this adds a dependency on symbols.o for the panic runtime.
96+
# And as such, a wrong order of the object files in the linker command now fails with an undefined reference
97+
# to some symbols like __rustc::rust_panic.
98+
#CG_GCC_TEST_TARGET=m68k-unknown-linux-gnu ./y.sh test --cargo-tests --target-triple m68k-unknown-linux-gnu
9599
./y.sh clean all
96100
97101
- name: Prepare dependencies
@@ -100,21 +104,23 @@ jobs:
100104
git config --global user.name "User"
101105
./y.sh prepare --cross
102106
103-
- name: Run tests
104-
run: |
105-
./y.sh test --target-triple m68k-unknown-linux-gnu --release --clean --build-sysroot --sysroot-features compiler_builtins/no-f16-f128 ${{ matrix.commands }}
106-
107-
- name: Run Hello World!
108-
run: |
109-
./y.sh build --target-triple m68k-unknown-linux-gnu
110-
111-
vm_dir=$(pwd)/vm
112-
cd tests/hello-world
113-
CG_RUSTFLAGS="-Clinker=m68k-unknown-linux-gnu-gcc" ../../y.sh cargo build --target m68k-unknown-linux-gnu
114-
sudo cp target/m68k-unknown-linux-gnu/debug/hello_world $vm_dir/home/
115-
sudo chroot $vm_dir qemu-m68k-static /home/hello_world > hello_world_stdout
116-
expected_output="40"
117-
test $(cat hello_world_stdout) == $expected_output || (echo "Output differs. Actual output: $(cat hello_world_stdout)"; exit 1)
107+
# FIXME: We cannot run programs for architectures not supported by the object crate. See comment above.
108+
#- name: Run tests
109+
#run: |
110+
#./y.sh test --target-triple m68k-unknown-linux-gnu --release --clean --build-sysroot --sysroot-features compiler-builtins-no-f16-f128 ${{ matrix.commands }}
111+
112+
# FIXME: We cannot run programs for architectures not supported by the object crate. See comment above.
113+
#- name: Run Hello World!
114+
#run: |
115+
#./y.sh build --target-triple m68k-unknown-linux-gnu
116+
117+
#vm_dir=$(pwd)/vm
118+
#cd tests/hello-world
119+
#CG_RUSTFLAGS="-Clinker=m68k-unknown-linux-gnu-gcc" ../../y.sh cargo build --target m68k-unknown-linux-gnu
120+
#sudo cp target/m68k-unknown-linux-gnu/debug/hello_world $vm_dir/home/
121+
#sudo chroot $vm_dir qemu-m68k-static /home/hello_world > hello_world_stdout
122+
#expected_output="40"
123+
#test $(cat hello_world_stdout) == $expected_output || (echo "Output differs. Actual output: $(cat hello_world_stdout)"; exit 1)
118124

119125
# Summary job for the merge queue.
120126
# ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB!

.github/workflows/release.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,8 @@ jobs:
7878
- name: Run tests
7979
run: |
8080
# FIXME(antoyo): we cannot enable LTO for stdarch tests currently because of some failing LTO tests using proc-macros.
81-
echo -n 'lto = "fat"' >> build_system/build_sysroot/Cargo.toml
81+
# FIXME(antoyo): this should probably not be needed since we embed the LTO bitcode.
82+
printf '[profile.release]\nlto = "fat"\n' >> build/build_sysroot/sysroot_src/library/Cargo.toml
8283
EMBED_LTO_BITCODE=1 ./y.sh test --release --clean --release-sysroot --build-sysroot --keep-lto-tests ${{ matrix.commands }}
8384
8485
- name: Run y.sh cargo build

0 commit comments

Comments
 (0)