Ensure using otool
that framework linking actually happened
This commit is contained in:
parent
ec5c8fec6c
commit
440fce19a1
23
tests/run-make/link-framework/Makefile
Normal file
23
tests/run-make/link-framework/Makefile
Normal file
@ -0,0 +1,23 @@
|
||||
# only-macos
|
||||
#
|
||||
# Check that linking to a framework actually makes it to the linker.
|
||||
|
||||
include ../tools.mk
|
||||
|
||||
all:
|
||||
$(RUSTC) dep-link-framework.rs
|
||||
$(RUSTC) dep-link-weak-framework.rs
|
||||
|
||||
$(RUSTC) empty.rs
|
||||
otool -L $(TMPDIR)/no-link | $(CGREP) -v CoreFoundation
|
||||
|
||||
$(RUSTC) link-framework.rs
|
||||
otool -L $(TMPDIR)/link-framework | $(CGREP) CoreFoundation | $(CGREP) -v weak
|
||||
|
||||
$(RUSTC) link-weak-framework.rs
|
||||
otool -L $(TMPDIR)/link-weak-framework | $(CGREP) CoreFoundation | $(CGREP) weak
|
||||
|
||||
# When linking the framework both normally, and weakly, the weak linking takes preference
|
||||
|
||||
$(RUSTC) link-both.rs
|
||||
otool -L $(TMPDIR)/link-both | $(CGREP) CoreFoundation | $(CGREP) weak
|
4
tests/run-make/link-framework/dep-link-framework.rs
Normal file
4
tests/run-make/link-framework/dep-link-framework.rs
Normal file
@ -0,0 +1,4 @@
|
||||
#![crate_type = "rlib"]
|
||||
|
||||
#[link(name = "CoreFoundation", kind = "framework")]
|
||||
extern "C" {}
|
6
tests/run-make/link-framework/dep-link-weak-framework.rs
Normal file
6
tests/run-make/link-framework/dep-link-weak-framework.rs
Normal file
@ -0,0 +1,6 @@
|
||||
#![crate_type = "rlib"]
|
||||
#![feature(link_arg_attribute)]
|
||||
|
||||
#[link(name = "-weak_framework", kind = "link-arg", modifiers = "+verbatim")]
|
||||
#[link(name = "CoreFoundation", kind = "link-arg", modifiers = "+verbatim")]
|
||||
extern "C" {}
|
1
tests/run-make/link-framework/empty.rs
Normal file
1
tests/run-make/link-framework/empty.rs
Normal file
@ -0,0 +1 @@
|
||||
fn main() {}
|
4
tests/run-make/link-framework/link-both.rs
Normal file
4
tests/run-make/link-framework/link-both.rs
Normal file
@ -0,0 +1,4 @@
|
||||
extern crate dep_link_framework;
|
||||
extern crate dep_link_weak_framework;
|
||||
|
||||
fn main() {}
|
3
tests/run-make/link-framework/link-framework.rs
Normal file
3
tests/run-make/link-framework/link-framework.rs
Normal file
@ -0,0 +1,3 @@
|
||||
extern crate dep_link_framework;
|
||||
|
||||
fn main() {}
|
3
tests/run-make/link-framework/link-weak-framework.rs
Normal file
3
tests/run-make/link-framework/link-weak-framework.rs
Normal file
@ -0,0 +1,3 @@
|
||||
extern crate dep_link_weak_framework;
|
||||
|
||||
fn main() {}
|
Loading…
x
Reference in New Issue
Block a user