aboutsummaryrefslogtreecommitdiff
path: root/build2/cxx/link.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-03-14 13:30:47 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-03-14 13:30:47 +0200
commitbbff2b69459a370afd6c74b6b0d3bb080ff22b89 (patch)
treee0528ae3ffd46bdaa0b76063edb918bf1dc93de6 /build2/cxx/link.cxx
parent10dfd69f4a714f8df2ea98e8cd2ff9359a63016a (diff)
Add support for guessing ar/ranlib signatures
Diffstat (limited to 'build2/cxx/link.cxx')
-rw-r--r--build2/cxx/link.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/build2/cxx/link.cxx b/build2/cxx/link.cxx
index 0002797..f9fa69d 100644
--- a/build2/cxx/link.cxx
+++ b/build2/cxx/link.cxx
@@ -827,8 +827,10 @@ namespace build2
if (lt == type::a)
{
// If the user asked for ranlib, don't try to do its function with -s.
+ // Some ar implementations (e.g., the LLVM one) doesn't support
+ // leading '-'.
//
- args.push_back (ranlib ? "-rc" : "-rcs");
+ args.push_back (ranlib ? "rc" : "rcs");
}
else
{
@@ -1048,6 +1050,9 @@ namespace build2
const char* args[] = {
as<string> (*ranlib).c_str (), relt.string ().c_str (), nullptr};
+ if (verb >= 2)
+ print_process (args);
+
try
{
process pr (args);