diff --git a/CMakeLists.txt b/CMakeLists.txt index a995094f3..8717574d5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2242,7 +2242,6 @@ else() endif() find_package(TELEORBIT) set_package_properties(TELEORBIT PROPERTIES - DESCRIPTION "The Teleorbit's Flexiband GNU Radio block." PURPOSE "Used for communication with the Flexiband front-end." TYPE OPTIONAL ) diff --git a/cmake/Modules/FindLOG4CPP.cmake b/cmake/Modules/FindLOG4CPP.cmake index 81de00826..fdc1acd27 100644 --- a/cmake/Modules/FindLOG4CPP.cmake +++ b/cmake/Modules/FindLOG4CPP.cmake @@ -30,6 +30,10 @@ if(NOT COMMAND feature_summary) include(FeatureSummary) endif() +set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE) +include(FindPkgConfig) +pkg_check_modules(PC_LOG4CPP log4cpp QUIET) + if(LOG4CPP_INCLUDE_DIR) # Already in cache, be silent set(LOG4CPP_FIND_QUIETLY TRUE) @@ -41,6 +45,7 @@ find_path(LOG4CPP_INCLUDE_DIR log4cpp/Category.hh /usr/include ${LOG4CPP_ROOT}/include $ENV{LOG4CPP_ROOT}/include + ${PC_LOG4CPP_INCLUDEDIR} ) if(LOG4CPP_INCLUDE_DIR) @@ -61,7 +66,7 @@ set(LOG4CPP_NAMES log4cpp) find_library(LOG4CPP_LIBRARY NAMES ${LOG4CPP_NAMES} HINTS $ENV{GNURADIO_RUNTIME_DIR}/lib - ${PC_LIBDIR} + ${PC_LOG4CPP_LIBDIR} ${CMAKE_INSTALL_PREFIX}/lib/ PATHS /usr/local/lib /usr/lib/x86_64-linux-gnu @@ -115,13 +120,23 @@ set_package_properties(LOG4CPP PROPERTIES URL "http://log4cpp.sourceforge.net/" ) -if(LOG4CPP_FOUND AND LOG4CPP_READY_FOR_CXX17) - set_package_properties(LOG4CPP PROPERTIES - DESCRIPTION "Library of C++ classes for flexible logging to files (the version found is C++17-ready)" - ) +if(LOG4CPP_FOUND AND PC_LOG4CPP_VERSION) + set(LOG4CPP_VERSION ${PC_LOG4CPP_VERSION}) +endif() + +if(LOG4CPP_FOUND AND LOG4CPP_VERSION) + if(LOG4CPP_READY_FOR_CXX17) + set_package_properties(LOG4CPP PROPERTIES + DESCRIPTION "Library of C++ classes for flexible logging (found: v${LOG4CPP_VERSION}, C++17-ready)" + ) + else() + set_package_properties(LOG4CPP PROPERTIES + DESCRIPTION "Library of C++ classes for flexible logging (found: v${LOG4CPP_VERSION})" + ) + endif() else() set_package_properties(LOG4CPP PROPERTIES - DESCRIPTION "Library of C++ classes for flexible logging to files" + DESCRIPTION "Library of C++ classes for flexible logging" ) endif() diff --git a/cmake/Modules/FindPCAP.cmake b/cmake/Modules/FindPCAP.cmake index 880df6869..56260dacc 100644 --- a/cmake/Modules/FindPCAP.cmake +++ b/cmake/Modules/FindPCAP.cmake @@ -54,7 +54,7 @@ endif() set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE) include(FindPkgConfig) -pkg_check_modules(PC_PCAP libpcap) +pkg_check_modules(PC_PCAP libpcap QUIET) if(EXISTS $ENV{PCAPDIR}) find_path(PCAP_INCLUDE_DIR diff --git a/cmake/Modules/FindPUGIXML.cmake b/cmake/Modules/FindPUGIXML.cmake index bf66cfe86..98e63c0c6 100644 --- a/cmake/Modules/FindPUGIXML.cmake +++ b/cmake/Modules/FindPUGIXML.cmake @@ -41,11 +41,14 @@ find_path(PUGIXML_INCLUDE_DIR /usr/include /usr/local/include /usr/local/include/pugixml-1.9 + /usr/local/include/pugixml-${PC_PUGIXML_VERSION} /opt/local/include ${PUGIXML_ROOT}/include $ENV{PUGIXML_ROOT}/include ${PUGIXML_ROOT}/include/pugixml-1.9 $ENV{PUGIXML_ROOT}/include/pugixml-1.9 + ${PUGIXML_ROOT}/include/pugixml-${PC_PUGIXML_VERSION} + $ENV{PUGIXML_ROOT}/include/pugixml-${PC_PUGIXML_VERSION} ${PC_PUGIXML_INCLUDEDIR} ) @@ -64,6 +67,7 @@ find_library(PUGIXML_LIBRARY /usr/lib/s390x-linux-gnu /usr/local/lib /usr/local/lib/pugixml-1.9 + /usr/local/lib/pugixml-${PC_PUGIXML_VERSION} /opt/local/lib /usr/lib /usr/lib64 @@ -76,6 +80,10 @@ find_library(PUGIXML_LIBRARY $ENV{PUGIXML_ROOT}/lib/pugixml-1.9 ${PUGIXML_ROOT}/lib64/pugixml-1.9 $ENV{PUGIXML_ROOT}/lib64/pugixml-1.9 + ${PUGIXML_ROOT}/lib/pugixml-${PC_PUGIXML_VERSION} + $ENV{PUGIXML_ROOT}/lib/pugixml-${PC_PUGIXML_VERSION} + ${PUGIXML_ROOT}/lib64/pugixml-${PC_PUGIXML_VERSION} + $ENV{PUGIXML_ROOT}/lib64/pugixml-${PC_PUGIXML_VERSION} ${PC_PUGIXML_LIBDIR} ) diff --git a/cmake/Modules/FindTELEORBIT.cmake b/cmake/Modules/FindTELEORBIT.cmake index a99cab845..d062c14dc 100644 --- a/cmake/Modules/FindTELEORBIT.cmake +++ b/cmake/Modules/FindTELEORBIT.cmake @@ -15,9 +15,13 @@ # You should have received a copy of the GNU General Public License # along with GNSS-SDR. If not, see . +if(NOT COMMAND feature_summary) + include(FeatureSummary) +endif() + set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE) include(FindPkgConfig) -pkg_check_modules(PC_TELEORBIT teleorbit) +pkg_check_modules(PC_TELEORBIT teleorbit QUIET) find_path(TELEORBIT_INCLUDE_DIRS NAMES teleorbit/api.h @@ -49,6 +53,20 @@ find_library(TELEORBIT_LIBRARIES include(FindPackageHandleStandardArgs) find_package_handle_standard_args(TELEORBIT DEFAULT_MSG TELEORBIT_LIBRARIES TELEORBIT_INCLUDE_DIRS) +if(PC_TELEORBIT_VERSION) + set(TELEORBIT_VERSION ${PC_TELEORBIT_VERSION}) +endif() + +if(TELEORBIT_FOUND AND TELEORBIT_VERSION) + set_package_properties(TELEORBIT PROPERTIES + DESCRIPTION "The Teleorbit's Flexiband GNU Radio block (found: v${TELEORBIT_VERSION})" + ) +else() + set_package_properties(TELEORBIT PROPERTIES + DESCRIPTION "The Teleorbit's Flexiband GNU Radio block." + ) +endif() + if(TELEORBIT_FOUND AND NOT TARGET Gnuradio::teleorbit) add_library(Gnuradio::teleorbit SHARED IMPORTED) set_target_properties(Gnuradio::teleorbit PROPERTIES diff --git a/cmake/Modules/FindVOLKGNSSSDR.cmake b/cmake/Modules/FindVOLKGNSSSDR.cmake index be5d76d7f..d7e5822d6 100644 --- a/cmake/Modules/FindVOLKGNSSSDR.cmake +++ b/cmake/Modules/FindVOLKGNSSSDR.cmake @@ -62,10 +62,19 @@ include(FindPackageHandleStandardArgs) find_package_handle_standard_args(VOLKGNSSSDR DEFAULT_MSG VOLK_GNSSSDR_LIBRARIES VOLK_GNSSSDR_INCLUDE_DIRS) mark_as_advanced(VOLK_GNSSSDR_LIBRARIES VOLK_GNSSSDR_INCLUDE_DIRS) -set_package_properties(VOLKGNSSSDR PROPERTIES - DESCRIPTION "Vector-Optimized Library of Kernels for GNSS-SDR." -) +if(PC_VOLK_GNSSSDR_VERSION) + set(VOLKGNSSSDR_VERSION ${PC_VOLK_GNSSSDR_VERSION}) +endif() +if(VOLKGNSSSDR_FOUND AND VOLKGNSSSDR_VERSION) + set_package_properties(VOLKGNSSSDR PROPERTIES + DESCRIPTION "Vector-Optimized Library of Kernels for GNSS-SDR (found: v${VOLKGNSSSDR_VERSION})." + ) +else() + set_package_properties(VOLKGNSSSDR PROPERTIES + DESCRIPTION "Vector-Optimized Library of Kernels for GNSS-SDR." + ) +endif() if(VOLKGNSSSDR_FOUND AND NOT TARGET Volkgnsssdr::volkgnsssdr) add_library(Volkgnsssdr::volkgnsssdr SHARED IMPORTED)