diff options
Diffstat (limited to 'gr-fft')
-rw-r--r-- | gr-fft/CMakeLists.txt | 7 | ||||
-rw-r--r-- | gr-fft/lib/CMakeLists.txt | 77 | ||||
-rw-r--r-- | gr-fft/swig/CMakeLists.txt | 14 |
3 files changed, 21 insertions, 77 deletions
diff --git a/gr-fft/CMakeLists.txt b/gr-fft/CMakeLists.txt index 4bf8263965..1da483f407 100644 --- a/gr-fft/CMakeLists.txt +++ b/gr-fft/CMakeLists.txt @@ -34,12 +34,7 @@ GR_REGISTER_COMPONENT("gr-fft" ENABLE_GR_FFT Boost_FOUND ENABLE_GNURADIO_RUNTIME ENABLE_GR_BLOCKS - FFTW3F_FOUND -) - -GR_SET_GLOBAL(GR_FFT_INCLUDE_DIRS - ${CMAKE_CURRENT_SOURCE_DIR}/lib - ${CMAKE_CURRENT_SOURCE_DIR}/include + FFTW3f_FOUND ) ######################################################################## diff --git a/gr-fft/lib/CMakeLists.txt b/gr-fft/lib/CMakeLists.txt index 9777d243df..7b8207665e 100644 --- a/gr-fft/lib/CMakeLists.txt +++ b/gr-fft/lib/CMakeLists.txt @@ -18,29 +18,9 @@ # Boston, MA 02110-1301, USA. ######################################################################## -# Setup the include and linker paths -######################################################################## -include_directories( - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_BINARY_DIR} - ${GR_FFT_INCLUDE_DIRS} - ${GNURADIO_RUNTIME_INCLUDE_DIRS} - ${VOLK_INCLUDE_DIRS} - ${Boost_INCLUDE_DIRS} - ${FFTW3F_INCLUDE_DIRS} -) - -link_directories(${Boost_LIBRARY_DIRS}) -link_directories(${FFTW3F_LIBRARY_DIRS}) - -if(ENABLE_GR_CTRLPORT) - ADD_DEFINITIONS(-DGR_CTRLPORT) -endif(ENABLE_GR_CTRLPORT) - -######################################################################## # Setup library ######################################################################## -list(APPEND fft_sources +add_library(gnuradio-fft fft.cc fft_vcc_fftw.cc fft_vfc_fftw.cc @@ -49,18 +29,24 @@ list(APPEND fft_sources window.cc ) +target_link_libraries(gnuradio-fft PUBLIC + gnuradio-runtime + fftw3f::fftw3f + ${GR_VOLK_LIB} +) + +target_include_directories(gnuradio-fft + PUBLIC + $<INSTALL_INTERFACE:include> + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include> + ) + if(ENABLE_GR_CTRLPORT) -list(APPEND fft_sources +target_sources(gnuradio-fft PRIVATE ctrlport_probe_psd_impl.cc ) endif(ENABLE_GR_CTRLPORT) -list(APPEND fft_libs - gnuradio-runtime - ${VOLK_LIBRARIES} - ${Boost_LIBRARIES} - ${FFTW3F_LIBRARIES} -) #Add Windows DLL resource file if using MSVC if(MSVC) @@ -71,40 +57,11 @@ if(MSVC) ${CMAKE_CURRENT_BINARY_DIR}/gnuradio-fft.rc @ONLY) - list(APPEND fft_sources + target_sources(gnuradio-fft PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/gnuradio-fft.rc ) endif(MSVC) -if(FFTW3F_THREADS_LIBRARIES) - list(APPEND fft_libs ${FFTW3F_THREADS_LIBRARIES}) - add_definitions("-DFFTW3F_THREADS") +if(BUILD_SHARED_LIBS) + GR_LIBRARY_FOO(gnuradio-fft FFTW3f) endif() - -add_library(gnuradio-fft SHARED ${fft_sources}) -target_link_libraries(gnuradio-fft ${fft_libs}) -GR_LIBRARY_FOO(gnuradio-fft) - -if(ENABLE_STATIC_LIBS) - if(ENABLE_GR_CTRLPORT) - # Remove GR_CTRLPORT set this target's definitions. - # Makes sure we don't try to use ControlPort stuff in source files - GET_DIRECTORY_PROPERTY(STATIC_DEFS COMPILE_DEFINITIONS) - list(REMOVE_ITEM STATIC_DEFS "GR_CTRLPORT") - SET_PROPERTY(DIRECTORY PROPERTY COMPILE_DEFINITIONS "${STATIC_DEFS}") - - # readd it to the target since we removed it from the directory-wide list. - SET_PROPERTY(TARGET gnuradio-fft APPEND PROPERTY COMPILE_DEFINITIONS "GR_CTRLPORT") - endif(ENABLE_GR_CTRLPORT) - - add_library(gnuradio-fft_static STATIC ${fft_sources}) - - if(NOT WIN32) - set_target_properties(gnuradio-fft_static - PROPERTIES OUTPUT_NAME gnuradio-fft) - endif(NOT WIN32) - - install(TARGETS gnuradio-fft_static - ARCHIVE DESTINATION lib${LIB_SUFFIX} # .lib file - ) -endif(ENABLE_STATIC_LIBS) diff --git a/gr-fft/swig/CMakeLists.txt b/gr-fft/swig/CMakeLists.txt index 67e34bbba8..e0e780a282 100644 --- a/gr-fft/swig/CMakeLists.txt +++ b/gr-fft/swig/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright 2012 Free Software Foundation, Inc. +# Copyright 2012,2019 Free Software Foundation, Inc. # # This file is part of GNU Radio # @@ -23,16 +23,8 @@ include(GrPython) include(GrSwig) -set(GR_SWIG_INCLUDE_DIRS - ${GR_FFT_INCLUDE_DIRS} - ${GNURADIO_RUNTIME_SWIG_INCLUDE_DIRS} - ${Boost_INCLUDE_DIRS} - ${FFTW3F_INCLUDE_DIRS} -) - -if(ENABLE_GR_CTRLPORT) - list(APPEND GR_SWIG_FLAGS "-DGR_CTRLPORT") -endif(ENABLE_GR_CTRLPORT) +set(GR_SWIG_INCLUDE_DIRS $<TARGET_PROPERTY:runtime_swig,INCLUDE_DIRECTORIES>) +set(GR_SWIG_TARGET_DEPS runtime_swig) set(GR_SWIG_DOC_FILE ${CMAKE_CURRENT_BINARY_DIR}/fft_swig_doc.i) set(GR_SWIG_DOC_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/../include/gnuradio/fft) |