.travis.yml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. # ref: http://docs.travis-ci.com/user/build-configuration
  2. language: erlang
  3. env:
  4. global:
  5. - DEPS_BUILD_DIR=$TRAVIS_BUILD_DIR/deps
  6. - LJ_REPO="https://github.com/LuaJIT/LuaJIT.git"
  7. - INC_DIR=/usr/local/include
  8. matrix:
  9. - LUA=lua-5.1 LUA_TYPE=lua LUA_DIST=lua-5.1.5 LUA_BD=lua LUA_INC=$INC_DIR
  10. - LUA=lua-5.2 LUA_TYPE=lua LUA_DIST=lua-5.2.4 LUA_BD=lua LUA_INC=$INC_DIR
  11. - LUA=lua-5.3 LUA_TYPE=lua LUA_DIST=lua-5.3.2 LUA_BD=lua53 LUA_INC=$INC_DIR
  12. - LUA=luajit-2.0 LUA_TYPE=luajit LJ_BR=master LUA_BD=lua LUA_INC=$INC_DIR/$LUA
  13. - LUA=luajit-2.1 LUA_TYPE=luajit LJ_BR=v2.1 LUA_BD=lua LUA_INC=$INC_DIR/$LUA
  14. before_install:
  15. - mkdir -p $DEPS_BUILD_DIR
  16. - sudo apt-get update -qq
  17. - sudo apt-get install libprotobuf-dev protobuf-compiler
  18. - LUA_BIN=lua
  19. install:
  20. # install Lua/LuaJIT
  21. - cd $DEPS_BUILD_DIR
  22. - if [ "$LUA_TYPE" == "luajit" ]; then
  23. git clone -b $LJ_BR $LJ_REPO luajit2.git && cd luajit2.git && LJ_TAG=`git describe --abbre=0` && LUA_BIN="luajit-${LJ_TAG:1}" && sudo make install;
  24. fi
  25. - if [ "$LUA_TYPE" == "lua" ]; then
  26. wget "http://www.lua.org/ftp/$LUA_DIST.tar.gz" && tar xzf $LUA_DIST.tar.gz && cd $LUA_DIST && sudo make linux test install;
  27. fi
  28. # build lib
  29. - cd $TRAVIS_BUILD_DIR
  30. - make
  31. # build lib bindings
  32. - make -C binding/$LUA_BD LUADIR=$LUA_INC
  33. before_script:
  34. # back to home directory
  35. - cd $TRAVIS_BUILD_DIR
  36. # check executables
  37. - which $LUA_BIN 2>/dev/null && $LUA_BIN -v
  38. script:
  39. - cd $TRAVIS_BUILD_DIR/binding/$LUA_BD
  40. - $LUA_BIN test.lua
  41. notifications:
  42. email:
  43. on_success: change
  44. on_failure: always