mirror of https://git.wownero.com/dsc/mxe.git
parent
d5f831a529
commit
b73df9b08f
|
@ -23,6 +23,3 @@ $(PKG)_SUBDIR := gcc-$($(PKG)_VERSION)
|
|||
$(PKG)_FILE := gcc-$($(PKG)_VERSION).tar.xz
|
||||
$(PKG)_URL := https://ftp.gnu.org/gnu/gcc/gcc-$($(PKG)_VERSION)/$($(PKG)_FILE)
|
||||
$(PKG)_PATCHES := $(dir $(lastword $(MAKEFILE_LIST)))/gcc7.patch
|
||||
|
||||
# use mingw-w64 patch from #1782 - breaks cgal and opencv for gcc5
|
||||
mingw-w64_PATCHES := $(dir $(lastword $(MAKEFILE_LIST)))/mingw-w64-1-fixes.patch
|
||||
|
|
|
@ -1,90 +0,0 @@
|
|||
This file is part of MXE. See LICENSE.md for licensing information.
|
||||
|
||||
Contains ad hoc patches for cross building.
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Brand <mabrand@mabrand.nl>
|
||||
Date: Sun, 29 Mar 2015 14:36:38 +0200
|
||||
Subject: [PATCH] workaround for -isystem flag messing up include order
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=843436
|
||||
|
||||
diff --git a/mingw-w64-headers/crt/float.h b/mingw-w64-headers/crt/float.h
|
||||
index 1111111..2222222 100644
|
||||
--- a/mingw-w64-headers/crt/float.h
|
||||
+++ b/mingw-w64-headers/crt/float.h
|
||||
@@ -114,6 +114,15 @@
|
||||
#define DBL_MAX_10_EXP __DBL_MAX_10_EXP__
|
||||
#define LDBL_MAX_10_EXP __LDBL_MAX_10_EXP__
|
||||
|
||||
+ /* The difference between 1 and the least value greater than 1 that is
|
||||
+ representable in the given floating point type, b**1-p. */
|
||||
+ #undef FLT_EPSILON
|
||||
+ #undef DBL_EPSILON
|
||||
+ #undef LDBL_EPSILON
|
||||
+ #define FLT_EPSILON __FLT_EPSILON__
|
||||
+ #define DBL_EPSILON __DBL_EPSILON__
|
||||
+ #define LDBL_EPSILON __LDBL_EPSILON__
|
||||
+
|
||||
/* Addition rounds to 0: zero, 1: nearest, 2: +inf, 3: -inf, -1: unknown. */
|
||||
/* ??? This is supposed to change with calls to fesetround in <fenv.h>. */
|
||||
#undef FLT_ROUNDS
|
||||
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Luke Potgieter <fried.roadkill+ght@gmail.com>
|
||||
Date: Wed, 6 Sep 2017 18:21:27 +0200
|
||||
Subject: [PATCH] Fixes an issue where gcc 7.x cannot be build for the
|
||||
i686-w64-mingw32.shared target, as per the borrowed solution from the thread:
|
||||
https://sourceforge.net/p/mingw-w64/mailman/message/35828144/ MinGW-w64
|
||||
upstream have applied the same codefix to their repository:
|
||||
https://sourceforge.net/p/mingw-w64/mingw-w64/ci/431ac2a912708546cd7271332e9331399e66bc62/
|
||||
All we need do is wait for version > 5.0.2 to be released, in which case this
|
||||
patch must be removed.
|
||||
|
||||
|
||||
diff --git a/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c b/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c
|
||||
index 1111111..2222222 100644
|
||||
--- a/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c
|
||||
+++ b/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c
|
||||
@@ -120,6 +120,7 @@ u_quad_t __qdivrem(u_quad_t u, u_quad_t v, u_quad_t *rem);
|
||||
u_quad_t __udivdi3(u_quad_t a, u_quad_t b);
|
||||
u_quad_t __umoddi3(u_quad_t a, u_quad_t b);
|
||||
int __ucmpdi2(u_quad_t a, u_quad_t b);
|
||||
+quad_t __divmoddi4(quad_t a, quad_t b, quad_t *rem);
|
||||
|
||||
#endif /* !_LIBKERN_QUAD_H_ */
|
||||
|
||||
@@ -546,7 +547,32 @@ __umoddi3(a, b)
|
||||
(void)__qdivrem(a, b, &r);
|
||||
return (r);
|
||||
}
|
||||
+
|
||||
+/*
|
||||
+ * Divide two signed quads.
|
||||
+ * This function is new in GCC 7.
|
||||
+ */
|
||||
+quad_t
|
||||
+__divmoddi4(a, b, rem)
|
||||
+ quad_t a, b, *rem;
|
||||
+{
|
||||
+ u_quad_t ua, ub, uq, ur;
|
||||
+ int negq, negr;
|
||||
+
|
||||
+ if (a < 0)
|
||||
+ ua = -(u_quad_t)a, negq = 1, negr = 1;
|
||||
+ else
|
||||
+ ua = a, negq = 0, negr = 0;
|
||||
+ if (b < 0)
|
||||
+ ub = -(u_quad_t)b, negq ^= 1;
|
||||
+ else
|
||||
+ ub = b;
|
||||
+ uq = __qdivrem(ua, ub, &ur);
|
||||
+ if (rem)
|
||||
+ *rem = (negr ? -ur : ur);
|
||||
+ return (negq ? -uq : uq);
|
||||
+}
|
||||
+
|
||||
#else
|
||||
static int __attribute__((unused)) dummy;
|
||||
#endif /*deined (_X86_) && !defined (__x86_64__)*/
|
||||
-
|
Loading…
Reference in New Issue