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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
add_requires(
"vcpkg::doctest",
"vcpkg::spdlog",
"vcpkg::gsl-lite",
"vcpkg::asio",
"vcpkg::cpr",
"vcpkg::xxhash",
"vcpkg::robin-map",
"vcpkg::lz4",
"vcpkg::fmt",
"vcpkg::cxxopts",
"vcpkg::mimalloc",
"vcpkg::sol2",
"vcpkg::sentry-native",
"vcpkg::json11",
"vcpkg::lua",
"vcpkg::curl",
"vcpkg::zlib",
"vcpkg::zstd",
"vcpkg::http-parser")
add_rules("mode.debug", "mode.release")
if is_mode("release") then
set_optimize("smallest")
if is_plat("windows") then
add_ldflags("/LTCG")
end
end
if is_mode("debug") then
add_defines("DEBUG")
end
if is_mode("debug") then
add_defines("ZEN_WITH_TESTS=1")
else
add_defines("ZEN_WITH_TESTS=0")
end
if is_os("windows") then
add_defines(
"_CRT_SECURE_NO_WARNINGS",
"_UNICODE",
"UNICODE",
"_CONSOLE",
"_WIN32_WINNT=0x0A00"
)
-- add_ldflags("/MAP")
end
if is_os("linux") then
add_cxxflags("-Wno-unused-variable")
add_cxxflags("-Wno-unused-parameter")
add_cxxflags("-Wno-strict-aliasing")
add_cxxflags("-Wno-implicit-fallthrough")
add_cxxflags("-Wno-missing-field-initializers")
end
add_defines("USE_SENTRY=1")
add_defines("ZEN_USE_MIMALLOC=1")
option("vfs")
set_showmenu(true)
set_description("Enable VFS functionality")
add_defines("ZEN_WITH_VFS")
option_end()
option("httpsys")
set_default(true)
set_showmenu(true)
set_description("Enable http.sys server")
add_defines("ZEN_WITH_HTTPSYS")
option_end()
set_warnings("allextra", "error")
set_languages("cxx20")
-- always generate debug information
set_symbols("debug")
includes("zencore", "zencore-test")
includes("zenhttp")
includes("zenstore", "zenstore-test")
includes("zenutil")
includes("zenserver", "zenserver-test")
includes("zen")
|