From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:48172) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1hxsso-0000IP-6n for guix-patches@gnu.org; Wed, 14 Aug 2019 09:00:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hxssm-0004gX-Pw for guix-patches@gnu.org; Wed, 14 Aug 2019 09:00:06 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:40193) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hxssm-0004gT-MV for guix-patches@gnu.org; Wed, 14 Aug 2019 09:00:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hxssm-0004Bs-LF for guix-patches@gnu.org; Wed, 14 Aug 2019 09:00:04 -0400 Subject: [bug#37028] [PATCH] gnu: mingw-w64: Update to 6.0.0. Resent-Message-ID: Received: from eggs.gnu.org ([2001:470:142:3::10]:48065) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1hxss2-0007Wv-QR for guix-patches@gnu.org; Wed, 14 Aug 2019 08:59:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hxss1-0004Rm-CD for guix-patches@gnu.org; Wed, 14 Aug 2019 08:59:18 -0400 Received: from mail-qt1-x82b.google.com ([2607:f8b0:4864:20::82b]:44598) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hxss1-0004Rg-84 for guix-patches@gnu.org; Wed, 14 Aug 2019 08:59:17 -0400 Received: by mail-qt1-x82b.google.com with SMTP id 44so78899455qtg.11 for ; Wed, 14 Aug 2019 05:59:17 -0700 (PDT) From: David Thompson Date: Wed, 14 Aug 2019 08:59:14 -0400 Message-Id: <20190814125914.18543-1-dthompson2@worcester.edu> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 37028@debbugs.gnu.org * 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 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 */ + + /* 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