Ver código fonte

setup travis sudo-free lua installation for tests

Nick Hildebrant 10 anos atrás
pai
commit
a39c93c244
4 arquivos alterados com 79 adições e 0 exclusões
  1. 5 0
      .gitignore
  2. 10 0
      .travis.yml
  3. 15 0
      .travis/platform.sh
  4. 49 0
      .travis/setup_lua.sh

+ 5 - 0
.gitignore

@@ -242,3 +242,8 @@ tags
 ##########################
 *.lo
 .libs
+
+##########################
+## Travis Build Dir
+##########################
+.travis/build

+ 10 - 0
.travis.yml

@@ -1,4 +1,14 @@
 language: c
+sudo: false
+
 compiler:
   - gcc
+  - clang
+
 script: make WITH_LUA=1 WITH_DEBUG=1 WITH_IPV6=1 WITH_WEBSOCKET=1
+
+before_install:
+  - sudo apt-get update
+  - bash .travis/setup_lua.sh
+  - sudo luarocks install lunitx
+  - sudo luarocks install lua-curl

+ 15 - 0
.travis/platform.sh

@@ -0,0 +1,15 @@
+if [ -z "$PLATFORM" ]; then
+  PLATFORM=$TRAVIS_OS_NAME;
+fi
+
+if [ "$PLATFORM" == "osx" ]; then
+  PLATFORM="macosx";
+fi
+
+if [ -z "$PLATFORM" ]; then
+  if [ "$(uname)" == "Linux" ]; then
+    PLATFORM="linux";
+  else
+    PLATFORM="macosx";
+  fi;
+fi

+ 49 - 0
.travis/setup_lua.sh

@@ -0,0 +1,49 @@
+#! /bin/bash
+set -e
+
+source .travis/platform.sh
+
+LUA_VERSION=5.2.4
+LUAROCKS_VERSION=2.2.2
+
+# directory where this script is located
+SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
+BUILD_DIR=${TRAVIS_BUILD_DIR:=$SCRIPT_DIR}/build
+echo @BUILD_DIR = $BUILD_DIR
+mkdir -p $BUILD_DIR
+cd $BUILD_DIR
+
+LUA_BASE=lua-$LUA_VERSION
+rm -rf $LUA_BASE
+curl http://www.lua.org/ftp/$LUA_BASE.tar.gz | tar zx
+
+cd $LUA_BASE
+make $PLATFORM
+make local
+
+LUA_DIR=$BUILD_DIR/lua
+rm -rf $LUA_DIR
+mv install/ $LUA_DIR
+
+cd $BUILD_DIR
+
+LUAROCKS_BASE=luarocks-$LUAROCKS_VERSION
+rm -rf ${LUAROCKS_BASE}
+LUAROCKS_URL=http://luarocks.org/releases/${LUAROCKS_BASE}.tar.gz
+curl -L $LUAROCKS_URL | tar xzp
+cd $LUAROCKS_BASE
+
+./configure --prefix=$LUA_DIR
+make build 
+make install
+
+cd $BUILD_DIR
+
+rm -rf $LUAROCKS_BASE
+rm -rf $LUA_BASE
+
+echo you need to run the following commands to setup the env vars
+echo export PATH=\$\($LUA_DIR/bin/luarocks path --bin\):\$PATH
+echo export LUA_PATH=\$\(${LUA_DIR}/bin/luarocks path --lr-path\)
+echo export LUA_CPATH=\$\(${LUA_DIR}/bin/luarocks path --lr-cpath\)
+