about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-11-04 00:06:18 -0800
committerbors <bors@rust-lang.org>2013-11-04 00:06:18 -0800
commit70e9b5ab3912da84a32557bc1a34db5fb2178927 (patch)
tree82565a44818bd3ba29d8ecf771635915c65eb400
parent94677c18af3b639ac374a265af461e5acfe340ca (diff)
parentc3089a1d314dded358ced2b5fbb4d95397e02467 (diff)
downloadrust-70e9b5ab3912da84a32557bc1a34db5fb2178927.tar.gz
rust-70e9b5ab3912da84a32557bc1a34db5fb2178927.zip
auto merge of #10260 : alexcrichton/rust/fix-temp-name, r=thestinger
This file did not respect the #[link(name = "...")] attribute when it was
clearly intended to do so. The problem is that the crate attributes just weren't
passed in. This causes lots of problems in rust today because the object file
for all our libraries is inferred to be 'lib.o' because all of the files are
called 'lib.rs'.

I tried to figure out a good way to test for this, but I wasn't able to come up
with a good way that fit into our current testing framework. Nonetheless, I have
tested this locally and object files get named as they should. This should fix
compiling with `make -jN` again (because the object files are all different
again).
-rw-r--r--src/librustc/driver/driver.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/librustc/driver/driver.rs b/src/librustc/driver/driver.rs
index fb593b56e15..8e46598c359 100644
--- a/src/librustc/driver/driver.rs
+++ b/src/librustc/driver/driver.rs
@@ -441,7 +441,8 @@ pub fn compile_input(sess: Session, cfg: ast::CrateConfig, input: &input,
         };
         let analysis = phase_3_run_analysis_passes(sess, &expanded_crate);
         if stop_after_phase_3(sess) { return; }
-        let outputs = build_output_filenames(input, outdir, output, [], sess);
+        let outputs = build_output_filenames(input, outdir, output,
+                                             expanded_crate.attrs, sess);
         let trans = phase_4_translate_to_llvm(sess, expanded_crate,
                                               &analysis, outputs);
         (outputs, trans)