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

Make create_dll_import_lib easier to implement #128206

Merged
merged 6 commits into from
Aug 7, 2024

Conversation

bjorn3
Copy link
Member

@bjorn3 bjorn3 commented Jul 25, 2024

This will make it easier to implement raw-dylib support in cg_clif and cg_gcc. This PR doesn't yet include an create_dll_import_lib implementation for cg_clif as I need to correctly implement dllimport in cg_clif first before raw-dylib can work at all with cg_clif.

Required for rust-lang/rustc_codegen_cranelift#1345

@bjorn3 bjorn3 added F-raw_dylib `#![feature(raw_dylib)]` A-cranelift Things relevant to the [future] cranelift backend A-gcc Things relevant to the [future] GCC backend labels Jul 25, 2024
@rustbot
Copy link
Collaborator

rustbot commented Jul 25, 2024

r? @fee1-dead

rustbot has assigned @fee1-dead.
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 S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jul 25, 2024
@rustbot
Copy link
Collaborator

rustbot commented Jul 25, 2024

These commits modify the Cargo.lock file. Unintentional changes to Cargo.lock can be introduced when switching branches and rebasing PRs.

If this was unintentional then you should revert the changes before this PR is merged.
Otherwise, you can ignore this comment.

Some changes occurred in compiler/rustc_codegen_gcc

cc @antoyo, @GuillaumeGomez

@bjorn3 bjorn3 changed the title Reduce the amount of code necessary for create_dll_import_lib implementations Make create_dll_import_lib easier to implement Jul 25, 2024
@bors
Copy link
Contributor

bors commented Jul 29, 2024

☔ The latest upstream changes (presumably #125443) made this pull request unmergeable. Please resolve the merge conflicts.

@fee1-dead
Copy link
Member

r? compiler

@rustbot rustbot assigned fmease and unassigned fee1-dead Jul 30, 2024
@jieyouxu
Copy link
Member

jieyouxu commented Aug 6, 2024

r? @jieyouxu

@rustbot rustbot assigned jieyouxu and unassigned fmease Aug 6, 2024
Copy link
Member

@jieyouxu jieyouxu left a comment

Choose a reason for hiding this comment

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

Thanks for the cleanup, the changes look reasonable to me.

@jieyouxu
Copy link
Member

jieyouxu commented Aug 7, 2024

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Aug 7, 2024

📌 Commit 44da6fa has been approved by jieyouxu

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 7, 2024
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
…, r=jieyouxu

Make create_dll_import_lib easier to implement

This will make it easier to implement raw-dylib support in cg_clif and cg_gcc. This PR doesn't yet include an create_dll_import_lib implementation for cg_clif as I need to correctly implement dllimport in cg_clif first before raw-dylib can work at all with cg_clif.

Required for rust-lang/rustc_codegen_cranelift#1345
tgross35 added a commit to tgross35/rust that referenced this pull request Aug 7, 2024
…, r=jieyouxu

Make create_dll_import_lib easier to implement

This will make it easier to implement raw-dylib support in cg_clif and cg_gcc. This PR doesn't yet include an create_dll_import_lib implementation for cg_clif as I need to correctly implement dllimport in cg_clif first before raw-dylib can work at all with cg_clif.

Required for rust-lang/rustc_codegen_cranelift#1345
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
@tgross35
Copy link
Contributor

tgross35 commented Aug 7, 2024

Seems like the ar_archive_writer bump caused problems on ppc #128773 (comment)

@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 7, 2024
Version 0.3.1 has added support for writing import libraries. Version
0.3.2 fixed creating archives containing members of import libraries.
Version 0.3.3 fixed building on big-endian systems.
@bjorn3 bjorn3 force-pushed the import_lib_writing_refactor branch from 44da6fa to f58e737 Compare August 7, 2024 10:52
@bjorn3
Copy link
Member Author

bjorn3 commented Aug 7, 2024

Building on big-endian got broken. Fixed in rust-lang/ar_archive_writer#18 and added a CI check for big-endian systems. I've released it as v0.3.3 and updated this PR to make use of it.

@jieyouxu
Copy link
Member

jieyouxu commented Aug 7, 2024

Thanks, r=me after PR CI is green

@bjorn3
Copy link
Member Author

bjorn3 commented Aug 7, 2024

@bors r=jieyouxu

@bors
Copy link
Contributor

bors commented Aug 7, 2024

📌 Commit f58e737 has been approved by jieyouxu

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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 7, 2024
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 355eb9c into rust-lang:master Aug 7, 2024
6 checks passed
@rustbot rustbot added this to the 1.82.0 milestone Aug 7, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Aug 7, 2024
Rollup merge of rust-lang#128206 - bjorn3:import_lib_writing_refactor, r=jieyouxu

Make create_dll_import_lib easier to implement

This will make it easier to implement raw-dylib support in cg_clif and cg_gcc. This PR doesn't yet include an create_dll_import_lib implementation for cg_clif as I need to correctly implement dllimport in cg_clif first before raw-dylib can work at all with cg_clif.

Required for rust-lang/rustc_codegen_cranelift#1345
@bjorn3 bjorn3 deleted the import_lib_writing_refactor branch August 7, 2024 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-cranelift Things relevant to the [future] cranelift backend A-gcc Things relevant to the [future] GCC backend F-raw_dylib `#![feature(raw_dylib)]` S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants