diff options
author | Marcus Müller <marcus@hostalia.de> | 2017-01-23 15:11:06 +0100 |
---|---|---|
committer | Marcus Müller <marcus@hostalia.de> | 2017-01-23 15:11:06 +0100 |
commit | 6be29ebd2a1a7619f71a737697f730c4145515ec (patch) | |
tree | d44b06261c3ed0131d87e71efc6478cf383185d5 /gnuradio-runtime/python | |
parent | 6225e5d4d1edd67c896c6c43bdc584a078480a8d (diff) |
Helped CMake maintain a clear dependency tree
by converting EXECUTE_COMMAND directives to add_custom_command with
well-defined OUTPUT.
This is all that was necessary to make GNU Radio build with Ninja in
place of GNU Make.
Diffstat (limited to 'gnuradio-runtime/python')
-rw-r--r-- | gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt | 35 |
1 files changed, 19 insertions, 16 deletions
diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt b/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt index f40f253a72..be959467cf 100644 --- a/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt +++ b/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt @@ -50,21 +50,7 @@ GR_PYTHON_INSTALL( if(THRIFT_FOUND) -EXECUTE_PROCESS( - COMMAND ${THRIFT_BIN} --gen py -out ${CMAKE_CURRENT_BINARY_DIR}/ ${CMAKE_SOURCE_DIR}/gnuradio-runtime/lib/controlport/thrift/gnuradio.thrift - OUTPUT_VARIABLE THRIFT_PY_OUTPUT - ERROR_VARIABLE THRIFT_PY_ERROR - ) - -GR_PYTHON_INSTALL( - FILES - ${CMAKE_CURRENT_SOURCE_DIR}/RPCConnectionThrift.py - DESTINATION ${GR_PYTHON_DIR}/gnuradio/ctrlport/ - COMPONENT "runtime_python" -) - -GR_PYTHON_INSTALL( - FILES + list(APPEND thrift_targets ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/__init__.py ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/constants.py ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/ControlPort.py @@ -72,8 +58,25 @@ GR_PYTHON_INSTALL( ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/StreamReceiver.py ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/StreamReceiver-remote ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/ttypes.py + ) + add_custom_command( + DEPENDS ${CMAKE_SOURCE_DIR}/gnuradio-runtime/lib/controlport/thrift/gnuradio.thrift + OUTPUT ${thrift_targets} + COMMAND ${THRIFT_BIN} --gen py -out ${CMAKE_CURRENT_BINARY_DIR}/ ${CMAKE_SOURCE_DIR}/gnuradio-runtime/lib/controlport/thrift/gnuradio.thrift + ) + + GR_PYTHON_INSTALL( + FILES + ${CMAKE_CURRENT_SOURCE_DIR}/RPCConnectionThrift.py + DESTINATION ${GR_PYTHON_DIR}/gnuradio/ctrlport/ + COMPONENT "runtime_python" + ) + + GR_PYTHON_INSTALL( + FILES + ${thrift_targets} DESTINATION ${GR_PYTHON_DIR}/gnuradio/ctrlport/GNURadio COMPONENT "runtime_python" -) + ) endif(THRIFT_FOUND) |