diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/run-make-fulldeps/extern-fn-reachable/Makefile | 20 | ||||
| -rw-r--r-- | src/test/run-make-fulldeps/extern-fn-reachable/main.rs | 18 |
2 files changed, 18 insertions, 20 deletions
diff --git a/src/test/run-make-fulldeps/extern-fn-reachable/Makefile b/src/test/run-make-fulldeps/extern-fn-reachable/Makefile index 79a9a3c640f..9231a2b3574 100644 --- a/src/test/run-make-fulldeps/extern-fn-reachable/Makefile +++ b/src/test/run-make-fulldeps/extern-fn-reachable/Makefile @@ -1,9 +1,25 @@ -include ../tools.mk +# ignore-windows-msvc + +NM=nm -D + +ifeq ($(UNAME),Darwin) +NM=nm -gU +endif + +ifdef IS_WINDOWS +NM=nm -g +endif + # This overrides the LD_LIBRARY_PATH for RUN TARGET_RPATH_DIR:=$(TARGET_RPATH_DIR):$(TMPDIR) all: $(RUSTC) dylib.rs -o $(TMPDIR)/libdylib.so -C prefer-dynamic - $(RUSTC) main.rs -C prefer-dynamic - $(call RUN,main) + + [ "$$($(NM) $(TMPDIR)/libdylib.so | grep -v __imp_ | grep -c fun1)" -eq "1" ] + [ "$$($(NM) $(TMPDIR)/libdylib.so | grep -v __imp_ | grep -c fun2)" -eq "1" ] + [ "$$($(NM) $(TMPDIR)/libdylib.so | grep -v __imp_ | grep -c fun3)" -eq "1" ] + [ "$$($(NM) $(TMPDIR)/libdylib.so | grep -v __imp_ | grep -c fun4)" -eq "1" ] + [ "$$($(NM) $(TMPDIR)/libdylib.so | grep -v __imp_ | grep -c fun5)" -eq "1" ] diff --git a/src/test/run-make-fulldeps/extern-fn-reachable/main.rs b/src/test/run-make-fulldeps/extern-fn-reachable/main.rs deleted file mode 100644 index c1de6477585..00000000000 --- a/src/test/run-make-fulldeps/extern-fn-reachable/main.rs +++ /dev/null @@ -1,18 +0,0 @@ -#![feature(rustc_private)] - -extern crate rustc_metadata; - -use rustc_metadata::dynamic_lib::DynamicLibrary; -use std::path::Path; - -pub fn main() { - unsafe { - let path = Path::new("libdylib.so"); - let a = DynamicLibrary::open(&path).unwrap(); - assert!(a.symbol::<isize>("fun1").is_ok()); - assert!(a.symbol::<isize>("fun2").is_ok()); - assert!(a.symbol::<isize>("fun3").is_ok()); - assert!(a.symbol::<isize>("fun4").is_ok()); - assert!(a.symbol::<isize>("fun5").is_ok()); - } -} |
