Using c library
lua
add_requires("protobuf-c")
target("console_c")
set_kind("binary")
add_packages("protobuf-c")
add_rules("protobuf.c")
add_files("src/*.c")
add_files("src/*.proto")
We can also set proto_public = true
to export the proto's header search directory and make it available for other parent targets to inherit from.
lua
add_packages("protobuf-c", {public = true})
add_files("src/**.proto", {proto_public = true})
NOTE
Since the headers generated by protobuf reference the headers of the protobuf-c package, we also need to mark the package headers as {public = true}
to export it.
Using the C++ library
lua
add_requires("protobuf-cpp")
target("console_c++")
set_kind("binary")
set_languages("c++11")
add_packages("protobuf-cpp")
add_rules("protobuf.cpp")
add_files("src/*.cpp")
add_files("src/*.proto")
We can also set proto_public = true
to export the proto's header search directory and make it available for other parent targets to inherit from.
lua
add_packages("protobuf-cpp", {public = true})
add_files("src/**.proto", {proto_public = true})
NOTE
Since the headers generated by protobuf reference the headers of the protobuf-cpp package, we also need to mark the package headers as {public = true}
to export it.