| { | ||
| "git": { | ||
| "sha1": "b1fd610c7eb6026c108f318874283525871b0e77" | ||
| "sha1": "71d5bfcc1bda05da1783666fc2cd7d9669c9c4c8" | ||
| }, | ||
| "path_in_vcs": "" | ||
| } |
+12
-4
@@ -16,2 +16,4 @@ use std::env::VarError; | ||
| "emscripten_old_stat_abi", | ||
| // Should be enabled by users if esp-idf (>=6.0) is build with picolibc instead of newlib. | ||
| "espidf_picolibc", | ||
| "espidf_time32", | ||
@@ -32,4 +34,6 @@ "freebsd10", | ||
| "musl_v1_2_3", | ||
| // Corresponds to `_REDIR_TIME64` in musl | ||
| // musl v1.2.3+ && 32-bit: time_t is i64, struct layouts change | ||
| "musl32_time64", | ||
| // Corresponds to `_REDIR_TIME64` in musl: symbol redirects to __*_time64 | ||
| "musl_redir_time64", | ||
| "vxworks_lt_25_09", | ||
@@ -56,4 +60,5 @@ ]; | ||
| /// Musl architectures that set `#define _REDIR_TIME64 1`. | ||
| const MUSL_REDIR_TIME64_ARCHES: &[&str] = &["arm", "hexagon", "mips", "powerpc", "x86"]; | ||
| /// Musl architectures that define `_REDIR_TIME64` (i.e. those that transitioned | ||
| /// from 32-bit to 64-bit `time_t` and need `__*_time64` symbol redirects). | ||
| const MUSL_REDIR_TIME64_ARCHES: &[&str] = &["arm", "mips", "powerpc", "x86"]; | ||
@@ -123,6 +128,9 @@ fn main() { | ||
| set_cfg("musl_v1_2_3"); | ||
| if MUSL_REDIR_TIME64_ARCHES.contains(&target_arch.as_str()) { | ||
| if target_ptr_width == "32" { | ||
| set_cfg("musl32_time64"); | ||
| set_cfg("linux_time_bits64"); | ||
| } | ||
| if MUSL_REDIR_TIME64_ARCHES.contains(&target_arch.as_str()) { | ||
| set_cfg("musl_redir_time64"); | ||
| } | ||
| } | ||
@@ -129,0 +137,0 @@ |
+1
-1
@@ -7,3 +7,3 @@ # This file is automatically @generated by Cargo. | ||
| name = "libc" | ||
| version = "0.2.184" | ||
| version = "0.2.185" | ||
| dependencies = [ | ||
@@ -10,0 +10,0 @@ "rustc-std-workspace-core", |
+1
-1
@@ -16,3 +16,3 @@ # THIS FILE IS AUTOMATICALLY GENERATED BY CARGO | ||
| name = "libc" | ||
| version = "0.2.184" | ||
| version = "0.2.185" | ||
| authors = ["The Rust Project Developers"] | ||
@@ -19,0 +19,0 @@ build = "build.rs" |
@@ -198,3 +198,3 @@ //! Header: `pthread.h` | ||
| #[cfg_attr(gnu_time_bits64, link_name = "__pthread_mutex_timedlock64")] | ||
| #[cfg_attr(musl32_time64, link_name = "__pthread_mutex_timedlock_time64")] | ||
| #[cfg_attr(musl_redir_time64, link_name = "__pthread_mutex_timedlock_time64")] | ||
| pub fn pthread_mutex_timedlock( | ||
@@ -201,0 +201,0 @@ lock: *mut crate::pthread_mutex_t, |
@@ -44,3 +44,3 @@ //! Header: `sys/socket.h` | ||
| ) -> c_int; | ||
| #[cfg_attr(musl32_time64, link_name = "__recvmmsg_time64")] | ||
| #[cfg_attr(musl_redir_time64, link_name = "__recvmmsg_time64")] | ||
| pub fn recvmmsg( | ||
@@ -47,0 +47,0 @@ sockfd: c_int, |
+1
-1
@@ -35,3 +35,3 @@ //! Platform-agnostic support types. | ||
| fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { | ||
| // Taken frmo `MaybeUninit`'s debug implementation | ||
| // Taken from `MaybeUninit`'s debug implementation | ||
| // NB: there is no `.pad_fmt` so we can't use a simpler `format_args!("Padding<{..}>"). | ||
@@ -38,0 +38,0 @@ let full_name = core::any::type_name::<Self>(); |
@@ -64,3 +64,5 @@ use crate::prelude::*; | ||
| pub mode: crate::mode_t, | ||
| pub __seq: c_ushort, | ||
| pub __seq: c_int, | ||
| __pad1: Padding<c_long>, | ||
| __pad2: Padding<c_long>, | ||
| } | ||
@@ -111,2 +113,3 @@ | ||
| pub const EBADE: c_int = 52; | ||
| pub const EBADFD: c_int = 77; | ||
| pub const EBADMSG: c_int = 74; | ||
@@ -175,4 +178,7 @@ pub const EBADR: c_int = 53; | ||
| pub const EPFNOSUPPORT: c_int = 96; | ||
| pub const EPROTOTYPE: c_int = 91; | ||
| pub const EPROTONOSUPPORT: c_int = 93; | ||
| pub const EREMCHG: c_int = 78; | ||
| pub const ERESTART: c_int = 85; | ||
| pub const EREMOTEIO: c_int = 121; | ||
| pub const ERFKILL: c_int = 132; | ||
@@ -189,3 +195,3 @@ pub const ESHUTDOWN: c_int = 108; | ||
| pub const EXFULL: c_int = 54; | ||
| pub const EXTPROC: c_int = 65536; | ||
| pub const EXTPROC: crate::tcflag_t = 65536; | ||
| pub const F_EXLCK: c_int = 4; | ||
@@ -198,3 +204,3 @@ pub const F_GETLK: c_int = 12; | ||
| pub const F_LINUX_SPECIFIC_BASE: c_int = 1024; | ||
| pub const FLUSHO: c_int = 4096; | ||
| pub const FLUSHO: crate::tcflag_t = 4096; | ||
| pub const F_OWNER_PGRP: c_int = 2; | ||
@@ -209,3 +215,3 @@ pub const F_OWNER_PID: c_int = 1; | ||
| pub const F_SHLCK: c_int = 8; | ||
| pub const IEXTEN: c_int = 32768; | ||
| pub const IEXTEN: crate::tcflag_t = 32768; | ||
| pub const MAP_ANON: c_int = 32; | ||
@@ -221,2 +227,3 @@ pub const MAP_DENYWRITE: c_int = 2048; | ||
| pub const MAP_STACK: c_int = 131072; | ||
| pub const MAP_SYNC: c_int = 0x080000; | ||
| pub const MAP_UNINITIALIZED: c_int = 0; | ||
@@ -235,2 +242,3 @@ pub const O_APPEND: c_int = 1024; | ||
| pub const O_SYNC: c_int = 1052672; | ||
| pub const O_RSYNC: c_int = 1052672; | ||
| pub const PF_FILE: c_int = 1; | ||
@@ -276,2 +284,8 @@ pub const PF_KCM: c_int = 41; | ||
| pub const SOL_RXRPC: c_int = 272; | ||
| pub const POLLWRNORM: c_short = 256; | ||
| pub const POLLWRBAND: c_short = 512; | ||
| pub const MADV_SOFT_OFFLINE: c_int = 101; | ||
| pub const MCL_CURRENT: c_int = 1; | ||
| pub const MCL_FUTURE: c_int = 2; | ||
| pub const MCL_ONFAULT: c_int = 4; | ||
@@ -317,3 +331,3 @@ pub const SYS3264_fadvise64: c_int = 223; | ||
| pub const SYS_connect: c_int = 203; | ||
| pub const SYS_copy_file_range: c_int = -1; // FIXME(hexagon) | ||
| pub const SYS_copy_file_range: c_long = 285; | ||
| pub const SYS_creat: c_int = 1064; | ||
@@ -568,2 +582,3 @@ pub const SYS_delete_module: c_int = 106; | ||
| pub const SYS_statfs64: c_int = 43; | ||
| pub const SYS_statfs: c_int = 43; | ||
| pub const SYS_swapoff: c_int = 225; | ||
@@ -635,2 +650,8 @@ pub const SYS_swapon: c_int = 224; | ||
| pub const SYS_mount_setattr: c_long = 442; | ||
| pub const SYS_userfaultfd: c_long = 282; | ||
| pub const SYS_membarrier: c_long = 283; | ||
| pub const SYS_mlock2: c_long = 284; | ||
| pub const SYS_preadv2: c_long = 286; | ||
| pub const SYS_pwritev2: c_long = 287; | ||
| pub const SYS_futex_waitv: c_long = 449; | ||
| pub const TIOCM_LOOP: c_int = 32768; | ||
@@ -640,3 +661,3 @@ pub const TIOCM_OUT1: c_int = 8192; | ||
| pub const TIOCSER_TEMT: c_int = 1; | ||
| pub const TOSTOP: c_int = 256; | ||
| pub const TOSTOP: crate::tcflag_t = 256; | ||
| pub const VEOF: c_int = 4; | ||
@@ -646,1 +667,67 @@ pub const VEOL2: c_int = 16; | ||
| pub const VMIN: c_int = 6; | ||
| pub const CBAUD: crate::tcflag_t = 4111; | ||
| pub const CIBAUD: crate::tcflag_t = 269418496; | ||
| pub const CLOCAL: crate::tcflag_t = 2048; | ||
| pub const CREAD: crate::tcflag_t = 128; | ||
| pub const CS6: crate::tcflag_t = 16; | ||
| pub const CS7: crate::tcflag_t = 32; | ||
| pub const CS8: crate::tcflag_t = 48; | ||
| pub const CSIZE: crate::tcflag_t = 48; | ||
| pub const CSTOPB: crate::tcflag_t = 64; | ||
| pub const HUPCL: crate::tcflag_t = 1024; | ||
| pub const PARENB: crate::tcflag_t = 256; | ||
| pub const PARODD: crate::tcflag_t = 512; | ||
| pub const ECHOCTL: crate::tcflag_t = 512; | ||
| pub const ECHOE: crate::tcflag_t = 16; | ||
| pub const ECHOK: crate::tcflag_t = 32; | ||
| pub const ECHOKE: crate::tcflag_t = 2048; | ||
| pub const ECHONL: crate::tcflag_t = 64; | ||
| pub const ECHOPRT: crate::tcflag_t = 1024; | ||
| pub const ICANON: crate::tcflag_t = 2; | ||
| pub const ISIG: crate::tcflag_t = 1; | ||
| pub const IXOFF: crate::tcflag_t = 4096; | ||
| pub const IXON: crate::tcflag_t = 1024; | ||
| pub const NOFLSH: crate::tcflag_t = 128; | ||
| pub const PENDIN: crate::tcflag_t = 16384; | ||
| pub const BSDLY: crate::tcflag_t = 8192; | ||
| pub const CRDLY: crate::tcflag_t = 1536; | ||
| pub const FFDLY: crate::tcflag_t = 32768; | ||
| pub const NLDLY: crate::tcflag_t = 256; | ||
| pub const OLCUC: crate::tcflag_t = 2; | ||
| pub const ONLCR: crate::tcflag_t = 4; | ||
| pub const TABDLY: crate::tcflag_t = 6144; | ||
| pub const VTDLY: crate::tcflag_t = 16384; | ||
| pub const XTABS: crate::tcflag_t = 6144; | ||
| pub const BS1: crate::tcflag_t = 8192; | ||
| pub const CBAUDEX: crate::tcflag_t = 4096; | ||
| pub const CR1: crate::tcflag_t = 512; | ||
| pub const CR2: crate::tcflag_t = 1024; | ||
| pub const CR3: crate::tcflag_t = 1536; | ||
| pub const FF1: crate::tcflag_t = 32768; | ||
| pub const TAB1: crate::tcflag_t = 2048; | ||
| pub const TAB2: crate::tcflag_t = 4096; | ||
| pub const TAB3: crate::tcflag_t = 6144; | ||
| pub const VT1: crate::tcflag_t = 16384; | ||
| pub const VDISCARD: usize = 13; | ||
| pub const VREPRINT: usize = 12; | ||
| pub const VSTART: usize = 8; | ||
| pub const VSTOP: usize = 9; | ||
| pub const VSUSP: usize = 10; | ||
| pub const VSWTC: usize = 7; | ||
| pub const VTIME: usize = 5; | ||
| pub const VWERASE: usize = 14; | ||
| pub const B57600: crate::speed_t = 4097; | ||
| pub const B115200: crate::speed_t = 4098; | ||
| pub const B230400: crate::speed_t = 4099; | ||
| pub const B460800: crate::speed_t = 4100; | ||
| pub const B500000: crate::speed_t = 4101; | ||
| pub const B576000: crate::speed_t = 4102; | ||
| pub const B921600: crate::speed_t = 4103; | ||
| pub const B1000000: crate::speed_t = 4104; | ||
| pub const B1152000: crate::speed_t = 4105; | ||
| pub const B1500000: crate::speed_t = 4106; | ||
| pub const B2000000: crate::speed_t = 4107; | ||
| pub const B2500000: crate::speed_t = 4108; | ||
| pub const B3000000: crate::speed_t = 4109; | ||
| pub const B3500000: crate::speed_t = 4110; | ||
| pub const B4000000: crate::speed_t = 4111; |
@@ -768,3 +768,3 @@ use crate::off64_t; | ||
| ) -> c_int; | ||
| #[cfg_attr(musl32_time64, link_name = "__gettimeofday_time64")] | ||
| #[cfg_attr(musl_redir_time64, link_name = "__gettimeofday_time64")] | ||
| pub fn gettimeofday(tp: *mut crate::timeval, tz: *mut c_void) -> c_int; | ||
@@ -805,5 +805,5 @@ pub fn ptrace(request: c_int, ...) -> c_long; | ||
| #[cfg_attr(musl32_time64, link_name = "__adjtimex_time64")] | ||
| #[cfg_attr(musl_redir_time64, link_name = "__adjtimex_time64")] | ||
| pub fn adjtimex(buf: *mut crate::timex) -> c_int; | ||
| #[cfg_attr(musl32_time64, link_name = "__clock_adjtime64")] | ||
| #[cfg_attr(musl_redir_time64, link_name = "__clock_adjtime64")] | ||
| pub fn clock_adjtime(clk_id: crate::clockid_t, buf: *mut crate::timex) -> c_int; | ||
@@ -876,3 +876,3 @@ | ||
| #[cfg_attr( | ||
| all(musl32_time64, target_pointer_width = "32"), | ||
| all(musl_redir_time64, target_pointer_width = "32"), | ||
| link_name = "__pthread_timedjoin_np_time64" | ||
@@ -879,0 +879,0 @@ )] |
@@ -153,12 +153,12 @@ //! ARMv6K Nintendo 3DS C Newlib definitions | ||
| pub const POLLIN: c_short = 0x0001; | ||
| pub const POLLPRI: c_short = 0x0002; | ||
| pub const POLLOUT: c_short = 0x0004; | ||
| pub const POLLRDNORM: c_short = 0x0040; | ||
| pub const POLLWRNORM: c_short = POLLOUT; | ||
| pub const POLLRDBAND: c_short = 0x0080; | ||
| pub const POLLWRBAND: c_short = 0x0100; | ||
| pub const POLLERR: c_short = 0x0008; | ||
| pub const POLLHUP: c_short = 0x0010; | ||
| pub const POLLNVAL: c_short = 0x0020; | ||
| pub const POLLIN: c_int = 0x0001; | ||
| pub const POLLPRI: c_int = 0x0002; | ||
| pub const POLLOUT: c_int = 0x0004; | ||
| pub const POLLRDNORM: c_int = 0x0040; | ||
| pub const POLLWRNORM: c_int = POLLOUT; | ||
| pub const POLLRDBAND: c_int = 0x0080; | ||
| pub const POLLWRBAND: c_int = 0x0100; | ||
| pub const POLLERR: c_int = 0x0008; | ||
| pub const POLLHUP: c_int = 0x0010; | ||
| pub const POLLNVAL: c_int = 0x0020; | ||
@@ -165,0 +165,0 @@ pub const EAI_AGAIN: c_int = 2; |
@@ -518,5 +518,13 @@ use crate::prelude::*; | ||
| pub const O_RDWR: c_int = 2; | ||
| pub const O_APPEND: c_int = 8; | ||
| pub const O_CREAT: c_int = 512; | ||
| pub const O_TRUNC: c_int = 1024; | ||
| cfg_if! { | ||
| if #[cfg(espidf_picolibc)] { | ||
| pub const O_APPEND: c_int = 1024; | ||
| pub const O_CREAT: c_int = 64; | ||
| pub const O_TRUNC: c_int = 512; | ||
| } else { | ||
| pub const O_APPEND: c_int = 8; | ||
| pub const O_CREAT: c_int = 512; | ||
| pub const O_TRUNC: c_int = 1024; | ||
| } | ||
| } | ||
| pub const O_EXCL: c_int = 2048; | ||
@@ -523,0 +531,0 @@ pub const O_SYNC: c_int = 8192; |
@@ -1312,2 +1312,13 @@ use crate::prelude::*; | ||
| // semaphore.h | ||
| pub fn sem_destroy(sem: *mut sem_t) -> c_int; | ||
| pub fn sem_init(sem: *mut sem_t, pshared: c_int, value: c_uint) -> c_int; | ||
| pub fn sem_clockwait( | ||
| sem: *mut sem_t, | ||
| clock_id: clockid_t, | ||
| abstime: *const crate::timespec, | ||
| ) -> c_int; | ||
| pub fn sem_timedwait(sem: *mut sem_t, abstime: *const crate::timespec) -> c_int; | ||
| pub fn sem_getvalue(sem: *mut sem_t, sval: *mut c_int) -> c_int; | ||
| // signal.h | ||
@@ -1314,0 +1325,0 @@ pub fn pthread_sigmask( |
| use crate::prelude::*; | ||
| // The below configuration for machines with 32-bit word size aligns with the | ||
| // declaration in the `mingw-w64` headers. | ||
| cfg_if! { | ||
@@ -13,5 +15,5 @@ if #[cfg(target_pointer_width = "64")] { | ||
| s_no_extra_traits! { | ||
| #[repr(align(16))] | ||
| #[repr(align(8))] | ||
| pub struct max_align_t { | ||
| priv_: [i64; 6], | ||
| priv_: [i64; 3], | ||
| } | ||
@@ -18,0 +20,0 @@ } |
+11
-0
@@ -271,2 +271,13 @@ //! Windows CRT definitions | ||
| pub fn fprintf(stream: *mut FILE, format: *const c_char, ...) -> c_int; | ||
| pub fn snprintf( | ||
| buffer: *mut c_char, | ||
| count: size_t, | ||
| format: *const c_char, | ||
| ... | ||
| ) -> c_int; | ||
| pub fn sprintf(buffer: *mut c_char, format: *const c_char, ...) -> c_int; | ||
| pub fn scanf(format: *const c_char, ...) -> c_int; | ||
| pub fn sscanf(buffer: *const c_char, format: *const c_char, ...) -> c_int; | ||
| pub fn fscanf(stream: *mut FILE, format: *const c_char, ...) -> c_int; | ||
| } | ||
@@ -273,0 +284,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display