| // The rust crate foo will link to the native library foo, while the rust crate |
| // bar will link to the native library bar. There is also a dependency between |
| // the native library bar to the natibe library foo. |
| // This test ensures that the ordering of -lfoo and -lbar on the command line is |
| // correct to complete the linkage. If passed as "-lfoo -lbar", then the 'foo' |
| // library will be stripped out, and the linkage will fail. |
| // See https://github.com/rust-lang/rust/commit/e6072fa0c4c22d62acf3dcb78c8ee260a1368bd7 |
| |
| //@ ignore-cross-compile |
| // Reason: linkage still fails as the object files produced are not in the correct |
| // format in the `build_native_static_lib` step |
| |
| use run_make_support::{build_native_static_lib, rustc}; |
| |
| fn main() { |
| build_native_static_lib("foo"); |
| build_native_static_lib("bar"); |
| rustc().input("foo.rs").run(); |
| rustc().input("bar.rs").run(); |
| rustc().input("main.rs").print("link-args").run(); |
| } |