# Travis-CI Build for koreader # see travis-ci.org for details language: c sudo: false compiler: - gcc env: - EMULATE_READER=1 cache: directories: - $HOME/.ccache # - base addons: apt: sources: - ubuntu-toolchain-r-test packages: - g++-4.8 - libsdl1.2-dev - luarocks # for luasec - libssl1.0.0 - nasm # OpenSSL likes this (package contains makedepend) - xutils-dev before_install: # don't do this for clang - if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; fi # in case anything ignores the environment variables, override through PATH - mkdir bin - ln -s $(which gcc-4.8) bin/cc - ln -s $(which gcc-4.8) bin/gcc - ln -s $(which c++-4.8) bin/c++ - ln -s $(which g++-4.8) bin/g++ - export PATH=$PWD/bin:$PATH install: - mkdir $HOME/.luarocks - cp /etc/luarocks/config.lua $HOME/.luarocks/config.lua - echo "wrap_bin_scripts = false" >> $HOME/.luarocks/config.lua - travis_retry luarocks --local install lua_cliargs # versions older than 1.10ish and <2.0.rc10-0ish of busted may cause some weird segmentation faults - travis_retry git clone https://github.com/Olivine-Labs/busted/ - cd busted && git checkout v2.0.rc10-0 && luarocks --local make busted-2.0.rc10-0.rockspec && cd .. - travis_retry luarocks --local install luacov # luasec doesn't automatically detect 64-bit libs - travis_retry luarocks --local install luasec OPENSSL_LIBDIR=/usr/lib/x86_64-linux-gnu - travis_retry luarocks --local install luacov-coveralls --server=http://rocks.moonscript.org/dev # add local rocks to $PATH # on newer luarocks, `luarocks path --bin` would suffice because it includes the PATH now - eval $(luarocks path --bin) - export PATH=$PATH:$HOME/.luarocks/bin script: - travis_retry make fetchthirdparty all - travis_retry make testfront after_success: - make coverage - cd koreader-*/koreader && luacov-coveralls -v