diff options
author | midipix <writeonce@midipix.org> | 2021-06-05 15:06:16 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-06-05 15:11:56 +0000 |
commit | 2a9478ba3be79ab6f3de7192e3a285f1d3938a02 (patch) | |
tree | 84f07686956f84bb5f405a61d87f0557f9d01d0c /sofort/cfgtest/cfgtest.sh | |
parent | 892127c75dfa780169c7d703afab2b57b7f7893b (diff) | |
download | sbmake-2a9478ba3be79ab6f3de7192e3a285f1d3938a02.tar.bz2 sbmake-2a9478ba3be79ab6f3de7192e3a285f1d3938a02.tar.xz |
build system: cfgtest_compiler_switch(): ldflag: added freestanding support.
Diffstat (limited to 'sofort/cfgtest/cfgtest.sh')
-rw-r--r-- | sofort/cfgtest/cfgtest.sh | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/sofort/cfgtest/cfgtest.sh b/sofort/cfgtest/cfgtest.sh index f66dde5..46c431f 100644 --- a/sofort/cfgtest/cfgtest.sh +++ b/sofort/cfgtest/cfgtest.sh @@ -39,6 +39,7 @@ cfgtest_host_section() mb_cfgtest_cc="$ccenv_host_cc" mb_cfgtest_cfgtype='host' mb_cfgtest_stdin_input=${ccenv_host_stdin_input:-} + mb_cfgtest_environment=${ccenv_host_cc_environment:-} mb_cfgtest_cflags=$(${mb_make} -n -f "$mb_pwd/Makefile.tmp" \ OS_DSO_EXRULES=default \ @@ -64,6 +65,7 @@ cfgtest_native_section() mb_cfgtest_cc="$ccenv_native_cc" mb_cfgtest_cfgtype='native' mb_cfgtest_stdin_input=${ccenv_native_stdin_input:-} + mb_cfgtest_environment=${ccenv_native_cc_environment:-} mb_cfgtest_cflags=$(${mb_make} -n -f "$mb_pwd/Makefile.tmp" \ OS_DSO_EXRULES=default \ @@ -600,7 +602,18 @@ cfgtest_compiler_switch() case "${1}" in -Wl,*) - cfgtest_code_snippet='int main(void){return 0;}' + if [ "$mb_cfgtest_environment" = 'freestanding' ]; then + cfgtest_switches="$cfgtest_switches -nostdlib -nostartfiles" + + if [ -z "ccenv_cc_underscore" ]; then + cfgtest_code_snippet='int start(void){return 0;}' + else + cfgtest_code_snippet='int _start(void){return 0;}' + fi + else + cfgtest_code_snippet='int main(void){return 0;}' + fi + cfgtest_common_init 'ldflag' ;; |