1
0
Fork 0
mirror of https://github.com/ctruLua/ctruLua.git synced 2025-10-27 16:39:29 +00:00
ctruLua/libs/lzlib/lakefile

58 lines
1.4 KiB
Text

PROJECT = 'zlib'
IF=choose
J=path.join
if LUA_VER == '5.2' then
LUA_NEED = 'lua52'
LUA_DIR = ENV.LUA_DIR_5_2 or ENV.LUA_DIR
LUA_RUNNER = 'lua52'
else
LUA_NEED = 'lua'
LUA_DIR = ENV.LUA_DIR
LUA_RUNNER = 'lua'
end
DYNAMIC = DYNAMIC or false
ZLIB_NEED = IF(DYNAMIC, 'zlib-static-md', 'zlib-static-mt')
INSTALL_DIR = INSTALL_DIR or J(LUA_DIR,'libs',PROJECT)
build = c.shared{PROJECT,
-- base = 'src',
src = '*.c',
needs = { LUA_NEED, ZLIB_NEED },
dynamic = DYNAMIC,
strip = true,
defines = IF(MSVC, "STRUCT_INT=__int64"),
libflags = IF(MSVC, "/EXPORT:luaopen_" .. PROJECT),
}
target('build', build)
install = target('install', {
file.group{odir=J(INSTALL_DIR, 'share');src = build };
file.group{odir=J(INSTALL_DIR, 'share');src = 'gzip.lua' };
file.group{odir=J(INSTALL_DIR, 'test'); src = 'test_*.lua'};
})
local function run(file, cwd)
print()
print("run " .. file)
if not TESTING then
if cwd then lake.chdir(cwd) end
os.execute( LUA_RUNNER .. ' ' .. file )
if cwd then lake.chdir("<") end
print()
end
end
target('test', install, function()
local test_dir = J(INSTALL_DIR,'test')
run(J(test_dir,'test_zlib3.lua'), test_dir)
run(J(test_dir,'test_zlib2.lua'), test_dir)
run(J(test_dir,'test_prologue.lua'), test_dir)
run(J(test_dir,'test_gzip.lua'), test_dir)
end)