diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/build/libc/mingw-w64.sh | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/scripts/build/libc/mingw-w64.sh b/scripts/build/libc/mingw-w64.sh index 54e8d07c..d4f3634f 100644 --- a/scripts/build/libc/mingw-w64.sh +++ b/scripts/build/libc/mingw-w64.sh @@ -25,6 +25,14 @@ mingw_w64_headers() { sdk_opts+=( "--enable-secure-api" ) fi + if [ "${CT_MINGW_DEFAULT_MSVCRT_MSVCRT}" = "y" ]; then + sdk_opts+=( "--with-default-msvcrt=msvcrt" ) + elif [ "${CT_MINGW_DEFAULT_MSVCRT_UCRT}" = "y" ]; then + sdk_opts+=( "--with-default-msvcrt=ucrt" ) + elif [ -n "${CT_MINGW_DEFAULT_MSVCRT}" ]; then + sdk_opts+=( "--with-default-msvcrt=${CT_MINGW_DEFAULT_MSVCRT}" ) + fi + CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-headers" CT_DoLog EXTRA "Configuring Headers" @@ -174,6 +182,7 @@ mingw_w64_main() { # Used when iterating over libwinpthread local default_libprefix + local -a crt_opts do_check_mingw_vendor_tuple @@ -183,6 +192,14 @@ mingw_w64_main() CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-crt" + if [ "${CT_MINGW_DEFAULT_MSVCRT_MSVCRT}" = "y" ]; then + crt_opts+=( "--with-default-msvcrt=msvcrt" ) + elif [ "${CT_MINGW_DEFAULT_MSVCRT_UCRT}" = "y" ]; then + crt_opts+=( "--with-default-msvcrt=ucrt" ) + elif [ -n "${CT_MINGW_DEFAULT_MSVCRT}" ]; then + crt_opts+=( "--with-default-msvcrt=${CT_MINGW_DEFAULT_MSVCRT}" ) + fi + mingw_w64_set_install_prefix CT_DoExecLog CFG \ ${CONFIG_SHELL} \ @@ -190,7 +207,8 @@ mingw_w64_main() --with-sysroot=${CT_SYSROOT_DIR} \ --prefix=${MINGW_INSTALL_PREFIX} \ --build=${CT_BUILD} \ - --host=${CT_TARGET} + --host=${CT_TARGET} \ + "${crt_opts[@]}" # mingw-w64-crt has a missing dependency occasionally breaking the # parallel build. See https://github.com/crosstool-ng/crosstool-ng/issues/246 |