Add more package version identifications

This commit is contained in:
Carles Fernandez 2019-06-19 23:42:46 +02:00
parent 34a949eb28
commit 25154ec066
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
4 changed files with 71 additions and 10 deletions

View File

@ -590,10 +590,18 @@ endif()
find_package(GOOGLETEST)
set_package_properties(GOOGLETEST PROPERTIES
URL "https://github.com/google/googletest"
DESCRIPTION "Source code of Google's Testing Framework"
PURPOSE "Used for Unit and System Tests."
TYPE REQUIRED
)
if(GOOGLETEST_FOUND AND GOOGLETEST_VERSION)
set_package_properties(GOOGLETEST PROPERTIES
DESCRIPTION "Source code of Google's Testing Framework (found: ${GOOGLETEST_VERSION})"
)
else()
set_package_properties(GOOGLETEST PROPERTIES
DESCRIPTION "Source code of Google's Testing Framework"
)
endif()
if(NOT GOOGLETEST_FOUND)
set_package_properties(GOOGLETEST PROPERTIES
PURPOSE "Googletest v${GNSSSDR_GTEST_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'."
@ -1002,10 +1010,18 @@ if(NOT VOLKGNSSSDR_FOUND)
find_package(ORC)
set_package_properties(ORC PROPERTIES
URL "https://gstreamer.freedesktop.org/modules/orc.html"
DESCRIPTION "The Optimized Inner Loops Runtime Compiler"
PURPOSE "Used by volk_gnsssdr."
TYPE OPTIONAL
)
if(ORC_FOUND AND ORC_VERSION)
set_package_properties(ORC PROPERTIES
DESCRIPTION "The Optimized Inner Loops Runtime Compiler (found: v${ORC_VERSION})"
)
else()
set_package_properties(ORC PROPERTIES
DESCRIPTION "The Optimized Inner Loops Runtime Compiler"
)
endif()
if(NOT ORC_FOUND)
set(ORC_LIBRARIES "")
set(ORC_INCLUDE_DIRS "")
@ -1615,10 +1631,18 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS
find_package(ZLIB)
set_package_properties(ZLIB PROPERTIES
URL "https://www.zlib.net/"
DESCRIPTION "A Massively Spiffy Yet Delicately Unobtrusive Compression Library"
PURPOSE "Required to build Matio."
TYPE REQUIRED
)
if(ZLIB_FOUND AND ZLIB_VERSION_STRING)
set_package_properties(ZLIB PROPERTIES
DESCRIPTION "A Massively Spiffy Yet Delicately Unobtrusive Compression Library (found: ${ZLIB_VERSION_STRING})"
)
else()
set_package_properties(ZLIB PROPERTIES
DESCRIPTION "A Massively Spiffy Yet Delicately Unobtrusive Compression Library"
)
endif()
if(ZLIB_FOUND)
get_filename_component(ZLIB_BASE_DIR ${ZLIB_INCLUDE_DIRS} DIRECTORY)
if(OS_IS_LINUX)
@ -1658,10 +1682,18 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS
find_package(HDF5)
set_package_properties(HDF5 PROPERTIES
URL "https://support.hdfgroup.org/HDF5/"
DESCRIPTION "A versatile data model, a portable file format and a software library"
PURPOSE "Required to build Matio."
TYPE REQUIRED
)
if(HDF5_FOUND AND HDF5_VERSION)
set_package_properties(HDF5 PROPERTIES
DESCRIPTION "A versatile data model, a portable file format and a software library (found: ${HDF5_VERSION})"
)
else()
set_package_properties(HDF5 PROPERTIES
DESCRIPTION "A versatile data model, a portable file format and a software library"
)
endif()
if(HDF5_FOUND)
list(GET HDF5_LIBRARIES 0 HDF5_FIRST_DIR)
get_filename_component(HDF5_BASE_DIR2 ${HDF5_FIRST_DIR} DIRECTORY)
@ -2056,10 +2088,18 @@ endif()
find_package(Doxygen)
set_package_properties(Doxygen PROPERTIES
URL "http://www.doxygen.nl"
DESCRIPTION "Generates documentation from annotated C++ sources"
PURPOSE "Used to generate code documentation by doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME} doc'"
TYPE OPTIONAL
)
if(DOXYGEN_FOUND AND DOXYGEN_VERSION)
set_package_properties(Doxygen PROPERTIES
DESCRIPTION "Generates documentation from annotated C++ sources (found: v${DOXYGEN_VERSION})"
)
else()
set_package_properties(Doxygen PROPERTIES
DESCRIPTION "Generates documentation from annotated C++ sources"
)
endif()
find_package(LATEX)
set_package_properties(LATEX PROPERTIES
URL "https://www.latex-project.org"
@ -2205,9 +2245,7 @@ else()
DESCRIPTION "A portable C/C++ library for network traffic capture"
)
endif()
if(PCAP_FOUND)
set(ENABLE_RAW_UDP ON)
endif()
if(ENABLE_RAW_UDP)
message(STATUS "High-optimized custom UDP IP packet source is enabled.")
message(STATUS " You can disable it with 'cmake -DENABLE_RAW_UDP=OFF ..'")

View File

@ -26,6 +26,9 @@
# LIBGTEST_DEV_DIR
# GTEST_INCLUDE_DIRS
set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE)
include(FindPkgConfig)
pkg_check_modules(PC_GTEST gtest)
find_path(LIBGTEST_DEV_DIR
NAMES src/gtest-all.cc
@ -33,6 +36,7 @@ find_path(LIBGTEST_DEV_DIR
${GTEST_DIR}
${GTEST_DIR}/googletest
/usr/src/googletest/googletest
/usr/local/src/googletest/googletest
/usr/src/gtest
/usr/include/gtest
/opt/local/src/gtest-1.7.0
@ -44,8 +48,14 @@ find_path(GTEST_INCLUDE_DIRS
${GTEST_DIR}/googletest/include
/usr/include
/opt/local/src/gtest-1.7.0/include
${PC_GTEST_INCLUDEDIR}
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(GOOGLETEST DEFAULT_MSG LIBGTEST_DEV_DIR GTEST_INCLUDE_DIRS)
if(GOOGLETEST_FOUND AND PC_GTEST_VERSION)
set(GOOGLETEST_VERSION ${PC_GTEST_VERSION})
endif()
mark_as_advanced(LIBGTEST_DEV_DIR GTEST_INCLUDE_DIRS)

View File

@ -15,7 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with GNSS-SDR. If not, see <https://www.gnu.org/licenses/>.
find_package(PkgConfig)
set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE)
include(FindPkgConfig)
pkg_check_modules(PC_ORC "orc-0.4 > 0.4.22")
find_program(ORCC_EXECUTABLE orcc
@ -63,6 +64,10 @@ find_library(ORC_LIB orc-0.4
${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}
)
if(PC_ORC_VERSION)
set(ORC_VERSION ${PC_ORC_VERSION})
endif()
list(APPEND ORC_LIBRARY ${ORC_LIB})
set(ORC_INCLUDE_DIRS ${ORC_INCLUDE_DIR})

View File

@ -172,10 +172,18 @@ if(GNUPLOT_FOUND)
endif()
set_package_properties(Gnuplot PROPERTIES
URL "http://www.gnuplot.info"
DESCRIPTION "A portable command-line driven graphing utility"
PURPOSE "Used to generate plots in some tests."
TYPE OPTIONAL
)
if(GNUPLOT_FOUND AND GNUPLOT_VERSION_STRING)
set_package_properties(Gnuplot PROPERTIES
DESCRIPTION "A portable command-line driven graphing utility (found: v${GNUPLOT_VERSION_STRING})"
)
else()
set_package_properties(Gnuplot PROPERTIES
DESCRIPTION "A portable command-line driven graphing utility"
)
endif()
if(ENABLE_UNIT_TESTING_MINIMAL)
add_definitions(-DUNIT_TESTING_MINIMAL=1)