Use ar_archive_writer for writing COFF import libs on all backends#129164
Use ar_archive_writer for writing COFF import libs on all backends#129164bors merged 1 commit intorust-lang:masterfrom
ar_archive_writer for writing COFF import libs on all backends#129164Conversation
|
These commits modify the If this was unintentional then you should revert the changes before this PR is merged. Some changes occurred in compiler/rustc_codegen_cranelift cc @bjorn3 |
This comment has been minimized.
This comment has been minimized.
jieyouxu
left a comment
There was a problem hiding this comment.
This seems reasonable to me. Do we want any tests (even just a sanity check) for this (in terms of integration w/ ar_archive_writer)? Or does ar_archive_writer have sufficient tests?
|
Since this PR would also close the linked issue, is it possible to have a regression test? |
I think this should be covered by our existing raw-dylib tests. They should fail if anything goes wrong.
I can try. |
|
This PR modifies cc @jieyouxu |
This comment has been minimized.
This comment has been minimized.
|
@bors r+ |
Use `ar_archive_writer` for writing COFF import libs on all backends This is mostly the same as the llvm backend but with the cranelift version copy/pasted in place of the LLVM library. Also updates ar_archive_writer to 0.4.0 which fixes rust-lang#129020
Rollup of 9 pull requests Successful merges: - rust-lang#128786 (Detect multiple crate versions on method not found) - rust-lang#128982 (Re-enable more debuginfo tests on Windows) - rust-lang#128989 (Emit an error for invalid use of the linkage attribute) - rust-lang#129115 (Re-enable `dump-ice-to-disk` for Windows) - rust-lang#129164 (Use `ar_archive_writer` for writing COFF import libs on all backends) - rust-lang#129167 (mir/pretty: use `Option` instead of `Either<Once, Empty>`) - rust-lang#129168 (Return correct HirId when finding body owner in diagnostics) - rust-lang#129173 (Fix `is_val_statically_known` for floats) - rust-lang#129185 (Port `run-make/libtest-json/validate_json.py` to Rust) r? `@ghost` `@rustbot` modify labels: rollup
|
Failed in rollup #129198 (comment) @bors r- |
|
While I figure out what went wrong, let's make sure x86_64 passes @bors try |
Use `ar_archive_writer` for writing COFF import libs on all backends This is mostly the same as the llvm backend but with the cranelift version copy/pasted in place of the LLVM library. Also updates ar_archive_writer to 0.4.0 which fixes rust-lang#129020 try-job: x86_64-msvc
This comment has been minimized.
This comment has been minimized.
|
💔 Test failed - checks-actions |
|
... weird |
|
Hm, it seems to work on x86_64 with MSVC's So I think I'll edit this to disable the comdat option and just land the unification of COFF writing for now. It might be a good idea to land them separately anyway. |
|
@bors try |
Use `ar_archive_writer` for writing COFF import libs on all backends This is mostly the same as the llvm backend but with the cranelift version copy/pasted in place of the LLVM library. try-job: x86_64-msvc try-job: i686-msvc try-job: i686-mingw try-job: aarch64-gnu try-job: aarch64-apple try-job: test-various try-job: armhf-gnu
|
☀️ Try build successful - checks-actions |
|
Thanks! @bors r+ |
Rollup of 5 pull requests Successful merges: - rust-lang#129164 (Use `ar_archive_writer` for writing COFF import libs on all backends) - rust-lang#129173 (Fix `is_val_statically_known` for floats) - rust-lang#129185 (Port `run-make/libtest-json/validate_json.py` to Rust) - rust-lang#129203 (Use cnum for extern crate data key) - rust-lang#129221 (Remove JohnTitor from review rotation) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#129164 - ChrisDenton:comdat, r=jieyouxu Use `ar_archive_writer` for writing COFF import libs on all backends This is mostly the same as the llvm backend but with the cranelift version copy/pasted in place of the LLVM library. try-job: x86_64-msvc try-job: i686-msvc try-job: i686-mingw try-job: aarch64-gnu try-job: aarch64-apple try-job: test-various try-job: armhf-gnu
This is mostly the same as the llvm backend but with the cranelift version copy/pasted in place of the LLVM library.
try-job: x86_64-msvc
try-job: i686-msvc
try-job: i686-mingw
try-job: aarch64-gnu
try-job: aarch64-apple
try-job: test-various
try-job: armhf-gnu