1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2025-08-11 08:23:55 +00:00

Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next

This commit is contained in:
Javier Arribas 2019-06-18 12:16:39 +02:00
commit d74c86b645
8 changed files with 157 additions and 36 deletions

View File

@ -143,7 +143,7 @@ if(NOT ${THIS_IS_A_RELEASE})
find_package(Git) find_package(Git)
set_package_properties(Git PROPERTIES set_package_properties(Git PROPERTIES
URL "https://git-scm.com" URL "https://git-scm.com"
DESCRIPTION "A free and open source distributed version control system" DESCRIPTION "A free and open source distributed version control system (found: ${GIT_VERSION_STRING})"
PURPOSE "Manage version control, get MINOR_VERSION name for version number." PURPOSE "Manage version control, get MINOR_VERSION name for version number."
TYPE REQUIRED TYPE REQUIRED
) )
@ -610,17 +610,32 @@ set(GR_REQUIRED_COMPONENTS RUNTIME PMT BLOCKS FFT FILTER ANALOG)
find_package(UHD) find_package(UHD)
set_package_properties(UHD PROPERTIES set_package_properties(UHD PROPERTIES
URL "https://www.ettus.com/sdr-software/detail/usrp-hardware-driver" URL "https://www.ettus.com/sdr-software/detail/usrp-hardware-driver"
DESCRIPTION "USRP Hardware Driver"
PURPOSE "Used for communication with front-ends of the USRP family." PURPOSE "Used for communication with front-ends of the USRP family."
TYPE OPTIONAL TYPE OPTIONAL
) )
if(ENABLE_UHD) if(ENABLE_UHD)
if(NOT UHD_FOUND) if(NOT UHD_FOUND)
set(ENABLE_UHD OFF) set(ENABLE_UHD OFF)
set_package_properties(UHD PROPERTIES
DESCRIPTION "USRP Hardware Driver"
)
else() else()
set(GR_REQUIRED_COMPONENTS ${GR_REQUIRED_COMPONENTS} UHD) set(GR_REQUIRED_COMPONENTS ${GR_REQUIRED_COMPONENTS} UHD)
if(UHD_VERSION)
set_package_properties(UHD PROPERTIES
DESCRIPTION "USRP Hardware Driver (found: v${UHD_VERSION})"
)
else()
set_package_properties(UHD PROPERTIES
DESCRIPTION "USRP Hardware Driver"
)
endif() endif()
endif() endif()
else()
set_package_properties(UHD PROPERTIES
DESCRIPTION "USRP Hardware Driver"
)
endif()
find_package(GNURADIO) find_package(GNURADIO)
set_package_properties(GNURADIO PROPERTIES set_package_properties(GNURADIO PROPERTIES
@ -809,15 +824,15 @@ endif()
# VOLK - Vector-Optimized Library of Kernels # VOLK - Vector-Optimized Library of Kernels
################################################################################ ################################################################################
find_package(VOLK) find_package(VOLK)
set_package_properties(VOLK PROPERTIES
URL "http://libvolk.org"
DESCRIPTION "Vector-Optimized Library of Kernels"
PURPOSE "Provides an abstraction of optimized math routines targeting several SIMD processors."
TYPE REQUIRED
)
if(NOT VOLK_FOUND) if(NOT VOLK_FOUND)
message(FATAL_ERROR "*** VOLK is required to build gnss-sdr") message(FATAL_ERROR "*** VOLK is required to build gnss-sdr")
endif() endif()
set_package_properties(VOLK PROPERTIES
URL "http://libvolk.org"
DESCRIPTION "Vector-Optimized Library of Kernels (found: ${VOLK_VERSION})"
PURPOSE "Provides an abstraction of optimized math routines targeting several SIMD processors."
TYPE REQUIRED
)
@ -875,26 +890,32 @@ if(NOT VOLKGNSSSDR_FOUND)
message(FATAL_ERROR "six - python 2 and 3 compatibility library required to build VOLK_GNSSSDR") message(FATAL_ERROR "six - python 2 and 3 compatibility library required to build VOLK_GNSSSDR")
endif() endif()
if(Python3_FOUND)
set_package_properties(Python3 PROPERTIES set_package_properties(Python3 PROPERTIES
URL "https://www.python.org/" URL "https://www.python.org/"
DESCRIPTION "An interpreted, high-level, general-purpose programming language" DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${Python3_VERSION})"
PURPOSE "Required to build volk_gnsssdr." PURPOSE "Required to build volk_gnsssdr."
TYPE REQUIRED TYPE REQUIRED
) )
endif()
if(Python2_FOUND)
set_package_properties(Python2 PROPERTIES set_package_properties(Python2 PROPERTIES
URL "https://www.python.org/" URL "https://www.python.org/"
DESCRIPTION "An interpreted, high-level, general-purpose programming language" DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${Python2_VERSION})"
PURPOSE "Required to build volk_gnsssdr." PURPOSE "Required to build volk_gnsssdr."
TYPE REQUIRED TYPE REQUIRED
) )
endif()
if(PYTHONINTERP_FOUND)
set_package_properties(PythonInterp PROPERTIES set_package_properties(PythonInterp PROPERTIES
URL "https://www.python.org/" URL "https://www.python.org/"
DESCRIPTION "An interpreted, high-level, general-purpose programming language" DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${PYTHON_VERSION_STRING})"
PURPOSE "Required to build volk_gnsssdr." PURPOSE "Required to build volk_gnsssdr."
TYPE REQUIRED TYPE REQUIRED
) )
endif()
set(READ_ENVIRO "") set(READ_ENVIRO "")
if(ENABLE_PACKAGING) if(ENABLE_PACKAGING)
@ -1343,7 +1364,6 @@ endif()
find_package(Armadillo) find_package(Armadillo)
set_package_properties(Armadillo PROPERTIES set_package_properties(Armadillo PROPERTIES
URL "http://arma.sourceforge.net/" URL "http://arma.sourceforge.net/"
DESCRIPTION "C++ library for linear algebra and scientific computing"
PURPOSE "Used for matrix computations." PURPOSE "Used for matrix computations."
TYPE REQUIRED TYPE REQUIRED
) )
@ -1445,6 +1465,7 @@ if(NOT ARMADILLO_FOUND OR ENABLE_OWN_ARMADILLO)
INTERFACE_LINK_LIBRARIES "${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}armadillo${CMAKE_STATIC_LIBRARY_SUFFIX}" INTERFACE_LINK_LIBRARIES "${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}armadillo${CMAKE_STATIC_LIBRARY_SUFFIX}"
) )
set_package_properties(Armadillo PROPERTIES set_package_properties(Armadillo PROPERTIES
DESCRIPTION "C++ library for linear algebra and scientific computing"
PURPOSE "Armadillo ${GNSSSDR_ARMADILLO_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." PURPOSE "Armadillo ${GNSSSDR_ARMADILLO_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'."
) )
endif() endif()
@ -1503,7 +1524,7 @@ if(NOT GNUTLS_OPENSSL_LIBRARY)
find_package(OpenSSL) find_package(OpenSSL)
set_package_properties(OpenSSL PROPERTIES set_package_properties(OpenSSL PROPERTIES
URL "https://www.openssl.org" URL "https://www.openssl.org"
DESCRIPTION "Cryptography and SSL/TLS Toolkit" DESCRIPTION "Cryptography and SSL/TLS Toolkit (found: v${OPENSSL_VERSION})"
PURPOSE "Used for the SUPL protocol implementation." PURPOSE "Used for the SUPL protocol implementation."
TYPE REQUIRED TYPE REQUIRED
) )
@ -1540,7 +1561,6 @@ endif()
find_package(MATIO) find_package(MATIO)
set_package_properties(MATIO PROPERTIES set_package_properties(MATIO PROPERTIES
URL "https://github.com/tbeu/matio" URL "https://github.com/tbeu/matio"
DESCRIPTION "MATLAB MAT File I/O Library"
PURPOSE "Used to store processing block's results in MAT files readable from MATLAB/Octave." PURPOSE "Used to store processing block's results in MAT files readable from MATLAB/Octave."
TYPE REQUIRED TYPE REQUIRED
) )
@ -1550,6 +1570,9 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS
endif() endif()
message(STATUS " Matio v${GNSSSDR_MATIO_LOCAL_VERSION} will be downloaded and built automatically") message(STATUS " Matio v${GNSSSDR_MATIO_LOCAL_VERSION} will be downloaded and built automatically")
message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.")
set_package_properties(MATIO PROPERTIES
DESCRIPTION "MATLAB MAT File I/O Library"
)
find_package(ZLIB) find_package(ZLIB)
set_package_properties(ZLIB PROPERTIES set_package_properties(ZLIB PROPERTIES
URL "https://www.zlib.net/" URL "https://www.zlib.net/"
@ -1682,7 +1705,7 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS
) )
else() else()
set_package_properties(MATIO PROPERTIES set_package_properties(MATIO PROPERTIES
DESCRIPTION "MATLAB MAT File I/O Library (found: v.${MATIO_VERSION_STRING})" DESCRIPTION "MATLAB MAT File I/O Library (found: v${MATIO_VERSION_STRING})"
) )
endif() endif()
@ -1694,11 +1717,13 @@ endif()
find_package(PUGIXML) find_package(PUGIXML)
set_package_properties(PUGIXML PROPERTIES set_package_properties(PUGIXML PROPERTIES
URL "https://pugixml.org/" URL "https://pugixml.org/"
DESCRIPTION "Light-weight, simple and fast XML parser for C++"
PURPOSE "Used to handle Galileo almanac XML files published by the European GNSS Service Centre." PURPOSE "Used to handle Galileo almanac XML files published by the European GNSS Service Centre."
TYPE REQUIRED TYPE REQUIRED
) )
if(NOT PUGIXML_FOUND) if(NOT PUGIXML_FOUND)
set_package_properties(PUGIXML PROPERTIES
DESCRIPTION "Light-weight, simple and fast XML parser for C++"
)
message(STATUS " PugiXML v${GNSSSDR_PUGIXML_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") message(STATUS " PugiXML v${GNSSSDR_PUGIXML_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.")
set(PUGIXML_COMPILER -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}) set(PUGIXML_COMPILER -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER})
set(TOOLCHAIN_ARG "") set(TOOLCHAIN_ARG "")
@ -1748,6 +1773,16 @@ if(NOT PUGIXML_FOUND)
set_package_properties(PUGIXML PROPERTIES set_package_properties(PUGIXML PROPERTIES
PURPOSE "PugiXML v${GNSSSDR_PUGIXML_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." PURPOSE "PugiXML v${GNSSSDR_PUGIXML_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'."
) )
else()
if(PUGIXML_VERSION)
set_package_properties(PUGIXML PROPERTIES
DESCRIPTION "Light-weight, simple and fast XML parser for C++ (found: ${PUGIXML_VERSION})"
)
else()
set_package_properties(PUGIXML PROPERTIES
DESCRIPTION "Light-weight, simple and fast XML parser for C++"
)
endif()
endif() endif()
@ -1758,7 +1793,6 @@ endif()
find_package(Protobuf) find_package(Protobuf)
set_package_properties(Protobuf PROPERTIES set_package_properties(Protobuf PROPERTIES
URL "https://developers.google.com/protocol-buffers/" URL "https://developers.google.com/protocol-buffers/"
DESCRIPTION "Structured data serialization mechanism"
PURPOSE "Used to serialize output data in a way that can be read by other applications." PURPOSE "Used to serialize output data in a way that can be read by other applications."
TYPE REQUIRED TYPE REQUIRED
) )
@ -1816,6 +1850,10 @@ if(Protobuf_FOUND)
set_package_properties(Protobuf PROPERTIES set_package_properties(Protobuf PROPERTIES
DESCRIPTION "Structured data serialization mechanism (found: v${Protobuf_VERSION})" DESCRIPTION "Structured data serialization mechanism (found: v${Protobuf_VERSION})"
) )
else()
set_package_properties(Protobuf PROPERTIES
DESCRIPTION "Structured data serialization mechanism"
)
endif() endif()
if(Protobuf_FOUND AND CMAKE_CROSSCOMPILING) if(Protobuf_FOUND AND CMAKE_CROSSCOMPILING)
@ -2159,7 +2197,6 @@ endif()
find_package(GROSMOSDR) find_package(GROSMOSDR)
set_package_properties(GROSMOSDR PROPERTIES set_package_properties(GROSMOSDR PROPERTIES
URL "https://osmocom.org/projects/gr-osmosdr/wiki" URL "https://osmocom.org/projects/gr-osmosdr/wiki"
DESCRIPTION "osmocom GNU Radio blocks"
PURPOSE "Used for communication with OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based dongles, etc.)." PURPOSE "Used for communication with OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based dongles, etc.)."
TYPE OPTIONAL TYPE OPTIONAL
) )
@ -2167,7 +2204,19 @@ if(ENABLE_OSMOSDR)
if(GROSMOSDR_FOUND) if(GROSMOSDR_FOUND)
message(STATUS "The driver for OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based dongles, etc.) will be compiled.") message(STATUS "The driver for OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based dongles, etc.) will be compiled.")
message(STATUS " You can disable it with 'cmake -DENABLE_OSMOSDR=OFF ..'") message(STATUS " You can disable it with 'cmake -DENABLE_OSMOSDR=OFF ..'")
if(GROSMOSDR_VERSION)
set_package_properties(GROSMOSDR PROPERTIES
DESCRIPTION "osmocom GNU Radio blocks (found: ${GROSMOSDR_VERSION})"
)
else() else()
set_package_properties(GROSMOSDR PROPERTIES
DESCRIPTION "osmocom GNU Radio blocks"
)
endif()
else()
set_package_properties(GROSMOSDR PROPERTIES
DESCRIPTION "osmocom GNU Radio blocks"
)
if(ENABLE_PACKAGING) if(ENABLE_PACKAGING)
message(WARNING "gr-osmosdr has not been found. Source blocks depending on it will NOT be built.") message(WARNING "gr-osmosdr has not been found. Source blocks depending on it will NOT be built.")
else() else()
@ -2175,6 +2224,9 @@ if(ENABLE_OSMOSDR)
endif() endif()
endif() endif()
else() else()
set_package_properties(GROSMOSDR PROPERTIES
DESCRIPTION "osmocom GNU Radio blocks"
)
message(STATUS "The (optional) driver for OsmoSDR and related front-ends is not enabled.") message(STATUS "The (optional) driver for OsmoSDR and related front-ends is not enabled.")
message(STATUS " Enable it with 'cmake -DENABLE_OSMOSDR=ON ..' to add support for OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based USB dongles, etc.)") message(STATUS " Enable it with 'cmake -DENABLE_OSMOSDR=ON ..' to add support for OsmoSDR and other front-ends (HackRF, bladeRF, Realtek's RTL2832U-based USB dongles, etc.)")
endif() endif()
@ -2188,10 +2240,19 @@ endif()
find_package(GRIIO) find_package(GRIIO)
set_package_properties(GRIIO PROPERTIES set_package_properties(GRIIO PROPERTIES
URL "https://github.com/analogdevicesinc/gr-iio" URL "https://github.com/analogdevicesinc/gr-iio"
DESCRIPTION "IIO blocks for GNU Radio"
PURPOSE "Used for communication with PlutoSDR and FMCOMMS devices." PURPOSE "Used for communication with PlutoSDR and FMCOMMS devices."
TYPE OPTIONAL TYPE OPTIONAL
) )
if(GRIIO_FOUND AND GRIIO_VERSION)
set_package_properties(GRIIO PROPERTIES
DESCRIPTION "IIO blocks for GNU Radio (found: v${GRIIO_VERSION})"
)
else()
set_package_properties(GRIIO PROPERTIES
DESCRIPTION "IIO blocks for GNU Radio"
)
endif()
##################################################################### #####################################################################
@ -2202,10 +2263,18 @@ set_package_properties(GRIIO PROPERTIES
find_package(LIBIIO) find_package(LIBIIO)
set_package_properties(LIBIIO PROPERTIES set_package_properties(LIBIIO PROPERTIES
URL "https://github.com/analogdevicesinc/libiio" URL "https://github.com/analogdevicesinc/libiio"
DESCRIPTION "A library for interfacing with Linux IIO devices"
PURPOSE "Used for communication with the AD9361 chipset." PURPOSE "Used for communication with the AD9361 chipset."
TYPE OPTIONAL TYPE OPTIONAL
) )
if(LIBIIO_FOUND AND LIBIIO_VERSION)
set_package_properties(LIBIIO PROPERTIES
DESCRIPTION "A library for interfacing with Linux IIO devices (found: v${LIBIIO_VERSION})"
)
else()
set_package_properties(LIBIIO PROPERTIES
DESCRIPTION "A library for interfacing with Linux IIO devices"
)
endif()
############################################## ##############################################

View File

@ -92,6 +92,10 @@ find_library(IIO_LIBRARIES
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(GRIIO DEFAULT_MSG IIO_LIBRARIES IIO_INCLUDE_DIRS) find_package_handle_standard_args(GRIIO DEFAULT_MSG IIO_LIBRARIES IIO_INCLUDE_DIRS)
if(PC_IIO_VERSION)
set(GRIIO_VERSION ${PC_IIO_VERSION})
endif()
if(GRIIO_FOUND AND NOT TARGET Gnuradio::iio) if(GRIIO_FOUND AND NOT TARGET Gnuradio::iio)
add_library(Gnuradio::iio SHARED IMPORTED) add_library(Gnuradio::iio SHARED IMPORTED)
set_target_properties(Gnuradio::iio PROPERTIES set_target_properties(Gnuradio::iio PROPERTIES

View File

@ -95,6 +95,10 @@ find_library(GROSMOSDR_LIBRARIES
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(GROSMOSDR DEFAULT_MSG GROSMOSDR_LIBRARIES GROSMOSDR_INCLUDE_DIR) find_package_handle_standard_args(GROSMOSDR DEFAULT_MSG GROSMOSDR_LIBRARIES GROSMOSDR_INCLUDE_DIR)
if(GROSMOSDR_PKG_VERSION)
set(GROSMOSDR_VERSION ${GROSMOSDR_PKG_VERSION})
endif()
if(GROSMOSDR_FOUND AND NOT TARGET Gnuradio::osmosdr) if(GROSMOSDR_FOUND AND NOT TARGET Gnuradio::osmosdr)
add_library(Gnuradio::osmosdr SHARED IMPORTED) add_library(Gnuradio::osmosdr SHARED IMPORTED)
set_target_properties(Gnuradio::osmosdr PROPERTIES set_target_properties(Gnuradio::osmosdr PROPERTIES

View File

@ -85,6 +85,10 @@ endif()
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LIBIIO DEFAULT_MSG LIBIIO_LIBRARIES LIBIIO_INCLUDE_DIRS) find_package_handle_standard_args(LIBIIO DEFAULT_MSG LIBIIO_LIBRARIES LIBIIO_INCLUDE_DIRS)
if(PC_LIBIIO_VERSION)
set(LIBIIO_VERSION ${PC_LIBIIO_VERSION})
endif()
if(LIBIIO_FOUND AND NOT TARGET Iio::iio) if(LIBIIO_FOUND AND NOT TARGET Iio::iio)
add_library(Iio::iio SHARED IMPORTED) add_library(Iio::iio SHARED IMPORTED)
set_target_properties(Iio::iio PROPERTIES set_target_properties(Iio::iio PROPERTIES

View File

@ -42,6 +42,7 @@ find_path(LIBOSMOSDR_INCLUDE_DIR NAMES osmosdr.h
/usr/local/include /usr/local/include
${LIBOSMOSDR_ROOT}/include ${LIBOSMOSDR_ROOT}/include
$ENV{LIBOSMOSDR_ROOT}/include $ENV{LIBOSMOSDR_ROOT}/include
${LIBOSMOSDR_PKG_INCLUDEDIR}
) )
find_library(LIBOSMOSDR_LIBRARIES NAMES osmosdr find_library(LIBOSMOSDR_LIBRARIES NAMES osmosdr
@ -77,6 +78,7 @@ find_library(LIBOSMOSDR_LIBRARIES NAMES osmosdr
$ENV{LIBOSMOSDR_ROOT}/lib $ENV{LIBOSMOSDR_ROOT}/lib
${LIBOSMOSDR_ROOT}/lib64 ${LIBOSMOSDR_ROOT}/lib64
$ENV{LIBOSMOSDR_ROOT}/lib64 $ENV{LIBOSMOSDR_ROOT}/lib64
${LIBOSMOSDR_PKG_LIBDIR}
) )
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)

View File

@ -27,6 +27,9 @@
# Pugixml::pugixml # Pugixml::pugixml
# #
include(FindPkgConfig)
pkg_check_modules(PC_PUGIXML pugixml QUIET)
find_path(PUGIXML_INCLUDE_DIR find_path(PUGIXML_INCLUDE_DIR
NAMES pugixml.hpp NAMES pugixml.hpp
PATHS ${PUGIXML_HOME}/include PATHS ${PUGIXML_HOME}/include
@ -38,6 +41,7 @@ find_path(PUGIXML_INCLUDE_DIR
$ENV{PUGIXML_ROOT}/include $ENV{PUGIXML_ROOT}/include
${PUGIXML_ROOT}/include/pugixml-1.9 ${PUGIXML_ROOT}/include/pugixml-1.9
$ENV{PUGIXML_ROOT}/include/pugixml-1.9 $ENV{PUGIXML_ROOT}/include/pugixml-1.9
${PC_PUGIXML_INCLUDEDIR}
) )
find_library(PUGIXML_LIBRARY find_library(PUGIXML_LIBRARY
@ -67,6 +71,7 @@ find_library(PUGIXML_LIBRARY
$ENV{PUGIXML_ROOT}/lib/pugixml-1.9 $ENV{PUGIXML_ROOT}/lib/pugixml-1.9
${PUGIXML_ROOT}/lib64/pugixml-1.9 ${PUGIXML_ROOT}/lib64/pugixml-1.9
$ENV{PUGIXML_ROOT}/lib64/pugixml-1.9 $ENV{PUGIXML_ROOT}/lib64/pugixml-1.9
${PC_PUGIXML_LIBDIR}
) )
# Support the REQUIRED and QUIET arguments, and set PUGIXML_FOUND if found. # Support the REQUIRED and QUIET arguments, and set PUGIXML_FOUND if found.
@ -80,6 +85,9 @@ if(PUGIXML_FOUND)
message(STATUS "PugiXML include = ${PUGIXML_INCLUDE_DIR}") message(STATUS "PugiXML include = ${PUGIXML_INCLUDE_DIR}")
message(STATUS "PugiXML library = ${PUGIXML_LIBRARY}") message(STATUS "PugiXML library = ${PUGIXML_LIBRARY}")
endif() endif()
if(PC_PUGIXML_VERSION)
set(PUGIXML_VERSION ${PC_PUGIXML_VERSION})
endif()
else() else()
message(STATUS "PugiXML not found.") message(STATUS "PugiXML not found.")
endif() endif()

View File

@ -77,6 +77,20 @@ find_library(UHD_LIBRARIES
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(UHD DEFAULT_MSG UHD_LIBRARIES UHD_INCLUDE_DIRS) find_package_handle_standard_args(UHD DEFAULT_MSG UHD_LIBRARIES UHD_INCLUDE_DIRS)
if(PC_UHD_VERSION)
set(UHD_VERSION ${PC_UHD_VERSION})
endif()
if(NOT PC_UHD_VERSION)
list(GET UHD_LIBRARIES 0 FIRST_DIR)
get_filename_component(UHD_LIBRARIES_DIR ${FIRST_DIR} DIRECTORY)
if(EXISTS ${UHD_LIBRARIES_DIR}/cmake/uhd/UHDConfigVersion.cmake)
include(${UHD_LIBRARIES_DIR}/cmake/uhd/UHDConfigVersion.cmake)
endif()
if(PACKAGE_VERSION)
set(UHD_VERSION ${PACKAGE_VERSION})
endif()
endif()
if(UHD_FOUND AND NOT TARGET Uhd::uhd) if(UHD_FOUND AND NOT TARGET Uhd::uhd)
add_library(Uhd::uhd SHARED IMPORTED) add_library(Uhd::uhd SHARED IMPORTED)
set_target_properties(Uhd::uhd PROPERTIES set_target_properties(Uhd::uhd PROPERTIES

View File

@ -25,7 +25,7 @@
######################################################################## ########################################################################
include(FindPkgConfig) include(FindPkgConfig)
pkg_check_modules(PC_VOLK volk) pkg_check_modules(PC_VOLK volk QUIET)
find_path(VOLK_INCLUDE_DIRS find_path(VOLK_INCLUDE_DIRS
NAMES volk/volk.h NAMES volk/volk.h
@ -78,6 +78,22 @@ find_library(VOLK_LIBRARIES
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(VOLK DEFAULT_MSG VOLK_LIBRARIES VOLK_INCLUDE_DIRS) find_package_handle_standard_args(VOLK DEFAULT_MSG VOLK_LIBRARIES VOLK_INCLUDE_DIRS)
if(PC_VOLK_VERSION)
set(VOLK_VERSION ${PC_VOLK_VERSION})
endif()
if(NOT VOLK_VERSION)
list(GET VOLK_LIBRARIES 0 FIRST_DIR)
get_filename_component(VOLK_LIB_DIR ${FIRST_DIR} DIRECTORY)
if(EXISTS ${VOLK_LIB_DIR}/cmake/volk/VolkConfigVersion.cmake)
include(${VOLK_LIB_DIR}/cmake/volk/VolkConfigVersion.cmake)
endif()
if(PACKAGE_VERSION)
set(VOLK_VERSION ${PACKAGE_VERSION})
endif()
endif()
mark_as_advanced(VOLK_LIBRARIES VOLK_INCLUDE_DIRS VOLK_VERSION) mark_as_advanced(VOLK_LIBRARIES VOLK_INCLUDE_DIRS VOLK_VERSION)
if(VOLK_FOUND AND NOT TARGET Volk::volk) if(VOLK_FOUND AND NOT TARGET Volk::volk)