commit:     6f36fcbdf1dd95af62a05649078fc6813d6238d8
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 16 21:50:19 2017 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Thu Feb 16 21:57:13 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f36fcbd

dev-haskell/gtk2hs-buildtools: bump up to 0.13.2.2

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 dev-haskell/gtk2hs-buildtools/Manifest             |  1 +
 .../files/gtk2hs-buildtools-0.13.1.0-ia64.patch    | 47 ++++++++++++++++++++++
 .../gtk2hs-buildtools-0.13.2.2.ebuild              | 37 +++++++++++++++++
 3 files changed, 85 insertions(+)

diff --git a/dev-haskell/gtk2hs-buildtools/Manifest 
b/dev-haskell/gtk2hs-buildtools/Manifest
index bceb2d7c4c..6590a328be 100644
--- a/dev-haskell/gtk2hs-buildtools/Manifest
+++ b/dev-haskell/gtk2hs-buildtools/Manifest
@@ -1,2 +1,3 @@
 DIST gtk2hs-buildtools-0.12.5.1.tar.gz 169038 SHA256 
d541edd4738f01395bfb9a79bda1730484ea9a3ff86936f0292b2180863f55fe SHA512 
ec25d74209c79414b66cf15e7b041be39f2179d37a4ecc5a2859022db2245ebf7258d13e130d9b8eae53a35575fc200c7ab0bbc4e99571bc2e7b410a9d268c56
 WHIRLPOOL 
9ee06c11b87737f40533773414c35268af7df3696ddbaa806f4d56d206c16b284dacd206bdb3efa339d207cde01f35f41849b87f9c6f479ac2c4c676d20d39ca
 DIST gtk2hs-buildtools-0.13.0.4.tar.gz 169272 SHA256 
2a24c2d4124ec046800326922807ab457e2beaf0ffb320162687e1475dbe3510 SHA512 
ac5eba81fbeb0387a6294868259e2122b1b90aa76d5c7c9062df6796ec697cca87b73789275deaa1374fa34985b67e5b342b4cd3284393fa17f7c13543657299
 WHIRLPOOL 
a44163f4ac6e57a2504771ea311ca14c7645e4e5787a595e0815f6bce955535789757061dc77bd6c16896fc1dd8143688fdb5d42e8a5714808a381e7e3af023f
+DIST gtk2hs-buildtools-0.13.2.2.tar.gz 178124 SHA256 
c5e4b59f8711ec4e4e25a91ce4213c5396dd0b56179751ed6da255ac35edfb4b SHA512 
4d5dac91529fa8856f1e3369ed97d688e7423767a2db5387f092ebc65f624d4689ead154a7036177a1de8978726901196b8161c846f5afd134ffda1e29517b06
 WHIRLPOOL 
6b2f21adb04b9466c9c0c3deb9f8d9a0fcfeeb13ccc331165d7744e75065f019ef16c4d6e5a8c974738aa2a583f1bf631365821c9b76157bcc5501722e16529e

diff --git 
a/dev-haskell/gtk2hs-buildtools/files/gtk2hs-buildtools-0.13.1.0-ia64.patch 
b/dev-haskell/gtk2hs-buildtools/files/gtk2hs-buildtools-0.13.1.0-ia64.patch
new file mode 100644
index 0000000000..ae5edd1a47
--- /dev/null
+++ b/dev-haskell/gtk2hs-buildtools/files/gtk2hs-buildtools-0.13.1.0-ia64.patch
@@ -0,0 +1,47 @@
+ia64 is is a special showflake.
+
+Technically does nothing bad,
+but it alone uses '__builtin_offsetof (struct sigcontext'
+in system headers. c2hs does not handle that.
+
+https://bugs.gentoo.org/498638
+diff --git a/c2hs/c/C.hs b/c2hs/c/C.hs
+index f79b6d9..aa1b5e4 100644
+--- a/c2hs/c/C.hs
++++ b/c2hs/c/C.hs
+@@ -1 +1,2 @@
++{-# LANGUAGE CPP, PatternGuards #-}
+ --  C->Haskell Compiler: interface to C processing routines
+@@ -94,2 +95,20 @@ isuffix  = ".i"
+ 
++-- This stanza workarounds very specific limitation
++-- of c2hs of not being able to expang __builtin_offsetof
++-- used by all glib/gtk headers at least on ia64.
++raw_mangle :: String -> String
++raw_mangle s = case s of
++    [] -> []
++#ifdef ia64_HOST_ARCH
++    _ | Just (h, rest) <- chop_head "__builtin_offsetof (struct sigcontext, 
sc_gr[0])"
++                                    "200" -- ia64/linux/glibc, sigh
++        -> h ++ raw_mangle rest
++#endif /* ia64_HOST_ARCH */
++    (h:t) -> h : raw_mangle t
++  where chop_head prefix new_prefix =
++            case splitAt p_len s of
++                (h, t) | h == prefix -> Just (new_prefix, t)
++                _                    -> Nothing
++              where p_len = length prefix
++
+ -- given a file name (with suffix), parse that file as a C header and do the
+@@ -106,3 +124,3 @@ loadAttrC fname  = do
+                      traceInfoRead fname
+-                     contents <- readFileCIO fname
++                     contents <- raw_mangle `fmap` readFileCIO fname
+ 
+@@ -126,4 +144,4 @@ loadAttrC fname  = do
+                          errmsgs <- showErrors
+-                         fatal ("C header contains \
+-                                \errors:\n\n" ++ errmsgs)   -- fatal error
++                         fatal ("C header contains " ++
++                                "errors:\n\n" ++ errmsgs)   -- fatal error
+                        else do

diff --git a/dev-haskell/gtk2hs-buildtools/gtk2hs-buildtools-0.13.2.2.ebuild 
b/dev-haskell/gtk2hs-buildtools/gtk2hs-buildtools-0.13.2.2.ebuild
new file mode 100644
index 0000000000..9f71ff36eb
--- /dev/null
+++ b/dev-haskell/gtk2hs-buildtools/gtk2hs-buildtools-0.13.2.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+# ebuild generated by hackport 0.5.9999
+
+CABAL_FEATURES="bin lib profile" # duplicate symbols: haddock hoogle hscolour"
+inherit haskell-cabal
+
+DESCRIPTION="Tools to build the Gtk2Hs suite of User Interface libraries"
+HOMEPAGE="http://projects.haskell.org/gtk2hs/";
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="+closuresignals"
+
+RDEPEND=">=dev-haskell/cabal-1.24.0.0:=[profile?] 
<dev-haskell/cabal-1.25:=[profile?]
+       dev-haskell/hashtables:=[profile?]
+       dev-haskell/random:=[profile?]
+       >=dev-lang/ghc-7.8.2:=
+"
+DEPEND="${RDEPEND}
+       dev-haskell/alex
+       >=dev-haskell/cabal-1.18.1.3
+       dev-haskell/happy
+"
+
+PATCHES=("${FILESDIR}"/${PN}-0.13.1.0-ia64.patch)
+
+src_configure() {
+       haskell-cabal_src_configure \
+               $(cabal_flag closuresignals closuresignals)
+}

Reply via email to