-
Notifications
You must be signed in to change notification settings - Fork 0
/
xmake.lua
46 lines (36 loc) · 1.5 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
set_project("pain")
set_languages("c++23")
set_version("1.0.0", {build = "%Y%m%d"})
add_rules("mode.debug", "mode.releasedbg")
add_rules("plugin.compile_commands.autoupdate", {outputdir = "build"})
set_policy("build.across_targets_in_parallel", false)
set_policy("check.auto_ignore_flags", false)
add_defines("SPDLOG_ACTIVE_LEVEL=SPDLOG_LEVEL_TRACE")
add_defines("BOOST_ENABLE_ASSERT_HANDLER")
add_repositories("pain-repo pain-repo")
if is_mode("debug") then
add_cxxflags("-fsanitize=address")
add_ldflags("-fsanitize=address")
end
add_cxxflags("-fno-omit-frame-pointer")
add_requires("argparse 3.1")
add_requires("brpc 1.10.0")
add_requires("braft 1.1.3")
add_requires("boost 1.81.0")
add_requires("fmt 10.1.1", {configs = {header_only = true}})
add_requires("gtest 1.12.1")
add_requires("nlohmann_json v3.11.3")
add_requires("opentelemetry-cpp 1.16.1")
add_requires("protobuf-cpp 3.19.4", {configs = {zlib = true}})
add_requires("rocksdb v9.0.0")
add_requires("spdlog v1.14.1", {configs = {fmt_external = true, header_only = true}})
add_requires("uuid_v4 1.0.0")
add_requireconfs("**.boost", {override=true, version="1.81.0"})
add_requireconfs("**.fmt", {override=true, version="10.1.1", configs = {header_only = true}})
add_requireconfs("**.protobuf-cpp", {version = "3.19.4", override=true, configs = {zlib = true}})
add_requireconfs("**.spdlog", {override=true, version="v1.14.1"})
add_includedirs("include")
add_includedirs("src")
includes("src")
includes("protocols/pain/core")
add_headerfiles("include/(pain/*.h)")