diff options
Diffstat (limited to 'scripts/build/libc/newlib.sh')
-rw-r--r-- | scripts/build/libc/newlib.sh | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/scripts/build/libc/newlib.sh b/scripts/build/libc/newlib.sh index 7e11fcd..b073a75 100644 --- a/scripts/build/libc/newlib.sh +++ b/scripts/build/libc/newlib.sh @@ -59,6 +59,8 @@ do_libc_headers() { } do_libc_start_files() { + local -a newlib_opts + CT_DoStep INFO "Installing C library" mkdir -p "${CT_BUILD_DIR}/build-libc" @@ -66,6 +68,18 @@ do_libc_start_files() { CT_DoLog EXTRA "Configuring C library" + if [ "${CT_LIBC_NEWLIB_IO_FLOAT}" = "y" ]; then + newlib_opts+=( "--enable-newlib-io-float" ) + if [ "${CT_LIBC_NEWLIB_IO_LDBL}" = "y" ]; then + newlib_opts+=( "--enable-newlib-io-long-double" ) + else + newlib_opts+=( "--disable-newlib-io-long-double" ) + fi + else + newlib_opts+=( "--disable-newlib-io-float" ) + newlib_opts+=( "--disable-newlib-io-long-double" ) + fi + # Note: newlib handles the build/host/target a little bit differently # than one would expect: # build : not used @@ -79,7 +93,8 @@ do_libc_start_files() { "${CT_SRC_DIR}/newlib-$(libc_newlib_version)/configure" \ --host=${CT_BUILD} \ --target=${CT_TARGET} \ - --prefix=${CT_PREFIX_DIR} + --prefix=${CT_PREFIX_DIR} \ + "${newlib_opts[@]}" CT_DoLog EXTRA "Building C library" CT_DoExecLog ALL make ${PARALLELMFLAGS} |