|
|
|
@ -30,8 +30,6 @@ UNSET_VAR(PROTOBUF_LITE_LIBRARY)
|
|
|
|
|
UNSET_VAR(PROTOBUF_LIBRARY)
|
|
|
|
|
UNSET_VAR(PROTOBUF_INCLUDE_DIR)
|
|
|
|
|
UNSET_VAR(Protobuf_PROTOC_EXECUTABLE)
|
|
|
|
|
|
|
|
|
|
if(NOT COMMAND protobuf_generate_python) # before cmake 3.4, protobuf_genrerate_python is not defined.
|
|
|
|
|
function(protobuf_generate_python SRCS)
|
|
|
|
|
# shameless copy from https://github.com/Kitware/CMake/blob/master/Modules/FindProtobuf.cmake
|
|
|
|
|
if(NOT ARGN)
|
|
|
|
@ -52,7 +50,6 @@ if(NOT COMMAND protobuf_generate_python) # before cmake 3.4, protobuf_genrerate
|
|
|
|
|
else()
|
|
|
|
|
set(_protobuf_include_path -I ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
if(DEFINED PROTOBUF_IMPORT_DIRS AND NOT DEFINED Protobuf_IMPORT_DIRS)
|
|
|
|
|
set(Protobuf_IMPORT_DIRS "${PROTOBUF_IMPORT_DIRS}")
|
|
|
|
|
endif()
|
|
|
|
@ -77,19 +74,17 @@ if(NOT COMMAND protobuf_generate_python) # before cmake 3.4, protobuf_genrerate
|
|
|
|
|
set(FIL_WE "${FIL_DIR}/${FIL_WE}")
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
list(APPEND ${SRCS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}_pb2.py")
|
|
|
|
|
add_custom_command(
|
|
|
|
|
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}_pb2.py"
|
|
|
|
|
COMMAND ${Protobuf_PROTOC_EXECUTABLE} --python_out ${CMAKE_CURRENT_BINARY_DIR} ${_protobuf_include_path} ${ABS_FIL}
|
|
|
|
|
DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE}
|
|
|
|
|
COMMAND ${PROTOBUF_PROTOC_EXECUTABLE} --python_out ${CMAKE_CURRENT_BINARY_DIR} ${_protobuf_include_path} ${ABS_FIL}
|
|
|
|
|
DEPENDS ${ABS_FIL} ${PROTOBUF_PROTOC_EXECUTABLE}
|
|
|
|
|
COMMENT "Running Python protocol buffer compiler on ${FIL}"
|
|
|
|
|
VERBATIM )
|
|
|
|
|
endforeach()
|
|
|
|
|
|
|
|
|
|
set(${SRCS} ${${SRCS}} PARENT_SCOPE)
|
|
|
|
|
endfunction()
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
# Print and set the protobuf library information,
|
|
|
|
|
# finish this cmake process and exit from this file.
|
|
|
|
@ -126,6 +121,7 @@ macro(PROMPT_PROTOBUF_LIB)
|
|
|
|
|
# FIND_Protobuf.cmake uses `Protobuf_PROTOC_EXECUTABLE`.
|
|
|
|
|
# make `protobuf_generate_cpp` happy.
|
|
|
|
|
SET(Protobuf_PROTOC_EXECUTABLE ${PROTOBUF_PROTOC_EXECUTABLE})
|
|
|
|
|
|
|
|
|
|
FOREACH(dep ${protobuf_DEPS})
|
|
|
|
|
ADD_DEPENDENCIES(protobuf ${dep})
|
|
|
|
|
ADD_DEPENDENCIES(protobuf_lite ${dep})
|
|
|
|
|