Skip to content
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

Enable msvc for run-make/rust-lld #128656

Merged
merged 1 commit into from
Aug 7, 2024
Merged

Conversation

ChrisDenton
Copy link
Member

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc

@rustbot
Copy link
Collaborator

rustbot commented Aug 4, 2024

r? @jieyouxu

rustbot has assigned @jieyouxu.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 4, 2024
@rustbot
Copy link
Collaborator

rustbot commented Aug 4, 2024

This PR modifies tests/run-make/. If this PR is trying to port a Makefile
run-make test to use rmake.rs, please update the
run-make port tracking issue
so we can track our progress. You can either modify the tracking issue
directly, or you can comment on the tracking issue and link this PR.

cc @jieyouxu

@ChrisDenton
Copy link
Member Author

@bors try

@lqd
Copy link
Member

lqd commented Aug 4, 2024

I don’t remember we’ve implemented self-contained linking other than by using a c/c++ compiler driver link-arg, while msvc needs to change the linker, so it’ll be interesting to see the results.

bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 4, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
@bors
Copy link
Contributor

bors commented Aug 4, 2024

⌛ Trying commit d6c9d64 with merge b3c6a51...

@lqd
Copy link
Member

lqd commented Aug 4, 2024

r=me if it works tho

@bors
Copy link
Contributor

bors commented Aug 4, 2024

☀️ Try build successful - checks-actions
Build commit: b3c6a51 (b3c6a51bf4fc2dfe811fc51a542e6ba065f6043b)

@ChrisDenton
Copy link
Member Author

Success!

@bors r=lqd rollup

@bors
Copy link
Contributor

bors commented Aug 4, 2024

📌 Commit d6c9d64 has been approved by lqd

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 4, 2024
@lqd
Copy link
Member

lqd commented Aug 4, 2024

Ah I think I know why it works even though we didn’t purposefully implement self-contained linking on non-unixy platforms: we can change the linker according to the linker flavor, and we currently use an lld linker-flavor as an implementation detail of self-contained linking. I guess this test will prevent us from being lazy when we refactor this away 😅 .

ChrisDenton added a commit to ChrisDenton/rust that referenced this pull request Aug 5, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 5, 2024
…enton

Rollup of 11 pull requests

Successful merges:

 - rust-lang#128026 (std::thread: available_parallelism implementation for vxWorks proposal.)
 - rust-lang#128471 (rustdoc: Fix handling of `Self` type in search index and refactor its representation)
 - rust-lang#128607 (Use `object` in `run-make/symbols-visibility`)
 - rust-lang#128609 (Remove unnecessary constants from flt2dec dragon)
 - rust-lang#128611 (run-make: Remove cygpath)
 - rust-lang#128630 (docs(resolve): more explain about `target`)
 - rust-lang#128638 (run-make: enable msvc for `link-dedup`)
 - rust-lang#128647 (Enable msvc for link-args-order)
 - rust-lang#128649 (run-make: Enable msvc for `no-duplicate-libs` and `zero-extend-abi-param-passing`)
 - rust-lang#128656 (Enable msvc for run-make/rust-lld)
 - rust-lang#128660 (tests: more crashes)

r? `@ghost`
`@rustbot` modify labels: rollup
@ChrisDenton
Copy link
Member Author

ChrisDenton commented Aug 5, 2024

Failed in rollup... on Apple??? Huh.

#128668 (comment)


fn main() {
// lld-link is used if msvc, otherwise a gnu-compatible lld is used.
let linker_version_flag = if is_msvc() { "--version" } else { "Wl,-v" };
Copy link
Member Author

@ChrisDenton ChrisDenton Aug 5, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, I made a typo of my own. I forgot the dash -. Silly me.

@ChrisDenton
Copy link
Member Author

@bors r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 5, 2024
This is simply a matter of using the right argument for lld-link.
@ChrisDenton
Copy link
Member Author

Let's try that again...

@bors r=lqd

@bors
Copy link
Contributor

bors commented Aug 5, 2024

📌 Commit 1737845 has been approved by lqd

It is now in the queue for this repository.

@bors bors removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 5, 2024
@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Aug 5, 2024
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 5, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 5, 2024
Rollup of 8 pull requests

Successful merges:

 - rust-lang#122049 (Promote riscv64gc-unknown-linux-musl to tier 2)
 - rust-lang#125558 (Tweak type inference for `const` operands in inline asm)
 - rust-lang#128638 (run-make: enable msvc for `link-dedup`)
 - rust-lang#128647 (Enable msvc for link-args-order)
 - rust-lang#128649 (run-make: Enable msvc for `no-duplicate-libs` and `zero-extend-abi-param-passing`)
 - rust-lang#128656 (Enable msvc for run-make/rust-lld)
 - rust-lang#128688 (custom MIR: add support for tail calls)
 - rust-lang#128691 (Update `compiler-builtins` to 0.1.115)

r? `@ghost`
`@rustbot` modify labels: rollup
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 7, 2024
Rollup of 7 pull requests

Successful merges:

 - rust-lang#128206 (Make create_dll_import_lib easier to implement)
 - rust-lang#128221 (Add implied target features to target_feature attribute)
 - rust-lang#128384 (Add tests to ensure MTE tags are preserved across FFI boundaries)
 - rust-lang#128656 (Enable msvc for run-make/rust-lld)
 - rust-lang#128691 (Update `compiler-builtins` to 0.1.117)
 - rust-lang#128700 (Migrate `simd-ffi` `run-make` test to rmake)
 - rust-lang#128758 (Specify a minimum supported version for VxWorks)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 7, 2024
…llaumeGomez

Rollup of 9 pull requests

Successful merges:

 - rust-lang#128206 (Make create_dll_import_lib easier to implement)
 - rust-lang#128424 (minor `effects` cleanups)
 - rust-lang#128527 (More information for fully-qualified suggestion when there are multiple impls)
 - rust-lang#128656 (Enable msvc for run-make/rust-lld)
 - rust-lang#128683 (bootstrap: clear miri's ui test deps when rustc changes)
 - rust-lang#128700 (Migrate `simd-ffi` `run-make` test to rmake)
 - rust-lang#128753 (Don't arbitrarily choose one upper bound for hidden captured region error message)
 - rust-lang#128757 (Migrate `pgo-gen-lto` `run-make` test to rmake)
 - rust-lang#128758 (Specify a minimum supported version for VxWorks)

Failed merges:

 - rust-lang#128679 (codegen: better centralize function declaration attribute computation)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit a05f187 into rust-lang:master Aug 7, 2024
6 checks passed
@rustbot rustbot added this to the 1.82.0 milestone Aug 7, 2024
@ChrisDenton ChrisDenton deleted the rust-lld branch August 7, 2024 16:41
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Aug 7, 2024
Rollup merge of rust-lang#128656 - ChrisDenton:rust-lld, r=lqd

Enable msvc for run-make/rust-lld

This is simply a matter of using the right argument for lld-link.

As a bonus, I also fixed a typo.

try-job: i686-msvc
try-job: x86_64-msvc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants