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:04 -0500
commitc7a26cb8aaea097422efdb687528d833ef80fefe (patch)
treecc84e97074ba6e2ca43b296ba449a2083090fe7b
parentc6182718f095f43b8102adefdcba2cf8bcb902e1 (diff)
downloadbcparser-c7a26cb8aaea097422efdb687528d833ef80fefe.tar.bz2
bcparser-c7a26cb8aaea097422efdb687528d833ef80fefe.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