summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-haskell/hdbc-mysql/files/hdbc-mysql-0.6.6.1-cabal-1.18.patch')
-rw-r--r--dev-haskell/hdbc-mysql/files/hdbc-mysql-0.6.6.1-cabal-1.18.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/dev-haskell/hdbc-mysql/files/hdbc-mysql-0.6.6.1-cabal-1.18.patch b/dev-haskell/hdbc-mysql/files/hdbc-mysql-0.6.6.1-cabal-1.18.patch
new file mode 100644
index 000000000000..83ddd4a4c8ca
--- /dev/null
+++ b/dev-haskell/hdbc-mysql/files/hdbc-mysql-0.6.6.1-cabal-1.18.patch
@@ -0,0 +1,33 @@
+--- HDBC-mysql-0.6.6.1-orig/Setup.lhs 2012-08-30 13:40:03.000000000 +1000
++++ HDBC-mysql-0.6.6.1/Setup.lhs 2014-07-03 22:31:21.162259637 +1000
+@@ -1,6 +1,7 @@
+ #!/usr/bin/env runhaskell
+
+ \begin{code}
++{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
+ import Distribution.Simple
+ import Distribution.PackageDescription
+ import Distribution.Version
+@@ -26,8 +27,21 @@
+ }
+ }
+
++-- 'ConstOrId' is a @Cabal-1.16@ vs @Cabal-1.18@ compatibility hack,
++-- 'programFindLocation' has a new (unused in this case)
++-- parameter. 'ConstOrId' adds this parameter when types say it is
++-- mandatory.
++class ConstOrId a b where
++ constOrId :: a -> b
++
++instance ConstOrId a a where
++ constOrId = id
++
++instance ConstOrId a (b -> a) where
++ constOrId = const
++
+ mysqlConfigProgram = (simpleProgram "mysql_config") {
+- programFindLocation = \verbosity -> do
++ programFindLocation = \verbosity -> constOrId $ do
+ mysql_config <- findProgramOnPath "mysql_config" verbosity
+ mysql_config5 <- findProgramOnPath "mysql_config5" verbosity
+ return (mysql_config `mplus` mysql_config5)