packages feed

halive-0.1.2: halive.cabal

-- Initial halive.cabal generated by cabal init.  For further
-- documentation, see http://haskell.org/cabal/users-guide/

name:                halive
version:             0.1.2
synopsis:            A live recompiler
description:
  Live recompiler for Haskell
  .
  <<http://lukexi.github.io/HaliveDemo.gif>>
  .
  /Usage:/
  .
  > halive path/to/myfile.hs [optionally any/extra include/dirs ..] -- [args to app]
  .
  See <https://github.com/lukexi/halive/blob/master/README.md README>
homepage:            https://github.com/lukexi/halive
bug-reports:         https://github.com/lukexi/halive/issues
license:             BSD2
license-file:        LICENSE
author:              Luke Iannini
maintainer:          lukexi@me.com
-- copyright:
category:            Development
build-type:          Simple
cabal-version:       >=1.10

source-repository head
  type: git
  location: git://github.com/lukexi/halive.git

library
  hs-source-dirs:      src
  exposed-modules:
    Halive.Utils
    Halive.Concurrent
    Halive.FindPackageDBs
    Halive.SubHalive
    Halive.Recompiler
    Halive.FileListener
  default-language:    Haskell2010
  ghc-prof-options:    -Wall -O2 -fprof-auto
  ghc-options:         -Wall -O2
  build-depends:
    base>=4.7 && <5,
    foreign-store,
    containers,
    mtl,
    ghc,
    ghc-paths,
    filepath,
    fsnotify,
    process,
    transformers,
    directory,
    stm,
    time,
    signal
  if impl(ghc >= 8)
    build-depends:
      ghc-boot

executable halive
  main-is:             HaliveMain.hs
  hs-source-dirs:      exec
  default-language:    Haskell2010
  ghc-prof-options:    -Wall -O2 -threaded -fprof-auto
  ghc-options:         -Wall -O2 -threaded
  -- This strangely enables "-dynamic" for all dependent libraries,
  -- so I need to comment this during profiling?!?
  -- Shouldn't ghc-prof-options override it anyway? Who knows.
  if !os(windows)
    ghc-options:         -dynamic
  -- ^ Required on Mac due to https://ghc.haskell.org/trac/ghc/ticket/9278
  -- (does GHCi use this??)
  other-modules:
    Banner
  -- other-extensions:
  build-depends:
    base,
    ghc,
    ghc-paths,
    transformers,
    directory,
    filepath,
    fsnotify,
    process,
    stm,
    halive

test-suite demo
  type: exitcode-stdio-1.0
  default-language: Haskell2010
  main-is: Main.hs
  other-modules:
    Cube
    Green
    Window
    Shader
  hs-source-dirs: demo
  build-depends:
    base,
    gl,
    sdl2,
    halive,
    linear,
    foreign-store,
    random,
    text,
    bytestring,
    mtl,
    time

test-suite subhalive
  type:                exitcode-stdio-1.0
  main-is:             TestSubhalive.hs
  hs-source-dirs:      test
  ghc-options:         -Wall -O2 -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base
                     , halive
                     , mtl
                     , random
                     , containers
                     , time
                     , filepath
                     , stm
  default-language:    Haskell2010