package An official xmake package repository
https://xrepo.xmake.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.3 KiB
44 lines
1.3 KiB
add_rules("mode.debug", "mode.release") |
|
add_requires("fmt", "nlohmann_json", "openssl", "zlib") |
|
option("coro", {default = false}) |
|
option("voice", {default = true}) |
|
if has_config("voice") then |
|
add_requires("libopus", "libsodium") |
|
end |
|
|
|
target("dpp") |
|
set_kind("$(kind)") |
|
add_includedirs("include", "include/dpp") |
|
add_headerfiles("include/(dpp/**.h)") |
|
add_files("src/dpp/**.cpp") |
|
add_packages("fmt", "nlohmann_json", "openssl", "zlib") |
|
|
|
if has_config("voice") then |
|
add_packages("libopus", "libsodium") |
|
add_defines("HAVE_VOICE") |
|
end |
|
|
|
if has_config("coro") then |
|
add_defines("DPP_CORO") |
|
end |
|
|
|
local target_cpp_lang = "c++17" |
|
if has_config("coro") then |
|
target_cpp_lang = "c++20" |
|
end |
|
|
|
set_languages(target_cpp_lang) |
|
|
|
add_defines("DPP_BUILD", "DPP_USE_EXTERNAL_JSON") |
|
|
|
if is_plat("windows", "mingw") then |
|
add_defines("WIN32", "_WINSOCK_DEPRECATED_NO_WARNINGS", "WIN32_LEAN_AND_MEAN") |
|
add_defines("_CRT_SECURE_NO_WARNINGS", "_CRT_NONSTDC_NO_DEPRECATE") |
|
add_defines("FD_SETSIZE=1024") |
|
if is_plat("windows") then |
|
add_cxflags("/Zc:preprocessor") |
|
end |
|
if is_kind("static") then |
|
add_defines("DPP_STATIC", {public = true}) |
|
end |
|
end
|
|
|