cabal-version: >= 1.8
author: Michael Orlitzky
maintainer: Michael Orlitzky <michael@orlitzky.com>
+license: GPL-3
+license-file: doc/LICENSE
+homepage: http://michael.orlitzky.com/code/lwn-epub.php
+bug-reports: mailto:michael@orlitzky.com
+build-type: Simple
+category: Text
synopsis:
Convert issues of LWN (lwn.net) to EPUB format.
-build-type: Simple
+description:
+ A command-line utility that downloads an LWN article (or issue), cleans it
+ up, and writes it to EPUB with a stylesheet that looks decent on the Kindle.
+ It can use account credentials to log in and access the current edition.
+data-files: doc/README
executable lwn-epub
build-depends:
HandsomeSoup == 0.3.*,
http-conduit == 1.6.*,
http-types == 0.7.*,
- HUnit == 1.2.*,
hxt == 9.*,
MissingH == 1.1.*,
network == 2.3.*,
parallel-io == 0.3.*,
regex-posix == 0.95.*,
temporary == 1.*,
- test-framework == 0.6.*,
- test-framework-hunit == 0.2.*,
time == 1.*,
- utf8-string == 0.3.*
+ utf8-string == 0.3.*,
+ -- Additional test dependencies.
+ HUnit == 1.2.*,
+ test-framework == 0.6.*,
+ test-framework-hunit == 0.2.*
main-is:
Main.hs
-fwarn-incomplete-record-updates
-fwarn-monomorphism-restriction
-fwarn-unused-do-bind
- -funbox-strict-fields
- -fexcess-precision
- -fno-spec-constr-count
-rtsopts
-threaded
-O2
-optc-O3
-optc-march=native
+
+
+test-suite testsuite
+ type: exitcode-stdio-1.0
+ hs-source-dirs: src test
+ main-is: TestSuite.hs
+ build-depends:
+ base == 4.5.*,
+ bytestring == 0.9.*,
+ cmdargs == 0.9.*,
+ ConfigFile == 1.*,
+ containers == 0.*,
+ directory == 1.1.*,
+ filepath == 1.3.*,
+ HandsomeSoup == 0.3.*,
+ http-conduit == 1.6.*,
+ http-types == 0.7.*,
+ hxt == 9.*,
+ MissingH == 1.1.*,
+ network == 2.3.*,
+ pandoc == 1.9.*,
+ parallel-io == 0.3.*,
+ regex-posix == 0.95.*,
+ temporary == 1.*,
+ time == 1.*,
+ utf8-string == 0.3.*,
+ -- Additional test dependencies.
+ HUnit == 1.2.*,
+ test-framework == 0.6.*,
+ test-framework-hunit == 0.2.*
+
+ -- It's not entirely clear to me why I have to reproduce all of this.
+ ghc-options:
+ -rtsopts
+ -threaded
+ -O2
+ -optc-O3
+ -optc-march=native
+
+
+source-repository head
+ type: git
+ location: http://michael.orlitzky.com/git/lwn-epub.git
+ branch: master
# it for make.
PN = $(shell grep 'name:' *.cabal | awk '{ print $$2 }')
BIN = dist/build/$(PN)/$(PN)
+TESTSUITE_BIN = dist/build/testsuite/testsuite
SRCS = $(shell find src/ -name '*.hs')
$(BIN): $(SRCS)
runghc Setup.hs configure --user --flags=${FLAGS}
runghc Setup.hs build
+$(TESTSUITE_BIN): src/*.hs test/TestSuite.hs
+ runghc Setup.hs configure --user --flags=${FLAGS} --enable-tests
+ runghc Setup.hs build
+
clean:
runghc Setup.hs clean
rm -f dist/
--executables \
--hyperlink-source
-dist/build/autogen: $(BIN)
-
-
-test: dist/build/autogen
- runghc -i"src" -i"dist/build/autogen" test/TestSuite.hs
+test: $(BIN) $(TESTSUITE_BIN)
+ runghc Setup.hs test