diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-28 21:09:09 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-28 21:09:09 +0000 |
commit | 5f93337d75e5dfefa60e865128d7e3bf92dadf1a (patch) | |
tree | 8ca860d2d6c80ef5f0ac8ff78df4b2e1a57d3090 | |
parent | 3daebe681bfd990563646cf56deec657273f6034 (diff) | |
parent | 46edeb14c30312dde8bbdfc45f8d407c4fd301a7 (diff) | |
download | memoffset-simpleperf-release.tar.gz |
Snap for 11510257 from 46edeb14c30312dde8bbdfc45f8d407c4fd301a7 to simpleperf-releasesimpleperf-release
Change-Id: I313f8f64fb7b517f0297ea1275c0bd2184d57d67
-rw-r--r-- | Android.bp | 37 | ||||
-rw-r--r-- | Cargo.toml | 1 | ||||
-rw-r--r-- | cargo_embargo.json | 16 | ||||
-rw-r--r-- | patches/std.diff | 43 | ||||
-rw-r--r-- | src/lib.rs | 7 | ||||
-rw-r--r-- | src/span_of.rs | 3 |
6 files changed, 68 insertions, 39 deletions
@@ -25,7 +25,7 @@ rust_library { cargo_env_compat: true, cargo_pkg_version: "0.9.0", srcs: ["src/lib.rs"], - edition: "2015", + edition: "2018", features: ["default"], cfgs: [ "allow_clippy", @@ -34,6 +34,7 @@ rust_library { "raw_ref_macros", "stable_const", "tuple_ty", + "aosp_force_use_std", ], apex_available: [ "//apex_available:platform", @@ -56,7 +57,7 @@ rust_test { test_options: { unit_test: true, }, - edition: "2015", + edition: "2018", features: ["default"], cfgs: [ "allow_clippy", @@ -65,5 +66,37 @@ rust_test { "raw_ref_macros", "stable_const", "tuple_ty", + "aosp_force_use_std", ], } + +rust_library_rlib { + name: "libmemoffset_nostd", + crate_name: "memoffset", + cargo_env_compat: true, + cargo_pkg_version: "0.9.0", + srcs: ["src/lib.rs"], + edition: "2018", + features: ["default"], + cfgs: [ + "allow_clippy", + "doctests", + "maybe_uninit", + "raw_ref_macros", + "stable_const", + "tuple_ty", + ], + apex_available: [ + "//apex_available:platform", + "//apex_available:anyapex", + ], + prefer_rlib: true, + no_stdlibs: true, + stdlibs: [ + "liballoc.rust_sysroot", + "libcompiler_builtins.rust_sysroot", + "libcore.rust_sysroot", + ], + product_available: true, + vendor_available: true, +} @@ -10,6 +10,7 @@ # See Cargo.toml.orig for the original contents. [package] +edition = "2018" # ANDROID: Required to build dylib in no_std. name = "memoffset" version = "0.9.0" authors = ["Gilad Naaman <gilad.naaman@gmail.com>"] diff --git a/cargo_embargo.json b/cargo_embargo.json index c458c58..a503b0a 100644 --- a/cargo_embargo.json +++ b/cargo_embargo.json @@ -9,7 +9,23 @@ "variants": [ { "min_sdk_version": "29", + "extra_cfg": [ + "aosp_force_use_std" + ], "tests": true + }, + { + "module_name_overrides": { + "libmemoffset": "libmemoffset_nostd" + }, + "package": { + "memoffset": { + "alloc": true, + "force_rlib": true, + "host_supported": false, + "no_std": true + } + } } ] } diff --git a/patches/std.diff b/patches/std.diff index fc4bdbc..034f559 100644 --- a/patches/std.diff +++ b/patches/std.diff @@ -1,40 +1,21 @@ +diff --git a/Cargo.toml b/Cargo.toml +index 77fe68f..bc62b4a 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -10,4 +10,5 @@ + # See Cargo.toml.orig for the original contents. + + [package] ++edition = "2018" # ANDROID: Required to build dylib in no_std. + name = "memoffset" diff --git a/src/lib.rs b/src/lib.rs index c85fb01..25b0444 100644 --- a/src/lib.rs +++ b/src/lib.rs -@@ -56,7 +56,8 @@ +@@ -55,5 +55,5 @@ //! let checksum = crc16(checksum_range); //! ``` -#![no_std] -+// ANDROID: include standard library to build as a dylib -+//#![no_std] ++#![cfg_attr(not(aosp_force_use_std), no_std)] #![cfg_attr( - feature = "unstable_const", - feature( -@@ -78,9 +79,9 @@ - #[doc(hidden)] - pub mod __priv { - #[doc(hidden)] -- pub use core::mem; -+ pub use std::mem; // ANDROID: use std instead of core, since we're not building with no-std. - #[doc(hidden)] -- pub use core::ptr; -+ pub use std::ptr; // ANDROID: use std instead of core, since we're not building with no-std. - - /// Use type inference to obtain the size of the pointee (without actually using the pointer). - #[doc(hidden)] -diff --git a/src/span_of.rs b/src/span_of.rs -index 0592dbd..369e5c6 100644 ---- a/src/span_of.rs -+++ b/src/span_of.rs -@@ -155,7 +155,8 @@ macro_rules! span_of { - - #[cfg(test)] - mod tests { -- use core::mem; -+ // ANDROID: use std instead of core, since we're not building wiht no-std. -+ use std::mem; - - #[test] - fn span_simple() {
\ No newline at end of file @@ -55,8 +55,7 @@ //! let checksum = crc16(checksum_range); //! ``` -// ANDROID: include standard library to build as a dylib -//#![no_std] +#![cfg_attr(not(aosp_force_use_std), no_std)] #![cfg_attr( all(feature = "unstable_const", not(stable_const)), feature(const_ptr_offset_from) @@ -76,9 +75,9 @@ doctest!("../README.md"); #[doc(hidden)] pub mod __priv { #[doc(hidden)] - pub use std::mem; // ANDROID: use std instead of core, since we're not building with no-std. + pub use core::mem; #[doc(hidden)] - pub use std::ptr; // ANDROID: use std instead of core, since we're not building with no-std. + pub use core::ptr; /// Use type inference to obtain the size of the pointee (without actually using the pointer). #[doc(hidden)] diff --git a/src/span_of.rs b/src/span_of.rs index c2030b7..89fccce 100644 --- a/src/span_of.rs +++ b/src/span_of.rs @@ -155,8 +155,7 @@ macro_rules! span_of { #[cfg(test)] mod tests { - // ANDROID: use std instead of core, since we're not building wiht no-std. - use std::mem; + use core::mem; #[test] fn span_simple() { |