mirror of
https://github.com/ctruLua/ctruLua.git
synced 2025-10-27 16:39:29 +00:00
58 lines
1.4 KiB
Text
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)
|
|
|