diff options
author | midipix <writeonce@midipix.org> | 2021-06-09 17:32:28 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-06-09 17:35:23 +0000 |
commit | dd5c5bf791d1e2f8a9068afd8ce5060dfe0a39c6 (patch) | |
tree | 754a3cfcd345c33b4cf84378d4294300a05db67a /sofort | |
parent | 78332223152e69b488c0aa385512972a4265b7b2 (diff) | |
download | w32lib-dd5c5bf791d1e2f8a9068afd8ce5060dfe0a39c6.tar.bz2 w32lib-dd5c5bf791d1e2f8a9068afd8ce5060dfe0a39c6.tar.xz |
build system: ccenv_set_cc(): no -dumpmachine compilers: improved logic.
Diffstat (limited to 'sofort')
-rw-r--r-- | sofort/ccenv/ccenv.sh | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/sofort/ccenv/ccenv.sh b/sofort/ccenv/ccenv.sh index 61d3c58..332e12f 100644 --- a/sofort/ccenv/ccenv.sh +++ b/sofort/ccenv/ccenv.sh @@ -501,11 +501,20 @@ ccenv_set_cc() ccenv_errors= if [ "$ccenv_cfgtype" = 'native' ]; then - if [ -n "$ccenv_dumpmachine_switch" ]; then + if [ -n "$mb_native_host" ]; then + ccenv_host="$mb_native_host" + + elif [ -n "$ccenv_dumpmachine_switch" ]; then ccenv_host=$(eval $ccenv_cc $(printf '%s' "$ccenv_cflags") \ $ccenv_dumpmachine_switch 2>&3) else - ccenv_host=$(printf '%s' $(uname -m)-$(uname -p)-$(uname -o) \ + ccenv_machine=$(uname -m 2>/dev/null) + ccenv_system=$(uname -s 2>/dev/null) + + ccenv_machine="${ccenv_machine:-unknown}" + ccenv_system="${ccenv_system:-anyos}" + + ccenv_host=$(printf '%s' "${ccenv_machine}-unknown-${ccenv_system}" \ | tr '[[:upper:]]' '[[:lower:]]') fi @@ -529,8 +538,15 @@ ccenv_set_cc() elif [ -z "$ccenv_host" ]; then # assume that no -dumpmachine support means native build (fixme) - ccenv_host=$(printf '%s' $(uname -m)-$(uname -p)-$(uname -o) \ + ccenv_machine=$(uname -m 2>/dev/null) + ccenv_system=$(uname -s 2>/dev/null) + + ccenv_machine="${ccenv_machine:-unknown}" + ccenv_system="${ccenv_system:-anyos}" + + ccenv_host=$(printf '%s' "${ccenv_machine}-unknown-${ccenv_system}" \ | tr '[[:upper:]]' '[[:lower:]]') + ccenv_cchost=$ccenv_host elif [ -n "$ccenv_dumpmachine_switch" ]; then |