aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhyber Sen <khyber@google.com>2024-02-24 00:58:50 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2024-02-24 00:58:50 +0000
commit8817138a2e18b0a7bf94b78f4b598bb3b75234e0 (patch)
tree064374652bc5f5091d9002344274ade9fc754b53
parentf5324800528db4f536f7da31039cc1e0cb07ec4e (diff)
parentb1fdf6dfac7e8b7ce7102f74b6df630b45d22700 (diff)
downloadlibc-8817138a2e18b0a7bf94b78f4b598bb3b75234e0.tar.gz
Support #[no_std] trusty kernel by disabling unneeded trusty-sys and libc-trusty deps am: b1fdf6dfacemu-34-2-dev
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/libc/+/2969091 Change-Id: I070a8807b362b272032544c5d8371228b70a46a7 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--patches/rules.mk.diff16
-rw-r--r--patches/trusty.patch6
-rw-r--r--rules.mk11
-rw-r--r--src/trusty.rs4
4 files changed, 32 insertions, 5 deletions
diff --git a/patches/rules.mk.diff b/patches/rules.mk.diff
index d44c11fe..e9ebe30d 100644
--- a/patches/rules.mk.diff
+++ b/patches/rules.mk.diff
@@ -1,8 +1,8 @@
diff --git a/rules.mk b/rules.mk
-index 92f34db68..08cf2d6c3 100644
+index b2ae04d7..0cd09394 100644
--- a/rules.mk
+++ b/rules.mk
-@@ -24,5 +24,12 @@
+@@ -24,5 +24,21 @@ MODULE_RUSTFLAGS += \
--cfg 'libc_ptr_addr_of' \
--cfg 'libc_underscore_const_names' \
--cfg 'libc_union' \
@@ -11,6 +11,16 @@ index 92f34db68..08cf2d6c3 100644
+MODULE_LIBRARY_DEPS := \
+ trusty/user/base/lib/libcompiler_builtins-rust \
+ trusty/user/base/lib/libcore-rust \
++
++ifeq ($(call TOBOOL,$(TRUSTY_USERSPACE)),true)
++
++MODULE_RUSTFLAGS += \
++ --cfg 'feature="trusty_sys"' \
++
++MODULE_LIBRARY_DEPS += \
+ trusty/user/base/lib/libc-trusty \
+ trusty/user/base/lib/trusty-sys \
-
++
++endif
+
+ include make/library.mk
diff --git a/patches/trusty.patch b/patches/trusty.patch
index 77de58ca..1599f06e 100644
--- a/patches/trusty.patch
+++ b/patches/trusty.patch
@@ -20,12 +20,16 @@ new file mode 100644
index 000000000..140fa6dfe
--- /dev/null
+++ a/src/trusty.rs
-@@ -0,0 +1,85 @@
+@@ -0,0 +1,89 @@
++#[cfg(feature = "trusty_sys")]
+extern crate trusty_sys;
+
+pub use core::ffi::c_void;
+
++#[cfg(feature = "trusty_sys")]
+pub const PROT_READ: i32 = self::trusty_sys::MMAP_FLAG_PROT_READ as i32;
++
++#[cfg(feature = "trusty_sys")]
+pub const PROT_WRITE: i32 = self::trusty_sys::MMAP_FLAG_PROT_WRITE as i32;
+
+pub type size_t = usize;
diff --git a/rules.mk b/rules.mk
index a675dcc2..0cd09394 100644
--- a/rules.mk
+++ b/rules.mk
@@ -1,4 +1,4 @@
-# This file is generated by cargo2rulesmk.py --run --config cargo2rulesmk.json --features ..
+# This file is generated by cargo2rulesmk.py --run --config cargo2rulesmk.json.
# Do not modify this file as changes will be overridden on upgrade.
LOCAL_DIR := $(GET_LOCAL_DIR)
@@ -29,7 +29,16 @@ MODULE_RUSTFLAGS += \
MODULE_LIBRARY_DEPS := \
trusty/user/base/lib/libcompiler_builtins-rust \
trusty/user/base/lib/libcore-rust \
+
+ifeq ($(call TOBOOL,$(TRUSTY_USERSPACE)),true)
+
+MODULE_RUSTFLAGS += \
+ --cfg 'feature="trusty_sys"' \
+
+MODULE_LIBRARY_DEPS += \
trusty/user/base/lib/libc-trusty \
trusty/user/base/lib/trusty-sys \
+endif
+
include make/library.mk
diff --git a/src/trusty.rs b/src/trusty.rs
index eca27bf7..c8d297d2 100644
--- a/src/trusty.rs
+++ b/src/trusty.rs
@@ -1,8 +1,12 @@
+#[cfg(feature = "trusty_sys")]
extern crate trusty_sys;
pub use core::ffi::c_void;
+#[cfg(feature = "trusty_sys")]
pub const PROT_READ: i32 = self::trusty_sys::MMAP_FLAG_PROT_READ as i32;
+
+#[cfg(feature = "trusty_sys")]
pub const PROT_WRITE: i32 = self::trusty_sys::MMAP_FLAG_PROT_WRITE as i32;
pub type size_t = usize;