-
Notifications
You must be signed in to change notification settings - Fork 12.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix staticlib outputs linking to blank archives
When creating a staticlib, it unzips all static archives it finds and then inserts the files manually into the output file. This process is done through `ar`, and `ar` doesn't like if you specify you want to add files and you don't give it any files. This case arose whenever you linked to an archive that didn't have any contents or all of the contents were filtered out. This just involved ignoring the case where the number of inputs we have is 0, because we don't have any files to add anyway.
- Loading branch information
1 parent
517e389
commit 2eacc72
Showing
3 changed files
with
23 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
-include ../tools.mk | ||
|
||
all: | ||
ar crus libfoo.a foo.rs | ||
ar d libfoo.a foo.rs | ||
$(RUSTC) foo.rs |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT | ||
// file at the top-level directory of this distribution and at | ||
// http://rust-lang.org/COPYRIGHT. | ||
// | ||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or | ||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license | ||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your | ||
// option. This file may not be copied, modified, or distributed | ||
// except according to those terms. | ||
|
||
#[crate_type = "staticlib"]; | ||
|
||
#[link(name = "foo", kind = "static")] | ||
extern {} | ||
|
||
fn main() {} |
2eacc72
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
saw approval from brson
at alexcrichton@2eacc72
2eacc72
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
merging alexcrichton/rust/fix-ar-thing = 2eacc72 into auto
2eacc72
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
alexcrichton/rust/fix-ar-thing = 2eacc72 merged ok, testing candidate = 209b47f
2eacc72
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all tests pass:
success: http://buildbot.rust-lang.org/builders/auto-mac-32-opt/builds/4337
success: http://buildbot.rust-lang.org/builders/auto-mac-32-nopt-c/builds/2179
success: http://buildbot.rust-lang.org/builders/auto-mac-32-nopt-t/builds/2180
success: http://buildbot.rust-lang.org/builders/auto-mac-64-opt/builds/4335
success: http://buildbot.rust-lang.org/builders/auto-mac-64-nopt-c/builds/3435
success: http://buildbot.rust-lang.org/builders/auto-mac-64-nopt-t/builds/3441
success: http://buildbot.rust-lang.org/builders/auto-linux-32-opt/builds/4350
success: http://buildbot.rust-lang.org/builders/auto-linux-32-nopt-c/builds/3438
success: http://buildbot.rust-lang.org/builders/auto-linux-32-nopt-t/builds/3444
success: http://buildbot.rust-lang.org/builders/auto-linux-64-opt/builds/4352
success: http://buildbot.rust-lang.org/builders/auto-linux-64-nopt-c/builds/3438
success: http://buildbot.rust-lang.org/builders/auto-linux-64-nopt-t/builds/3443
success: http://buildbot.rust-lang.org/builders/auto-linux-64-x-android/builds/3512
success: http://buildbot.rust-lang.org/builders/auto-linux-64-x-android-t/builds/1291
success: http://buildbot.rust-lang.org/builders/auto-win-32-opt/builds/4344
success: http://buildbot.rust-lang.org/builders/auto-win-32-nopt-c/builds/3445
success: http://buildbot.rust-lang.org/builders/auto-win-32-nopt-t/builds/3451
success: http://buildbot.rust-lang.org/builders/auto-bsd-64-opt/builds/4112
2eacc72
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fast-forwarding master to auto = 209b47f