-- 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