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.
51 lines
1.6 KiB
51 lines
1.6 KiB
add_rules("mode.debug", "mode.release") |
|
|
|
add_requires("ceres-solver 2.1.0", {configs = {suitesparse = true}}) |
|
add_requires("abseil", "cairo", "eigen", "glog", "lua", "protobuf-cpp", "zlib") |
|
|
|
target("cartographer") |
|
set_kind("$(kind)") |
|
set_languages("cxx17") |
|
|
|
add_packages( |
|
"abseil", |
|
"ceres-solver", |
|
"cairo", |
|
"eigen", |
|
"glog", |
|
"lua", |
|
"zlib" |
|
) |
|
|
|
add_packages("protobuf-cpp", {public = true}) |
|
add_rules("protobuf.cpp") |
|
|
|
add_files("cartographer/**.proto", {proto_rootdir = "cartographer", proto_autogendir = path.join("$(buildir)", "proto") , proto_public = true}) |
|
|
|
add_includedirs("$(buildir)/proto/cartographer") |
|
add_includedirs("$(buildir)/proto", { public = true }) |
|
|
|
add_headerfiles("$(buildir)/proto/(cartographer/**.h)") |
|
add_headerfiles("$(buildir)/proto/cartographer/(**.h)") |
|
|
|
remove_files("cartographer/**_service.proto") |
|
|
|
add_headerfiles("(cartographer/**.h)") |
|
add_files("cartographer/**.cc") |
|
|
|
remove_files("cartographer/io/serialization_format_migration.cc") |
|
remove_headerfiles("cartographer/io/serialization_format_migration.h") |
|
|
|
remove_headerfiles("**/fake_*.h", "**/*test*.h", "**/mock*.h") |
|
remove_files("**/fake_*.cc", "**/mock*.cc", "**/*_main.cc", "**/*test*.cc") |
|
|
|
-- BUILD_GRPC is not enabled |
|
remove_headerfiles("cartographer/cloud/**.h") |
|
remove_files("cartographer/cloud/**.cc") |
|
remove_files("cartographer/cloud/proto/**.proto") |
|
|
|
add_includedirs(".", { public = true }) |
|
|
|
if is_plat("windows") then |
|
add_defines("NOMINMAX") |
|
end
|
|
|