aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/cc
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2019-10-08 09:33:45 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2019-10-08 09:33:45 +0200
commitd730f40440e213bc08cce4587439960c80ad9aa5 (patch)
treeec0d488f7dd83238accaab33db8660ae32b60870 /libbuild2/cc
parent2c8b400010ffedec596969f64e79144f99d73f62 (diff)
Redo bin pattern as PATH-like search paths rather than fallback directory
Also, unlike the fallback directory, the search paths are searched first rather than last.
Diffstat (limited to 'libbuild2/cc')
-rw-r--r--libbuild2/cc/guess.cxx11
-rw-r--r--libbuild2/cc/guess.hxx6
2 files changed, 8 insertions, 9 deletions
diff --git a/libbuild2/cc/guess.cxx b/libbuild2/cc/guess.cxx
index 1952796..e218539 100644
--- a/libbuild2/cc/guess.cxx
+++ b/libbuild2/cc/guess.cxx
@@ -2059,7 +2059,7 @@ namespace build2
// still want to try the target in case we could not pre-guess (think
// x86_64-w64-mingw32-c++).
//
- // BTW, for GCC we also get gcc-{ar,ranlib} (but not -ld) which add
+ // BTW, for GCC we also get gcc-{ar,ranlib} (but not gcc-ld) which add
// support for the LTO plugin though it seems more recent GNU binutils
// (2.25) are able to load the plugin when needed automatically. So it
// doesn't seem we should bother trying to support this on our end (one
@@ -2068,9 +2068,8 @@ namespace build2
// It's also normal for native (i.e., non-cross-compiler) builds of GCC
// and Clang to not have binutils installed in the same directory and
// instead relying on the system ones. In this case, if the compiler is
- // specified with the absolute path, the pattern will be the fallback
- // search directory (though it feels like it should be checked first
- // rather than last).
+ // specified with the absolute path, the pattern will be the search
+ // path.
//
if (r.bin_pattern.empty ())
{
@@ -2103,7 +2102,7 @@ namespace build2
}
// If we could not derive the pattern, then see if we can come up with a
- // fallback search directory.
+ // search path.
//
if (r.bin_pattern.empty ())
{
@@ -2152,7 +2151,7 @@ namespace build2
}
}
- return path (apply_pattern (s, &pat));
+ return path (apply_pattern (s, pat));
}
}
}
diff --git a/libbuild2/cc/guess.hxx b/libbuild2/cc/guess.hxx
index a8784fc..bf6a5e6 100644
--- a/libbuild2/cc/guess.hxx
+++ b/libbuild2/cc/guess.hxx
@@ -158,9 +158,9 @@ namespace build2
//
// The bin_pattern is the binutils program pattern that could sometimes be
// derived for some toolchains. For example, i686-w64-mingw32-*. If the
- // pattern could not be derived, then it could contain a fallback search
- // directory, in which case it will end with a directory separator but
- // will not contain '*'.
+ // pattern could not be derived, then it could alternatively contain
+ // search paths (similar to the PATH environment variable), in which case
+ // it will end with a directory separator but will not contain '*'.
//
struct compiler_info
{