packages feed

cao-0.1: cao.cabal

Name:               cao
Version:            0.1
Description:        CAO Compiler
License:            GPL
License-file:       LICENSE
Author:             SMART Team / HASLab - University of Minho
Maintainer:         Paulo Silva <paufil@di.uminho.pt>
Bug-reports:        maito:paufil@di.uminho.pt
Stability:          experimental
Homepage:           http://haslab.uminho.pt/mbb/software/cao-domain-specific-language-cryptography
Category:           Compiler, Cryptography, Language
Build-Type:         Simple
Cabal-Version:      >=1.6
Tested-with:        GHC==7.6.3
Synopsis:           CAO Compiler
Data-dir:           backend_lib
Data-files:         C_generic/*.h
                    C_generic/*.cpp

Extra-Source-Files: README.txt default.plat example/Makefile example/main_sha1.c example/sha1.cao

Executable cao
  Main-is:          Main/Main.hs
  Other-Modules:
                        Main.Compiler
                        Main.Dot
                        Main.Flags
                        Language.CAO.Analysis.CFG
                        Language.CAO.Analysis.Dominance
                        Language.CAO.Analysis.PhiInsert
                        Language.CAO.Analysis.SSA
                        Language.CAO.Analysis.SsaBack
                        Language.CAO.Common.Error
                        Language.CAO.Common.Fresh
                        Language.CAO.Common.Literal
                        Language.CAO.Common.Monad
                        Language.CAO.Common.Name
                        Language.CAO.Common.Operator
                        Language.CAO.Common.Outputable
                        Language.CAO.Common.Polynomial
                        Language.CAO.Common.Representation
                        Language.CAO.Common.SrcLoc
                        Language.CAO.Common.State
                        Language.CAO.Common.Utils
                        Language.CAO.Common.Var
                        Language.CAO.Index
                        Language.CAO.Index.Eval
                        Language.CAO.Index.Utils
                        Language.CAO.Parser.Config
                        Language.CAO.Parser.Lexer
                        Language.CAO.Parser.Parser
                        Language.CAO.Parser.Tokens
                        Language.CAO.Platform.Literals
                        Language.CAO.Platform.Naming
                        Language.CAO.Platform.Query
                        Language.CAO.Platform.Specification
                        Language.CAO.Semantics.Bits
                        Language.CAO.Semantics.Bool
                        Language.CAO.Semantics.Casts
                        Language.CAO.Semantics.Integer
                        Language.CAO.Syntax
                        Language.CAO.Syntax.Codes
                        Language.CAO.Syntax.Tidy
                        Language.CAO.Syntax.Utils
                        Language.CAO.Transformation.Eval
                        Language.CAO.Transformation.Expand
                        Language.CAO.Transformation.Indist
                        Language.CAO.Transformation.Simplify
                        Language.CAO.Transformation.Target
                        Language.CAO.Translation.C
                        Language.CAO.Translation.C.Wrappers
                        Language.CAO.Translation.Names
                        Language.CAO.Translation.PreC
                        Language.CAO.Translation.Yices
                        Language.CAO.Type
                        Language.CAO.Type.Utils
                        Language.CAO.Typechecker
                        Language.CAO.Typechecker.Check
                        Language.CAO.Typechecker.Constraint
                        Language.CAO.Typechecker.Expr
                        Language.CAO.Typechecker.Heap
                        Language.CAO.Typechecker.Index
                        Language.CAO.Typechecker.PostProcessor
                        Language.CAO.Typechecker.SMT
                        Language.CAO.Typechecker.Solver
                        Language.CAO.Typechecker.Unification
  
  Hs-source-dirs:   src
  Build-Depends:    base >= 4 && < 5, cmdargs, pretty, containers, mtl,
                    ConfigFile, language-c, array, process, directory, yices, dlist, filepath
  ghc-prof-options: -prof -fprof-auto -fprof-cafs -fforce-recomp
  if impl(ghc < 7.4.1)
  -- -fno-spec-constr-count is set because of this: http://hackage.haskell.org/trac/ghc/ticket/4288
    Ghc-Options:      -fno-spec-constr-count -Wall
  else 
    Ghc-Options:      -rtsopts -Wall
  
  Build-Tools:      alex==3.0.5, happy