diff options
author | midipix <writeonce@midipix.org> | 2021-05-26 15:38:16 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-05-26 15:52:29 +0000 |
commit | 28278492a008eb992a6c5c5511f15541a7d7bbcb (patch) | |
tree | a8b745e14130b2086730e190b9c15ae2016a00b3 | |
parent | e56ec07b79ed453b94750780e7e7723ce02db27e (diff) | |
download | slibtool-28278492a008eb992a6c5c5511f15541a7d7bbcb.tar.bz2 slibtool-28278492a008eb992a6c5c5511f15541a7d7bbcb.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 |