packages feed

stylish-cabal-0.2.0.0: tests/example.cabal

name: example-package
version: 1.2.3.4
cabal-version: >=1.8
build-type: Custom
license: MIT
license-files: LICENSE1, "license with spaces"
copyright: (c) 2018 John Doe
author: John Doe
maintainer: johndoe@example.com
stability: experimental
homepage: https://example.com/cabal
bug-reports: https://github.com/example/cabal
package-url: https://gituh.bcom/example/Cabal/downloads/1.cabal
synopsis: A short synopsis for this package
description:
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam sagittis neque magna, eu accumsan velit convallis at. In at odio eu risus facilisis vehicula vel non elit. Vestibulum volutpat id tellus ac malesuada.
    .
    Fusce rutrum elit libero, ac malesuada nibh semper ut. Donec commodo viverra felis. Quisque tincidunt ultrices turpis. Vestibulum gravida, urna ac pharetra consectetur, nulla lacus sollicitudin diam, quis dignissim libero neque at nulla.
category: Example
tested-with: GHC >= 7.4 && < 8.4
data-files: "file1 with spaces", data/*
data-dir: .
extra-source-files: extra-file1, extra-file2
extra-doc-files: docfile1, docfile2
extra-tmp-files: tmpfile1, tmpfile2

custom-setup
    setup-depends: base >= 4.5 && < 4.11, Cabal < 1.25

source-repository head
    type: git
    location: https://github.com/pikajude/stylish-cabal.cabal
    tag: latest
    branch: master
    subdir: tests

source-repository this
    type: cvs
    location: anoncvs@cvs.foo.org:/cvs
    module: cvsmodule

flag neat-flag {
    default: False
    manual: True
    description: This is a flag with a nice little description
}

library example-internal
    exposed-modules: Example.Internal
    build-depends: base

library
    exposed-modules: Example
    exposed: False
    reexported-modules: base:Numeric as MyNumericModule
    signatures: ExampleSig
    mixins: short (Mixin as Foo.Mixin) requires (Bar as Foo.Bar), example-mixin2 (Mixin as Foo.Mixin2, Mixina as Foo.Mixina2, Mixinb as Foo.Mixinb2, Mixinc as Foo.Mixinc2), example-mixin3 (Mixin as Bar.Mixin) requires hiding (Mixin4, Mixin5), example-mixin4
    build-depends: base == 4.*, attoparsec, foo >= 1.2.3 && < 1.4, somelib ^>= 1.2.3.4, bar ^>= 3.4
    other-modules: Example.Module1, Example.Module2
    autogen-modules: Example.AutogenModule
    other-languages: Haskell98
    hs-source-dirs: src
    default-extensions: NoMonomorphismRestriction
    other-extensions: OverloadedStrings
    build-tool-depends: cpphs:cpphs >= 4.0, foo:bar == 1.2.*
    ghc-options: -Wall
    ghc-prof-options: -fcaf-all
    ghc-shared-options: -fobject-code
    build-tools: hsc2hs, unknown-build-tool
    includes: example.h
    install-includes: output.h
    include-dirs: include
    c-sources: csource.c
    js-sources: jssource.js
    extra-libraries: iconv
    extra-ghci-libraries: webkit
    extra-lib-dirs: lib, lib2
    cc-options: -compat
    cpp-options: -DFOO=1
    ld-options: -static
    pkgconfig-depends: gtk+-2.0 >= 2.10, cairo >= 1.0
    frameworks: CoreAudio
    extra-framework-dirs: frameworks
    x-a-custom-field: "Some Custom Value"

    if impl(ghc >= 7.5) && (os(darwin) || !arch(i386))
        other-extensions: PolyKinds

executable example {
    main-is: example.hs
    scope: private
}

test-suite testname
    type: exitcode-stdio-1.0
    main-is: test.hs

test-suite detailed
    type: detailed-0.9
    test-module: Example.Test

benchmark bench
    type: exitcode-stdio-1.0
    main-is: benchmark.hs

foreign-library examplelib
    type: native-shared
    lib-version-info: 6:3:2
    lib-version-linux: 4.3.2

    if os(windows)
        options: standalone
        mod-def-file: ExampleLib.def, ExampleLib2.def

    other-modules: ExampleLib.SomeModule
    build-depends: base == 4.*
    hs-source-dirs: src
    c-sources: csrc/ExampleLib.c
    default-language: Haskell2010