1#! /bin/bash 2 3# A script for setting up environment for travis-ci testing. 4# Sets up Lua and Luarocks. 5# LUA must be "lua5.1", "lua5.2" or "luajit". 6# luajit2.0 - master v2.0 7# luajit2.1 - master v2.1 8 9LUAJIT_BASE="LuaJIT-2.0.3" 10 11source .travis/platform.sh 12 13LUAJIT="no" 14 15if [ "$PLATFORM" == "macosx" ]; then 16 if [ "$LUA" == "luajit" ]; then 17 LUAJIT="yes"; 18 fi 19 if [ "$LUA" == "luajit2.0" ]; then 20 LUAJIT="yes"; 21 fi 22 if [ "$LUA" == "luajit2.1" ]; then 23 LUAJIT="yes"; 24 fi; 25elif [ "$(expr substr $LUA 1 6)" == "luajit" ]; then 26 LUAJIT="yes"; 27fi 28 29if [ "$LUAJIT" == "yes" ]; then 30 31 if [ "$LUA" == "luajit" ]; then 32 curl http://luajit.org/download/$LUAJIT_BASE.tar.gz | tar xz; 33 else 34 git clone http://luajit.org/git/luajit-2.0.git $LUAJIT_BASE; 35 fi 36 37 cd $LUAJIT_BASE 38 39 if [ "$LUA" == "luajit2.1" ]; then 40 git checkout v2.1; 41 fi 42 43 make && sudo make install 44 45 if [ "$LUA" == "luajit2.1" ]; then 46 sudo ln -s /usr/local/bin/luajit-2.1.0-alpha /usr/local/bin/luajit 47 sudo ln -s /usr/local/bin/luajit /usr/local/bin/lua; 48 else 49 sudo ln -s /usr/local/bin/luajit /usr/local/bin/lua; 50 fi; 51 52else 53 if [ "$LUA" == "lua5.1" ]; then 54 curl http://www.lua.org/ftp/lua-5.1.5.tar.gz | tar xz 55 cd lua-5.1.5; 56 elif [ "$LUA" == "lua5.2" ]; then 57 curl http://www.lua.org/ftp/lua-5.2.3.tar.gz | tar xz 58 cd lua-5.2.3; 59 elif [ "$LUA" == "lua5.3" ]; then 60 curl http://www.lua.org/work/lua-5.3.0-beta.tar.gz | tar xz 61 cd lua-5.3.0-beta; 62 fi 63 sudo make $PLATFORM install; 64fi 65 66cd $TRAVIS_BUILD_DIR; 67 68LUAROCKS_BASE=luarocks-$LUAROCKS 69 70# curl http://luarocks.org/releases/$LUAROCKS_BASE.tar.gz | tar xz 71 72git clone https://github.com/keplerproject/luarocks.git $LUAROCKS_BASE 73cd $LUAROCKS_BASE 74 75git checkout v$LUAROCKS 76 77if [ "$LUA" == "luajit" ]; then 78 ./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.0; 79elif [ "$LUA" == "luajit2.0" ]; then 80 ./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.0; 81elif [ "$LUA" == "luajit2.1" ]; then 82 ./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.1; 83else 84 ./configure; 85fi 86 87make build && sudo make install 88 89cd $TRAVIS_BUILD_DIR 90 91rm -rf $LUAROCKS_BASE 92 93if [ "$LUAJIT" == "yes" ]; then 94 rm -rf $LUAJIT_BASE; 95elif [ "$LUA" == "lua5.1" ]; then 96 rm -rf lua-5.1.5; 97elif [ "$LUA" == "lua5.2" ]; then 98 rm -rf lua-5.2.3; 99elif [ "$LUA" == "lua5.3" ]; then 100 rm -rf lua-5.3.0-beta; 101fi 102