conveyor-belt-new/xmake.lua
2025-03-27 22:29:43 +08:00

62 lines
2.0 KiB
Lua

-- 设置项目基本配置
add_rules("mode.debug", "mode.release")
add_languages("c++20")
set_policy("package.install_locally", true)
-- 包含 SDK 的构建配置
includes("AbilitySDK/xmake.lua")
add_requires("wiringPi")
add_requires("my-libmodbus",{alias="libmodbus"})
add_requires("jsoncpp")
add_requires("protobuf-cpp")
add_requires("grpc")
add_requires("abseil", {alias = "abseil"})
includes("package-index.lua")
-- 添加包含路径
add_includedirs("AbilitySDK/include")
target("protos")
set_kind("object")
add_packages("protobuf-cpp","grpc",{public=true})
add_rules("protobuf.cpp")
add_files("protos/conveyorBelt.proto", {proto_public=true,proto_rootdir = "protos", proto_grpc_cpp_plugin = true})
-- 这是旧版api使用的protos,移植到新版后可以去除
add_files("protos/abilityProto.proto", {proto_public=true,proto_rootdir = "protos", proto_grpc_cpp_plugin = true})
-- ConveyorBeltControlUnit 库
target("conveyor-control-unit")
set_kind("static")
add_includedirs("ConveyorBeltControlUnit/include", {public = true})
add_files("ConveyorBeltControlUnit/src/*.cpp")
--add_packages("cpp-httplib","jsoncpp","glog","libmodbus","wiringPi","abseil",{public=true})
add_packages("cpp-httplib","jsoncpp","glog","libmodbus","abseil",{public=true})
-- ConveyorBeltAbility 库
target("conveyor-ability")
set_kind("binary")
add_includedirs("ConveyorBeltAbility/include", {public = true})
add_files("ConveyorBeltAbility/src/*.cpp")
add_deps("AbilitySDK", "conveyor-control-unit", "protos")
add_packages("cpp-httplib","jsoncpp","glog","abseil",{public=true})
-- ConveyorBeltController 库
target("conveyor-controller")
set_kind("binary")
add_includedirs("ConveyorBeltControlUnit/include", {public = true})
add_includedirs("ConveyorBeltController/include", {public = true})
add_files("ConveyorBeltController/src/*.cpp")
add_deps("AbilitySDK", "protos")
add_packages("cpp-httplib","jsoncpp","libmodbus","glog","abseil",{public=true})