diff options
author | midipix <writeonce@midipix.org> | 2021-06-05 15:06:16 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-06-05 15:11:53 +0000 |
commit | 3101c36d15f5d7298028852c7c4e7df6e9ecb2eb (patch) | |
tree | 23bb55e9e3c0c2cf70be739371e6fd128a6b2410 /sofort/cfgtest | |
parent | 5d48ed3c3bf53b76184f2f72e793c108ddeeb01a (diff) | |
download | pemagine-3101c36d15f5d7298028852c7c4e7df6e9ecb2eb.tar.bz2 pemagine-3101c36d15f5d7298028852c7c4e7df6e9ecb2eb.tar.xz |
build system: cfgtest_compiler_switch(): ldflag: added freestanding support.
Diffstat (limited to 'sofort/cfgtest')
-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' ;; |