mirror of
https://github.com/lunarmodules/luafilesystem.git
synced 2026-07-23 19:43:06 +00:00
33
.travis.yml
Normal file
33
.travis.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
language: c
|
||||
|
||||
env:
|
||||
global:
|
||||
- LUAROCKS=2.2.0-rc1
|
||||
matrix:
|
||||
- LUA=lua5.1
|
||||
- LUA=lua5.2
|
||||
- LUA=lua5.3
|
||||
- LUA=luajit
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
before_install:
|
||||
- bash .travis/setup_lua.sh
|
||||
- sudo pip install cpp-coveralls
|
||||
|
||||
install:
|
||||
- sudo luarocks make rockspecs/luafilesystem-cvs-3.rockspec CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="-shared --coverage"
|
||||
|
||||
script:
|
||||
- cd tests
|
||||
- sudo lua test.lua
|
||||
|
||||
after_success:
|
||||
- coveralls -b .. -r .. -E usr
|
||||
|
||||
notifications:
|
||||
email:
|
||||
on_success: change
|
||||
on_failure: always
|
||||
15
.travis/platform.sh
Normal file
15
.travis/platform.sh
Normal file
@@ -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
|
||||
101
.travis/setup_lua.sh
Normal file
101
.travis/setup_lua.sh
Normal file
@@ -0,0 +1,101 @@
|
||||
#! /bin/bash
|
||||
|
||||
# A script for setting up environment for travis-ci testing.
|
||||
# Sets up Lua and Luarocks.
|
||||
# LUA must be "lua5.1", "lua5.2" or "luajit".
|
||||
# luajit2.0 - master v2.0
|
||||
# luajit2.1 - master v2.1
|
||||
|
||||
LUAJIT_BASE="LuaJIT-2.0.3"
|
||||
|
||||
source .travis/platform.sh
|
||||
|
||||
LUAJIT="no"
|
||||
|
||||
if [ "$PLATFORM" == "macosx" ]; then
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
if [ "$LUA" == "luajit2.0" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
if [ "$LUA" == "luajit2.1" ]; then
|
||||
LUAJIT="yes";
|
||||
fi;
|
||||
elif [ "$(expr substr $LUA 1 6)" == "luajit" ]; then
|
||||
LUAJIT="yes";
|
||||
fi
|
||||
|
||||
if [ "$LUAJIT" == "yes" ]; then
|
||||
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
curl http://luajit.org/download/$LUAJIT_BASE.tar.gz | tar xz;
|
||||
else
|
||||
git clone http://luajit.org/git/luajit-2.0.git $LUAJIT_BASE;
|
||||
fi
|
||||
|
||||
cd $LUAJIT_BASE
|
||||
|
||||
if [ "$LUA" == "luajit2.1" ]; then
|
||||
git checkout v2.1;
|
||||
fi
|
||||
|
||||
make && sudo make install
|
||||
|
||||
if [ "$LUA" == "luajit2.1" ]; then
|
||||
sudo ln -s /usr/local/bin/luajit-2.1.0-alpha /usr/local/bin/luajit
|
||||
sudo ln -s /usr/local/bin/luajit /usr/local/bin/lua;
|
||||
else
|
||||
sudo ln -s /usr/local/bin/luajit /usr/local/bin/lua;
|
||||
fi;
|
||||
|
||||
else
|
||||
if [ "$LUA" == "lua5.1" ]; then
|
||||
curl http://www.lua.org/ftp/lua-5.1.5.tar.gz | tar xz
|
||||
cd lua-5.1.5;
|
||||
elif [ "$LUA" == "lua5.2" ]; then
|
||||
curl http://www.lua.org/ftp/lua-5.2.3.tar.gz | tar xz
|
||||
cd lua-5.2.3;
|
||||
elif [ "$LUA" == "lua5.3" ]; then
|
||||
curl http://www.lua.org/work/lua-5.3.0-beta.tar.gz | tar xz
|
||||
cd lua-5.3.0-beta;
|
||||
fi
|
||||
sudo make $PLATFORM install;
|
||||
fi
|
||||
|
||||
cd $TRAVIS_BUILD_DIR;
|
||||
|
||||
LUAROCKS_BASE=luarocks-$LUAROCKS
|
||||
|
||||
# curl http://luarocks.org/releases/$LUAROCKS_BASE.tar.gz | tar xz
|
||||
|
||||
git clone https://github.com/keplerproject/luarocks.git $LUAROCKS_BASE
|
||||
cd $LUAROCKS_BASE
|
||||
|
||||
git checkout v$LUAROCKS
|
||||
|
||||
if [ "$LUA" == "luajit" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.0;
|
||||
elif [ "$LUA" == "luajit2.0" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.0;
|
||||
elif [ "$LUA" == "luajit2.1" ]; then
|
||||
./configure --lua-suffix=jit --with-lua-include=/usr/local/include/luajit-2.1;
|
||||
else
|
||||
./configure;
|
||||
fi
|
||||
|
||||
make build && sudo make install
|
||||
|
||||
cd $TRAVIS_BUILD_DIR
|
||||
|
||||
rm -rf $LUAROCKS_BASE
|
||||
|
||||
if [ "$LUAJIT" == "yes" ]; then
|
||||
rm -rf $LUAJIT_BASE;
|
||||
elif [ "$LUA" == "lua5.1" ]; then
|
||||
rm -rf lua-5.1.5;
|
||||
elif [ "$LUA" == "lua5.2" ]; then
|
||||
rm -rf lua-5.2.3;
|
||||
elif [ "$LUA" == "lua5.3" ]; then
|
||||
rm -rf lua-5.3.0-beta;
|
||||
fi
|
||||
27
rockspecs/luafilesystem-cvs-3.rockspec
Normal file
27
rockspecs/luafilesystem-cvs-3.rockspec
Normal file
@@ -0,0 +1,27 @@
|
||||
package = "LuaFileSystem"
|
||||
|
||||
version = "cvs-3"
|
||||
|
||||
source = {
|
||||
url = "git://github.com/keplerproject/luafilesystem.git",
|
||||
}
|
||||
|
||||
description = {
|
||||
summary = "File System Library for the Lua Programming Language",
|
||||
detailed = [[
|
||||
LuaFileSystem is a Lua library developed to complement the set of
|
||||
functions related to file systems offered by the standard Lua
|
||||
distribution. LuaFileSystem offers a portable way to access the
|
||||
underlying directory structure and file attributes.
|
||||
]]
|
||||
}
|
||||
|
||||
dependencies = {
|
||||
"lua >= 5.1, < 5.4"
|
||||
}
|
||||
|
||||
build = {
|
||||
type = "builtin",
|
||||
modules = { lfs = "src/lfs.c" },
|
||||
copy_directories = { "doc", "tests" }
|
||||
}
|
||||
@@ -69,6 +69,14 @@
|
||||
#define LFS_VERSION "1.6.2"
|
||||
#define LFS_LIBNAME "lfs"
|
||||
|
||||
#if LUA_VERSION_NUM >= 503 /* Lua 5.3 */
|
||||
|
||||
#ifndef luaL_optlong
|
||||
#define luaL_optlong luaL_optinteger
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#if LUA_VERSION_NUM < 502
|
||||
# define luaL_newlib(L,l) (lua_newtable(L), luaL_register(L,NULL,l))
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user