packages feed

xls-0.1.2: xls.cabal

name:                xls
version:             0.1.2
synopsis:            Parse Microsoft Excel xls files (BIFF/Excel 97-2004)
description:
 Parse Microsoft Excel spreadsheet files in @.xls@ file format
 (extension '.xls') more specifically known as 'BIFF/Excel 97-2004'.
 .
 The library is based on the C library
 'https://github.com/libxls/libxls'.

homepage: http://github.com/harendra-kumar/xls
license:             BSD3
license-file:        LICENSE
author:              Harendra Kumar
maintainer:          harendra.kumar@gmail.com
category:            Codec,Data,Parser,Spreadsheet
copyright:           2016 Harendra Kumar,
                     2004-2014 Authors of libxls
stability:           Experimental

build-type:          Simple
cabal-version:       >=1.10

extra-source-files:
    Changelog.md
    README.md
    stack.yaml
    lib/libxls/config/*.h
    lib/libxls/include/*.h
    lib/libxls/include/libxls/*.h
    lib/libxls/include/libxls/*.c.h

flag force-has-iconv
  description: force using iconv library on Windows
  manual: True
  default: False

library
  default-language:    Haskell2010
  ghc-options:         -Wall

  -- c99 also works but clang and gcc both support gnu99. We will have to use
  -- a configure script if better portability is required.
  -- _GNU_SOURCE is required to enable asprintf in glibc
  cc-options:          -std=gnu99 -D_GNU_SOURCE
  if flag(force-has-iconv)
    cc-options:        -DFORCE_HAS_ICONV

  hs-source-dirs:      lib
  exposed-modules:     Data.Xls
  build-depends:       base         >= 4.7   && < 5
                     , conduit      >= 1.1   && < 1.4
                     , filepath     >= 1.0   && < 1.5
                     , resourcet    >= 0.3   && < 1.3
                     , transformers >= 0.1   && < 0.6

  c-sources:           lib/libxls-wrapper.c,
                       lib/libxls/src/xlstool.c,
                       lib/libxls/src/endian.c,
                       lib/libxls/src/ole.c,
                       lib/libxls/src/xls.c

  include-dirs:        lib/libxls/config,
                       lib/libxls/include

executable xls2csv
  default-language:    Haskell2010
  hs-source-dirs:      bin
  main-is:             xls2csv.hs
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  build-depends:        base            >= 4.7   && < 5
                      , conduit         >= 1.1   && < 1.4
                      , resourcet       >= 0.3   && < 1.3
                      , transformers    >= 0.1   && < 0.6
                      , getopt-generics >= 0.11  && < 0.14
                      , xls

test-suite test
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  build-depends:        base >= 4.7 && < 5
                      , xls
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N

source-repository head
  type:     git
  location: https://github.com/harendra-kumar/xls