diff options
author | David LeGare <legare@google.com> | 2022-06-13 21:34:52 +0000 |
---|---|---|
committer | David LeGare <legare@google.com> | 2022-06-13 23:47:20 +0000 |
commit | fe9c7c0033270097f777546de5ccdcbf6f756722 (patch) | |
tree | 9e49ab26b75be509397aac4b7dab60905c80a2e9 /patches | |
parent | 24616b79452ca8d578b04999f8d9f4e8d1e39341 (diff) | |
download | libc-fe9c7c0033270097f777546de5ccdcbf6f756722.tar.gz |
Update Trusty support patch
Add additional items that were missed in the original patch.
Bug: 193278128
Test: make
Change-Id: I374108f50a9fc822fa8850fa0244f57c089017c5
Diffstat (limited to 'patches')
-rw-r--r-- | patches/std.diff | 9 | ||||
-rw-r--r-- | patches/trusty.patch | 33 |
2 files changed, 28 insertions, 14 deletions
diff --git a/patches/std.diff b/patches/std.diff index f9b599df..89e65f99 100644 --- a/patches/std.diff +++ b/patches/std.diff @@ -1,12 +1,13 @@ Index: libc/src/lib.rs =================================================================== ---- libc.orig/src/lib.rs -+++ libc/src/lib.rs -@@ -30,6 +30,9 @@ - #![cfg_attr(target_os = "redox", feature(static_nobundle))] +--- a/src/lib.rs ++++ b/src/lib.rs +@@ -30,6 +30,10 @@ + )] #![cfg_attr(libc_const_extern_fn, feature(const_extern_fn))] +// ANDROID: Use std to allow building as a dylib. ++#[cfg(android_dylib)] +extern crate std; + #[macro_use] diff --git a/patches/trusty.patch b/patches/trusty.patch index 205a99e4..94567b1a 100644 --- a/patches/trusty.patch +++ b/patches/trusty.patch @@ -1,19 +1,19 @@ -From dc028fa4f316bec221c9b59d02a1c2648bb1cbbd Mon Sep 17 00:00:00 2001 +From e8131d6a00005b4686f26d25d8617dd83540e98d Mon Sep 17 00:00:00 2001 From: David LeGare <legare@google.com> -Date: Mon, 23 May 2022 17:58:51 +0000 +Date: Mon, 13 Jun 2022 22:23:23 +0000 Subject: [PATCH] Add support for the Trusty OS --- src/lib.rs | 6 ++++++ - src/trusty.rs | 46 ++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 52 insertions(+) + src/trusty.rs | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 66 insertions(+) create mode 100644 src/trusty.rs diff --git a/src/lib.rs b/src/lib.rs -index d87d0d8e1..2eeb88c83 100644 +index cce80f8c..a7eddaf2 100644 --- a/src/lib.rs +++ b/src/lib.rs -@@ -141,6 +141,12 @@ cfg_if! { +@@ -144,6 +144,12 @@ cfg_if! { mod hermit; pub use hermit::*; @@ -28,13 +28,14 @@ index d87d0d8e1..2eeb88c83 100644 pub use fixed_width_ints::*; diff --git a/src/trusty.rs b/src/trusty.rs new file mode 100644 -index 000000000..2b7d57285 +index 00000000..f06c0760 --- /dev/null +++ b/src/trusty.rs -@@ -0,0 +1,46 @@ +@@ -0,0 +1,60 @@ +pub use core::ffi::c_void; + +pub type size_t = usize; ++pub type ssize_t = isize; + +#[cfg(any(target_arch = "aarch64", target_arch = "arm"))] +pub type c_char = u8; @@ -71,13 +72,25 @@ index 000000000..2b7d57285 +pub type c_int32_t = i32; +pub type c_int64_t = i64; + ++pub const STDOUT_FILENO: ::c_int = 1; ++pub const STDERR_FILENO: ::c_int = 2; ++ +extern "C" { + pub fn calloc(nobj: size_t, size: size_t) -> *mut c_void; + pub fn malloc(size: size_t) -> *mut c_void; + pub fn realloc(p: *mut c_void, size: size_t) -> *mut c_void; + pub fn free(p: *mut c_void); ++ pub fn memalign(align: ::size_t, size: ::size_t) -> *mut ::c_void; + pub fn posix_memalign(memptr: *mut *mut ::c_void, align: ::size_t, size: ::size_t) -> ::c_int; ++ pub fn write(fd: ::c_int, buf: *const ::c_void, count: ::size_t) -> ::ssize_t; ++ pub fn writev(fd: ::c_int, iov: *const ::iovec, iovcnt: ::c_int) -> ::ssize_t; ++} ++ ++s! { ++ pub struct iovec { ++ pub iov_base: *mut ::c_void, ++ pub iov_len: ::size_t, ++ } +} -- -2.36.1.124.g0e6072fb45-goog - +2.36.1.476.g0c4daa206d-goog |