1 |
commit: 941c47b24d3eab6b10f53b16cb406f069700506b |
2 |
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Feb 16 08:37:25 2017 +0000 |
4 |
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Feb 16 10:21:55 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=941c47b2 |
7 |
|
8 |
dev-haskell/lens-family-th: new package, a depend of dev-haskell/persistent-2.6 |
9 |
|
10 |
Generate lens-family style lenses |
11 |
|
12 |
Package-Manager: Portage-2.3.3, Repoman-2.3.1 |
13 |
|
14 |
dev-haskell/lens-family-th/Manifest | 1 + |
15 |
.../files/lens-family-th-0.4.1.0-ghc-8.patch | 40 ++++++++++++++++++++++ |
16 |
.../lens-family-th/lens-family-th-0.4.1.0.ebuild | 29 ++++++++++++++++ |
17 |
dev-haskell/lens-family-th/metadata.xml | 17 +++++++++ |
18 |
4 files changed, 87 insertions(+) |
19 |
|
20 |
diff --git a/dev-haskell/lens-family-th/Manifest b/dev-haskell/lens-family-th/Manifest |
21 |
new file mode 100644 |
22 |
index 0000000000..b39ed65a6a |
23 |
--- /dev/null |
24 |
+++ b/dev-haskell/lens-family-th/Manifest |
25 |
@@ -0,0 +1 @@ |
26 |
+DIST lens-family-th-0.4.1.0.tar.gz 4562 SHA256 754fdc4c7c292b160a87974ec3690b755fb93f3877c8080d331cfa6ec4b39e20 SHA512 ab4283fcb833c68a838f006a71d30ed129c1d5f8ba030c4cbec6443ebeedc83e09a707a609c3c30c4420675bf5187227ce11f39218a3afb7ee563ad26104b774 WHIRLPOOL c8b76e3edea0575383dbeaff63427fab59af66a46b48fb5fe89d1258311ca6b38d38debecd79cdd05eda0809020c652757153465d679f51a3671d9952d0d406c |
27 |
|
28 |
diff --git a/dev-haskell/lens-family-th/files/lens-family-th-0.4.1.0-ghc-8.patch b/dev-haskell/lens-family-th/files/lens-family-th-0.4.1.0-ghc-8.patch |
29 |
new file mode 100644 |
30 |
index 0000000000..06be29a813 |
31 |
--- /dev/null |
32 |
+++ b/dev-haskell/lens-family-th/files/lens-family-th-0.4.1.0-ghc-8.patch |
33 |
@@ -0,0 +1,40 @@ |
34 |
+diff --git a/Lens/Family/THCore.hs b/Lens/Family/THCore.hs |
35 |
+index d4f2740..2f53db6 100644 |
36 |
+--- a/Lens/Family/THCore.hs |
37 |
++++ b/Lens/Family/THCore.hs |
38 |
+@@ -1 +1,2 @@ |
39 |
++{-# LANGUAGE CPP #-} |
40 |
+ {-# LANGUAGE TemplateHaskell #-} |
41 |
+@@ -52,4 +53,9 @@ extractLensTypeInfo datatype = do |
42 |
+ return $ case i of |
43 |
++#if MIN_VERSION_template_haskell(2,11,0) |
44 |
++ TyConI (DataD _ n ts _ _ _) -> (n, ts) |
45 |
++ TyConI (NewtypeD _ n ts _ _ _) -> (n, ts) |
46 |
++#else |
47 |
+ TyConI (DataD _ n ts _ _) -> (n, ts) |
48 |
+ TyConI (NewtypeD _ n ts _ _) -> (n, ts) |
49 |
++#endif |
50 |
+ _ -> error $ "Can't derive Lens for: " ++ datatypeStr |
51 |
+@@ -63,2 +69,8 @@ extractConstructorFields datatype = do |
52 |
+ return $ case i of |
53 |
++#if MIN_VERSION_template_haskell(2,11,0) |
54 |
++ TyConI (DataD _ _ _ _ [RecC _ fs] _) -> fs |
55 |
++ TyConI (NewtypeD _ _ _ _ (RecC _ fs) _) -> fs |
56 |
++ TyConI (DataD _ _ _ _ [_] _) -> |
57 |
++ error $ "Can't derive Lens without record selectors: " ++ datatypeStr |
58 |
++#else |
59 |
+ TyConI (DataD _ _ _ [RecC _ fs] _) -> fs |
60 |
+@@ -67,2 +79,3 @@ extractConstructorFields datatype = do |
61 |
+ error $ "Can't derive Lens without record selectors: " ++ datatypeStr |
62 |
++#endif |
63 |
+ TyConI NewtypeD{} -> |
64 |
+@@ -134,4 +147,9 @@ extractConstructorInfo datatype = do |
65 |
+ return $ case i of |
66 |
++#if MIN_VERSION_template_haskell(2,11,0) |
67 |
++ TyConI (DataD _ _ _ _ fs _) -> fs |
68 |
++ TyConI (NewtypeD _ _ _ _ f _) -> [f] |
69 |
++#else |
70 |
+ TyConI (DataD _ _ _ fs _) -> fs |
71 |
+ TyConI (NewtypeD _ _ _ f _) -> [f] |
72 |
++#endif |
73 |
+ _ -> error $ "Can't derive traversal for: " ++ datatypeStr |
74 |
|
75 |
diff --git a/dev-haskell/lens-family-th/lens-family-th-0.4.1.0.ebuild b/dev-haskell/lens-family-th/lens-family-th-0.4.1.0.ebuild |
76 |
new file mode 100644 |
77 |
index 0000000000..082c451542 |
78 |
--- /dev/null |
79 |
+++ b/dev-haskell/lens-family-th/lens-family-th-0.4.1.0.ebuild |
80 |
@@ -0,0 +1,29 @@ |
81 |
+# Copyright 1999-2017 Gentoo Foundation |
82 |
+# Distributed under the terms of the GNU General Public License v2 |
83 |
+# $Id$ |
84 |
+ |
85 |
+EAPI=5 |
86 |
+ |
87 |
+# ebuild generated by hackport 0.4.7.9999 |
88 |
+ |
89 |
+CABAL_FEATURES="lib profile haddock hoogle hscolour" |
90 |
+inherit haskell-cabal |
91 |
+ |
92 |
+DESCRIPTION="Generate lens-family style lenses" |
93 |
+HOMEPAGE="https://github.com/DanBurton/lens-family-th#readme" |
94 |
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" |
95 |
+ |
96 |
+LICENSE="BSD" |
97 |
+SLOT="0/${PV}" |
98 |
+KEYWORDS="~amd64 ~x86" |
99 |
+IUSE="" |
100 |
+ |
101 |
+RDEPEND=">=dev-lang/ghc-7.4.1:= |
102 |
+" |
103 |
+DEPEND="${RDEPEND} |
104 |
+ >=dev-haskell/cabal-1.8 |
105 |
+" |
106 |
+ |
107 |
+src_prepare() { |
108 |
+ epatch "${FILESDIR}"/${P}-ghc-8.patch |
109 |
+} |
110 |
|
111 |
diff --git a/dev-haskell/lens-family-th/metadata.xml b/dev-haskell/lens-family-th/metadata.xml |
112 |
new file mode 100644 |
113 |
index 0000000000..ead3c316a4 |
114 |
--- /dev/null |
115 |
+++ b/dev-haskell/lens-family-th/metadata.xml |
116 |
@@ -0,0 +1,17 @@ |
117 |
+<?xml version="1.0" encoding="UTF-8"?> |
118 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
119 |
+<pkgmetadata> |
120 |
+ <maintainer type="project"> |
121 |
+ <email>haskell@g.o</email> |
122 |
+ <name>Gentoo Haskell</name> |
123 |
+ </maintainer> |
124 |
+ <longdescription> |
125 |
+ Due to a cabal/hackage defect, curly braces cannot be |
126 |
+ adequately displayed here. Please see |
127 |
+ <http://github.com/DanBurton/lens-family-th#readme> |
128 |
+ for a proper description of this package. |
129 |
+ |
130 |
+ (See <https://github.com/haskell/cabal/issues/968> |
131 |
+ for the ticket I created regarding the defect.) |
132 |
+ </longdescription> |
133 |
+</pkgmetadata> |