diff --git a/.gitmodules b/.gitmodules index f1637928e40..e69de29bb2d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,4 +0,0 @@ -[submodule "volk"] - path = volk - url = https://github.com/gnuradio/volk.git - branch = master diff --git a/CMakeLists.txt b/CMakeLists.txt index 200a07f11a4..0a58e966a12 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -55,6 +55,7 @@ set(GCC_MIN_VERSION "4.8.4") set(CLANG_MIN_VERSION "3.4.0") set(APPLECLANG_MIN_VERSION "500") set(MSVC_MIN_VERSION "1800") +set(VOLK_MIN_VERSION "2.1.0") # Enable generation of compile_commands.json for code completion engines set(CMAKE_EXPORT_COMPILE_COMMANDS ON) @@ -368,67 +369,19 @@ endif() ######################################################################## -# Setup volk as a subproject +# Detect and configure VOLK ######################################################################## message(STATUS "") message(STATUS "Configuring VOLK support...") +find_package(Volk ${VOLK_MIN_VERSION} REQUIRED) +message(STATUS " Found VOLK:") +message(STATUS " * Version: ${VOLK_VERSION}") +message(STATUS " * Libraries: ${VOLK_LIBRARIES}") +message(STATUS " * Includes: ${VOLK_INCLUDE_DIRS}") -OPTION(ENABLE_INTERNAL_VOLK "Enable internal VOLK only" ON) -UNSET(Volk_FOUND) -if(NOT ENABLE_INTERNAL_VOLK) - find_package(Volk) - set(GR_VOLK_LIB "Volk::volk") - if(NOT Volk_FOUND) - message(STATUS " External VOLK not found; checking internal.") - endif() -endif() -if(NOT Volk_FOUND) - find_file(INTREE_VOLK_FOUND - volk/volk_common.h - PATHS ${CMAKE_CURRENT_SOURCE_DIR}/volk/include - NO_DEFAULT_PATH - NO_CMAKE_FIND_ROOT_PATH - ) - - if(NOT INTREE_VOLK_FOUND) - message(STATUS " VOLK submodule is not checked out.") - message(STATUS " To check out the VOLK submodule, use:") - message(STATUS " git pull --recurse-submodules=on") - message(STATUS " git submodule update --init") - if(ENABLE_INTERNAL_VOLK) - message(STATUS " External VOLK disabled.") - endif() - message(STATUS " Override with -DENABLE_INTERNAL_VOLK=ON/OFF") - message(STATUS "") - message(FATAL_ERROR "VOLK required but not found.") - endif() - - add_subdirectory(volk) - # if the above command returns, then VOLK is enabled - - include(GrComponent) - GR_REGISTER_COMPONENT("volk" ENABLE_VOLK) - - SET(VOLK_INCLUDE_DIRS - ${CMAKE_CURRENT_SOURCE_DIR}/volk/include - ${CMAKE_CURRENT_BINARY_DIR}/volk/include - ) - - set(GR_VOLK_LIB "volk") - - SET(VOLK_INSTALL_LIBRARY_DIR ${CMAKE_INSTALL_PREFIX}/lib) - SET(VOLK_INSTALL_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include) -else() - message(STATUS " An external VOLK has been found and will be used for build.") - SET(ENABLE_VOLK TRUE) - - get_filename_component(VOLK_INSTALL_LIBRARY_DIR "${VOLK_LIBRARIES}" DIRECTORY) - SET(VOLK_INSTALL_INCLUDE_DIR ${VOLK_INCLUDE_DIRS}) -endif(NOT Volk_FOUND) - -message(STATUS " Override with -DENABLE_INTERNAL_VOLK=ON/OFF") - -# Handle logging +######################################################################## +# Configure Log4CPP +######################################################################## find_package(LOG4CPP REQUIRED) ######################################################################## diff --git a/docs/doxygen/Doxyfile.in b/docs/doxygen/Doxyfile.in index ccb7c4313c7..c220bf2409d 100644 --- a/docs/doxygen/Doxyfile.in +++ b/docs/doxygen/Doxyfile.in @@ -174,11 +174,7 @@ STRIP_FROM_INC_PATH = @CMAKE_SOURCE_DIR@/gnuradio-runtime/include \ @CMAKE_SOURCE_DIR@/gr-wavelet/include \ @CMAKE_BINARY_DIR@/gr-wavelet/include \ @CMAKE_SOURCE_DIR@/gr-zeromq/include \ - @CMAKE_BINARY_DIR@/gr-zeromq/include \ - @CMAKE_SOURCE_DIR@/volk/include \ - @CMAKE_BINARY_DIR@/volk/include \ - @CMAKE_SOURCE_DIR@/volk/tmpl \ - @CMAKE_BINARY_DIR@/volk/tmpl + @CMAKE_BINARY_DIR@/gr-zeromq/include # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter # (but less readable) file names. This can be useful if your file system @@ -726,9 +722,7 @@ RECURSIVE = YES # Note that relative paths are relative to the directory from which doxygen is # run. -EXCLUDE = @abs_top_srcdir@/volk \ - @abs_top_builddir@/volk \ - @abs_top_builddir@/cmake/msvc \ +EXCLUDE = @abs_top_builddir@/cmake/msvc \ @abs_top_builddir@/docs/doxygen/html \ @abs_top_builddir@/docs/doxygen/xml \ @abs_top_builddir@/docs/doxygen/other/doxypy.py \ @@ -793,10 +787,7 @@ EXCLUDE = @abs_top_srcdir@/volk \ @abs_top_srcdir@/gr-wavelet/lib \ @abs_top_builddir@/gr-wavelet/lib \ @abs_top_srcdir@/gr-zeromq/lib \ - @abs_top_builddir@/gr-zeromq/lib \ - @abs_top_srcdir@/volk/cmake/msvc \ - @abs_top_builddir@/volk/cmake/msvc \ - @abs_top_srcdir@/volk/kernels/volk/volk_8u_conv_k7_r2puppet_8u.h + @abs_top_builddir@/gr-zeromq/lib # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # directories that are symbolic links (a Unix file system feature) are excluded diff --git a/gnuradio-runtime/CMakeLists.txt b/gnuradio-runtime/CMakeLists.txt index 0e20d42f678..c03b5ffe4da 100644 --- a/gnuradio-runtime/CMakeLists.txt +++ b/gnuradio-runtime/CMakeLists.txt @@ -25,7 +25,6 @@ GR_CHECK_LINUX_SCHED_AVAIL() include(GrComponent) GR_REGISTER_COMPONENT("gnuradio-runtime" ENABLE_GNURADIO_RUNTIME Boost_FOUND - ENABLE_VOLK PYTHONINTERP_FOUND MPLIB_FOUND LOG4CPP_FOUND diff --git a/gnuradio-runtime/lib/CMakeLists.txt b/gnuradio-runtime/lib/CMakeLists.txt index a56c68cfd7f..ee89f363cea 100644 --- a/gnuradio-runtime/lib/CMakeLists.txt +++ b/gnuradio-runtime/lib/CMakeLists.txt @@ -188,7 +188,7 @@ endif(ENABLE_GR_CTRLPORT) target_link_libraries(gnuradio-runtime PUBLIC gnuradio-pmt - ${GR_VOLK_LIB} + Volk::volk Boost::program_options Boost::filesystem Boost::system diff --git a/gr-analog/CMakeLists.txt b/gr-analog/CMakeLists.txt index 5d875673ac7..36ea60daf7b 100644 --- a/gr-analog/CMakeLists.txt +++ b/gr-analog/CMakeLists.txt @@ -16,7 +16,6 @@ include(GrBoost) include(GrComponent) GR_REGISTER_COMPONENT("gr-analog" ENABLE_GR_ANALOG Boost_FOUND - ENABLE_VOLK ENABLE_GNURADIO_RUNTIME ENABLE_GR_BLOCKS ENABLE_GR_FFT diff --git a/gr-blocks/CMakeLists.txt b/gr-blocks/CMakeLists.txt index 71f1fdc05c1..cb99267ae67 100644 --- a/gr-blocks/CMakeLists.txt +++ b/gr-blocks/CMakeLists.txt @@ -16,7 +16,6 @@ include(GrBoost) include(GrComponent) GR_REGISTER_COMPONENT("gr-blocks" ENABLE_GR_BLOCKS Boost_FOUND - ENABLE_VOLK ENABLE_GNURADIO_RUNTIME ) diff --git a/gr-blocks/lib/CMakeLists.txt b/gr-blocks/lib/CMakeLists.txt index 8c9dd9aa6a7..45cf72b579f 100644 --- a/gr-blocks/lib/CMakeLists.txt +++ b/gr-blocks/lib/CMakeLists.txt @@ -175,9 +175,9 @@ add_library(gnuradio-blocks ) target_link_libraries(gnuradio-blocks - gnuradio-runtime - ${GR_VOLK_LIB} - ) + gnuradio-runtime + Volk::volk +) target_include_directories(gnuradio-blocks PUBLIC diff --git a/gr-channels/CMakeLists.txt b/gr-channels/CMakeLists.txt index a1e7d6a54c3..bf5583ee685 100644 --- a/gr-channels/CMakeLists.txt +++ b/gr-channels/CMakeLists.txt @@ -16,7 +16,6 @@ include(GrBoost) include(GrComponent) GR_REGISTER_COMPONENT("gr-channels" ENABLE_GR_CHANNELS - ENABLE_VOLK Boost_FOUND ENABLE_GNURADIO_RUNTIME ENABLE_GR_BLOCKS diff --git a/gr-digital/CMakeLists.txt b/gr-digital/CMakeLists.txt index db7ef03c3d3..93f30e84103 100644 --- a/gr-digital/CMakeLists.txt +++ b/gr-digital/CMakeLists.txt @@ -16,7 +16,6 @@ include(GrBoost) include(GrComponent) GR_REGISTER_COMPONENT("gr-digital" ENABLE_GR_DIGITAL Boost_FOUND - ENABLE_VOLK ENABLE_GNURADIO_RUNTIME ENABLE_GR_FFT ENABLE_GR_FILTER diff --git a/gr-digital/lib/CMakeLists.txt b/gr-digital/lib/CMakeLists.txt index 2ab200c0233..b44662994f2 100644 --- a/gr-digital/lib/CMakeLists.txt +++ b/gr-digital/lib/CMakeLists.txt @@ -98,7 +98,7 @@ target_link_libraries(gnuradio-digital PUBLIC gnuradio-blocks gnuradio-analog Boost::boost - ${GR_VOLK_LIB} + Volk::volk ) diff --git a/gr-dtv/CMakeLists.txt b/gr-dtv/CMakeLists.txt index fa82e3f83dd..78fa4e0ba23 100644 --- a/gr-dtv/CMakeLists.txt +++ b/gr-dtv/CMakeLists.txt @@ -21,7 +21,6 @@ GR_REGISTER_COMPONENT("gr-dtv" ENABLE_GR_DTV ENABLE_GR_ANALOG ENABLE_GR_FILTER ENABLE_GR_FEC - ENABLE_VOLK ) SET(GR_PKG_DTV_EXAMPLES_DIR ${GR_PKG_DATA_DIR}/examples/dtv) diff --git a/gr-dtv/lib/CMakeLists.txt b/gr-dtv/lib/CMakeLists.txt index 56e28811a1c..7f26570e3ad 100644 --- a/gr-dtv/lib/CMakeLists.txt +++ b/gr-dtv/lib/CMakeLists.txt @@ -73,7 +73,7 @@ target_link_libraries(gnuradio-dtv PUBLIC gnuradio-analog gnuradio-filter gnuradio-fec - ${GR_VOLK_LIB} + Volk::volk ) target_include_directories(gnuradio-dtv diff --git a/gr-fec/CMakeLists.txt b/gr-fec/CMakeLists.txt index e4618c562ee..6b29853f8f6 100644 --- a/gr-fec/CMakeLists.txt +++ b/gr-fec/CMakeLists.txt @@ -18,7 +18,6 @@ include(GrComponent) find_package(GSL) GR_REGISTER_COMPONENT("gr-fec" ENABLE_GR_FEC - ENABLE_VOLK Boost_FOUND ENABLE_GNURADIO_RUNTIME ENABLE_GR_BLOCKS diff --git a/gr-fft/CMakeLists.txt b/gr-fft/CMakeLists.txt index 5c55f6f6ab3..ecd394b8bbd 100644 --- a/gr-fft/CMakeLists.txt +++ b/gr-fft/CMakeLists.txt @@ -18,7 +18,6 @@ find_package(FFTW3f) include(GrComponent) GR_REGISTER_COMPONENT("gr-fft" ENABLE_GR_FFT - ENABLE_VOLK Boost_FOUND ENABLE_GNURADIO_RUNTIME ENABLE_GR_BLOCKS diff --git a/gr-fft/lib/CMakeLists.txt b/gr-fft/lib/CMakeLists.txt index 54a8c3add9a..e8ec301eabe 100644 --- a/gr-fft/lib/CMakeLists.txt +++ b/gr-fft/lib/CMakeLists.txt @@ -20,7 +20,7 @@ add_library(gnuradio-fft target_link_libraries(gnuradio-fft PUBLIC gnuradio-runtime fftw3f::fftw3f - ${GR_VOLK_LIB} + Volk::volk ) target_include_directories(gnuradio-fft diff --git a/gr-filter/CMakeLists.txt b/gr-filter/CMakeLists.txt index a35c6f3b14c..b49d302de1b 100644 --- a/gr-filter/CMakeLists.txt +++ b/gr-filter/CMakeLists.txt @@ -16,7 +16,6 @@ include(GrBoost) include(GrComponent) GR_REGISTER_COMPONENT("gr-filter" ENABLE_GR_FILTER - ENABLE_VOLK Boost_FOUND ENABLE_GNURADIO_RUNTIME ENABLE_GR_FFT diff --git a/gr-filter/lib/CMakeLists.txt b/gr-filter/lib/CMakeLists.txt index 6351b7b0260..69a56dd2c5e 100644 --- a/gr-filter/lib/CMakeLists.txt +++ b/gr-filter/lib/CMakeLists.txt @@ -59,7 +59,7 @@ target_link_libraries(gnuradio-filter PUBLIC gnuradio-runtime gnuradio-fft gnuradio-blocks - ${GR_VOLK_LIB} + Volk::volk ) target_include_directories(gnuradio-filter diff --git a/gr-qtgui/CMakeLists.txt b/gr-qtgui/CMakeLists.txt index 77976a673b3..5efc3221b87 100644 --- a/gr-qtgui/CMakeLists.txt +++ b/gr-qtgui/CMakeLists.txt @@ -35,7 +35,6 @@ GR_REGISTER_COMPONENT("gr-qtgui" ENABLE_GR_QTGUI Boost_FOUND QT_FOUND QWT_FOUND - ENABLE_VOLK ENABLE_GNURADIO_RUNTIME ENABLE_GR_FFT ENABLE_GR_FILTER diff --git a/gr-qtgui/lib/CMakeLists.txt b/gr-qtgui/lib/CMakeLists.txt index 3936401ac2d..7ab6fd1ab6d 100644 --- a/gr-qtgui/lib/CMakeLists.txt +++ b/gr-qtgui/lib/CMakeLists.txt @@ -67,7 +67,7 @@ target_link_libraries(gnuradio-qtgui PUBLIC gnuradio-runtime gnuradio-fft gnuradio-filter - ${GR_VOLK_LIB} + Volk::volk qwt::qwt Qt5::Widgets ) diff --git a/volk b/volk deleted file mode 160000 index aae9fed1cd1..00000000000 --- a/volk +++ /dev/null @@ -1 +0,0 @@ -Subproject commit aae9fed1cd15f0f1695d5adad04c65cf8bbd3cc0