Support #[no_std] trusty kernel by disabling unneeded trusty-sys and libc-trusty deps am: b1fdf6dfac

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>
diff --git a/patches/rules.mk.diff b/patches/rules.mk.diff
index d44c11f..e9ebe30 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 @@
 +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 77de58c..1599f06 100644
--- a/patches/trusty.patch
+++ b/patches/trusty.patch
@@ -20,12 +20,16 @@
 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 a675dcc..0cd0939 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_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 eca27bf..c8d297d 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;