[PATCH] gnu: mingw-w64: Update to 6.0.0.

  • Done
  • quality assurance status badge
Details
3 participants
  • David Thompson
  • Jan Nieuwenhuizen
  • Ludovic Courtès
Owner
unassigned
Submitted by
David Thompson
Severity
normal

Debbugs page

David Thompson wrote 6 years ago
(address . guix-patches@gnu.org)(name . David Thompson)(address . dthompson2@worcester.edu)
20190814125914.18543-1-dthompson2@worcester.edu
* gnu/packages/mingw.scm (mingw-w64): Update to 6.0.0.
* gnu/build/cross-toolchain.scm (set-cross-path/mingw): Add additional
autoconf-like substitutions.
---
gnu/build/cross-toolchain.scm | 6 +-
gnu/packages/mingw.scm | 6 +-
.../patches/mingw-w64-6.0.0-gcc.patch | 65 +++++++++++++++++++
3 files changed, 73 insertions(+), 4 deletions(-)
create mode 100644 gnu/packages/patches/mingw-w64-6.0.0-gcc.patch

Toggle diff (113 lines)
diff --git a/gnu/build/cross-toolchain.scm b/gnu/build/cross-toolchain.scm
index d430b8afc4..d67ff966bd 100644
--- a/gnu/build/cross-toolchain.scm
+++ b/gnu/build/cross-toolchain.scm
@@ -129,7 +129,11 @@ C_*INCLUDE_PATH."
(substitute* (string-append mingw-headers "/crt/_mingw.h")
(("@MINGW_HAS_SECURE_API@")
- "#define MINGW_HAS_SECURE_API 1"))
+ "#define MINGW_HAS_SECURE_API 1")
+ (("@DEFAULT_WIN32_WINNT@")
+ "0x502")
+ (("@DEFAULT_MSVCRT_VERSION@")
+ "0x700"))
(let ((cpath (string-append mingw-headers "/include"
":" mingw-headers "/crt"
diff --git a/gnu/packages/mingw.scm b/gnu/packages/mingw.scm
index 3e96f2c475..f6f95ab170 100644
--- a/gnu/packages/mingw.scm
+++ b/gnu/packages/mingw.scm
@@ -37,15 +37,15 @@
(define-public mingw-w64
(package
(name "mingw-w64")
- (version "5.0.4")
+ (version "6.0.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://sourceforge.net/projects/mingw-w64/files/mingw-w64/"
"mingw-w64-release/mingw-w64-v" version ".tar.bz2"))
(sha256
- (base32 "00zq3z1hbzd5yzmskskjg79xrzwsqx7ihyprfaxy4hb897vf29sm"))
- (patches (search-patches "mingw-w64-5.0rc2-gcc-4.9.3.patch"))))
+ (base32 "1w28mynv500y03h92nh87rgw3fnp82qwnjbxrrzqkmr63q812pl0"))
+ (patches (search-patches "mingw-w64-6.0.0-gcc.patch"))))
(native-inputs `(("xgcc-core" ,(cross-gcc %mingw-triplet))
("xbinutils" ,(cross-binutils %mingw-triplet))))
(build-system gnu-build-system)
diff --git a/gnu/packages/patches/mingw-w64-6.0.0-gcc.patch b/gnu/packages/patches/mingw-w64-6.0.0-gcc.patch
new file mode 100644
index 0000000000..036cf79f91
--- /dev/null
+++ b/gnu/packages/patches/mingw-w64-6.0.0-gcc.patch
@@ -0,0 +1,65 @@
+This patch includes
+
+ * mingw-w64-headers/include/winnt.h: compile fixes for1 gcc-4.9.3
+ * mingw-w64-headers/crt/math.h: Likewise
+ * mingw-w64-headers/crt/float.h (FLT_EPSILON,DBL_EPSILON,LDBL_EPSILON): Add
+ symbols.
+ * mingw-w64-headers/crt/stat.h (S_ISLNK,S_ISSOCK,S_ISUID,S_ISGID,S_ISLINK):
+ Add symbols.
+ (lstat): Add function.
+ * mingw-w64-headers/crt/_mingw_stat64.h: Likewise
+ * mingw-w64-headers/crt/stdlib.h (realpath): Add function.
+
+Needed for building with gcc-4.9.3 and using with cross-libtool-2.4.6.
+
+Upstream status: not yet presented upstream.
+
+diff --git a/mingw-w64-headers/crt/float.h b/mingw-w64-headers/crt/float.h
+index 5874f4e..bdf4ead 100644
+--- a/mingw-w64-headers/crt/float.h
++++ b/mingw-w64-headers/crt/float.h
+@@ -22,6 +22,15 @@
+ #if (__GNUC__ < 4)
+ #error Corrupt install of gcc-s internal headers, or search order was changed.
+ #else
++
++ /* From gcc-4.9.3 float.h. */
++ #undef FLT_EPSILON
++ #undef DBL_EPSILON
++ #undef LDBL_EPSILON
++ #define FLT_EPSILON __FLT_EPSILON__
++ #define DBL_EPSILON __DBL_EPSILON__
++ #define LDBL_EPSILON __LDBL_EPSILON__
++
+ /* #include_next <float_ginclude.h> */
+
+ /* Number of decimal digits, q, such that any floating-point number with q
+diff --git a/mingw-w64-headers/crt/math.h b/mingw-w64-headers/crt/math.h
+index 1e970f4..99a332f 100644
+--- a/mingw-w64-headers/crt/math.h
++++ b/mingw-w64-headers/crt/math.h
+@@ -216,6 +216,7 @@ extern "C" {
+ #endif
+ }
+
++#if 0
+ __CRT_INLINE long double __cdecl fabsl (long double x)
+ {
+ #ifdef __arm__
+@@ -226,6 +227,7 @@ extern "C" {
+ return res;
+ #endif
+ }
++#endif
+
+ __CRT_INLINE double __cdecl fabs (double x)
+ {
+@@ -905,7 +907,7 @@ __mingw_choose_expr ( \
+ /* 7.12.7.3 */
+ extern double __cdecl hypot (double, double) __MINGW_ATTRIB_DEPRECATED_MSVC2005; /* in libmoldname.a */
+ extern float __cdecl hypotf (float x, float y);
+-#ifndef __CRT__NO_INLINE
++#if 0 //ndef __CRT__NO_INLINE
+ __CRT_INLINE float __cdecl hypotf (float x, float y) { return (float) hypot ((double)x, (double)y);}
+ #endif
+ extern long double __cdecl hypotl (long double, long double);
--
2.17.1
Ludovic Courtès wrote 6 years ago
(name . David Thompson)(address . dthompson2@worcester.edu)
874l22mfc6.fsf@gnu.org
David Thompson <dthompson2@worcester.edu> skribis:

Toggle quote (8 lines)
> * gnu/packages/mingw.scm (mingw-w64): Update to 6.0.0.
> * gnu/build/cross-toolchain.scm (set-cross-path/mingw): Add additional
> autoconf-like substitutions.
> ---
> gnu/build/cross-toolchain.scm | 6 +-
> gnu/packages/mingw.scm | 6 +-
> .../patches/mingw-w64-6.0.0-gcc.patch | 65 +++++++++++++++++++

(Cc’ing Janneke as the MinGW expert for a heads-up. :-))

Please mention the new patch in the log and add it to gnu/local.mk.

Otherwise LGTM!

Thanks,
Ludo’.
Thompson, David wrote 6 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)
CAJ=RwfYY=5fUochpayJJNGXoLC=sV9xtyY1eKVK3-BjMtCxnDQ@mail.gmail.com
On Tue, Aug 27, 2019 at 6:08 PM Ludovic Courtès <ludo@gnu.org> wrote:
Toggle quote (15 lines)
>
> David Thompson <dthompson2@worcester.edu> skribis:
>
> > * gnu/packages/mingw.scm (mingw-w64): Update to 6.0.0.
> > * gnu/build/cross-toolchain.scm (set-cross-path/mingw): Add additional
> > autoconf-like substitutions.
> > ---
> > gnu/build/cross-toolchain.scm | 6 +-
> > gnu/packages/mingw.scm | 6 +-
> > .../patches/mingw-w64-6.0.0-gcc.patch | 65 +++++++++++++++++++
>
> (Cc’ing Janneke as the MinGW expert for a heads-up. :-))
>
> Please mention the new patch in the log and add it to gnu/local.mk.

Done and pushed. Thanks for the review.

- Dave
Closed
Jan Nieuwenhuizen wrote 6 years ago
(name . Thompson, David)(address . dthompson2@worcester.edu)
87h861uvhu.fsf@gnu.org
Thompson, David writes:

Toggle quote (6 lines)
>> (Cc’ing Janneke as the MinGW expert for a heads-up. :-))
>>
>> Please mention the new patch in the log and add it to gnu/local.mk.
>
> Done and pushed. Thanks for the review.

Thanks, very nice.
janneke

--
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 37028@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 37028
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help