summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2023-11-15 13:35:50 +0200
committerEfraim Flashner <efraim@flashner.co.il>2023-11-15 18:03:02 +0200
commit59fdbbb7171f0370c0ef089bccea81db320cd27c (patch)
treebf3b9cf0cb2ada241fd91ca25f2de5535fb5ae51 /gnu/packages
parent879503464f26fed14570f42b8f040ea7484b72ea (diff)
gnu: ghc-persistent: Fix build on i686-linux.
* gnu/packages/haskell-xyz.scm (ghc-persistent)[source]: Add patch. * gnu/packages/patches/ghc-persistent-fix-32bit.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I1b2c8419f3136d6c9df772d7c7abdc83a80d6112
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/haskell-xyz.scm3
-rw-r--r--gnu/packages/patches/ghc-persistent-fix-32bit.patch25
2 files changed, 27 insertions, 1 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index cf4172e590..0dd5a0922c 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -8895,7 +8895,8 @@ numbers")
(uri (hackage-uri "persistent" version))
(sha256
(base32
- "0z69yvk0rd29dp5qdhi4p587b891y90azrzzpa3g10cxp3gyywvm"))))
+ "0z69yvk0rd29dp5qdhi4p587b891y90azrzzpa3g10cxp3gyywvm"))
+ (patches (search-patches "ghc-persistent-fix-32bit.patch"))))
(build-system haskell-build-system)
(properties '((upstream-name . "persistent")))
(inputs (list ghc-conduit
diff --git a/gnu/packages/patches/ghc-persistent-fix-32bit.patch b/gnu/packages/patches/ghc-persistent-fix-32bit.patch
new file mode 100644
index 0000000000..d0aace2445
--- /dev/null
+++ b/gnu/packages/patches/ghc-persistent-fix-32bit.patch
@@ -0,0 +1,25 @@
+https://sources.debian.org/data/main/h/haskell-persistent/2.13.3.5-2/debian/patches/fix-tests-32-bit
+Inspired by: https://github.com/yesodweb/persistent/pull/1429
+
+--- a/test/Database/Persist/THSpec.hs
++++ b/test/Database/Persist/THSpec.hs
+@@ -25,6 +25,7 @@ module Database.Persist.THSpec where
+
+ import Control.Applicative (Const(..))
+ import Data.Aeson (decode, encode)
++import Data.Bits (bitSizeMaybe)
+ import Data.ByteString.Lazy.Char8 ()
+ import Data.Coerce
+ import Data.Functor.Identity (Identity(..))
+@@ -237,7 +238,10 @@ spec = describe "THSpec" $ do
+ it "should have usual haskell name" $ do
+ fieldHaskell `shouldBe` FieldNameHS "Id"
+ it "should have correct underlying sql type" $ do
+- fieldSqlType `shouldBe` SqlInt64
++ fieldSqlType `shouldBe`
++ if bitSizeMaybe (0 :: Int) <= Just 32
++ then SqlInt32
++ else SqlInt64
+ it "should have correct haskell type" $ do
+ fieldType `shouldBe` FTTypeCon Nothing "Int"
+