packages feed

ice40-prim-0.2.0.0: ice40-prim.cabal

cabal-version:       >=1.10
name:                ice40-prim
version:             0.2.0.0
synopsis:            Lattice iCE40 Primitive IP
description:         Clash primitives to instantiate Lattice Semiconductor's iCE40 FPGA hard IP
bug-reports:         https://github.com/standardsemiconductor/ice40-prim/issues
license:             BSD3
license-file:        LICENSE
author:              dopamane
maintainer:          dopamane <standard.semiconductor@gmail.com>
copyright:           Copyright (c) 2020-2021 David Cox
category:            Hardware
build-type:          Simple
extra-source-files:  CHANGELOG.md, README.md

source-repository head
  type: git
  location: git://github.com/standardsemiconductor/ice40-prim.git
                     
library
        exposed-modules: Ice40.Clock,
                         Ice40.Led,
                         Ice40.Mac,
                         Ice40.Mac.Prim,
                         Ice40.Osc,
                         Ice40.Spram,
                         Ice40.Rgb,
                         Ice40.Spi,
                         Ice40.I2c,
                         Ice40.IO
        hs-source-dirs: src
        build-depends: base >=4.12 && <4.15,
                       Cabal,
                       interpolate,
                       clash-prelude >=1.2.5 && <1.4,
                       ghc-typelits-natnormalise,
                       ghc-typelits-extra,
                       ghc-typelits-knownnat
        ghc-options:
          -Wall -Wcompat
          -haddock

          -- Plugins to support type-level constraint solving on naturals
          -fplugin GHC.TypeLits.Extra.Solver
          -fplugin GHC.TypeLits.Normalise
          -fplugin GHC.TypeLits.KnownNat.Solver

          -- Worker wrappers introduce unstable names for functions that might
          -- have blackboxes attached for them. You can disable this,
          -- but be sure to add a no-specialize pragma to every function
          -- with a blackbox.
          -fno-worker-wrapper
        default-language: Haskell2010
        default-extensions:
          BangPatterns
          BinaryLiterals
          ConstraintKinds
          DataKinds
          DefaultSignatures
          DeriveAnyClass
          DeriveDataTypeable
          DeriveFoldable
          DeriveFunctor
          DeriveGeneric
          DeriveLift
          DeriveTraversable
          DerivingStrategies
          InstanceSigs
          KindSignatures
          LambdaCase
          NoStarIsType
          MagicHash
          PolyKinds
          RankNTypes
          RecordWildCards
          ScopedTypeVariables
          StandaloneDeriving
          TupleSections
          TypeApplications
          TypeFamilies
          TypeOperators
          ViewPatterns
          
          -- TemplateHaskell is used to support convenience functions such as
          -- 'listToVecTH' and 'bLit'.
          TemplateHaskell
          QuasiQuotes

          -- Prelude isn't imported by default as Clash offers Clash.Prelude
          NoImplicitPrelude