Add more version numbers to the summary report

This commit is contained in:
Carles Fernandez 2019-06-18 08:59:06 +02:00
parent 3bc8091745
commit cb70b56a13
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
5 changed files with 112 additions and 34 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
) )
@ -809,15 +809,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 +875,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()
set_package_properties(Python3 PROPERTIES if(Python3_FOUND)
URL "https://www.python.org/" set_package_properties(Python3 PROPERTIES
DESCRIPTION "An interpreted, high-level, general-purpose programming language" URL "https://www.python.org/"
PURPOSE "Required to build volk_gnsssdr." DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${Python3_VERSION})"
TYPE REQUIRED PURPOSE "Required to build volk_gnsssdr."
) TYPE REQUIRED
)
endif()
set_package_properties(Python2 PROPERTIES if(Python2_FOUND)
URL "https://www.python.org/" set_package_properties(Python2 PROPERTIES
DESCRIPTION "An interpreted, high-level, general-purpose programming language" URL "https://www.python.org/"
PURPOSE "Required to build volk_gnsssdr." DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${Python2_VERSION})"
TYPE REQUIRED PURPOSE "Required to build volk_gnsssdr."
) TYPE REQUIRED
)
endif()
set_package_properties(PythonInterp PROPERTIES if(PYTHONINTERP_FOUND)
URL "https://www.python.org/" set_package_properties(PythonInterp PROPERTIES
DESCRIPTION "An interpreted, high-level, general-purpose programming language" URL "https://www.python.org/"
PURPOSE "Required to build volk_gnsssdr." DESCRIPTION "An interpreted, high-level, general-purpose programming language (found: ${PYTHON_VERSION_STRING})"
TYPE REQUIRED PURPOSE "Required to build volk_gnsssdr."
) TYPE REQUIRED
)
endif()
set(READ_ENVIRO "") set(READ_ENVIRO "")
if(ENABLE_PACKAGING) if(ENABLE_PACKAGING)
@ -1343,7 +1349,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 +1450,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 +1509,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 +1546,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 +1555,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 +1690,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 +1702,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 +1758,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 +1778,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 +1835,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 +2182,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 +2189,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: v${GROSMOSDR_VERSION})"
)
else()
set_package_properties(GROSMOSDR PROPERTIES
DESCRIPTION "osmocom GNU Radio blocks"
)
endif()
else() 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 +2209,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 +2225,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()
##################################################################### #####################################################################

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

@ -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

@ -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)