diff options
author | David CARLIER <devnexen@gmail.com> | 2022-10-07 20:02:49 +0100 |
---|---|---|
committer | David CARLIER <devnexen@gmail.com> | 2022-10-07 20:02:49 +0100 |
commit | b94ddf955e5726b4ec356228bd37c40caab58869 (patch) | |
tree | 805de7faf08f413e1fde28a6212c3cee90e31640 | |
parent | 2dfe1ab9eed52d0f46983414028fe5ec49e0d5e0 (diff) | |
download | rust-libc-b94ddf955e5726b4ec356228bd37c40caab58869.tar.gz |
os_log/signpost for apple api subset
-rw-r--r-- | libc-test/build.rs | 1 | ||||
-rw-r--r-- | libc-test/semver/apple.txt | 17 | ||||
-rw-r--r-- | src/unix/bsd/apple/mod.rs | 24 |
3 files changed, 42 insertions, 0 deletions
diff --git a/libc-test/build.rs b/libc-test/build.rs index 5376c46860..3611ae0923 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -232,6 +232,7 @@ fn test_apple(target: &str) { "netinet/tcp.h", "netinet/udp.h", "os/lock.h", + "os/signpost.h", "poll.h", "pthread.h", "pthread_spis.h", diff --git a/libc-test/semver/apple.txt b/libc-test/semver/apple.txt index 83cd77d9a2..7235418174 100644 --- a/libc-test/semver/apple.txt +++ b/libc-test/semver/apple.txt @@ -1003,6 +1003,14 @@ OFDEL OFILL OLD_TIME ONOEOT +OS_LOG_TYPE_DEBUG +OS_LOG_TYPE_DEFAULT +OS_LOG_TYPE_ERROR +OS_LOG_TYPE_FAULT +OS_LOG_TYPE_INFO +OS_SIGNPOST_EVENT +OS_SIGNPOST_INTERVAL_BEGIN +OS_SIGNPOST_INTERVAL_END OS_UNFAIR_LOCK_INIT OXTABS O_ASYNC @@ -1994,6 +2002,15 @@ open_memstream open_wmemstream openat openpty +os_log_create +os_log_t +os_log_type_t +os_log_type_enabled +os_signpost_enabled +os_signpost_id_generate +os_signpost_id_make_with_pointer +os_signpost_id_t +os_signpost_type_t os_unfair_lock os_unfair_lock_s os_unfair_lock_t diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs index a9438ef57a..1267b8045e 100644 --- a/src/unix/bsd/apple/mod.rs +++ b/src/unix/bsd/apple/mod.rs @@ -124,6 +124,11 @@ pub type pthread_jit_write_callback_t = ::Option<extern "C" fn(ctx: *mut ::c_voi pub type os_unfair_lock = os_unfair_lock_s; pub type os_unfair_lock_t = *mut os_unfair_lock; +pub type os_log_t = *mut ::c_void; +pub type os_log_type_t = u8; +pub type os_signpost_id_t = u64; +pub type os_signpost_type_t = u8; + pub type vm_statistics_t = *mut vm_statistics; pub type vm_statistics_data_t = vm_statistics; pub type vm_statistics64_t = *mut vm_statistics64; @@ -3895,6 +3900,16 @@ pub const OS_UNFAIR_LOCK_INIT: os_unfair_lock = os_unfair_lock { _os_unfair_lock_opaque: 0, }; +pub const OS_LOG_TYPE_DEFAULT: ::os_log_type_t = 0x00; +pub const OS_LOG_TYPE_INFO: ::os_log_type_t = 0x01; +pub const OS_LOG_TYPE_DEBUG: ::os_log_type_t = 0x02; +pub const OS_LOG_TYPE_ERROR: ::os_log_type_t = 0x10; +pub const OS_LOG_TYPE_FAULT: ::os_log_type_t = 0x11; + +pub const OS_SIGNPOST_EVENT: ::os_signpost_type_t = 0x00; +pub const OS_SIGNPOST_INTERVAL_BEGIN: ::os_signpost_type_t = 0x01; +pub const OS_SIGNPOST_INTERVAL_END: ::os_signpost_type_t = 0x02; + pub const MINSIGSTKSZ: ::size_t = 32768; pub const SIGSTKSZ: ::size_t = 131072; @@ -5259,6 +5274,15 @@ extern "C" { pub fn os_unfair_lock_assert_owner(lock: os_unfair_lock_t); pub fn os_unfair_lock_assert_not_owner(lock: os_unfair_lock_t); + pub fn os_log_create(subsystem: *const ::c_char, category: *const ::c_char) -> ::os_log_t; + pub fn os_log_type_enabled(oslog: ::os_log_t, tpe: ::os_log_type_t) -> bool; + pub fn os_signpost_id_make_with_pointer( + log: ::os_log_t, + ptr: *const ::c_void, + ) -> ::os_signpost_id_t; + pub fn os_signpost_id_generate(log: ::os_log_t) -> ::os_signpost_id_t; + pub fn os_signpost_enabled(log: ::os_log_t) -> bool; + pub fn thread_policy_set( thread: thread_t, flavor: thread_policy_flavor_t, |