Files
cls_master/tools/CMakeLists.txt
2024-08-13 05:07:40 +02:00

27 lines
923 B
CMake

# Specify the .proto file
set(PROTO_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../proto)
set(PROTO_FILE
${PROTO_SRC_DIR}/firmware.proto
${PROTO_SRC_DIR}/light.proto
${PROTO_SRC_DIR}/usb.proto
${PROTO_SRC_DIR}/cls_device.proto
${PROTO_SRC_DIR}/headlight.proto
${PROTO_SRC_DIR}/display.proto
)
# Specify where you want to generate the python code
set(PYTHON_OUT_DIR ${CMAKE_CURRENT_SOURCE_DIR})
# Specify the include directory
set(PROTO_INC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../lib/nanopb/generator/proto)
# Add the command to generate the python code
add_custom_command(
OUTPUT ${PYTHON_OUT_DIR}/firmware_pb2.py
COMMAND protoc --python_out=${PYTHON_OUT_DIR} --proto_path=${PROTO_SRC_DIR}:${PROTO_INC_DIR} ${PROTO_FILE} ${PROTO_INC_DIR}/nanopb.proto
DEPENDS ${PROTO_FILE}
)
# Add the generated python code to a custom target
add_custom_target(GeneratePythonProtobufCode ALL DEPENDS ${PYTHON_OUT_DIR}/firmware_pb2.py)