123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- add_rules("mode.debug", "mode.release")
- set_allowedplats("macosx", "iphoneos", "android", "linux", "windows", "bsd")
- add_requires("quickcpplib", "outcome", "ntkernel-error-category")
- if has_config("openssl") then
- add_requires("openssl")
- end
- option("experimental_status_code")
- set_default(false)
- set_description("Use experimental_status_code.")
- add_defines("LLFIO_EXPERIMENTAL_STATUS_CODE")
- set_showmenu(true)
- option_end()
- option("enable_openssl")
- set_default(false)
- set_description("Enable OpenSSL")
- set_showmenu(true)
- option_end()
- option("cpp20")
- set_default(false)
- set_description("Use C++20 version.")
- set_languages("c++20")
- add_defines("QUICKCPPLIB_USE_STD_SPAN")
- set_showmenu(true)
- option_end()
- target("llfio")
- set_kind("$(kind)")
- set_languages("c++17")
- add_packages("quickcpplib", "outcome", "ntkernel-error-category")
- add_headerfiles("include/(llfio/**.hpp)")
- add_headerfiles("include/(llfio/**.ixx)")
- add_headerfiles("include/(llfio/**.h)")
- add_includedirs("include")
- on_config(function(target)
- if target:has_tool("cxx", "clang", "clangxx") then
- target:add("cxxflags", "-fsized-deallocation")
- end
- end)
- if not has_config("enable_openssl") then
- add_defines("LLFIO_DISABLE_OPENSSL=1")
- else
- add_packages("openssl")
- end
- add_options("cpp20", "experimental_status_code", "enable_openssl")
- if is_plat("windows") then
- add_syslinks("advapi32", "user32", "wsock32", "ws2_32", "ole32", "shell32")
- add_defines("LLFIO_LEAN_AND_MEAN")
- end
- if is_plat("android") then
- add_defines("QUICKCPPLIB_DISABLE_EXECINFO")
- end
- add_defines("QUICKCPPLIB_USE_STD_BYTE", "QUICKCPPLIB_USE_STD_OPTIONAL")
- if not is_kind("headeronly") then
- if is_kind("shared") then
- add_defines("LLFIO_DYN_LINK=1")
- else
- add_defines("LLFIO_STATIC_LINK=1")
- end
- add_defines("LLFIO_SOURCE=1")
- add_files("src/*.cpp")
- else
- add_defines("LLFIO_HEADERS_ONLY=1")
- add_headerfiles("include/(llfio/**.ipp)")
- end
- remove_headerfiles("include/llfio/ntkernel-error-category/**")
|