-- ------------------------------------------------------ --
-- Copyright © 2014 AlephCloud Systems, Inc.
-- ------------------------------------------------------ --

Name: aws-general
Version: 0.1.1
Synopsis: Bindings for AWS General API Version 0.1
description:
    Bindings for AWS General API including AWS Signature V4.
    .
    /API Version: 1.0/
    .
    <http://docs.aws.amazon.com/general/latest/gr/>

Homepage: https://github.com/alephcloud/hs-aws-general
Bug-reports: https://github.com/alephcloud/hs-aws-general/issues
License: MIT
License-file: LICENSE
Author: Lars Kuhtz <lars@alephcloud.com>
Maintainer: Lars Kuhtz <lars@alephcloud.com>
Copyright: Copyright (c) 2014 AlephCloud, Inc.
Category: Network, Web, AWS, Cloud, Distributed Computing
Build-type: Simple

cabal-version: >= 1.16

extra-doc-files:
    README.md,
    CHANGELOG.md

extra-source-files:
    constraints

source-repository head
    type: git
    location: https://github.com/alephcloud/hs-aws-general.git

source-repository this
    type: git
    location: https://github.com/alephcloud/hs-aws-general.git
    tag: 0.1.1

flag normalize-signature-v4-date
    Description:
        Normalize the date according to the AWS SignatureV4 specification.
        .
        Using this flags breaks the AWS SignatureV4 test suite,
        since the tests in that test suite use an invalid date.
    default: True

Library
    default-language: Haskell2010
    hs-source-dirs: src

    exposed-modules:
        Aws.General
        Aws.SignatureV4

    build-depends:
        QuickCheck >= 2.7,
        aeson >= 0.7,
        attoparsec >= 0.12,
        base >= 4.6 && < 5.0,
        base16-bytestring >= 0.1,
        blaze-builder >= 0.3,
        byteable >= 0.1,
        bytestring >= 0.10.0.2,
        case-insensitive >= 1.2,
        cryptohash >= 0.11,
        hashable >= 1.2,
        http-types >= 0.8,
        old-locale >= 1.0,
        parsers >= 0.11,
        quickcheck-instances >= 0.3,
        text >= 1.1,
        time >= 1.4,
        transformers >= 0.3

    ghc-options: -Wall

    if flag(normalize-signature-v4-date)
        cpp-options: -DSIGN_V4_NORMALIZE_DATE

test-suite signature-v4
    type: exitcode-stdio-1.0
    default-language: Haskell2010
    main-is: Main.hs
    hs-source-dirs: tests

    other-modules:
        SignatureV4
        General

    build-depends:
        base == 4.*,
        aws >= 0.9,
        aws-general,
        bytestring >= 0.10,
        QuickCheck,
        quickcheck-instances,
        parsers >= 0.12,
        charset >= 0.3,
        errors >= 1.4.7,
        either >= 4.3.0,
        transformers >= 0.3,
        directory >= 1.2,
        attoparsec >= 0.12,
        http-types >= 0.8,
        case-insensitive >= 1.2,
        tasty >= 0.8,
        tasty-quickcheck >= 0.8,
        text >= 1.1,
        time >= 1.4,
        tagged >= 0.7

    ghc-options: -Wall -threaded