Subject: [bug#72403] [PATCH] gnu: make-mingw-w64: allow overriding runtime

From: Michael Ford <[email-masked]>
Date: Wed, 31 Jul 2024 17:35:22 +0100

This would be quite convenient when calling make-mingw-w64/building a
cross-compiler, to be able to use the newer "ucrt" runtime, if
desired.

>From f6c97a742375b2f7e2111f0893062d37dff5e8eb Mon Sep 17 00:00:00 2001
From: fanquake <[email-masked]>
Date: Wed, 31 Jul 2024 11:27:47 +0100
Subject: [PATCH] gnu: make-mingw-w64: allow overriding runtime

Retain the msvcrt runtime as the default.
---
 gnu/packages/mingw.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/mingw.scm b/gnu/packages/mingw.scm
index ea579d4043..1f7d5c9668 100644
--- a/gnu/packages/mingw.scm
+++ b/gnu/packages/mingw.scm
@@ -35,6 +35,7 @@ (define* (make-mingw-w64/implementation machine
                                         #:key
                                         xgcc
                                         xbinutils
+                                        (runtime "msvcrt")
                                         with-winpthreads?)
   "Return a mingw-w64 for targeting MACHINE.  If XGCC or XBINUTILS is
specified,
 use that gcc or binutils when cross-compiling.  If WITH-WINPTHREADS? is
@@ -87,7 +88,7 @@ (define* (make-mingw-w64/implementation machine
                      ;;
                      ;; XXX: A new target to use UCRT can be introduced as
                      ;; the MSYS2 project does, e.g: x86_64-w64-ucrt-mingw32.
-                     "--with-default-msvcrt=msvcrt")
+                     #$(string-append "--with-default-msvcrt=" runtime))
              #:make-flags #~'("DEFS=-DHAVE_CONFIG_H -D__MINGW_HAS_DXSDK=1")
              #:phases
              #~(modify-phases %standard-phases
-- 
2.46.0