--------------------------------------------------------------------------------
name: language-ninja
version: 0.1.0
stability: Experimental
build-type: Custom
cabal-version: >= 1.10
category: Language
copyright: Copyright 2017 Awake Security
author: Awake Security
maintainer: opensource@awakesecurity.com
license: Apache-2.0
license-file: LICENSE.md
homepage: https://github.com/awakesecurity/language-ninja
bug-reports: https://github.com/awakesecurity/language-ninja/issues
category: Build, Language
synopsis: A library for dealing with the Ninja build language.
description: A Haskell library for parsing, pretty-printing, and
compiling the Ninja build language.
The best place to start reading this documentation is
the "Language.Ninja" module.
extra-source-files: README.md
, CHANGELOG.md
tested-with: GHC == 8.0.1
--------------------------------------------------------------------------------
source-repository head
type: git
branch: master
location: https://github.com/awakesecurity/language-ninja.git
source-repository this
type: git
tag: release-0.1.0
location: https://github.com/awakesecurity/language-ninja.git
--------------------------------------------------------------------------------
custom-setup
setup-depends: base >= 4.8 && < 5.0
, Cabal >= 1.24 && < 1.25
, cabal-doctest >= 1.0.2 && < 1.1
--------------------------------------------------------------------------------
library
hs-source-dirs: library
build-depends: base >= 4.8 && < 5.0
, aeson >= 1.0 && < 1.3
, bytestring >= 0.10 && < 0.11
, containers >= 0.5 && < 0.6
, deepseq >= 1.4 && < 1.5
, flow >= 1.0 && < 1.1
, hashable >= 1.2 && < 1.3
, intern >= 0.9 && < 0.10
, megaparsec >= 5.2 && < 5.3
, mtl >= 2.2 && < 2.3
, lens >= 4.15 && < 4.16
, QuickCheck >= 2.9 && < 2.10
, quickcheck-instances >= 0.3 && < 0.4
, smallcheck >= 1.1 && < 1.2
, system-filepath >= 0.4 && < 0.5
, text >= 1.2 && < 1.3
, transformers >= 0.5 && < 0.6
, unordered-containers >= 0.2 && < 0.3
, versions >= 3.1.1 && < 3.2
exposed-modules: Language.Ninja
, Language.Ninja.Compile
, Language.Ninja.Lexer
, Language.Ninja.Lexer.Types
, Language.Ninja.Parser
, Language.Ninja.Pretty
, Language.Ninja.Tutorial
, Language.Ninja.AST
, Language.Ninja.AST.Build
, Language.Ninja.AST.Deps
, Language.Ninja.AST.Env
, Language.Ninja.AST.Expr
, Language.Ninja.AST.Ninja
, Language.Ninja.AST.Rule
, Language.Ninja.IR
, Language.Ninja.IR.Build
, Language.Ninja.IR.Meta
, Language.Ninja.IR.Ninja
, Language.Ninja.IR.Pool
, Language.Ninja.IR.Rule
, Language.Ninja.IR.Target
, Language.Ninja.Errors
, Language.Ninja.Errors.Compile
, Language.Ninja.Errors.Parser
, Language.Ninja.Mock
, Language.Ninja.Mock.ReadFile
, Language.Ninja.Misc
, Language.Ninja.Misc.Annotated
, Language.Ninja.Misc.Command
, Language.Ninja.Misc.IText
, Language.Ninja.Misc.Located
, Language.Ninja.Misc.Path
, Language.Ninja.Misc.Positive
default-language: Haskell2010
other-extensions: ConstraintKinds
, DeriveDataTypeable
, DeriveFoldable
, DeriveFunctor
, DeriveGeneric
, DeriveTraversable
, FlexibleContexts
, FlexibleInstances
, GADTs
, GeneralizedNewtypeDeriving
, InstanceSigs
, KindSignatures
, LambdaCase
, MultiParamTypeClasses
, OverloadedStrings
, RankNTypes
, RecordWildCards
, ScopedTypeVariables
, UndecidableInstances
ghc-options: -Wcompat -Weverything
-fno-warn-unsafe
-fno-warn-safe
-fno-warn-implicit-prelude
-fno-warn-unused-do-bind
-fno-warn-missed-specialisations
-fno-warn-all-missed-specialisations
-g
--------------------------------------------------------------------------------
test-suite tests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Tests.hs
other-modules: Tests.Lint
, Tests.Mock
, Tests.Orphans
, Tests.ReferenceLexer
, Tests.ReferenceLexer.Str0
build-depends: language-ninja
, base >= 4.8 && < 5.0
, aeson >= 1.0 && < 1.3
, bytestring >= 0.10 && < 0.11
, containers >= 0.5 && < 0.6
, flow >= 1.0 && < 1.1
, ghc >= 7.4 && < 8.4
, haddock-api >= 2.17 && < 2.18
, haddock-library >= 1.4 && < 1.5
, hashable >= 1.2 && < 1.3
, lens >= 4.15 && < 4.16
, monad-mock >= 0.1 && < 0.2
, mtl >= 2.2 && < 2.3
, QuickCheck >= 2.9 && < 2.10
, quickcheck-instances >= 0.3 && < 0.4
, smallcheck >= 1.1 && < 1.2
, system-filepath >= 0.4 && < 0.5
, tasty >= 0.11 && < 0.12
, tasty-html >= 0.4 && < 0.5
, tasty-hunit >= 0.9 && < 0.10
, tasty-lens >= 0.3 && < 0.4
, tasty-quickcheck >= 0.8 && < 0.9
, tasty-smallcheck >= 0.8 && < 0.9
, text >= 1.2 && < 1.3
, transformers >= 0.5 && < 0.6
, turtle >= 1.3 && < 1.4
, unordered-containers >= 0.2 && < 0.3
, versions >= 3.1.1 && < 3.2
default-language: Haskell2010
other-extensions: FlexibleContexts
, FlexibleInstances
, GADTs
, LambdaCase
, MultiParamTypeClasses
, OverloadedStrings
, PatternGuards
, RankNTypes
, RecordWildCards
, ScopedTypeVariables
, StandaloneDeriving
, TypeApplications
, TypeFamilies
, UndecidableInstances
, ViewPatterns
ghc-options: -Wcompat -Weverything
-fno-warn-unsafe
-fno-warn-safe
-fno-warn-implicit-prelude
-fno-warn-unused-do-bind
-fno-warn-missed-specialisations
-fno-warn-all-missed-specialisations
-g -threaded
--------------------------------------------------------------------------------
test-suite doctests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: DocTests.hs
build-depends: base >= 4.8 && < 5.0
, doctest >= 0.11 && < 0.12
, QuickCheck >= 2.9 && < 2.10
, template-haskell >= 2.11 && < 2.12
-- TODO: this shouldn't need to be here
-- remove this once https://git.io/vQp2m is merged
, cabal-doctest >= 1.0.2 && < 1.1
default-language: Haskell2010
ghc-options: -Wall -threaded
--------------------------------------------------------------------------------
executable ninja-lex
hs-source-dirs: executables/ninja-lex
main-is: Main.hs
build-depends: language-ninja
, base >= 4.8 && < 5.0
, aeson >= 1.0 && < 1.3
, aeson-pretty >= 0.8 && < 0.9
, flow >= 1.0 && < 1.1
, lens >= 4.15 && < 4.16
, mtl >= 2.2 && < 2.3
, optparse-generic >= 1.1 && < 1.2
-- , prettyprinter >= 1.1 && < 1.2
-- , prettyprinter-ansi-terminal >= 1.1 && < 1.2
, text >= 1.2 && < 1.3
, transformers >= 0.5 && < 0.6
default-language: Haskell2010
other-extensions: DataKinds
, DeriveGeneric
, ExplicitNamespaces
, FlexibleInstances
, GADTSyntax
, OverloadedStrings
, StandaloneDeriving
, TypeOperators
ghc-options: -Wcompat -Weverything
-fno-warn-unsafe
-fno-warn-safe
-fno-warn-implicit-prelude
-fno-warn-unused-do-bind
-fno-warn-missed-specialisations
-fno-warn-all-missed-specialisations
-g -threaded
--------------------------------------------------------------------------------
executable ninja-parse
hs-source-dirs: executables/ninja-parse
main-is: Main.hs
build-depends: language-ninja
, base >= 4.8 && < 5.0
, aeson >= 1.0 && < 1.3
, aeson-pretty >= 0.8 && < 0.9
, flow >= 1.0 && < 1.1
, lens >= 4.15 && < 4.16
, mtl >= 2.2 && < 2.3
, optparse-generic >= 1.1 && < 1.2
-- , prettyprinter >= 1.1 && < 1.2
-- , prettyprinter-ansi-terminal >= 1.1 && < 1.2
, text >= 1.2 && < 1.3
, transformers >= 0.5 && < 0.6
default-language: Haskell2010
other-extensions: DataKinds
, DeriveGeneric
, ExplicitNamespaces
, FlexibleInstances
, GADTSyntax
, OverloadedStrings
, StandaloneDeriving
, TypeOperators
ghc-options: -Wcompat -Weverything
-fno-warn-unsafe
-fno-warn-safe
-fno-warn-implicit-prelude
-fno-warn-unused-do-bind
-fno-warn-missed-specialisations
-fno-warn-all-missed-specialisations
-g -threaded
--------------------------------------------------------------------------------
executable ninja-compile
hs-source-dirs: executables/ninja-compile
main-is: Main.hs
build-depends: language-ninja
, base >= 4.8 && < 5.0
, aeson >= 1.0 && < 1.3
, aeson-pretty >= 0.8 && < 0.9
, flow >= 1.0 && < 1.1
, lens >= 4.15 && < 4.16
, mtl >= 2.2 && < 2.3
, optparse-generic >= 1.1 && < 1.2
-- , prettyprinter >= 1.1 && < 1.2
-- , prettyprinter-ansi-terminal >= 1.1 && < 1.2
, text >= 1.2 && < 1.3
, transformers >= 0.5 && < 0.6
default-language: Haskell2010
other-extensions: DataKinds
, DeriveGeneric
, ExplicitNamespaces
, FlexibleInstances
, GADTSyntax
, OverloadedStrings
, StandaloneDeriving
, TypeOperators
ghc-options: -Wcompat -Weverything
-fno-warn-unsafe
-fno-warn-safe
-fno-warn-implicit-prelude
-fno-warn-unused-do-bind
-fno-warn-missed-specialisations
-fno-warn-all-missed-specialisations
-g -threaded
--------------------------------------------------------------------------------