GNU bug report logs -
#78417
[PATCH 0/2] MinGW: Use winpthreads by default.
Previous Next
Full log
Message #11 received at 78417 <at> debbugs.gnu.org (full text, mbox):
Using a version of mingw-64 with winpthreads, packages that support posix
threads, such as Guile, can be (cross-)built for MinGW with thread support.
Also, since gcc-13, a MinGW (cross-)compiler provides g++ with std::mutex when
built with a version of mingw-w64 that has winpthreads enabled.
* gnu/packages/cross-base.scm (cross-gcc-toolchain/implementation):
Add #:with-winpthreads? parameter, defaulting to #t. Pass it...
(cross-libc*): ...to new #:with-winpthreads? parameter here, defaulting to #t.
Pass it to make-mingw-w64 for winpthread support.
Change-Id: Iaf34d9cc812543762cfd626693ea715880341c13
---
gnu/packages/cross-base.scm | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 5df06418e3..97afa240e3 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2018, 2020, 2023-2024 Ludovic Courtès <ludo <at> gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw <at> netris.org>
-;;; Copyright © 2016, 2019, 2023, 2024 Janneke Nieuwenhuizen <janneke <at> gnu.org>
+;;; Copyright © 2016, 2019, 2023-2025 Janneke Nieuwenhuizen <janneke <at> gnu.org>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837 <at> gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me <at> tobias.gr>
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius <at> gnu.org>
@@ -673,7 +673,8 @@ (define* (cross-libc* target
(libc (libc-for-target target))
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target))
- (xheaders (cross-kernel-headers target)))
+ (xheaders (cross-kernel-headers target))
+ (with-winpthreads? #t))
"Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS
and the cross tool chain. If TARGET doesn't have a standard C library #f is
returned."
@@ -682,7 +683,8 @@ (define* (cross-libc* target
(let ((machine (substring target 0 (string-index target #\-))))
(make-mingw-w64 machine
#:xgcc xgcc
- #:xbinutils xbinutils)))
+ #:xbinutils xbinutils
+ #:with-winpthreads? #t)))
((or (? target-linux?) (? target-hurd?))
(package
(inherit libc)
@@ -787,10 +789,12 @@ (define* (cross-gcc-toolchain/implementation target
#:key
(base-gcc %xgcc)
(xbinutils (cross-binutils target))
+ (with-winpthreads? #t)
(libc (cross-libc
- target
- #:xgcc (cross-gcc target #:xgcc base-gcc)
- #:xbinutils xbinutils))
+ target
+ #:xgcc (cross-gcc target #:xgcc base-gcc)
+ #:xbinutils xbinutils
+ #:with-winpthreads? with-winpthreads?))
(xgcc (cross-gcc target
#:xgcc base-gcc
#:libc libc
--
2.49.0
This bug report was last modified 21 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.