diff options
Diffstat (limited to 'dev-vcs')
-rw-r--r-- | dev-vcs/darcs/ChangeLog | 8 | ||||
-rw-r--r-- | dev-vcs/darcs/darcs-2.8.5-r3.ebuild | 13 | ||||
-rw-r--r-- | dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch | 142 |
3 files changed, 157 insertions, 6 deletions
diff --git a/dev-vcs/darcs/ChangeLog b/dev-vcs/darcs/ChangeLog index ac24a293ce2f..36d0fad312c4 100644 --- a/dev-vcs/darcs/ChangeLog +++ b/dev-vcs/darcs/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-vcs/darcs -# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-vcs/darcs/ChangeLog,v 1.57 2014/12/14 09:28:01 gienah Exp $ +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-vcs/darcs/ChangeLog,v 1.58 2015/01/03 02:28:30 gienah Exp $ + + 03 Jan 2015; Mark Wright <gienah@gentoo.org> + +files/darcs-2.8.5-ghc-7.10.patch, darcs-2.8.5-r3.ebuild: + Patch darcs-2.8.5 for ghc 7.10 *darcs-2.8.5-r3 (14 Dec 2014) diff --git a/dev-vcs/darcs/darcs-2.8.5-r3.ebuild b/dev-vcs/darcs/darcs-2.8.5-r3.ebuild index 2155e9228336..2cd6abc71408 100644 --- a/dev-vcs/darcs/darcs-2.8.5-r3.ebuild +++ b/dev-vcs/darcs/darcs-2.8.5-r3.ebuild @@ -1,6 +1,6 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-vcs/darcs/darcs-2.8.5-r3.ebuild,v 1.1 2014/12/14 09:28:01 gienah Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-vcs/darcs/darcs-2.8.5-r3.ebuild,v 1.2 2015/01/03 02:28:30 gienah Exp $ EAPI=5 @@ -8,7 +8,7 @@ EAPI=5 #hackport: flags: +library,+executable,-hpc,-warn-as-error CABAL_FEATURES="bin lib profile haddock hoogle hscolour" -inherit haskell-cabal +inherit base haskell-cabal DESCRIPTION="a distributed, interactive, smart revision control system" HOMEPAGE="http://darcs.net/" @@ -54,11 +54,16 @@ DEPEND="${RDEPEND} >=dev-haskell/test-framework-quickcheck2-0.2.8:=[profile?] ) " +PATCHES=("${FILESDIR}/${P}-ghc-7.10.patch") + src_prepare() { + base_src_prepare cabal_chdeps \ 'terminfo == 0.3.*' 'terminfo >= 0.3 && < 0.5' \ 'text >= 0.11.0.6 && < 1.2' 'text >= 0.11.0.6 && < 1.3' \ - 'random == 1.0.*' 'random >= 1.0 && < 1.2' + 'random == 1.0.*' 'random >= 1.0 && < 1.2' \ + 'base >= 4.5 && < 4.8' 'base >= 4.5 && < 4.9' \ + 'ghc >= 6.10 && < 7.10' 'ghc >= 6.10 && < 7.12' } src_configure() { diff --git a/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch b/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch new file mode 100644 index 000000000000..138c0848b9b8 --- /dev/null +++ b/dev-vcs/darcs/files/darcs-2.8.5-ghc-7.10.patch @@ -0,0 +1,142 @@ +--- darcs-2.8.5-orig/src/Darcs/Repository/Internal.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Repository/Internal.hs 2015-01-03 12:18:03.576529408 +1100 +@@ -71,8 +71,8 @@ + writeProblem, readProblem, readfromAndWritetoProblem ) + import System.Directory ( doesDirectoryExist, setCurrentDirectory, + createDirectoryIfMissing, doesFileExist ) +-import Control.Monad ( when, unless, filterM ) +-import Control.Applicative ( (<$>) ) ++import Control.Monad ( when, unless, filterM, ap ) ++import Control.Applicative ( Applicative(..), (<$>) ) + import Control.Exception ( catch, IOException ) + + import Workaround ( getCurrentDirectory, renameFile, setExecutable ) +@@ -184,6 +184,10 @@ + instance Functor (RIO p C(r u t t)) where + fmap f m = RIO $ \r -> fmap f (unsafeUnRIO m r) + ++instance Applicative (RIO p C(r u t t)) where ++ pure = return ++ (<*>) = ap ++ + -- | We have an instance of Monad so that IO actions that do not + -- change the tentative recorded state are convenient in the IO monad. + instance Monad (RIO p C(r u t t)) where +--- darcs-2.8.5-orig/src/Darcs/Patch/Prim/V1/Commute.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/Prim/V1/Commute.hs 2015-01-03 12:11:31.281425244 +1100 +@@ -6,7 +6,8 @@ + where + + import Prelude hiding ( pi ) +-import Control.Monad ( MonadPlus, msum, mzero, mplus ) ++import Control.Applicative ( Applicative(..), Alternative(..) ) ++import Control.Monad ( MonadPlus, msum, mzero, mplus, liftM, ap ) + + import qualified Data.ByteString as B (ByteString, concat) + import qualified Data.ByteString.Char8 as BC (pack) +@@ -35,6 +36,17 @@ + + data Perhaps a = Unknown | Failed | Succeeded a + ++instance Functor Perhaps where ++ fmap = liftM ++ ++instance Applicative Perhaps where ++ pure = return ++ (<*>) = ap ++ ++instance Alternative Perhaps where ++ (<|>) = mplus ++ empty = mzero ++ + instance Monad Perhaps where + (Succeeded x) >>= k = k x + Failed >>= _ = Failed +--- darcs-2.8.5-orig/src/Darcs/IO.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/IO.hs 2015-01-03 12:06:40.423103022 +1100 +@@ -23,6 +23,7 @@ + import Data.Char ( toLower ) + import Data.List ( isSuffixOf ) + import System.IO.Error ( isDoesNotExistError, isPermissionError ) ++import Control.Applicative ( Applicative(..) ) + import Control.Exception.Extensible ( catch, SomeException, IOException ) + import Control.Monad.Error + import System.Directory ( createDirectory, +@@ -97,6 +98,10 @@ + instance Functor TolerantIO where + fmap f m = m >>= return . f + ++instance Applicative TolerantIO where ++ pure = return ++ (<*>) = ap ++ + instance Monad TolerantIO where + f >>= g = runTM $ runIO f >>= runIO . g + f >> g = runTM $ runIO f >> runIO g +@@ -106,6 +111,10 @@ + instance Functor SilentIO where + fmap f m = m >>= return . f + ++instance Applicative SilentIO where ++ pure = return ++ (<*>) = ap ++ + instance Monad SilentIO where + f >>= g = runTM $ runIO f >>= runIO . g + f >> g = runTM $ runIO f >> runIO g +--- darcs-2.8.5-orig/src/Darcs/Patch/V2/Real.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V2/Real.hs 2015-01-03 11:14:40.109221505 +1100 +@@ -29,6 +29,9 @@ + , mergeUnravelled + ) where + ++#if MIN_VERSION_base(4,8,0) ++import Prelude hiding ( (*>) ) ++#endif + import Control.Monad ( mplus, liftM ) + import qualified Data.ByteString.Char8 as BC ( ByteString, pack ) + import Data.Maybe ( fromMaybe ) +--- darcs-2.8.5-orig/src/Darcs/Patch/V2/Non.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V2/Non.hs 2015-01-03 11:14:08.073788136 +1100 +@@ -40,7 +40,11 @@ + , (>>*) + ) where + ++#if MIN_VERSION_base(4,8,0) ++import Prelude hiding ( rem, (*>) ) ++#else + import Prelude hiding ( rem ) ++#endif + import Data.List ( delete ) + import Control.Monad ( liftM, mzero ) + import Darcs.Patch.Commute ( commuteFL ) +--- darcs-2.8.5-orig/src/Darcs/Patch/V1/Commute.hs 2014-08-26 06:27:34.000000000 +1000 ++++ darcs-2.8.5/src/Darcs/Patch/V1/Commute.hs 2015-01-03 12:11:47.084707544 +1100 +@@ -28,7 +28,8 @@ + ) + where + +-import Control.Monad ( MonadPlus, mplus, msum, mzero, guard ) ++import Control.Applicative ( Applicative(..), Alternative(..) ) ++import Control.Monad ( MonadPlus, mplus, msum, mzero, guard, liftM, ap ) + + import Darcs.Patch.Commute ( toFwdCommute ) + import Darcs.Patch.ConflictMarking ( mangleUnravelled ) +@@ -69,6 +70,17 @@ + + data Perhaps a = Unknown | Failed | Succeeded a + ++instance Functor Perhaps where ++ fmap = liftM ++ ++instance Applicative Perhaps where ++ pure = return ++ (<*>) = ap ++ ++instance Alternative Perhaps where ++ (<|>) = mplus ++ empty = mzero ++ + instance Monad Perhaps where + (Succeeded x) >>= k = k x + Failed >>= _ = Failed |