31 lines
914 B
CMake
31 lines
914 B
CMake
|
cmake_minimum_required(VERSION 3.5)
|
||
|
|
||
|
set(PROTO_COMPILER "protoc")
|
||
|
set(PROTO_C_COMPILER "protoc-c")
|
||
|
set(C_OUT_PATH "${CMAKE_CURRENT_LIST_DIR}/../proto-c")
|
||
|
set(PY_OUT_PATH "${CMAKE_CURRENT_LIST_DIR}/../python")
|
||
|
set(PROTOCOMM_INCL_PATH "${CMAKE_CURRENT_LIST_DIR}/../../protocomm/proto")
|
||
|
|
||
|
file(GLOB PROTO_FILES
|
||
|
LIST_DIRECTORIES false
|
||
|
RELATIVE ${CMAKE_CURRENT_LIST_DIR}
|
||
|
"*.proto")
|
||
|
|
||
|
add_custom_target(c_proto
|
||
|
COMMAND ${PROTO_C_COMPILER} --c_out=${C_OUT_PATH} -I . -I ${PROTOCOMM_INCL_PATH} ${PROTO_FILES}
|
||
|
VERBATIM
|
||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
|
||
|
)
|
||
|
|
||
|
add_custom_target(python_proto
|
||
|
COMMAND ${PROTO_COMPILER} --python_out=${PY_OUT_PATH} -I . -I ${PROTOCOMM_INCL_PATH} ${PROTO_FILES}
|
||
|
VERBATIM
|
||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
|
||
|
)
|
||
|
|
||
|
add_custom_target(proto ALL
|
||
|
DEPENDS c_proto python_proto
|
||
|
VERBATIM
|
||
|
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
|
||
|
)
|