summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2019-02-13 22:46:19 -0500
committermidipix <writeonce@midipix.org>2019-02-13 22:53:05 -0500
commit773ec951422204e067b15e9f689cc50eeaa46e6a (patch)
treea951229b838f4df2551193364c13547ceb68fba5
parent6b2d46fdae5e87e5f37289ae2da6b03baef767ae (diff)
downloadbfirm-773ec951422204e067b15e9f689cc50eeaa46e6a.tar.bz2
bfirm-773ec951422204e067b15e9f689cc50eeaa46e6a.tar.xz
build system: ccenv_find_tool(): support an optional tool-compatibility test.
-rw-r--r--sofort/ccenv/ccenv.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/sofort/ccenv/ccenv.sh b/sofort/ccenv/ccenv.sh
index 65a596a..04db31e 100644
--- a/sofort/ccenv/ccenv.sh
+++ b/sofort/ccenv/ccenv.sh
@@ -52,7 +52,14 @@ ccenv_find_tool()
{
if [ -z "$ccenv_prefixes" ]; then
for ccenv_tool in $ccenv_candidates; do
- command -v "$ccenv_tool" > /dev/null && return 0
+ if [ -z ${@:-} ]; then
+ command -v "$ccenv_tool" > /dev/null && \
+ return 0
+ else
+ command -v "$ccenv_tool" > /dev/null && \
+ "$ccenv_tool" $@ > /dev/null 2>&1 && \
+ return 0
+ fi
done
ccenv_tool=false
@@ -273,7 +280,7 @@ ccenv_set_cc()
{
if [ -z "$ccenv_cc" ]; then
ccenv_set_c_compiler_candidates
- ccenv_find_tool
+ ccenv_find_tool -dumpmachine
ccenv_cc="$ccenv_tool"
fi