-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathxmake.lua
67 lines (48 loc) · 1.44 KB
/
xmake.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
local solution_name = "Nui"
-- XMake version
set_xmakever("2.9.2")
-- Build configs
add_rules("mode.debug", "mode.release", "mode.releasedbg")
set_allowedmodes("debug", "release", "releasedbg")
-- Platform and architecture - only support x64 Windows
set_allowedplats("windows")
set_allowedarchs("windows|x64")
-- Set C/C++ language version
set_languages("c17", "cxx23")
-- Project name and version
set_project(solution_name)
set_version("0.0.1")
-- Set default build mode
set_defaultmode("debug")
-- Generate clang compile commands on build
-- add_rules("plugin.compile_commands.autoupdate")
-- Update generated visual studio project files on build
-- add_rules("plugin.vsxmake.autoupdate")
-- Add defines
add_defines("UNICODE")
if is_mode("debug") then
-- Add macros
add_defines("DEBUG", "NUI_DEBUG")
-- Enable debug symbols
set_symbols("debug")
-- Disable optimization
set_optimize("none")
end
-- If the current compilation mode is release or debug?
if is_mode("release", "releasedbg") then
if is_mode("release") then
-- Add macros
add_defines("RELEASE", "NUI_RELEASE", "NDEBUG")
-- Mark symbols visibility as hidden
set_symbols("hidden")
-- Strip all symbols
set_strip("all")
else
-- Add macros
add_defines("RELEASE", "NUI_RELEASE")
-- Enable debug symbols
set_symbols("debug")
end
end
-- Include all xmake projects
includes("**/xmake.lua")