$(foreach crate,$(TOOLS),$(eval $(call RUST_TOOL,$(crate))))
-ifdef CFG_DISABLE_ELF_TLS
-RUSTFLAGS_std := --cfg no_elf_tls
-endif
-
CRATEFILE_libc := $(SREL)src/liblibc/src/lib.rs
RUSTFLAGS_libc := --cfg stdbuild
use target::Target;
pub fn target() -> Target {
- let mut base = super::linux_base::opts();
- base.has_elf_tls = false;
+ let base = super::linux_base::opts();
Target {
llvm_target: "aarch64-unknown-linux-gnu".to_string(),
target_endian: "little".to_string(),
pub fn target() -> Target {
let mut base = super::android_base::opts();
base.features = "+v7".to_string();
- base.has_elf_tls = false;
Target {
llvm_target: "arm-linux-androideabi".to_string(),
issue = "0")]
#[macro_export]
#[allow_internal_unstable]
-#[cfg(no_elf_tls)]
macro_rules! __scoped_thread_local_inner {
($t:ty) => {{
- static _KEY: $crate::thread::__ScopedKeyInner<$t> =
- $crate::thread::__ScopedKeyInner::new();
- fn _getit() -> &'static $crate::thread::__ScopedKeyInner<$t> { &_KEY }
- $crate::thread::ScopedKey::new(_getit)
- }}
-}
-
-#[doc(hidden)]
-#[unstable(feature = "thread_local_internals",
- reason = "should not be necessary",
- issue = "0")]
-#[macro_export]
-#[allow_internal_unstable]
-#[cfg(not(no_elf_tls))]
-macro_rules! __scoped_thread_local_inner {
- ($t:ty) => {{
- #[cfg_attr(not(any(windows,
- target_os = "android",
- target_os = "ios",
- target_os = "netbsd",
- target_os = "openbsd",
- target_arch = "aarch64")),
- thread_local)]
+ #[cfg_attr(target_thread_local, thread_local)]
static _KEY: $crate::thread::__ScopedKeyInner<$t> =
$crate::thread::__ScopedKeyInner::new();
fn _getit() -> &'static $crate::thread::__ScopedKeyInner<$t> { &_KEY }
}
}
-#[cfg(not(any(windows,
- target_os = "android",
- target_os = "ios",
- target_os = "netbsd",
- target_os = "openbsd",
- target_arch = "aarch64",
- no_elf_tls)))]
+#[cfg(target_thread_local)]
#[doc(hidden)]
mod imp {
use cell::Cell;
}
}
-#[cfg(any(windows,
- target_os = "android",
- target_os = "ios",
- target_os = "netbsd",
- target_os = "openbsd",
- target_arch = "aarch64",
- no_elf_tls))]
+#[cfg(not(target_thread_local))]
#[doc(hidden)]
mod imp {
use cell::Cell;