-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmake.lua
62 lines (48 loc) · 1.91 KB
/
make.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
require( "ggbuild.gen_ninja" )
require( "ggbuild.git_version" )
require( "libs.libclipboard" )
require( "libs.tracy" )
require( "libs.whereami" )
obj_cxxflags( ".*", "-I source -I libs" )
msvc_obj_cxxflags( ".*", "/W4 /wd4100 /wd4146 /wd4189 /wd4201 /wd4307 /wd4324 /wd4351 /wd4127 /wd4505 /wd4530 /wd4702 /wd4706 /D_CRT_SECURE_NO_WARNINGS" )
msvc_obj_cxxflags( ".*", "/wd4244 /wd4267" ) -- silence conversion warnings because there are tons of them
msvc_obj_cxxflags( ".*", "/fp:fast /GR- /EHs-c-" )
gcc_obj_cxxflags( ".*", "-std=c++11 -msse3 -ffast-math -fno-exceptions -fno-rtti -fno-strict-aliasing -fno-strict-overflow -fvisibility=hidden" )
gcc_obj_cxxflags( ".*", "-Wall -Wextra -Wcast-align -Wvla -Wformat-security" ) -- -Wconversion
gcc_obj_cxxflags( ".*", "-Wno-unused-parameter -Wno-missing-field-initializers -Wno-implicit-fallthrough -Wno-format-truncation" )
gcc_obj_cxxflags( ".*", "-Werror=vla -Werror=format-security -Werror=unused-value" )
if config ~= "release" then
obj_cxxflags( ".*", "-DTRACY_ENABLE" )
end
local platform_srcs, platform_libs
if OS == "windows" then
require( "libs.lua" )
require( "libs.lpeg" )
require( "libs.lfs" )
platform_srcs = "src/win32.cc"
platform_libs = { "lua", "lpeg", "lfs" }
else
platform_srcs = "src/x11.cc"
platform_libs = { "libclipboard" }
end
bin( "mudgangster", {
srcs = {
platform_srcs,
"src/ui.cc", "src/script.cc", "src/textbox.cc", "src/input.cc", "src/platform_network.cc",
},
libs = {
platform_libs,
"tracy",
"whereami"
},
rc = "src/rc",
msvc_extra_ldflags = "gdi32.lib Ws2_32.lib",
gcc_extra_ldflags = "-lm -lpthread -lX11 -lxcb -llua",
} )
obj_dependencies( "src/script.cc", "build/lua_combined.h" )
printf( [[
rule combine-lua
command = $lua ggbuild/pack_lua.lua src/lua main.lua
description = lua_combined.h
]] )
print( "build build/lua_combined.h: combine-lua " .. table.concat( glob( "src/lua/*.lua" ), " " ) .. " | ggbuild/pack_lua.lua" )