Date: Wednesday, January 22, 2020 @ 10:42:07 Author: felixonmars Revision: 553448
upgpkg: haskell-clash-prelude 1.0.1-1: rebuild with ghc 8.8.1, cabal-doctest 1.0.7, polyparse 1.13, primitive 0.7.0.0, regex-base 0.94.0.0, regex-pcre 0.95.0.0, regex-posix 0.96.0.0, regex-tdfa 1.3.1.0, easytest 0.3, unexceptionalio 0.5.0, gtk2hs-buildtools 0.13.8.0, ghc-typelits-natnormalise 0.7, resolv 0.1.1.3, ghc-typelits-knownnat 0.7.1, memory 0.15.0, RSA 2.4.1, foldl 1.4.6, lens 4.18, postgresql-binary 0.12.2, tls 1.5.0, safecopy 0.10.2, singletons 2.6, clash-prelude 1.0.1 Modified: haskell-clash-prelude/trunk/PKGBUILD Deleted: haskell-clash-prelude/trunk/ghc-8.6.patch ---------------+ PKGBUILD | 22 +-- ghc-8.6.patch | 324 -------------------------------------------------------- 2 files changed, 10 insertions(+), 336 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2020-01-22 10:41:39 UTC (rev 553447) +++ PKGBUILD 2020-01-22 10:42:07 UTC (rev 553448) @@ -2,26 +2,24 @@ _hkgname=clash-prelude pkgname=haskell-clash-prelude -pkgver=0.99.3 -pkgrel=85 +pkgver=1.0.1 +pkgrel=1 pkgdesc="CAES Language for Synchronous Hardware - Prelude library" url="https://github.com/clash-lang/clash-prelude" license=('BSD') arch=('x86_64') depends=('ghc-libs' 'haskell-bifunctors' 'haskell-constraints' 'haskell-data-binary-ieee754' - 'haskell-data-default' 'haskell-ghc-typelits-extra' 'haskell-ghc-typelits-knownnat' - 'haskell-ghc-typelits-natnormalise' 'haskell-half' 'haskell-lens' 'haskell-quickcheck' - 'haskell-reflection' 'haskell-singletons' 'haskell-vector') -makedepends=('ghc' 'haskell-doctest') -source=(https://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz - ghc-8.6.patch) -sha512sums=('9eb9dc5647a5dc61c9f0b5a9b880ae102e6f26783db0c4b29b4898705c9679c01d6cb96db0b206e327172743189a984299662c91209429f36c1eeb7d1d319bd1' - '52fcf8c2c701d724b55f8dc3a99e2842d26088ce36ae04dea02b104366255a268c83a6c02f1282f4b51795cd5afb3cb8c66d5c7348dc9ee3f149338df7776b87') + 'haskell-data-default-class' 'haskell-ghc-typelits-extra' 'haskell-ghc-typelits-knownnat' + 'haskell-ghc-typelits-natnormalise' 'haskell-half' 'haskell-hashable' 'haskell-lens' + 'haskell-quickcheck' 'haskell-reflection' 'haskell-singletons' 'haskell-th-lift' + 'haskell-th-orphans' 'haskell-type-errors' 'haskell-vector') +makedepends=('ghc' 'haskell-doctest' 'haskell-hint' 'haskell-tasty' 'haskell-tasty-hunit') +source=(https://hackage.haskell.org/packages/archive/${_hkgname}/${pkgver}/${_hkgname}-${pkgver}.tar.gz) +sha512sums=('9edf5775b114e00d62e4a9330494ff367d60c8162c68e0a1b7a92867dbb0310336bf684ceb560f6681742a734086ad728cea8e452a97217d4fc4e830d8dcfc92') prepare() { cd $_hkgname-$pkgver - patch -p1 -i ../ghc-8.6.patch - sed -i -e 's/< *0.3/<1/' -e 's/< *2.14/<3/' -e 's/< *0.6/<1/' -e 's/< *2.12/<3/' -e 's/< *0.10/<1/' $_hkgname.cabal + sed -i 's/0.16.1/0.16.0/' $_hkgname.cabal } build() { Deleted: ghc-8.6.patch =================================================================== --- ghc-8.6.patch 2020-01-22 10:41:39 UTC (rev 553447) +++ ghc-8.6.patch 2020-01-22 10:42:07 UTC (rev 553448) @@ -1,324 +0,0 @@ -From d2f9a0081c4355fdbd1062f3b15fafb3a3572cdc Mon Sep 17 00:00:00 2001 -From: Christiaan Baaij <[email protected]> -Date: Thu, 26 Jul 2018 16:55:48 +0200 -Subject: [PATCH] Fixes to build on GHC 8.6 - ---- - cabal.project | 9 ++++++++- - clash-prelude.cabal | 4 ++-- - src/Clash/Explicit/DDR.hs | 4 ++++ - src/Clash/Intel/DDR.hs | 4 ++++ - src/Clash/Promoted/Nat.hs | 9 +++++++-- - src/Clash/Sized/Internal/Index.hs | 4 ++++ - src/Clash/Sized/RTree.hs | 23 ++++++++++++++--------- - src/Clash/Sized/Vector.hs | 13 +++++++++---- - src/Clash/Xilinx/DDR.hs | 4 ++++ - 9 files changed, 56 insertions(+), 18 deletions(-) - -diff --git a/src/Clash/Explicit/DDR.hs b/src/Clash/Explicit/DDR.hs -index a22d925..96a9877 100644 ---- a/src/Clash/Explicit/DDR.hs -+++ b/src/Clash/Explicit/DDR.hs -@@ -17,11 +17,15 @@ dedicated hardware resources use the functions from "Clash.Intel.DDR" - or "Clash.Xilinx.DDR". - -} - -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE MagicHash #-} - {-# LANGUAGE ScopedTypeVariables #-} - {-# LANGUAGE TypeFamilies #-} - {-# LANGUAGE TypeOperators #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - module Clash.Explicit.DDR - ( ddrIn -diff --git a/src/Clash/Intel/DDR.hs b/src/Clash/Intel/DDR.hs -index 08d2f67..5841a35 100644 ---- a/src/Clash/Intel/DDR.hs -+++ b/src/Clash/Intel/DDR.hs -@@ -12,11 +12,15 @@ see ALTDDIO userguide for the specifics: - https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/ug/ug_altddio.pdf - -} - -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE FlexibleContexts #-} - {-# LANGUAGE MagicHash #-} - {-# LANGUAGE TypeFamilies #-} - {-# LANGUAGE TypeOperators #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - module Clash.Intel.DDR - ( altddioIn -diff --git a/src/Clash/Promoted/Nat.hs b/src/Clash/Promoted/Nat.hs -index 9e0b4aa..369afbc 100644 ---- a/src/Clash/Promoted/Nat.hs -+++ b/src/Clash/Promoted/Nat.hs -@@ -6,6 +6,7 @@ Maintainer : Christiaan Baaij <[email protected]> - -} - - {-# LANGUAGE AllowAmbiguousTypes #-} -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE GADTs #-} - {-# LANGUAGE KindSignatures #-} -@@ -15,6 +16,9 @@ Maintainer : Christiaan Baaij <[email protected]> - {-# LANGUAGE TypeApplications #-} - {-# LANGUAGE TypeOperators #-} - {-# LANGUAGE RankNTypes #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - {-# LANGUAGE Trustworthy #-} - -@@ -72,6 +76,7 @@ module Clash.Promoted.Nat - ) - where - -+import Data.Kind (Type) - import GHC.TypeLits (KnownNat, Nat, type (+), type (-), type (*), - type (^), type (<=), natVal) - import GHC.TypeLits.Extra (CLog, FLog, Div, Log, Mod) -@@ -125,7 +130,7 @@ snatToNum p@SNat = fromInteger (natVal p) - -- | Unary representation of a type-level natural - -- - -- __NB__: Not synthesisable --data UNat :: Nat -> * where -+data UNat :: Nat -> Type where - UZero :: UNat 0 - USucc :: UNat n -> UNat (n + 1) - -@@ -283,7 +288,7 @@ pow2SNat SNat = SNat - -- @ - -- __B1__ :: 'BNat' n -> 'BNat' ((2 '*' n) '+' 1) - -- @ --data BNat :: Nat -> * where -+data BNat :: Nat -> Type where - BT :: BNat 0 - B0 :: BNat n -> BNat (2*n) - B1 :: BNat n -> BNat ((2*n) + 1) -diff --git a/src/Clash/Sized/Internal/Index.hs b/src/Clash/Sized/Internal/Index.hs -index a04479f..6d91d04 100644 ---- a/src/Clash/Sized/Internal/Index.hs -+++ b/src/Clash/Sized/Internal/Index.hs -@@ -5,6 +5,7 @@ License : BSD2 (see the file LICENSE) - Maintainer : Christiaan Baaij <[email protected]> - -} - -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE DeriveAnyClass #-} - {-# LANGUAGE DeriveDataTypeable #-} -@@ -17,6 +18,9 @@ Maintainer : Christiaan Baaij <[email protected]> - {-# LANGUAGE TypeFamilies #-} - {-# LANGUAGE TypeOperators #-} - {-# LANGUAGE UndecidableInstances #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - {-# LANGUAGE Unsafe #-} - -diff --git a/src/Clash/Sized/RTree.hs b/src/Clash/Sized/RTree.hs -index 175e375..633fdeb 100644 ---- a/src/Clash/Sized/RTree.hs -+++ b/src/Clash/Sized/RTree.hs -@@ -4,6 +4,7 @@ License : BSD2 (see the file LICENSE) - Maintainer : Christiaan Baaij <[email protected]> - -} - -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE GADTs #-} - {-# LANGUAGE InstanceSigs #-} -@@ -18,6 +19,9 @@ Maintainer : Christiaan Baaij <[email protected]> - {-# LANGUAGE TypeOperators #-} - {-# LANGUAGE UndecidableInstances #-} - {-# LANGUAGE ViewPatterns #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - {-# LANGUAGE Trustworthy #-} - -@@ -59,6 +63,7 @@ import Control.Applicative (liftA2) - import qualified Control.Lens as Lens - import Data.Default (Default (..)) - import Data.Foldable (toList) -+import Data.Kind (Type) - import Data.Singletons.Prelude (Apply, TyFun, type (@@)) - import Data.Proxy (Proxy (..)) - import GHC.TypeLits (KnownNat, Nat, type (+), type (^), type (*)) -@@ -101,7 +106,7 @@ let populationCount' :: (KnownNat k, KnownNat (2^k)) => BitVector (2^k) -> Index - -- - -- * Only has elements at the leaf of the tree - -- * A tree of depth /d/ has /2^d/ elements. --data RTree :: Nat -> * -> * where -+data RTree :: Nat -> Type -> Type where - LR_ :: a -> RTree 0 a - BR_ :: RTree d a -> RTree d a -> RTree (d+1) a - -@@ -180,7 +185,7 @@ instance KnownNat d => Applicative (RTree d) where - instance KnownNat d => Foldable (RTree d) where - foldMap f = tfold f mappend - --data TraversableTree (g :: * -> *) (a :: *) (f :: TyFun Nat *) :: * -+data TraversableTree (g :: Type -> Type) (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (TraversableTree f a) d = f (RTree d a) - - instance KnownNat d => Traversable (RTree d) where -@@ -305,7 +310,7 @@ instance (KnownNat d, Undefined a) => Undefined (RTree d a) where - -- >>> populationCount' (7 :: BitVector 16) - -- 3 - tdfold :: forall p k a . KnownNat k -- => Proxy (p :: TyFun Nat * -> *) -- ^ The /motive/ -+ => Proxy (p :: TyFun Nat Type -> Type) -- ^ The /motive/ - -> (a -> (p @@ 0)) -- ^ Function to apply to the elements on the leafs - -> (forall l . SNat l -> (p @@ l) -> (p @@ l) -> (p @@ (l+1))) - -- ^ Function to fold the branches with. -@@ -321,7 +326,7 @@ tdfold _ f g = go SNat - in g sn' (go sn' l) (go sn' r) - {-# NOINLINE tdfold #-} - --data TfoldTree (a :: *) (f :: TyFun Nat *) :: * -+data TfoldTree (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (TfoldTree a) d = a - - -- | Reduce a tree to a single element -@@ -357,7 +362,7 @@ treplicate sn a = go (toUNat sn) - trepeat :: KnownNat d => a -> RTree d a - trepeat = treplicate SNat - --data MapTree (a :: *) (f :: TyFun Nat *) :: * -+data MapTree (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (MapTree a) d = RTree d a - - -- | \"'tmap' @f t@\" is the tree obtained by apply /f/ to each element of /t/, -@@ -378,7 +383,7 @@ tindices = - (\s@SNat l r -> BR l (tmap (+(snatToNum (pow2SNat s))) r)) - (treplicate SNat 0) - --data V2TTree (a :: *) (f :: TyFun Nat *) :: * -+data V2TTree (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (V2TTree a) d = RTree d a - - -- | Convert a vector with /2^d/ elements to a tree of depth /d/. -@@ -390,7 +395,7 @@ type instance Apply (V2TTree a) d = RTree d a - v2t :: forall d a . KnownNat d => Vec (2^d) a -> RTree d a - v2t = dtfold (Proxy @(V2TTree a)) LR (const BR) - --data T2VTree (a :: *) (f :: TyFun Nat *) :: * -+data T2VTree (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (T2VTree a) d = Vec (2^d) a - - -- | Convert a tree of depth /d/ to a vector of /2^d/ elements -@@ -433,7 +438,7 @@ indexTree t i = (t2v t) !! i - replaceTree :: (KnownNat d, Enum i) => i -> a -> RTree d a -> RTree d a - replaceTree i a = v2t . replace i a . t2v - --data ZipWithTree (b :: *) (c :: *) (f :: TyFun Nat *) :: * -+data ZipWithTree (b :: Type) (c :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (ZipWithTree b c) d = RTree d b -> RTree d c - - -- | 'tzipWith' generalises 'tzip' by zipping with the function given as the -@@ -460,7 +465,7 @@ tzipWith f = tdfold (Proxy @(ZipWithTree b c)) lr br - tzip :: KnownNat d => RTree d a -> RTree d b -> RTree d (a,b) - tzip = tzipWith (,) - --data UnzipTree (a :: *) (b :: *) (f :: TyFun Nat *) :: * -+data UnzipTree (a :: Type) (b :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (UnzipTree a b) d = (RTree d a, RTree d b) - - -- | 'tunzip' transforms a tree of pairs into a tree of first components and a -diff --git a/src/Clash/Sized/Vector.hs b/src/Clash/Sized/Vector.hs -index cd55a37..b4ec3d6 100644 ---- a/src/Clash/Sized/Vector.hs -+++ b/src/Clash/Sized/Vector.hs -@@ -6,6 +6,7 @@ Maintainer : Christiaan Baaij <[email protected]> - -} - - {-# LANGUAGE BangPatterns #-} -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE GADTs #-} - {-# LANGUAGE KindSignatures #-} -@@ -20,6 +21,9 @@ Maintainer : Christiaan Baaij <[email protected]> - {-# LANGUAGE TypeOperators #-} - {-# LANGUAGE UndecidableInstances #-} - {-# LANGUAGE ViewPatterns #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - {-# LANGUAGE Trustworthy #-} - -@@ -105,6 +109,7 @@ import qualified Control.Lens as Lens hiding (pattern (:>), pattern (:<)) - import Data.Default (Default (..)) - import qualified Data.Foldable as F - import Data.Bifunctor.Flip (Flip (..)) -+import Data.Kind (Type) - import Data.Proxy (Proxy (..)) - import Data.Singletons.Prelude (TyFun,Apply,type (@@)) - import GHC.TypeLits (CmpNat, KnownNat, Nat, type (+), type (-), type (*), -@@ -192,7 +197,7 @@ infixr 5 `Cons` - -- * Lists with their length encoded in their type - -- * 'Vec'tor elements have an __ASCENDING__ subscript starting from 0 and - -- ending at @'length' - 1@. --data Vec :: Nat -> * -> * where -+data Vec :: Nat -> Type -> Type where - Nil :: Vec 0 a - Cons :: a -> Vec n a -> Vec (n + 1) a - -@@ -1715,7 +1720,7 @@ lazyV = lazyV' (repeat undefined) - -- or delay, of O(@'length' xs@). Look at 'dtfold' for a /dependently/ typed - -- fold that produces a structure with a depth of O(log_2(@'length' xs@)). - dfold :: forall p k a . KnownNat k -- => Proxy (p :: TyFun Nat * -> *) -- ^ The /motive/ -+ => Proxy (p :: TyFun Nat Type -> Type) -- ^ The /motive/ - -> (forall l . SNat l -> a -> (p @@ l) -> (p @@ (l + 1))) - -- ^ Function to fold. - -- -@@ -1833,7 +1838,7 @@ dfold _ f z xs = go (snatProxy (asNatProxy xs)) xs - -- __NB__: The depth, or delay, of the structure produced by - -- \"@'dtfold' m f g xs@\" is O(log_2(@'length' xs@)). - dtfold :: forall p k a . KnownNat k -- => Proxy (p :: TyFun Nat * -> *) -- ^ The /motive/ -+ => Proxy (p :: TyFun Nat Type -> Type) -- ^ The /motive/ - -> (a -> (p @@ 0)) -- ^ Function to apply to every element - -> (forall l . SNat l -> (p @@ l) -> (p @@ l) -> (p @@ (l + 1))) - -- ^ Function to combine results. -@@ -1864,7 +1869,7 @@ dtfold _ f g = go (SNat :: SNat k) - -- map' :: forall n a b . KnownNat n => (a -> b) -> Vec n a -> Vec n b - -- map' f = 'dfold' (Proxy @('VCons' b)) (\_ x xs -> f x :> xs) - -- @ --data VCons (a :: *) (f :: TyFun Nat *) :: * -+data VCons (a :: Type) (f :: TyFun Nat Type) :: Type - type instance Apply (VCons a) l = Vec l a - - -- | Specialised version of 'dfold' that builds a triangular computational -diff --git a/src/Clash/Xilinx/DDR.hs b/src/Clash/Xilinx/DDR.hs -index 27c5573..072d785 100644 ---- a/src/Clash/Xilinx/DDR.hs -+++ b/src/Clash/Xilinx/DDR.hs -@@ -13,11 +13,15 @@ For more information about the Xilinx DDR primitives see: - https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_2/ug953-vivado-7series-libraries.pdf - -} - -+{-# LANGUAGE CPP #-} - {-# LANGUAGE DataKinds #-} - {-# LANGUAGE FlexibleContexts #-} - {-# LANGUAGE MagicHash #-} - {-# LANGUAGE TypeFamilies #-} - {-# LANGUAGE TypeOperators #-} -+#if __GLASGOW_HASKELL__ >= 806 -+{-# LANGUAGE NoStarIsType #-} -+#endif - - module Clash.Xilinx.DDR - ( iddr
