packages feed

clash-ghc-0.6.21: clash-ghc.cabal

Name:                 clash-ghc
Version:              0.6.21
Synopsis:             CAES Language for Synchronous Hardware
Description:
  CλaSH (pronounced ‘clash’) is a functional hardware description language that
  borrows both its syntax and semantics from the functional programming language
  Haskell. The CλaSH compiler transforms these high-level descriptions to
  low-level synthesizable VHDL, Verilog, or SystemVerilog.
  .
  Features of CλaSH:
  .
  * Strongly typed (like VHDL), yet with a very high degree of type inference,
    enabling both safe and fast prototying using consise descriptions (like
    Verilog).
  .
  * Interactive REPL: load your designs in an interpreter and easily test all
    your component without needing to setup a test bench.
  .
  * Higher-order functions, with type inference, result in designs that are
    fully parametric by default.
  .
  * Synchronous sequential circuit design based on streams of values, called
    @Signal@s, lead to natural descriptions of feedback loops.
  .
  * Support for multiple clock domains, with type safe clock domain crossing.
  .
  .
  This package provides:
  .
  * CλaSH Compiler binary using GHC/Haskell as a frontend
  .
  .
  Prelude library: <http://hackage.haskell.org/package/clash-prelude>
Homepage:             http://www.clash-lang.org/
bug-reports:          http://github.com/clash-lang/clash-compiler/issues
License:              BSD2
License-file:         LICENSE
Author:               Christiaan Baaij
Maintainer:           Christiaan Baaij <christiaan.baaij@gmail.com>
Copyright:            Copyright © 2012-2016 University of Twente
Category:             Hardware
Build-type:           Simple

Extra-source-files:   README.md,
                      CHANGELOG.md,
                      LICENSE_GHC,
                      src-bin/HsVersions.h,
                      src-bin/PosixSource.h

Cabal-version:        >=1.10

source-repository head
  type: git
  location: https://github.com/clash-lang/clash-compiler.git

Executable clash
  HS-Source-Dirs:     src-ghc src-bin
  Main-Is:            Main.hs

  default-language:   Haskell2010
  GHC-Options:        -Wall -fno-warn-name-shadowing
  CPP-Options:        -DGHCI
  default-extensions: ForeignFunctionInterface
                      UnboxedTuples
                      FlexibleInstances
                      MagicHash
                      CPP
                      PatternGuards
                      NondecreasingIndentation

  other-extensions:   FlexibleContexts
                      OverloadedStrings
                      RecordWildCards
                      ScopedTypeVariables
                      TemplateHaskell
                      TupleSections
                      ViewPatterns

  Build-Depends:      array                     >= 0.4      && < 0.6,
                      base                      >= 4.3.1.0  && < 5,
                      bifunctors                >= 4.1.1    && < 5.5,
                      bytestring                >= 0.9      && < 0.11,
                      containers                >= 0.5.4.0  && < 0.6,
                      directory                 >= 1.2      && < 1.3,
                      filepath                  >= 1.3      && < 1.5,
                      ghc                       >= 7.10.1   && < 7.12,
                      process                   >= 1.2      && < 1.5,
                      hashable                  >= 1.1.2.3  && < 1.3,
                      haskeline                 >= 0.7.0.3  && < 0.8,
                      lens                      >= 4.0.5    && < 4.15,
                      mtl                       >= 2.1.1    && < 2.3,
                      text                      >= 0.11.3.1 && < 1.3,
                      transformers              >= 0.4.2    && < 0.6,
                      unbound-generics          >= 0.1      && < 0.4,
                      unordered-containers      >= 0.2.1.0  && < 0.3,

                      clash-lib                 >= 0.6.19   && < 0.7,
                      clash-systemverilog       >= 0.6.7    && < 0.7,
                      clash-vhdl                >= 0.6.15   && < 0.7,
                      clash-verilog             >= 0.6.7    && < 0.7,
                      clash-prelude             >= 0.10.10  && < 0.11,
                      ghc-typelits-extra        >= 0.1.3    && < 0.2,
                      ghc-typelits-natnormalise >= 0.4.3    && < 0.5,
                      deepseq                   >= 1.3.0.2  && < 1.5,
                      time                      >= 1.4.0.1  && < 1.7

  if os(windows)
    Build-Depends:    Win32                     >= 2.3.1    && < 2.4
  else
    Build-Depends:    unix                      >= 2.7.1    && < 2.8

  C-Sources:          src-bin/hschooks.c

  Other-Modules:      InteractiveUI
                      GhciMonad
                      GhciTags

                      CLaSH.GHC.CLaSHFlags
                      CLaSH.GHC.Evaluator
                      CLaSH.GHC.GenerateBindings
                      CLaSH.GHC.GHC2Core
                      CLaSH.GHC.LoadInterfaceFiles
                      CLaSH.GHC.LoadModules
                      CLaSH.GHC.NetlistTypes
                      Paths_clash_ghc