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

Update Windows dependencies #1646

Merged
merged 1 commit into from
Jan 7, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,10 @@ wasm-bindgen = { version = "0.2", optional = true }
js-sys = { version = "0.3", optional = true } # contains FFI bindings for the JS Date API

[target.'cfg(windows)'.dependencies]
windows-targets = { version = "0.52", optional = true }
windows-targets = { version = "0.53", optional = true }

[target.'cfg(windows)'.dev-dependencies]
windows-bindgen = { version = "0.58" } # MSRV is 1.70
windows-bindgen = { version = "0.59" } # MSRV is 1.74

[target.'cfg(unix)'.dependencies]
iana-time-zone = { version = "0.1.45", optional = true, features = ["fallback"] }
Expand Down
4 changes: 2 additions & 2 deletions src/offset/local/win_bindings.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#![allow(non_snake_case, non_upper_case_globals, non_camel_case_types, dead_code, clippy::all)]

windows_targets::link!("kernel32.dll" "system" fn GetTimeZoneInformationForYear(wyear : u16, pdtzi : *const DYNAMIC_TIME_ZONE_INFORMATION, ptzi : *mut TIME_ZONE_INFORMATION) -> BOOL);
windows_targets::link!("kernel32.dll" "system" fn SystemTimeToFileTime(lpsystemtime : *const SYSTEMTIME, lpfiletime : *mut FILETIME) -> BOOL);
windows_targets::link!("kernel32.dll" "system" fn SystemTimeToTzSpecificLocalTime(lptimezoneinformation : *const TIME_ZONE_INFORMATION, lpuniversaltime : *const SYSTEMTIME, lplocaltime : *mut SYSTEMTIME) -> BOOL);
windows_targets::link!("kernel32.dll" "system" fn TzSpecificLocalTimeToSystemTime(lptimezoneinformation : *const TIME_ZONE_INFORMATION, lplocaltime : *const SYSTEMTIME, lpuniversaltime : *mut SYSTEMTIME) -> BOOL);
pub type BOOL = i32;
pub type BOOLEAN = u8;
#[repr(C)]
#[derive(Clone, Copy)]
pub struct DYNAMIC_TIME_ZONE_INFORMATION {
Expand All @@ -16,7 +16,7 @@ pub struct DYNAMIC_TIME_ZONE_INFORMATION {
pub DaylightDate: SYSTEMTIME,
pub DaylightBias: i32,
pub TimeZoneKeyName: [u16; 128],
pub DynamicDaylightTimeDisabled: BOOLEAN,
pub DynamicDaylightTimeDisabled: bool,
}
#[repr(C)]
#[derive(Clone, Copy)]
Expand Down
10 changes: 5 additions & 5 deletions src/offset/local/win_bindings.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
--out src/offset/local/win_bindings.rs
--config flatten sys no-bindgen-comment
--flat --sys --no-comment
--filter
Windows.Win32.System.Time.GetTimeZoneInformationForYear
Windows.Win32.System.Time.SystemTimeToFileTime
Windows.Win32.System.Time.SystemTimeToTzSpecificLocalTime
Windows.Win32.System.Time.TzSpecificLocalTimeToSystemTime
GetTimeZoneInformationForYear
SystemTimeToFileTime
SystemTimeToTzSpecificLocalTime
TzSpecificLocalTimeToSystemTime
3 changes: 1 addition & 2 deletions tests/win_bindings.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@ fn gen_bindings() {
let output = "src/offset/local/win_bindings.rs";
let existing = fs::read_to_string(output).unwrap();

let log = bindgen(["--etc", input]).unwrap();
eprintln!("{}", log);
bindgen(["--etc", input]);

// Check the output is the same as before.
// Depending on the git configuration the file may have been checked out with `\r\n` newlines or
Expand Down
Loading