aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/build/libc/mingw-w64.sh20
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