diff --git a/0001-Adapt-FastShift-instances-for-Word32-to-ghc-9.4.x.patch b/0001-Adapt-FastShift-instances-for-Word32-to-ghc-9.4.x.patch new file mode 100644 index 0000000..f52b9c1 --- /dev/null +++ b/0001-Adapt-FastShift-instances-for-Word32-to-ghc-9.4.x.patch @@ -0,0 +1,29 @@ +From 8f62d424f52cda226f5b7102f2de45e92b72b552 Mon Sep 17 00:00:00 2001 +From: Peter Simons +Date: Wed, 1 Feb 2023 16:03:29 +0100 +Subject: [PATCH] Adapt FastShift instances for Word32 to ghc-9.4.x. + +--- + Data/BloomFilter/Util.hs | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Data/BloomFilter/Util.hs b/Data/BloomFilter/Util.hs +index 7f695dc..6868209 100644 +--- a/Data/BloomFilter/Util.hs ++++ b/Data/BloomFilter/Util.hs +@@ -40,10 +40,10 @@ class FastShift a where + + instance FastShift Word32 where + {-# INLINE shiftL #-} +- shiftL (W32# x#) (I# i#) = W32# (x# `uncheckedShiftL#` i#) ++ shiftL (W32# x#) (I# i#) = W32# (x# `uncheckedShiftLWord32#` i#) + + {-# INLINE shiftR #-} +- shiftR (W32# x#) (I# i#) = W32# (x# `uncheckedShiftRL#` i#) ++ shiftR (W32# x#) (I# i#) = W32# (x# `uncheckedShiftRLWord32#` i#) + + instance FastShift Word64 where + {-# INLINE shiftL #-} +-- +2.38.1 + diff --git a/ghc-bloomfilter.spec b/ghc-bloomfilter.spec index 7507ac8..56f848f 100644 --- a/ghc-bloomfilter.spec +++ b/ghc-bloomfilter.spec @@ -17,6 +17,7 @@ %global pkg_name bloomfilter +%global pkgver %{pkg_name}-%{version} %bcond_with tests Name: ghc-%{pkg_name} Version: 2.0.1.0 @@ -26,17 +27,27 @@ License: BSD-3-Clause URL: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal#/%{pkg_name}.cabal +Patch1: 0001-Adapt-FastShift-instances-for-Word32-to-ghc-9.4.x.patch BuildRequires: ghc-Cabal-devel BuildRequires: ghc-array-devel +BuildRequires: ghc-array-prof +BuildRequires: ghc-base-devel +BuildRequires: ghc-base-prof BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-bytestring-prof BuildRequires: ghc-deepseq-devel +BuildRequires: ghc-deepseq-prof BuildRequires: ghc-rpm-macros ExcludeArch: %{ix86} %if %{with tests} BuildRequires: ghc-QuickCheck-devel +BuildRequires: ghc-QuickCheck-prof BuildRequires: ghc-random-devel +BuildRequires: ghc-random-prof BuildRequires: ghc-test-framework-devel +BuildRequires: ghc-test-framework-prof BuildRequires: ghc-test-framework-quickcheck2-devel +BuildRequires: ghc-test-framework-quickcheck2-prof %endif %description @@ -52,9 +63,26 @@ Requires(postun): ghc-compiler = %{ghc_version} %description devel This package provides the Haskell %{pkg_name} library development files. +%package -n ghc-%{pkg_name}-doc +Summary: Haskell %{pkg_name} library documentation +Requires: ghc-filesystem +BuildArch: noarch + +%description -n ghc-%{pkg_name}-doc +This package provides the Haskell %{pkg_name} library documentation. + +%package -n ghc-%{pkg_name}-prof +Summary: Haskell %{pkg_name} profiling library +Requires: ghc-%{pkg_name}-devel = %{version}-%{release} +Supplements: (ghc-%{pkg_name}-devel and ghc-prof) + +%description -n ghc-%{pkg_name}-prof +This package provides the Haskell %{pkg_name} profiling library. + %prep -%autosetup -n %{pkg_name}-%{version} +%autosetup -p1 -n %{pkg_name}-%{version} cp -p %{SOURCE1} %{pkg_name}.cabal +cabal-tweak-dep-ver base '>= 4.4 && < 4.16' '< 5' %build %ghc_lib_build @@ -77,4 +105,9 @@ cp -p %{SOURCE1} %{pkg_name}.cabal %files devel -f %{name}-devel.files %doc README.markdown examples +%files -n ghc-%{pkg_name}-doc -f ghc-%{pkg_name}-doc.files +%license LICENSE + +%files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files + %changelog