diff options
Diffstat (limited to 'dev-haskell/alex')
| -rw-r--r-- | dev-haskell/alex/Manifest | 4 | ||||
| -rw-r--r-- | dev-haskell/alex/alex-3.0.5.ebuild | 72 | ||||
| -rw-r--r-- | dev-haskell/alex/alex-3.1.2.ebuild | 73 | ||||
| -rw-r--r-- | dev-haskell/alex/alex-3.1.3.ebuild | 73 | ||||
| -rw-r--r-- | dev-haskell/alex/alex-3.1.4.ebuild | 80 | ||||
| -rw-r--r-- | dev-haskell/alex/files/alex-3.1.4-ghc-7.10.patch | 24 | ||||
| -rw-r--r-- | dev-haskell/alex/metadata.xml | 8 |
7 files changed, 334 insertions, 0 deletions
diff --git a/dev-haskell/alex/Manifest b/dev-haskell/alex/Manifest new file mode 100644 index 000000000000..539b86d0352d --- /dev/null +++ b/dev-haskell/alex/Manifest @@ -0,0 +1,4 @@ +DIST alex-3.0.5.tar.gz 100004 SHA256 c3326417a0538e355e5ad1871ab931b9c8145391e8b2ff79668eb643d9b99659 SHA512 0a6a2500b4f8a96e1fd6252b11f7684e47875b80c0113a4ba0e855b54ccd45054f21af6cac30c3edb3b9ac86a7fc60810ea33376a7ab78794f980e3cf9a22eb9 WHIRLPOOL 5c9b07f7eae546d5920c9da4dd2d198d440275da1943d155ae53aaa92fbb9bc9e8c9c91a1303c6130c9341c7ba6518665f0ff383605fa1ecb8d4bd58066f3a87 +DIST alex-3.1.2.tar.gz 101215 SHA256 1d14eb255c44f440f04876c496ed5db24aba8d05b45d665463633afe92361e6d SHA512 21874caf41412d926866b0450db9e29984d1df076d277a2325b3d0b80114e039462ab766b0964177f98d9b625635e219489271ab2853e39f1fef3e7d6caa8660 WHIRLPOOL f38c2381d5587bb11754011c31104477a4fbc577f9fd469eab9b255e74a0efe093a25538296093bdf4a0369e545402865fff8c92f20ec3982d83113c761a46ce +DIST alex-3.1.3.tar.gz 99868 SHA256 8d41a6e72a016155f00c846f7146ab4b27fe9640668a4b592d6a9b856f970a92 SHA512 f09f720627b9f2cae5d9d3a99488c2249e82c9310f0a436bccbd5238bd3215fae287706ee6f7530533c801348bdbfebc9fd54cafc15a75d528462b2ee987eb3c WHIRLPOOL 8bdaaa8ee0e4f431603f2e299a83b3d0c30b46bfe19863a04c487687afe377ec5df34ba411c3669412cc406e30ab4e176afad51491ea1612bd19ab620a99f1f1 +DIST alex-3.1.4.tar.gz 101827 SHA256 d64e4eccd953c62795ed566a6de5f3d150b653e05872ff697b3d9dbc961da19f SHA512 880a6a97b62701712f28c9dc649d90c50bfedecd2c52d7a3781b2f1672826cb2b7a8872528acbae16448494f07743a4c2b4a80e4a9d8de049077fdf4f4bd75d0 WHIRLPOOL c0dd2e8f7925da7ee2ac4893a35330bf0a96561204adf161c0ed34d8616fea220eb86e4645f091af2f94b9952b00262ba84c7c32367a3ec4847645b8fae74aec diff --git a/dev-haskell/alex/alex-3.0.5.ebuild b/dev-haskell/alex/alex-3.0.5.ebuild new file mode 100644 index 000000000000..fd3a06a297b0 --- /dev/null +++ b/dev-haskell/alex/alex-3.0.5.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.2.9999 + +CABAL_FEATURES="bin test-suite" +inherit autotools eutils haskell-cabal + +DESCRIPTION="Alex is a tool for generating lexical analysers in Haskell" +HOMEPAGE="http://www.haskell.org/alex/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 ia64 ppc ppc64 sparc x86" +IUSE="doc" + +RDEPEND="" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + >=dev-haskell/quickcheck-2 + >=dev-lang/ghc-6.10.4 + doc? ( ~app-text/docbook-xml-dtd-4.2 + app-text/docbook-xsl-stylesheets + >=dev-libs/libxslt-1.1.2 )" + +src_prepare() { + HCFLAGS+=" -XBangPatterns" #fixes build failure on BE platforms; bug 466778 + + cabal_chdeps \ + 'build-depends: process' 'build-depends: process, base' + + for f in Scan Parser; do + rm "${S}/src/$f."* + mv "${S}/dist/build/alex/alex-tmp/$f.hs" "${S}"/src/ + done + + if use doc; then + cd "${S}/doc/" + eautoreconf || die "eautoreconf for docs failed" + fi +} + +src_configure() { + haskell-cabal_src_configure + + if use doc; then + cd "${S}/doc/" + econf || die "econf for docs failed" + fi +} + +src_compile() { + cabal_src_compile + + if use doc; then + emake -C "${S}/doc/" -j1 || die "emake for docs failed" + fi +} + +src_install() { + cabal_src_install + + if use doc; then + doman "${S}/doc/alex.1" + dohtml -r "${S}/doc/alex/" + fi + dodoc README +} diff --git a/dev-haskell/alex/alex-3.1.2.ebuild b/dev-haskell/alex/alex-3.1.2.ebuild new file mode 100644 index 000000000000..16c8d4604726 --- /dev/null +++ b/dev-haskell/alex/alex-3.1.2.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.4.9999 + +CABAL_FEATURES="bin test-suite" +inherit autotools haskell-cabal + +DESCRIPTION="Alex is a tool for generating lexical analysers in Haskell" +HOMEPAGE="http://www.haskell.org/alex/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha amd64 ia64 ppc ppc64 ~sparc x86" +IUSE="doc" + +RDEPEND="" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + >=dev-haskell/quickcheck-2 + >=dev-lang/ghc-6.10.4 + doc? ( ~app-text/docbook-xml-dtd-4.2 + app-text/docbook-xsl-stylesheets + >=dev-libs/libxslt-1.1.2 )" + +src_prepare() { + # drop depend on itself and happy, otherwise cabal tries to regenerate it + rm src/{Scan.x,Parser.y} || die + + for f in Scan Parser; do + mv "${S}/dist/build/alex/alex-tmp/$f.hs" "${S}"/src/ || die + done + + if use doc; then + cd "${S}/doc/" + eautoreconf + fi +} + +src_configure() { + # make sure we don't accidentally use those + # installed in system + haskell-cabal_src_configure \ + --with-alex=false \ + --with-happy=false + + if use doc; then + cd "${S}/doc/" + econf + fi +} + +src_compile() { + cabal_src_compile + + if use doc; then + emake -C "${S}/doc/" -j1 + fi +} + +src_install() { + cabal_src_install + + if use doc; then + doman "${S}/doc/alex.1" + dohtml -r "${S}/doc/alex/" + fi + dodoc README +} diff --git a/dev-haskell/alex/alex-3.1.3.ebuild b/dev-haskell/alex/alex-3.1.3.ebuild new file mode 100644 index 000000000000..c5d7d7dabe4e --- /dev/null +++ b/dev-haskell/alex/alex-3.1.3.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.4.9999 + +CABAL_FEATURES="bin test-suite" +inherit autotools haskell-cabal + +DESCRIPTION="Alex is a tool for generating lexical analysers in Haskell" +HOMEPAGE="http://www.haskell.org/alex/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 ~ia64 ppc ppc64 sparc x86" +IUSE="doc" + +RDEPEND="" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + >=dev-haskell/quickcheck-2 + >=dev-lang/ghc-6.10.4 + doc? ( ~app-text/docbook-xml-dtd-4.2 + app-text/docbook-xsl-stylesheets + >=dev-libs/libxslt-1.1.2 )" + +src_prepare() { + # drop depend on itself and happy, otherwise cabal tries to regenerate it + rm src/{Scan.x,Parser.y} || die + + for f in Scan Parser; do + mv "${S}/dist/build/alex/alex-tmp/$f.hs" "${S}"/src/ || die + done + + if use doc; then + cd "${S}/doc/" + eautoreconf + fi +} + +src_configure() { + # make sure we don't accidentally use those + # installed in system + haskell-cabal_src_configure \ + --with-alex=false \ + --with-happy=false + + if use doc; then + cd "${S}/doc/" + econf + fi +} + +src_compile() { + cabal_src_compile + + if use doc; then + emake -C "${S}/doc/" -j1 + fi +} + +src_install() { + cabal_src_install + + if use doc; then + doman "${S}/doc/alex.1" + dohtml -r "${S}/doc/alex/" + fi + dodoc README +} diff --git a/dev-haskell/alex/alex-3.1.4.ebuild b/dev-haskell/alex/alex-3.1.4.ebuild new file mode 100644 index 000000000000..473e624bb0ea --- /dev/null +++ b/dev-haskell/alex/alex-3.1.4.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +# ebuild generated by hackport 0.3.4.9999 + +CABAL_FEATURES="bin test-suite" +inherit autotools eutils haskell-cabal + +DESCRIPTION="Alex is a tool for generating lexical analysers in Haskell" +HOMEPAGE="http://www.haskell.org/alex/" +SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="doc" + +RDEPEND="" +DEPEND="${RDEPEND} + >=dev-haskell/cabal-1.8 + >=dev-haskell/quickcheck-2 + >=dev-lang/ghc-6.10.4 + doc? ( ~app-text/docbook-xml-dtd-4.2 + app-text/docbook-xsl-stylesheets + >=dev-libs/libxslt-1.1.2 )" + +src_prepare() { + epatch "${FILESDIR}"/${P}-ghc-7.10.patch + + # drop depend on itself and happy, otherwise cabal tries to regenerate it + rm src/{Scan.x,Parser.y} || die + + for f in Scan Parser; do + mv "${S}/dist/build/alex/alex-tmp/$f.hs" "${S}"/src/ || die + done + + if use doc; then + cd "${S}/doc/" + eautoreconf + fi +} + +src_configure() { + # make sure we don't accidentally use those + # installed in system + haskell-cabal_src_configure \ + --with-alex=false \ + --with-happy=false + + if use doc; then + cd "${S}/doc/" + econf + fi +} + +src_compile() { + cabal_src_compile + + if use doc; then + emake -C "${S}/doc/" -j1 + fi +} + +src_test() { + # workaround https://github.com/haskell/cabal/issues/2398 + emake -k -C tests all || die +} + +src_install() { + cabal_src_install + + if use doc; then + doman "${S}/doc/alex.1" + dohtml -r "${S}/doc/alex/" + fi + dodoc README +} diff --git a/dev-haskell/alex/files/alex-3.1.4-ghc-7.10.patch b/dev-haskell/alex/files/alex-3.1.4-ghc-7.10.patch new file mode 100644 index 000000000000..cb422b60d7c5 --- /dev/null +++ b/dev-haskell/alex/files/alex-3.1.4-ghc-7.10.patch @@ -0,0 +1,24 @@ +diff --git a/templates/wrappers.hs b/templates/wrappers.hs +index a1a1a6d..c020cc7 100644 +--- a/templates/wrappers.hs ++++ b/templates/wrappers.hs +@@ -284,6 +284,19 @@ runAlex input (Alex f) + + newtype Alex a = Alex { unAlex :: AlexState -> Either String (AlexState, a) } + ++instance Functor Alex where ++ fmap f a = Alex $ \s -> case unAlex a s of ++ Left msg -> Left msg ++ Right (s', a') -> Right (s', f a') ++ ++instance Applicative Alex where ++ pure a = Alex $ \s -> Right (s, a) ++ fa <*> a = Alex $ \s -> case unAlex fa s of ++ Left msg -> Left msg ++ Right (s', f) -> case unAlex a s' of ++ Left msg -> Left msg ++ Right (s'', b) -> Right (s'', f b) ++ + instance Monad Alex where + m >>= k = Alex $ \s -> case unAlex m s of + Left msg -> Left msg diff --git a/dev-haskell/alex/metadata.xml b/dev-haskell/alex/metadata.xml new file mode 100644 index 000000000000..411c90c14bbc --- /dev/null +++ b/dev-haskell/alex/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>haskell</herd> + <longdescription> + Alex is a tool for generating lexical analysers in Haskell + </longdescription> +</pkgmetadata> |
