diff options
author | Volker Stolz <vs@FreeBSD.org> | 2007-01-22 08:05:31 +0000 |
---|---|---|
committer | Volker Stolz <vs@FreeBSD.org> | 2007-01-22 08:05:31 +0000 |
commit | 1b4b19deae3d8ac8206cd8f5808cbf1719b66821 (patch) | |
tree | dd7b0a3d6b285d7d47e872b45aee191e64f57dcb /devel/darcs | |
parent | 17050f925d6023a6bc1099f679c1cf13d6c15495 (diff) | |
download | ports-1b4b19deae3d8ac8206cd8f5808cbf1719b66821.tar.gz ports-1b4b19deae3d8ac8206cd8f5808cbf1719b66821.zip |
Fix build of 'darcs' with new GHC 6.6 by pulling in some patches from upstream
(no functional changes)
Notes
Notes:
svn path=/head/; revision=182954
Diffstat (limited to 'devel/darcs')
-rw-r--r-- | devel/darcs/Makefile | 2 | ||||
-rw-r--r-- | devel/darcs/files/patch-Lcs.lhs | 56 | ||||
-rw-r--r-- | devel/darcs/files/patch-configure.ac.diff | 48 |
3 files changed, 106 insertions, 0 deletions
diff --git a/devel/darcs/Makefile b/devel/darcs/Makefile index b9827ec2c300..93afe2afe14f 100644 --- a/devel/darcs/Makefile +++ b/devel/darcs/Makefile @@ -19,6 +19,7 @@ LIB_DEPENDS= curl:${PORTSDIR}/ftp/curl \ gmp.7:${PORTSDIR}/math/libgmp4 OPTIONS= SERVER "install server" off +USE_AUTOTOOLS= autoconf:259 GNU_CONFIGURE= yes CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \ LDFLAGS="-L${LOCALBASE}/lib -L${PREFIX}/lib/ ${PTHREAD_LIBS}" \ @@ -50,6 +51,7 @@ INSTALL_TARGET+= installdocs MAN1= darcs.1 post-patch: + @${RM} ${WRKSRC}/configure .if defined(WITH_SERVER) @${REINPLACE_CMD} -e 's|$$(libexecdir)/cgi-bin|${PREFIX}/${CGIDIR}| ; \ s|darcs/cgi.conf|cgi.conf.sample| ; /ln/d' \ diff --git a/devel/darcs/files/patch-Lcs.lhs b/devel/darcs/files/patch-Lcs.lhs new file mode 100644 index 000000000000..aa7279e36b2f --- /dev/null +++ b/devel/darcs/files/patch-Lcs.lhs @@ -0,0 +1,56 @@ +Tue Aug 15 19:41:27 EDT 2006 Esa Ilari Vuokko <ei@vuokko.info> + * Workaround for HasBounds that was removed in base-2.0 (GHC 6.6) +diff -rN -u old-hsdarcs/Lcs.lhs new-hsdarcs-1/Lcs.lhs +--- Lcs.lhs 2007-01-22 01:20:24.000000000 -0500 ++++ Lcs.lhs 2007-01-22 01:20:25.000000000 -0500 +@@ -358,7 +358,8 @@ + -- | goto next unchanged line, return the given line if unchanged + nextUnchanged :: BSTArray s -> Int -> ST s Int + nextUnchanged c i = do +- if i == (aLen c) + 1 then return i ++ len <- aLenM c ++ if i == len + 1 then return i + else do b <- readArray c i + if b then nextUnchanged c (i+1) + else return i +@@ -367,7 +368,8 @@ + -- behind the last line + skipOneUnChanged :: BSTArray s -> Int -> ST s Int + skipOneUnChanged c i = do +- if i == (aLen c) + 1 then return i ++ len <- aLenM c ++ if i == len + 1 then return i + else do b <- readArray c i + if not b then return (i+1) + else skipOneUnChanged c (i+1) +@@ -381,8 +383,9 @@ + + -- | goto next changed line, return the given line if changed + nextChanged :: BSTArray s -> Int -> ST s (Maybe Int) +-nextChanged c i = +- if i <= aLen c ++nextChanged c i = do ++ len <- aLenM c ++ if i <= len + then do b <- readArray c i + if not b then nextChanged c (i+1) + else return $ Just i +@@ -430,8 +433,17 @@ + initP :: [PackedString] -> PArray + initP a = listArray (0, length a) (nilPS:a) + ++#if __GLASGOW_HASKELL__ > 604 ++aLen :: (IArray a e) => a Int e -> Int ++aLen a = snd $ bounds a ++aLenM :: (MArray a e m) => a Int e -> m Int ++aLenM a = getBounds a >>= return . snd ++#else + aLen :: HasBounds a => a Int e -> Int + aLen a = snd $ bounds a ++aLenM :: (HasBounds a, Monad m) => a Int e -> m Int ++aLenM = return . snd . bounds ++#endif + \end{code} + + \begin{code} + diff --git a/devel/darcs/files/patch-configure.ac.diff b/devel/darcs/files/patch-configure.ac.diff new file mode 100644 index 000000000000..290b26459a46 --- /dev/null +++ b/devel/darcs/files/patch-configure.ac.diff @@ -0,0 +1,48 @@ +Wed Oct 4 08:31:58 EDT 2006 Josef Svenningsson <josef.svenningsson@gmail.com> + * Look for Text.Regex in package regex-compat. Needed for GHC 6.6 +diff -rN -u old-hsdarcs/configure.ac new-hsdarcs-1/configure.ac +--- configure.ac 2007-01-22 02:16:07.000000000 -0500 ++++ configure.ac 2007-01-22 02:16:08.000000000 -0500 +@@ -110,6 +110,7 @@ + dnl Look for Text.Regex + + GHC_CHECK_MODULE(Text.Regex( mkRegex, matchRegex, Regex ), text, mkRegex undefined) ++GHC_CHECK_MODULE(Text.Regex( mkRegex, matchRegex, Regex ), regex-compat, mkRegex undefined) + + dnl See if we need a package for QuickCheck + + +Tue Aug 15 19:57:14 EDT 2006 Esa Ilari Vuokko <ei@vuokko.info> + * Link to relevant symbol when checking for Control.Monad.Error +diff -rN -u old-hsdarcs/configure.ac new-hsdarcs-1/configure.ac +--- configure.ac 2007-01-22 02:26:47.000000000 -0500 ++++ configure.ac 2007-01-22 02:26:49.000000000 -0500 +@@ -117,8 +117,8 @@ + + dnl See if we need the util or mtl packages for Control.Monad + +-GHC_CHECK_MODULE(Control.Monad.Error, util, putStr undefined) +-GHC_CHECK_MODULE(Control.Monad.Error, mtl, putStr undefined) ++GHC_CHECK_MODULE(Control.Monad.Error, util, strMsg "foo" :: String) ++GHC_CHECK_MODULE(Control.Monad.Error, mtl, strMsg "foo" :: String) + + dnl See if we need a package for parsec... + + +Tue Aug 15 19:57:39 EDT 2006 Esa Ilari Vuokko <ei@vuokko.info> + * Check for module Text.Html in package html +diff -rN -u old-hsdarcs/configure.ac new-hsdarcs-1/configure.ac +--- configure.ac 2007-01-22 02:25:55.000000000 -0500 ++++ configure.ac 2007-01-22 02:25:57.000000000 -0500 +@@ -124,6 +124,10 @@ + + GHC_CHECK_MODULE(Text.ParserCombinators.Parsec, parsec, errorPos undefined) + ++dnl Check if we need package html ++ ++GHC_CHECK_MODULE(Text.Html, html, text "foo") ++ + dnl Deal with systems on which getCurrentDirectory uses '\\' rather than '/': + + WORKAROUND_getCurrentDirectory + |