Files
Blitz/xmake.lua
Simon Pribylski bde4292d9e fix MSVC build
2024-01-11 17:45:45 -08:00

88 lines
1.6 KiB
Lua

-- We need that for the tests
set_xmakever("2.8.5")
add_rules("mode.debug", "mode.release")
add_requires("libsdl 2.28.3", {configs = {sdlmain = false}})
add_requires("glbinding >= 3", "zlib", "assimp", "nlohmann_json")
set_languages("c++17")
add_includedirs("include")
-- Game files (with server)
target("Blitz")
if is_os("windows") then
set_kind("static")
add_links("ws2_32") -- link network stuff
else
set_kind("shared")
end
add_files("src/blitz/**.cpp", "src/server/**.cpp")
add_packages("zlib")
-- Server binary (headless)
target("BlitzServer")
set_kind("binary")
set_default(false)
add_files("src/ServerMain.cpp")
-- Libraries
add_deps("Blitz")
-- Client binary (default)
target("BlitzClient")
if is_plat("android") then
set_kind("shared")
else
set_kind("binary")
end
set_default(true)
add_files("src/client/**.cpp", "src/ClientMain.cpp")
-- Libraries
add_deps("Blitz")
add_packages("libsdl", "glbinding", "assimp", "nlohmann_json")
add_includedirs("libs", "libs/imgui")
add_files("libs/imgui/**.cpp")
if is_plat("macosx") then
add_frameworks("OpenGL")
elseif is_plat("windows") then
add_ldflags("/LCTG")
end
-- Assets
set_rundir("$(projectdir)/assets")
-- Tests
for _, file in ipairs(os.files("test/test_*.cpp")) do
local name = path.basename(file)
target(name)
set_kind("binary")
add_files("test/" .. name .. ".cpp")
set_default(false)
add_deps("Blitz")
add_tests("compile_and_run")
end