cabal-version:       >=1.10

name:                pdftotext
version:             0.0.2.0
synopsis:            Extracts text from PDF using poppler
description:         The @pdftotext@ package provides functions for extraction of plain text from PDF documents. It uses C++ library [Poppler](https://poppler.freedesktop.org/), which is required to be installed in the system. Output of Haskell @pdftotext@ library is identical to output of Poppler's tool @pdftotext@.
homepage:            https://sr.ht/~geyaeb/haskell-pdftotext/
bug-reports:         https://todo.sr.ht/~geyaeb/haskell-pdftotext
license:             BSD3
license-file:        LICENSE
author:              G. Eyaeb
maintainer:          geyaeb@protonmail.com
copyright:           2020 G. Eyaeb
category:            Text, PDF
build-type:          Simple
extra-source-files:  CHANGELOG.md, README.md, test/*.pdf, test/*.txt

source-repository head
  type:                mercurial
  location:            https://hg.sr.ht/~geyaeb/haskell-pdftotext

flag xml-conduit
  description:         Parse metadata of PDF document properties using xml-conduit
  default:             False
  
library
  exposed-modules:     Pdftotext
                     , Pdftotext.Foreign
                     , Pdftotext.Internal
  build-depends:       base >= 4.11 && < 5
                     , bytestring == 0.10.*
                     , text == 1.2.*
  hs-source-dirs:      src
  ghc-options:         -Wall -Wincomplete-uni-patterns -Wincomplete-record-updates -Wcompat -Widentities -Wredundant-constraints -fhide-source-paths -Wmissing-export-lists -Wpartial-fields
  default-language:    Haskell2010
  cc-options:          -Wall -fPIC
  c-sources:           cbits/poppler.cc
                     , cbits/stdstring.cc
  extra-libraries:     stdc++
  pkgconfig-depends:   poppler-cpp
  if flag(xml-conduit)
     build-depends:    xml-conduit == 1.8.*
     cpp-options:      -DXMLC

test-suite pdftotext-test
  default-language:    Haskell2010
  build-depends:       pdftotext
                     , base >= 4.11 && < 5
                     , text == 1.2.*
                     , hspec == 2.7.*
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
  other-modules:       PdftotextSpec
  build-tool-depends:  hspec-discover:hspec-discover == 2.*