diff options
author | 2017-07-23 12:15:24 +0100 | |
---|---|---|
committer | 2017-07-23 12:15:34 +0100 | |
commit | 08a41d2dff99645af6ac5a7bb4774f5f193b6f20 (patch) | |
tree | 1ef5b2cb1239a7cbbe9779d776bfd17e6fd01f70 /dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch | |
parent | media-gfx/cura: Version bump (diff) | |
download | gentoo-08a41d2dff99645af6ac5a7bb4774f5f193b6f20.tar.gz gentoo-08a41d2dff99645af6ac5a7bb4774f5f193b6f20.tar.bz2 gentoo-08a41d2dff99645af6ac5a7bb4774f5f193b6f20.zip |
dev-lang/ghc: bump up to 8.2.1 with x86 and amd64 binaries, no KEYWORDS yet
Package-Manager: Portage-2.3.6, Repoman-2.3.3
Diffstat (limited to 'dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch')
-rw-r--r-- | dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch b/dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch new file mode 100644 index 000000000000..79751e1ecbda --- /dev/null +++ b/dev-lang/ghc/files/ghc-8.2.1_rc1-win32-cross-1.patch @@ -0,0 +1,124 @@ +commit a691f6a7a191a268380805481d8e63134764a4a1 +Author: Sergei Trofimovich <slyfox@inbox.ru> +Date: Sat Apr 29 22:02:24 2017 +0100 + + add basic cross-compilation support (#87) + + * fix include case: s/#include <Lmcons.h>/#include <lmcons.h> + + Noticed when cross-compiling win32 on linux to i686-w64-mingw32-gcc. + i686-w64-mingw32 provides all headers in lowercase. + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + + * Pen.hsc: don't use c99-style comments in enum declarations + + Ths change workarounds hsc2hs bug in cross-compile mode: + https://ghc.haskell.org/trac/ghc/ticket/13619 + + To reproduce the build failure it's enough to run + $ cabal configure --hsc2hs-options='--cross-safe --cross-compile' + $ cabal build --hsc2hs-options='--cross-safe --cross-compile' + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + + * SimpleMAPI.hsc: don't use #ifdef in enum declarations + + This change workarounds hsc2hs bug in cross-compile mode: + https://ghc.haskell.org/trac/ghc/ticket/13620 + + To reproduce the build failure it's enough to run + $ cabal configure --hsc2hs-options='--cross-safe --cross-compile' + $ cabal build --hsc2hs-options='--cross-safe --cross-compile' + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + +diff --git a/Graphics/Win32/GDI/Pen.hsc b/Graphics/Win32/GDI/Pen.hsc +index c880170..8d8df5d 100644 +--- a/Graphics/Win32/GDI/Pen.hsc ++++ b/Graphics/Win32/GDI/Pen.hsc +@@ -56,7 +56,7 @@ foreign import WINDOWS_CCONV unsafe "windows.h DeleteObject" + + type PenStyle = INT + +-#{enum PenStyle, // Pick one of these ++#{enum PenStyle, + , pS_SOLID = PS_SOLID // default + , pS_DASH = PS_DASH // ------- + , pS_DOT = PS_DOT // ....... +@@ -69,14 +69,14 @@ type PenStyle = INT + , pS_STYLE_MASK = PS_STYLE_MASK // all the above + } + +-#{enum PenStyle , // "or" with one of these ++#{enum PenStyle, + , pS_ENDCAP_ROUND = PS_ENDCAP_ROUND // default + , pS_ENDCAP_SQUARE = PS_ENDCAP_SQUARE + , pS_ENDCAP_FLAT = PS_ENDCAP_FLAT + , pS_ENDCAP_MASK = PS_ENDCAP_MASK // all the above + } + +-#{enum PenStyle, // "or" with one of these ++#{enum PenStyle, + , pS_JOIN_ROUND = PS_JOIN_ROUND // default + , pS_JOIN_BEVEL = PS_JOIN_BEVEL + , pS_JOIN_MITER = PS_JOIN_MITER +@@ -87,7 +87,7 @@ If PS_JOIN_MASK is not defined with your GNU Windows32 header files, + you'll have to define it. + -} + +-#{enum PenStyle, // "or" with one of these ++#{enum PenStyle, + , pS_COSMETIC = PS_COSMETIC // default + , pS_GEOMETRIC = PS_GEOMETRIC + , pS_TYPE_MASK = PS_TYPE_MASK // all the above +diff --git a/System/Win32/Info/Computer.hsc b/System/Win32/Info/Computer.hsc +index bb2eb72..65ae8dc 100644 +--- a/System/Win32/Info/Computer.hsc ++++ b/System/Win32/Info/Computer.hsc +@@ -65,7 +65,7 @@ import System.Win32.Utils ( tryWithoutNull ) + import System.Win32.Word ( DWORD, LPDWORD )
+
+ #include <windows.h>
+-#include <Lmcons.h>
++#include <lmcons.h>
+ #include "alignment.h"
+ ##include "windows_cconv.h"
+
+diff --git a/System/Win32/SimpleMAPI.hsc b/System/Win32/SimpleMAPI.hsc +index 9727cfc..5ebf06b 100644 +--- a/System/Win32/SimpleMAPI.hsc ++++ b/System/Win32/SimpleMAPI.hsc +@@ -53,12 +53,6 @@ type MapiFlag = ULONG + , mAPI_LOGON_UI = MAPI_LOGON_UI + , mAPI_NEW_SESSION = MAPI_NEW_SESSION + , mAPI_FORCE_DOWNLOAD = MAPI_FORCE_DOWNLOAD +-#ifdef MAPI_LOGOFF_SHARED +- , mAPI_LOGOFF_SHARED = MAPI_LOGOFF_SHARED +-#endif +-#ifdef MAPI_LOGOFF_UI +- , mAPI_LOGOFF_UI = MAPI_LOGOFF_UI +-#endif + , mAPI_DIALOG = MAPI_DIALOG + , mAPI_UNREAD_ONLY = MAPI_UNREAD_ONLY + , mAPI_LONG_MSGID = MAPI_LONG_MSGID +@@ -74,6 +68,19 @@ type MapiFlag = ULONG + , mAPI_RECEIPT_REQUESTED = MAPI_RECEIPT_REQUESTED + , mAPI_SENT = MAPI_SENT + } ++-- Have to define enum values outside previous declaration due to ++-- hsc2hs bug in --cross-compile mode: ++-- https://ghc.haskell.org/trac/ghc/ticket/13620 ++#ifdef MAPI_LOGOFF_SHARED ++#{enum MapiFlag, ++ , mAPI_LOGOFF_SHARED = MAPI_LOGOFF_SHARED ++} ++#endif ++#ifdef MAPI_LOGOFF_UI ++#{enum MapiFlag, ++ , mAPI_LOGOFF_UI = MAPI_LOGOFF_UI ++} ++#endif + + mapiErrors :: [(ULONG,String)] + mapiErrors = |