summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryanskiy <ivakin.kir@gmail.com>2022-07-16 19:26:43 +0300
committerBryanskiy <ivakin.kir@gmail.com>2022-07-16 19:51:16 +0300
commit64d47e8c4bb23f20befe95b9da3a45769024487a (patch)
treea57b0b63f7d6ec2656bf1431ee1a048d8338909f
parentb01a39a237c65438849124bcf1d6d7e73b0edcb4 (diff)
downloadrust-libc-64d47e8c4bb23f20befe95b9da3a45769024487a.tar.gz
add crt-static for android
-rw-r--r--src/lib.rs4
-rw-r--r--src/unix/mod.rs9
2 files changed, 8 insertions, 5 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 3ad346a429..acda091592 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -26,10 +26,6 @@
#![deny(missing_copy_implementations, safe_packed_borrows)]
#![cfg_attr(not(feature = "rustc-dep-of-std"), no_std)]
#![cfg_attr(feature = "rustc-dep-of-std", no_core)]
-#![cfg_attr(
- feature = "rustc-dep-of-std",
- feature(native_link_modifiers, native_link_modifiers_bundle)
-)]
#![cfg_attr(libc_const_extern_fn_unstable, feature(const_extern_fn))]
#[macro_use]
diff --git a/src/unix/mod.rs b/src/unix/mod.rs
index 1d57f28b21..031283c121 100644
--- a/src/unix/mod.rs
+++ b/src/unix/mod.rs
@@ -346,10 +346,17 @@ cfg_if! {
} else if #[cfg(target_os = "emscripten")] {
#[link(name = "c")]
extern {}
+ } else if #[cfg(all(target_os = "android", feature = "rustc-dep-of-std"))] {
+ #[link(name = "c", kind = "static", modifiers = "-bundle",
+ cfg(target_feature = "crt-static"))]
+ #[link(name = "m", kind = "static", modifiers = "-bundle",
+ cfg(target_feature = "crt-static"))]
+ #[link(name = "m", cfg(not(target_feature = "crt-static")))]
+ #[link(name = "c", cfg(not(target_feature = "crt-static")))]
+ extern {}
} else if #[cfg(any(target_os = "macos",
target_os = "ios",
target_os = "watchos",
- target_os = "android",
target_os = "openbsd"))] {
#[link(name = "c")]
#[link(name = "m")]