diff options
author | midipix <writeonce@midipix.org> | 2021-05-26 15:38:16 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-05-26 16:48:09 +0000 |
commit | ba095a173b068e299bb802c3c4cb2f77a2fe4b78 (patch) | |
tree | d470e48b655191a6c16175d3b4dd2f779dbe38b9 | |
parent | 138dd8d6e27816e11176f750e1d721b107daa65e (diff) | |
download | perk-ba095a173b068e299bb802c3c4cb2f77a2fe4b78.tar.bz2 perk-ba095a173b068e299bb802c3c4cb2f77a2fe4b78.tar.xz |
build system: ccenv: ccenv_set_cc_bits(): support strict compiler drivers.
-rw-r--r-- | sofort/ccenv/ccenv.sh | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/sofort/ccenv/ccenv.sh b/sofort/ccenv/ccenv.sh index c932d45..de7926e 100644 --- a/sofort/ccenv/ccenv.sh +++ b/sofort/ccenv/ccenv.sh @@ -708,11 +708,24 @@ ccenv_set_cc_bits() "$ccenv_internal_type" \ "$ccenv_internal_guess") - printf '%s' "$ccenv_internal_str" \ - | eval $ccenv_cc -S -xc - -o - \ - $(printf '%s' "$ccenv_cflags") \ - > /dev/null 2>&3 \ - && ccenv_internal_size=$ccenv_internal_guess + if [ -n "$ccenv_dumpmachine_switch" ]; then + printf '%s' "$ccenv_internal_str" \ + | eval $ccenv_cc -S -xc - -o - \ + $(printf '%s' "$ccenv_cflags") \ + > /dev/null 2>&3 \ + && ccenv_internal_size=$ccenv_internal_guess + else + ccenv_tmpname='ccenv/c3RyaWN0X21vZGUK.c' + + printf '%s' "$ccenv_internal_str" \ + > "$ccenv_tmpname" + + $ccenv_cc -c "$ccenv_tmpname" -o a.out \ + > /dev/null 2>&3 \ + && ccenv_internal_size=$ccenv_internal_guess + + rm "$ccenv_tmpname" + fi fi done |