rust/src/tools
bors 7e7483d26e Auto merge of #110152 - ChrisDenton:windows-sys, r=thomcc
Start using `windows sys` for Windows FFI bindings in std

Switch to using windows-sys for FFI. In order to avoid some currently contentious issues, this uses windows-bindgen to generate a smaller set of bindings instead of using the full crate.

Unlike the windows-sys crate, the generated bindings uses `*mut c_void` for handle types instead of `isize`. This to sidestep opsem concerns about mixing pointer types and integers between languages. Note that `SOCKET` remains defined as an integer but instead of being a usize, it's changed to fit the [standard library definition](a41fc00eaf/library/std/src/os/windows/raw.rs (L12-L16)):

```rust
#[cfg(target_pointer_width = "32")]
pub type SOCKET = u32;
#[cfg(target_pointer_width = "64")]
pub type SOCKET = u64;
```

The generated bindings also customizes the `#[link]` imports. I hope to switch to using raw-dylib but I don't want to tie that too closely with the switch to windows-sys.

---

Changes outside of the bindings are, for the most part, fairly minimal (e.g. some differences in `*mut` vs. `*const` or a few types differ). One issue is that our own bindings sometimes mix in higher level types, like `BorrowedHandle`. This is pretty adhoc though.
2023-05-09 05:20:41 +00:00
..
build-manifest Support loading version information from xz tarballs 2023-04-16 21:29:49 -04:00
build_helper Group entire build steps in the gha logs 2023-04-22 22:20:12 +00:00
bump-stage0 remove some unneeded imports 2023-04-12 19:27:18 +02:00
cargo@569b648b58 Update cargo 2023-05-05 18:00:19 +01:00
cargotest Override linker in cargotest on windows 2022-10-23 19:33:03 -05:00
clippy Rollup merge of #109410 - fmease:iat-alias-kind-inherent, r=compiler-errors 2023-05-08 09:30:21 -07:00
collect-license-metadata Fix remaining typos 2023-04-10 21:02:49 +02:00
compiletest Rollup merge of #111251 - mj10021:issue-109502-follow-up, r=oli-obk 2023-05-06 09:09:34 +09:00
error_index_generator refactor: improve error-index-generator dependency 2023-02-26 20:13:06 +13:00
expand-yaml-anchors Run expand-yaml-anchors in x test tidy 2023-02-05 14:46:52 -06:00
generate-copyright Fix remaining typos 2023-04-10 21:02:49 +02:00
generate-windows-sys Sort windows_sys.lst alphabetically 2023-05-05 20:48:17 +01:00
html-checker parallelize HTML checking tool 2022-07-29 23:26:38 -04:00
jsondocck Fix remaining typos 2023-04-10 21:02:49 +02:00
jsondoclint IAT: Rustdoc integration 2023-05-04 16:59:11 +02:00
linkchecker linkchecker: running from a directory separate from the book 2023-04-20 09:27:52 +01:00
lint-docs Fix x test lint-docs when download-rustc is enabled 2023-04-18 23:08:48 -05:00
lld-wrapper fix lld-wrapper lld flavor detection 2022-09-07 14:51:54 +02:00
miri Rollup merge of #110989 - jyn514:bug-report-url, r=WaffleLapkin 2023-05-06 13:30:04 +02:00
miropt-test-tools add passes to miroptfiles struct and passed to -zdump-mir args 2023-05-04 18:56:32 -04:00
remote-test-client tools/remote-test-{server,client}: Use /data/local/tmp on Android 2022-10-06 13:42:32 -07:00
remote-test-server Use u32 methods instead of manual shifting 2022-12-23 16:08:23 +05:30
replace-version-placeholder Don't skip all directories when tidy-checking 2023-03-27 18:52:47 +00:00
rls chore: remove rustc-workspace-hack 2023-04-16 19:32:20 +01:00
rust-analyzer Remove identity_future from stdlib 2023-05-07 10:52:01 +02:00
rust-demangler mangling_v0: Update tests for the rust-demangler tool 2022-01-08 11:39:34 +08:00
rust-installer Rollup merge of #110188 - Nilstrieb:remove-remove-dir-all, r=jyn514 2023-04-12 17:04:32 +02:00
rustbook bump few deps 2023-04-06 18:21:37 +03:00
rustdoc rustdoc: Use unix_sigpipe instead of rustc_driver::set_sigpipe_handler 2022-10-24 20:40:46 +02:00
rustdoc-gui Spelling librustdoc 2023-04-16 21:44:12 -04:00
rustdoc-js rustdoc: restructure type search engine to pick-and-use IDs 2023-04-17 12:16:54 -07:00
rustdoc-themes
rustfmt Rollup merge of #110989 - jyn514:bug-report-url, r=WaffleLapkin 2023-05-06 13:30:04 +02:00
suggest-tests Fix the test directories suggested by ./x.py suggest 2023-04-30 11:05:13 +10:00
tidy Add deployment-target --print flag for Apple targets 2023-05-05 01:22:17 -05:00
tier-check Encourage developers not to use periods in target names 2022-11-17 10:41:41 +01:00
unicode-table-generator remove some unneeded imports 2023-04-12 19:27:18 +02:00
unstable-book-gen unstable-book-gen: use std::fs::write 2022-08-28 00:40:58 +02:00
x make x look for x.py if shell script does not exist 2023-02-15 15:19:49 +08:00
cherry-pick.sh
publish_toolstate.py rename maybe_delink to maybe_remove_mention 2023-04-11 14:04:50 +02:00