-
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
Use raw-dylib for Windows synchronization functions #124019
Conversation
rustbot has assigned @compiler-errors. Use |
Some changes occurred in compiler/rustc_codegen_cranelift cc @bjorn3 |
Oh silly bot, this is really a libs thing. Just with a bit of cranelift sprinkled on top, r? libs |
5448070
to
b0f972f
Compare
compiler/rustc_codegen_cranelift/patches/0030-Revert-use-raw-dylib-for-Windows-futex-APIs.patch
Outdated
Show resolved
Hide resolved
This comment has been minimized.
This comment has been minimized.
This is a workaround for older mingw `synchronization` import library not working on at least some system.
b0f972f
to
5b024d6
Compare
Looks fine to me, considering that @bors r+ |
Use raw-dylib for Windows synchronization functions Fixes rust-lang#123999 by using the raw-dylib feature to specify the DLL to load the Windows futex functions from (e.g. [`WaitOnAddress`](https://learn.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-waitonaddress)). This avoids reliance on the import library causing that issue. With apologies to `@bjorn3,` as it's currently necessary to revert this for cranelift.
Use raw-dylib for Windows synchronization functions Fixes rust-lang#123999 by using the raw-dylib feature to specify the DLL to load the Windows futex functions from (e.g. [`WaitOnAddress`](https://learn.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-waitonaddress)). This avoids reliance on the import library causing that issue. With apologies to `@bjorn3,` as it's currently necessary to revert this for cranelift.
…kingjubilee Rollup of 9 pull requests Successful merges: - rust-lang#117919 (Introduce perma-unstable `wasm-c-abi` flag) - rust-lang#123406 (Force exhaustion in iter::ArrayChunks::into_remainder) - rust-lang#123752 (Properly handle emojis as literal prefix in macros) - rust-lang#123935 (Don't inline integer literals when they overflow - new attempt) - rust-lang#123980 ( Add an opt-in to store incoming edges in `VecGraph` + misc) - rust-lang#124019 (Use raw-dylib for Windows synchronization functions) - rust-lang#124110 (Fix negating `f16` and `f128` constants) - rust-lang#124112 (Fix ICE when there is a non-Unicode entry in the incremental crate directory) - rust-lang#124116 (when suggesting RUST_BACKTRACE=1, add a special note for Miri's env var isolation) r? `@ghost` `@rustbot` modify labels: rollup
…kingjubilee Rollup of 7 pull requests Successful merges: - rust-lang#123406 (Force exhaustion in iter::ArrayChunks::into_remainder) - rust-lang#123752 (Properly handle emojis as literal prefix in macros) - rust-lang#123935 (Don't inline integer literals when they overflow - new attempt) - rust-lang#123980 ( Add an opt-in to store incoming edges in `VecGraph` + misc) - rust-lang#124019 (Use raw-dylib for Windows synchronization functions) - rust-lang#124110 (Fix negating `f16` and `f128` constants) - rust-lang#124116 (when suggesting RUST_BACKTRACE=1, add a special note for Miri's env var isolation) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#124019 - ChrisDenton:futex-raw-dylib, r=joboet Use raw-dylib for Windows synchronization functions Fixes rust-lang#123999 by using the raw-dylib feature to specify the DLL to load the Windows futex functions from (e.g. [`WaitOnAddress`](https://learn.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-waitonaddress)). This avoids reliance on the import library causing that issue. With apologies to ``@bjorn3,`` as it's currently necessary to revert this for cranelift.
I'm nominating this for a beta backport, even though this isn't technically a Rust issue. See linked issue for more but the short version is that the windows-2019 github action runner comes with a years old mingw that has a bug which will prevent windows-gnu std from working if compiled on that machine. This PR works around the bug. It's a small PR so I think it's worth it to make sure that stable works out of the box on windows-2019. Note that the windows-latest runner isn't affected. |
…Simulacrum [stable] 1.78.0 release https://forge.rust-lang.org/release/process.html#promote-branches-t-3-days-monday This also includes a backport of: * Use raw-dylib for Windows synchronization functions rust-lang#124019 r? `@Mark-Simulacrum`
Fixes #123999 by using the raw-dylib feature to specify the DLL to load the Windows futex functions from (e.g.
WaitOnAddress
). This avoids reliance on the import library causing that issue.With apologies to @bjorn3, as it's currently necessary to revert this for cranelift.