diff options
author | midipix <writeonce@midipix.org> | 2021-06-05 13:47:01 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-06-05 15:12:04 +0000 |
commit | 1f9231b45000f6d38ebece4b5c2800af5e699ac5 (patch) | |
tree | 1cbcd3825e69b77169d4dd0a6aa1540d75f72725 /sofort/cfgtest | |
parent | f9d90be9ebc907debd2e6a91409fc3c2062c76a4 (diff) | |
download | w32lib-1f9231b45000f6d38ebece4b5c2800af5e699ac5.tar.bz2 w32lib-1f9231b45000f6d38ebece4b5c2800af5e699ac5.tar.xz |
build system: cfgtest: properly support strict compiler drivers.
Diffstat (limited to 'sofort/cfgtest')
-rw-r--r-- | sofort/cfgtest/cfgtest.sh | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/sofort/cfgtest/cfgtest.sh b/sofort/cfgtest/cfgtest.sh index 7e58a7e..692bfec 100644 --- a/sofort/cfgtest/cfgtest.sh +++ b/sofort/cfgtest/cfgtest.sh @@ -38,6 +38,7 @@ cfgtest_host_section() { mb_cfgtest_cc="$ccenv_host_cc" mb_cfgtest_cfgtype='host' + mb_cfgtest_stdin_input=${ccenv_host_stdin_input:-} mb_cfgtest_cflags=$(${mb_make} -n -f "$mb_pwd/Makefile.tmp" \ OS_DSO_EXRULES=default \ @@ -62,6 +63,7 @@ cfgtest_native_section() { mb_cfgtest_cc="$ccenv_native_cc" mb_cfgtest_cfgtype='native' + mb_cfgtest_stdin_input=${ccenv_native_stdin_input:-} mb_cfgtest_cflags=$(${mb_make} -n -f "$mb_pwd/Makefile.tmp" \ OS_DSO_EXRULES=default \ @@ -105,6 +107,10 @@ cfgtest_epilog() rm -f 'a.out' fi + if [ "$mb_cfgtest_stdin_input" = 'no' ]; then + rm 'cfgtest_c3RyaWN0X21vZGUK.c' + fi + if [ "${1}" = 'snippet' ] && [ "${2}" = '(error)' ]; then printf '\n\ncfgtest: the %s compiler %s %s.\n' \ "$mb_cfgtest_cfgtype" \ @@ -204,7 +210,13 @@ cfgtest_common_init() # cfgtest variables cfgtest_type="${1:-}" - if [ "$cfgtest_type" = 'asm' ]; then + if [ "$mb_cfgtest_stdin_input" = 'no' ]; then + if [ "$cfgtest_type" = 'lib' ]; then + cfgtest_fmt='%s cfgtest_c3RyaWN0X21vZGUK.c -o a.out' + else + cfgtest_fmt='%s -c cfgtest_c3RyaWN0X21vZGUK.c -o a.out' + fi + elif [ "$cfgtest_type" = 'asm' ]; then cfgtest_fmt='%s -c -xc - -o a.out' elif [ "$cfgtest_type" = 'lib' ]; then cfgtest_fmt='%s -xc - -o a.out' @@ -267,6 +279,11 @@ cfgtest_common_init() printf ' \\\n' >&3 printf '<< _SRCEOF\n%s\n' "$cfgtest_src" >&3 printf '_SRCEOF \n\n\n' >&3 + + if [ "$mb_cfgtest_stdin_input" = 'no' ]; then + printf '%s' "$cfgtest_src" > 'cfgtest_c3RyaWN0X21vZGUK.c' + cfgtest_src= + fi } |