diff --git a/.gitignore b/.gitignore index fc7600d..cd3c345 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,7 @@ dist/ testing/*.h cabal.sandbox.config +prelude.[ch] +qr.[ch] +qr_test.[ch] +test_bin diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..aac07a6 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,26 @@ +sudo: false + +language: c + +addons: + apt: + packages: + - libgmp-dev + +cache: + directories: + - $HOME/.stack/ + +before_install: + - mkdir -p ~/.local/bin + - export PATH=~/.local/bin:$PATH + - travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack' + +install: + - stack update + - stack setup + - stack build --only-dependencies + +script: + - stack build --test + diff --git a/README.md b/README.md index 1306d5d..295a566 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,10 @@ Plover ====== +[![Package version][plover-hackage-img]][plover-hackage] +[![Build status][plover-travis-img]][plover-travis] +[![Dependency status][plover-hackage-deps-img]][plover-hackage-deps] + Plover is an embedded Haskell DSL for compiling linear algebra into robust, efficient C code suitable for running on embedded systems. @@ -54,3 +58,10 @@ Usage See http://swift-nav.github.io/plover/guide.html +[plover-github]: https://github.com/swift-nav/plover +[plover-hackage-img]: https://img.shields.io/hackage/v/plover.svg?style=flat +[plover-hackage]: https://hackage.haskell.org/package/plover +[plover-travis-img]: https://img.shields.io/travis/swift-nav/plover/master.svg?style=flat +[plover-travis]: https://travis-ci.org/swift-nav/plover +[plover-hackage-deps-img]: https://img.shields.io/hackage-deps/v/plover.svg?style=flat +[plover-hackage-deps]: http://packdeps.haskellers.com/feed?needle=plover diff --git a/test/Main.hs b/test/Main.hs index 7b0d94c..f89d22b 100644 --- a/test/Main.hs +++ b/test/Main.hs @@ -23,9 +23,9 @@ testSuccess = fst testCode v = (== v) . snd gccCompile files outcome = do - _ <- readProcess "gcc" (files ++ ["-w", "-otest_bin"]) "" + _ <- readProcess "gcc" (files ++ ["-w", "-std=c99", "-otest_bin", "-lm"]) "" -- ExitCode, stdout :: String, stderr :: String - (code, _, _) <- readProcessWithExitCode "test_bin" [] "" + (code, _, _) <- readProcessWithExitCode "./test_bin" [] "" assert (testCode (Just code) outcome)