diff options
author | Tom Rondeau <tom@trondeau.com> | 2015-02-20 17:14:03 -0500 |
---|---|---|
committer | Tom Rondeau <tom@trondeau.com> | 2015-04-02 15:38:56 -0700 |
commit | 1875c3381bc4e2d2468f9dfe44557cd2a94d5e1c (patch) | |
tree | a1bb1f3374735d59abf94fa877b8521d15613591 /gnuradio-runtime/python/gnuradio | |
parent | 61864555b687d918b1bd4772fa12c83a29e78abf (diff) |
controlport: Addes a FindThrift cmake module to find the Thrift headers, libraries, and Python files.
Also adds a ENABLE_CTRLPORT_THRIFT option to cmake so we can turn off Thrift even if it's found installed on the system. We will do this for any backend to provide maximum control over what is used and not used.
This changes how the RPC selector mechanism works; we now set the available RPCs in the config.h file instead of just by hand in the rpcserver_selector.h code.
Finally, cmake displays the backend as a submodule of gr-ctrlport when summarizing what is being built for GNU Radio so we know which backends are or are not being used.
Diffstat (limited to 'gnuradio-runtime/python/gnuradio')
3 files changed, 27 insertions, 4 deletions
diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt b/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt index d208763a90..69a61076dc 100644 --- a/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt +++ b/gnuradio-runtime/python/gnuradio/ctrlport/CMakeLists.txt @@ -20,6 +20,16 @@ ######################################################################## include(GrPython) +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 + ) + +endif(THRIFT_FOUND) + install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/icon.png @@ -44,3 +54,17 @@ GR_PYTHON_INSTALL( PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT "runtime_python" ) + +# Install the files compiled from gnuradio.thrift +GR_PYTHON_INSTALL( + FILES + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/__init__.py + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/constants.py + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/ControlPort.py + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/ControlPort-remote + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/StreamReceiver.py + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/StreamReceiver-remote + ${CMAKE_CURRENT_BINARY_DIR}/GNURadio/ttypes.py + DESTINATION ${GR_PYTHON_DIR}/gnuradio/ctrlport/GNURadio + COMPONENT "runtime_python" +) diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py b/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py index 5d75197966..661705d613 100644 --- a/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py +++ b/gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py @@ -23,8 +23,7 @@ from gnuradio import gr from gnuradio import blocks from gnuradio import filter -#from gnuradio.ctrlport import GNURadio -from gnuradio.ControlPort import GNURadio +from gnuradio.ctrlport import GNURadio import sys, time, struct try: diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/ThriftRadioClient.py b/gnuradio-runtime/python/gnuradio/ctrlport/ThriftRadioClient.py index 6e6faec4c8..eca49dca76 100644 --- a/gnuradio-runtime/python/gnuradio/ctrlport/ThriftRadioClient.py +++ b/gnuradio-runtime/python/gnuradio/ctrlport/ThriftRadioClient.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -# Copyright 2012 Free Software Foundation, Inc. +# Copyright 2015 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -25,7 +25,7 @@ from thrift.transport import TSocket from thrift.transport import TTransport from thrift.protocol import TBinaryProtocol #from ControlPort.GNURadio import ControlPort -from gnuradio.ControlPort.GNURadio import ControlPort +from gnuradio.ctrlport.GNURadio import ControlPort import sys class ThriftRadioClient: |