There's no need to distribute these ABI helpers for tests with the standard rust
distribution they're only needed for our tests.
Closes #2665
DEPS_fourcc := syntax std
DEPS_hexfloat := syntax std
DEPS_num := std
-DEPS_test := std getopts serialize term time regex
+DEPS_test := std getopts serialize term time regex native:rust_test_helpers
DEPS_time := std serialize sync
DEPS_rand := core
DEPS_url := std
# that's per-target so you're allowed to conditionally add files based on the
# target.
################################################################################
-NATIVE_LIBS := rustrt hoedown uv_support morestack miniz context_switch
+NATIVE_LIBS := rustrt hoedown uv_support morestack miniz context_switch \
+ rust_test_helpers
# $(1) is the target triple
define NATIVE_LIBRARIES
NATIVE_DEPS_miniz_$(1) = miniz.c
NATIVE_DEPS_rustrt_$(1) := rust_builtin.c \
rust_android_dummy.c \
- rust_test_helpers.c \
rust_try.ll \
arch/$$(HOST_$(1))/record_sp.S
+NATIVE_DEPS_rust_test_helpers_$(1) := rust_test_helpers.c
NATIVE_DEPS_morestack_$(1) := arch/$$(HOST_$(1))/morestack.S
NATIVE_DEPS_context_switch_$(1) := \
arch/$$(HOST_$(1))/_context.S
extern crate libc;
-#[link(name="rustrt")]
+#[link(name="rust_test_helpers")]
extern {
pub fn rust_get_test_int() -> libc::intptr_t;
}
pub mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
pub mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
fn rust_get_test_int() -> libc::intptr_t;
}
extern crate libc;
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
fn rust_get_test_int() -> libc::intptr_t;
}
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_get_test_int() -> libc::intptr_t;
}
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
one: u16, two: u16
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_TwoU16s(v: TwoU16s) -> TwoU16s;
}
one: u32, two: u32
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_TwoU32s(v: TwoU32s) -> TwoU32s;
}
one: u64, two: u64
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_TwoU64s(v: TwoU64s) -> TwoU64s;
}
one: u8, two: u8
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_TwoU8s(v: TwoU8s) -> TwoU8s;
}
// Test a function that takes/returns a u8.
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_u8(v: u8) -> u8;
}
// option. This file may not be copied, modified, or distributed
// except according to those terms.
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_double(v: f64) -> f64;
}
struct Empty;
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
fn rust_dbg_extern_empty_struct(v1: ManyInts, e: Empty, v2: ManyInts);
}
// Test a function that takes/returns a u32.
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_u32(v: u32) -> u32;
}
// Test a call to a function that takes/returns a u64.
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_identity_u64(v: u64) -> u64;
}
one: u16, two: u16
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_return_TwoU16s() -> TwoU16s;
}
one: u32, two: u32
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_return_TwoU32s() -> TwoU32s;
}
one: u64, two: u64
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_return_TwoU64s() -> TwoU64s;
}
one: u8, two: u8
}
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_extern_return_TwoU8s() -> TwoU8s;
}
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_call(cb: extern "C" fn (libc::uintptr_t) -> libc::uintptr_t,
data: libc::uintptr_t)
use std::mem;
use std::rt::thread::Thread;
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
fn rust_dbg_call(cb: extern "C" fn(libc::uintptr_t),
data: libc::uintptr_t) -> libc::uintptr_t;
mod rustrt1 {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_get_test_int() -> libc::intptr_t;
}
mod rustrt2 {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_get_test_int() -> libc::intptr_t;
}
mod rustrt {
extern crate libc;
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_get_test_int() -> libc::intptr_t;
}
extern crate libc;
-#[link(name = "rustrt")]
+#[link(name = "rust_test_helpers")]
extern {
static mut rust_dbg_static_mut: libc::c_int;
pub fn rust_dbg_static_mut_check_four();
mod rustrt {
use super::{Floats, Quad};
- #[link(name = "rustrt")]
+ #[link(name = "rust_test_helpers")]
extern {
pub fn rust_dbg_abi_1(q: Quad) -> Quad;
pub fn rust_dbg_abi_2(f: Floats) -> Floats;