2019-02-03 19:24:44 +01:00
|
|
|
# Copyright (C) 2010-2019 (see AUTHORS file for a list of contributors)
|
2012-12-24 13:29:23 +00:00
|
|
|
#
|
|
|
|
# This file is part of GNSS-SDR.
|
|
|
|
#
|
|
|
|
# GNSS-SDR is free software: you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License as published by
|
|
|
|
# the Free Software Foundation, either version 3 of the License, or
|
Improving handling of optional processing blocks and linking libraries.
New options ENABLE_GN3S, ENABLE_RTLSDR, ENABLE_OPENCL, ENABLE_ARRAY and
ENABLE_GPERFTOOLS, all set by default to OFF. Users can enable that
features by 'cmake -DENABLE_XXX=ON ../ '. OpenCL is now not used by
default since it was giving problems in some platforms. Old variables
(RTSDR_DRIVER, GN3S_DRIVER, RAW_ARRAY_DRIVER and DISABLE_OPENCL) are
still honored and can be used in the same way, but the new ENABLE_XXX
are recommended for the sake of more uniform naming. Main CMakeFile.txt
has been rearranged, putting options first, then searching for the
required libraries, and then the optional ones. If Gperftools is enabled
and found, binaries are linked to the tcmalloc and profiler libraries,
and using the adequate flags. Fixed building in Mac OSX if Armadillo and
OpenBLAS were not installed in the system.
2014-08-07 21:04:01 +02:00
|
|
|
# (at your option) any later version.
|
2012-12-24 13:29:23 +00:00
|
|
|
#
|
|
|
|
# GNSS-SDR is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
2018-05-13 22:49:11 +02:00
|
|
|
# along with GNSS-SDR. If not, see <https://www.gnu.org/licenses/>.
|
2012-12-24 13:29:23 +00:00
|
|
|
#
|
|
|
|
|
2017-02-01 19:24:25 +01:00
|
|
|
|
|
|
|
add_subdirectory(unit-tests/signal-processing-blocks/libs)
|
2018-08-29 18:53:03 +02:00
|
|
|
add_subdirectory(system-tests/libs)
|
2017-02-01 19:24:25 +01:00
|
|
|
|
2016-11-28 00:18:02 +01:00
|
|
|
################################################################################
|
|
|
|
# Google Test - https://github.com/google/googletest
|
|
|
|
################################################################################
|
2016-12-20 21:43:19 +01:00
|
|
|
set(GTEST_COMPILER -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER})
|
|
|
|
set(TOOLCHAIN_ARG "")
|
2019-04-02 03:31:46 +02:00
|
|
|
if(DEFINED ENV{OECORE_TARGET_SYSROOT})
|
2017-02-15 22:10:06 +01:00
|
|
|
set(GTEST_COMPILER "")
|
|
|
|
set(TOOLCHAIN_ARG "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/Toolchains/oe-sdk_cross.cmake")
|
2019-02-17 13:36:13 +01:00
|
|
|
else()
|
|
|
|
if(ENABLE_PACKAGING)
|
|
|
|
set(TOOLCHAIN_ARG "-DCMAKE_VERBOSE_MAKEFILE=ON")
|
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2016-12-20 21:43:19 +01:00
|
|
|
|
2019-04-02 02:41:20 +02:00
|
|
|
if(NOT GOOGLETEST_FOUND)
|
2019-02-17 13:36:13 +01:00
|
|
|
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
|
|
|
set(DEBUG_POSTFIX "d")
|
|
|
|
endif()
|
|
|
|
if(OS_IS_MACOSX)
|
|
|
|
if(CMAKE_GENERATOR STREQUAL Xcode)
|
|
|
|
set(DEBUG_PREFIX "Debug/")
|
2019-02-18 21:45:12 +01:00
|
|
|
set(DEBUG_POSTFIX "d")
|
2019-02-17 13:36:13 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
|
2018-11-19 08:51:05 +01:00
|
|
|
if(CMAKE_VERSION VERSION_LESS 3.2)
|
2019-04-02 02:41:20 +02:00
|
|
|
ExternalProject_Add(gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
GIT_REPOSITORY https://github.com/google/googletest
|
|
|
|
GIT_TAG release-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
CMAKE_ARGS ${GTEST_COMPILER} -DINSTALL_GTEST=OFF -DBUILD_GMOCK=OFF -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -Dgtest_hide_internal_symbols=ON ${TOOLCHAIN_ARG}
|
|
|
|
UPDATE_COMMAND ""
|
|
|
|
PATCH_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2019-04-02 02:41:20 +02:00
|
|
|
ExternalProject_Add(gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
GIT_REPOSITORY https://github.com/google/googletest
|
|
|
|
GIT_TAG release-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../gtest-${GNSSSDR_GTEST_LOCAL_VERSION}
|
|
|
|
CMAKE_ARGS ${GTEST_COMPILER} -DINSTALL_GTEST=OFF -DBUILD_GMOCK=OFF -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -Dgtest_hide_internal_symbols=ON ${TOOLCHAIN_ARG}
|
|
|
|
UPDATE_COMMAND ""
|
|
|
|
PATCH_COMMAND ""
|
|
|
|
BUILD_BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/../../gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/googletest/${CMAKE_FIND_LIBRARY_PREFIXES}gtest${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/../../gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/googletest/${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-11-19 08:51:05 +01:00
|
|
|
ExternalProject_Get_Property(gtest-${GNSSSDR_GTEST_LOCAL_VERSION} binary_dir)
|
2019-02-07 17:05:26 +01:00
|
|
|
|
|
|
|
if(NOT TARGET GTest::GTest)
|
2019-02-07 19:26:09 +01:00
|
|
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/googletest/include)
|
2019-02-07 17:05:26 +01:00
|
|
|
add_library(GTest::GTest STATIC IMPORTED)
|
|
|
|
add_dependencies(GTest::GTest gtest-${GNSSSDR_GTEST_LOCAL_VERSION})
|
|
|
|
set_target_properties(GTest::GTest PROPERTIES
|
|
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
2019-02-17 13:36:13 +01:00
|
|
|
IMPORTED_LOCATION "${binary_dir}/googletest/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest${DEBUG_POSTFIX}${CMAKE_DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-02-07 17:05:26 +01:00
|
|
|
INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/googletest/include"
|
2019-02-17 13:36:13 +01:00
|
|
|
INTERFACE_LINK_LIBRARIES "${binary_dir}/googletest/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest${DEBUG_POSTFIX}${CMAKE_DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-02-07 17:05:26 +01:00
|
|
|
)
|
|
|
|
set_target_properties(GTest::GTest PROPERTIES
|
|
|
|
INTERFACE_LINK_LIBRARIES Threads::Threads
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
if(NOT TARGET GTest::Main)
|
|
|
|
add_library(GTest::Main STATIC IMPORTED)
|
|
|
|
add_dependencies(GTest::Main gtest-${GNSSSDR_GTEST_LOCAL_VERSION})
|
|
|
|
set_target_properties(GTest::Main PROPERTIES
|
|
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
2019-02-17 13:36:13 +01:00
|
|
|
IMPORTED_LOCATION "${binary_dir}/googletest/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-02-07 17:05:26 +01:00
|
|
|
INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gtest/gtest-${GNSSSDR_GTEST_LOCAL_VERSION}/googletest/include"
|
2019-02-17 13:36:13 +01:00
|
|
|
INTERFACE_LINK_LIBRARIES "${binary_dir}/googletest/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-02-07 17:05:26 +01:00
|
|
|
)
|
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2018-11-19 08:51:05 +01:00
|
|
|
if(GTEST_INCLUDE_DIRS)
|
|
|
|
set(GTEST_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIRS} ${LIBGTEST_DEV_DIR})
|
2019-02-07 19:45:31 +01:00
|
|
|
add_library(gtest STATIC ${LIBGTEST_DEV_DIR}/src/gtest-all.cc)
|
2019-02-07 17:05:26 +01:00
|
|
|
target_include_directories(gtest
|
|
|
|
PUBLIC
|
2019-02-07 19:26:09 +01:00
|
|
|
${GTEST_INCLUDE_DIRECTORIES}
|
2019-02-07 17:05:26 +01:00
|
|
|
)
|
2019-02-07 19:45:31 +01:00
|
|
|
add_library(gtest_main STATIC ${LIBGTEST_DEV_DIR}/src/gtest_main.cc)
|
2019-02-07 17:05:26 +01:00
|
|
|
target_include_directories(gtest_main
|
|
|
|
PUBLIC
|
2019-02-07 19:26:09 +01:00
|
|
|
${GTEST_INCLUDE_DIRECTORIES}
|
2019-02-07 17:05:26 +01:00
|
|
|
)
|
|
|
|
if(NOT TARGET GTest::GTest)
|
|
|
|
add_library(GTest::GTest STATIC IMPORTED)
|
|
|
|
add_dependencies(GTest::GTest gtest)
|
|
|
|
set_target_properties(GTest::GTest PROPERTIES
|
|
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
2019-02-07 19:26:09 +01:00
|
|
|
INTERFACE_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIRS}"
|
2019-02-17 13:36:13 +01:00
|
|
|
INTERFACE_LINK_LIBRARIES "${CMAKE_CURRENT_BINARY_DIR}/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
|
|
|
IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-02-07 17:05:26 +01:00
|
|
|
)
|
|
|
|
set_target_properties(GTest::GTest PROPERTIES
|
|
|
|
INTERFACE_LINK_LIBRARIES Threads::Threads
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
if(NOT TARGET GTest::Main)
|
|
|
|
add_library(GTest::Main STATIC IMPORTED)
|
|
|
|
add_dependencies(GTest::Main gtest_main)
|
|
|
|
set_target_properties(GTest::Main PROPERTIES
|
|
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
2019-02-07 19:26:09 +01:00
|
|
|
INTERFACE_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIRS}"
|
2019-02-17 13:36:13 +01:00
|
|
|
INTERFACE_LINK_LIBRARIES "${CMAKE_CURRENT_BINARY_DIR}/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
|
|
|
IMPORTED_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${DEBUG_PREFIX}${CMAKE_FIND_LIBRARY_PREFIXES}gtest_main${DEBUG_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}"
|
2019-04-02 02:41:20 +02:00
|
|
|
)
|
2019-02-07 17:05:26 +01:00
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
2013-07-06 02:15:09 +00:00
|
|
|
|
2014-03-15 01:21:17 +00:00
|
|
|
|
2016-11-28 00:18:02 +01:00
|
|
|
|
|
|
|
################################################################################
|
2019-02-07 20:31:40 +01:00
|
|
|
# Definitions
|
2016-11-28 00:18:02 +01:00
|
|
|
################################################################################
|
2015-10-27 20:18:48 +01:00
|
|
|
|
2019-04-27 17:28:49 +02:00
|
|
|
if(NOT (GNURADIO_VERSION VERSION_LESS "3.8"))
|
2018-11-24 18:40:34 +01:00
|
|
|
add_definitions(-DGR_GREATER_38=1)
|
|
|
|
endif()
|
|
|
|
|
2015-10-27 20:18:48 +01:00
|
|
|
if(OPENSSL_FOUND)
|
2018-11-19 08:51:05 +01:00
|
|
|
add_definitions(-DUSE_OPENSSL_FALLBACK=1)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2016-09-23 21:59:00 +02:00
|
|
|
|
2016-11-28 00:18:02 +01:00
|
|
|
if(OPENCL_FOUND)
|
|
|
|
add_definitions(-DOPENCL_BLOCKS_TEST=1)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2016-11-28 00:18:02 +01:00
|
|
|
|
2017-03-13 20:54:25 +01:00
|
|
|
if(ENABLE_CUDA)
|
|
|
|
add_definitions(-DCUDA_BLOCKS_TEST=1)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2016-11-28 00:18:02 +01:00
|
|
|
|
2017-03-13 20:54:25 +01:00
|
|
|
if(ENABLE_FPGA)
|
|
|
|
add_definitions(-DFPGA_BLOCKS_TEST=1)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2017-02-13 17:20:49 +01:00
|
|
|
|
2019-06-15 10:11:11 +02:00
|
|
|
if(ARMADILLO_VERSION_STRING VERSION_GREATER 8.400)
|
|
|
|
# mvnrnd() requires 8.400
|
2019-06-14 18:22:07 +02:00
|
|
|
add_definitions(-DARMADILLO_HAVE_MVNRND=1)
|
|
|
|
endif()
|
|
|
|
|
2017-10-21 13:05:51 +02:00
|
|
|
find_package(Gnuplot)
|
|
|
|
if(GNUPLOT_FOUND)
|
|
|
|
add_definitions(-DGNUPLOT_EXECUTABLE="${GNUPLOT_EXECUTABLE}")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2019-03-09 01:39:32 +01:00
|
|
|
set_package_properties(Gnuplot PROPERTIES
|
|
|
|
URL "http://www.gnuplot.info"
|
|
|
|
PURPOSE "Used to generate plots in some tests."
|
|
|
|
TYPE OPTIONAL
|
|
|
|
)
|
2019-06-19 23:42:46 +02:00
|
|
|
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()
|
2018-02-03 10:49:03 +01:00
|
|
|
|
2018-09-07 14:36:11 +02:00
|
|
|
if(ENABLE_UNIT_TESTING_MINIMAL)
|
|
|
|
add_definitions(-DUNIT_TESTING_MINIMAL=1)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-09-07 14:36:11 +02:00
|
|
|
|
2017-11-17 23:17:08 +01:00
|
|
|
|
2016-12-20 21:43:19 +01:00
|
|
|
################################################################################
|
2019-06-28 09:32:46 +02:00
|
|
|
# GPSTk and optional generator
|
2016-12-20 21:43:19 +01:00
|
|
|
################################################################################
|
2019-03-09 01:39:32 +01:00
|
|
|
|
|
|
|
find_package(GPSTK)
|
|
|
|
set_package_properties(GPSTK PROPERTIES
|
|
|
|
PURPOSE "Used in some Extra Tests."
|
|
|
|
TYPE OPTIONAL
|
|
|
|
)
|
2019-06-19 20:54:45 +02:00
|
|
|
|
2017-02-15 22:10:06 +01:00
|
|
|
if(ENABLE_UNIT_TESTING_EXTRA OR ENABLE_SYSTEM_TESTING_EXTRA OR ENABLE_FPGA)
|
2018-11-19 08:51:05 +01:00
|
|
|
if(ENABLE_FPGA)
|
2019-04-02 02:41:20 +02:00
|
|
|
set(CROSS_INSTALL_DIR "-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}")
|
2019-04-02 03:31:46 +02:00
|
|
|
if(DEFINED ENV{OECORE_TARGET_SYSROOT})
|
2019-04-02 02:41:20 +02:00
|
|
|
set(CROSS_INSTALL_DIR "${CROSS_INSTALL_DIR} -DBOOST_ROOT=$ENV{OECORE_TARGET_SYSROOT}/usr")
|
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2019-04-02 02:41:20 +02:00
|
|
|
set(CROSS_INSTALL_DIR "")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-11-21 08:28:50 +01:00
|
|
|
find_package(GNSSSIMULATOR QUIET)
|
|
|
|
if(GNSSSIMULATOR_FOUND OR NOT ENABLE_GNSS_SIM_INSTALL)
|
2019-04-02 02:41:20 +02:00
|
|
|
add_definitions(-DSW_GENERATOR_BIN="${SW_GENERATOR_BIN}")
|
|
|
|
add_definitions(-DDEFAULT_RINEX_NAV="${CMAKE_INSTALL_PREFIX}/share/gnss-sim/brdc3540.14n")
|
|
|
|
add_definitions(-DDEFAULT_POSITION_FILE="${CMAKE_INSTALL_PREFIX}/share/gnss-sim/circle.csv")
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2019-04-02 02:41:20 +02:00
|
|
|
ExternalProject_Add(gnss-sim
|
2018-11-24 18:40:34 +01:00
|
|
|
GIT_REPOSITORY https://bitbucket.org/jarribas/gnss-simulator
|
|
|
|
GIT_TAG ${GNSSSDR_GNSS_SIM_LOCAL_VERSION}
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gnss-sim
|
|
|
|
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../gnss-sim
|
|
|
|
CMAKE_ARGS ${GTEST_COMPILER} ${TOOLCHAIN_ARG} ${CROSS_INSTALL_DIR}
|
|
|
|
UPDATE_COMMAND ""
|
|
|
|
PATCH_COMMAND ""
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
)
|
|
|
|
if(ENABLE_INSTALL_TESTS)
|
|
|
|
install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/../../gnss-sim/gnss_sim DESTINATION bin)
|
|
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/../../../thirdparty/gnss-sim/brdc3540.14n DESTINATION share/gnss-sim)
|
|
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/../../../thirdparty/gnss-sim/circle.csv DESTINATION share/gnss-sim)
|
|
|
|
set(SW_GENERATOR_BIN ${CMAKE_INSTALL_PREFIX}/bin/gnss_sim)
|
|
|
|
add_definitions(-DSW_GENERATOR_BIN="${SW_GENERATOR_BIN}")
|
|
|
|
add_definitions(-DDEFAULT_RINEX_NAV="${CMAKE_INSTALL_PREFIX}/share/gnss-sim/brdc3540.14n")
|
|
|
|
add_definitions(-DDEFAULT_POSITION_FILE="${CMAKE_INSTALL_PREFIX}/share/gnss-sim/circle.csv")
|
|
|
|
else()
|
|
|
|
set(SW_GENERATOR_BIN ${CMAKE_CURRENT_BINARY_DIR}/../../gnss-sim/gnss_sim)
|
|
|
|
add_definitions(-DSW_GENERATOR_BIN="${SW_GENERATOR_BIN}")
|
|
|
|
add_definitions(-DDEFAULT_RINEX_NAV="${CMAKE_CURRENT_BINARY_DIR}/../../../thirdparty/gnss-sim/brdc3540.14n")
|
|
|
|
add_definitions(-DDEFAULT_POSITION_FILE="${CMAKE_CURRENT_BINARY_DIR}/../../../thirdparty/gnss-sim/circle.csv")
|
|
|
|
endif()
|
|
|
|
endif()
|
2017-02-01 16:17:58 +01:00
|
|
|
|
2018-11-19 08:51:05 +01:00
|
|
|
################################################################################
|
|
|
|
# Local installation of GPSTk http://www.gpstk.org/
|
|
|
|
################################################################################
|
|
|
|
if(NOT GPSTK_FOUND OR ENABLE_OWN_GPSTK)
|
2019-04-02 02:41:20 +02:00
|
|
|
message(STATUS " GPSTk v${GNSSSDR_GPSTK_LOCAL_VERSION} will be automatically downloaded and built when doing 'make'.")
|
|
|
|
if("${TOOLCHAIN_ARG}" STREQUAL "")
|
2019-06-10 21:41:13 +02:00
|
|
|
set(TOOLCHAIN_ARG "-DCMAKE_CXX_FLAGS=-Wno-deprecated")
|
2019-04-02 02:41:20 +02:00
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-deprecated")
|
|
|
|
endif()
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
if(CMAKE_VERSION VERSION_LESS 3.2)
|
|
|
|
ExternalProject_Add(gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
GIT_REPOSITORY https://github.com/SGL-UT/GPSTk
|
|
|
|
GIT_TAG v${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
CMAKE_ARGS ${GTEST_COMPILER} ${TOOLCHAIN_ARG} -DCMAKE_INSTALL_PREFIX=${CMAKE_SOURCE_DIR}/thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install -DBUILD_EXT=OFF -DBUILD_PYTHON=OFF
|
|
|
|
UPDATE_COMMAND ""
|
|
|
|
PATCH_COMMAND ""
|
|
|
|
)
|
|
|
|
else()
|
|
|
|
ExternalProject_Add(gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
GIT_REPOSITORY https://github.com/SGL-UT/GPSTk
|
|
|
|
GIT_TAG v${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/../../gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}
|
|
|
|
CMAKE_ARGS ${GTEST_COMPILER} ${TOOLCHAIN_ARG} -DCMAKE_INSTALL_PREFIX=${CMAKE_SOURCE_DIR}/thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install -DBUILD_EXT=OFF -DBUILD_PYTHON=OFF
|
|
|
|
BUILD_BYPRODUCTS ${CMAKE_SOURCE_DIR}/thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install/${CMAKE_INSTALL_LIBDIR}/${CMAKE_FIND_LIBRARY_PREFIXES}gpstk${CMAKE_SHARED_LIBRARY_SUFFIX}
|
|
|
|
UPDATE_COMMAND ""
|
|
|
|
PATCH_COMMAND ""
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
set(GPSTK_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install/include CACHE PATH "Local GPSTK headers")
|
|
|
|
set(GPSTK_LIBRARY ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install/${CMAKE_INSTALL_LIBDIR}/${CMAKE_FIND_LIBRARY_PREFIXES}gpstk${CMAKE_SHARED_LIBRARY_SUFFIX})
|
|
|
|
set(GPSTK_BINDIR ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION}/install/bin/)
|
|
|
|
add_definitions(-DGPSTK_BINDIR="${GPSTK_BINDIR}")
|
|
|
|
set(OWN_GPSTK True)
|
|
|
|
add_library(Gpstk::gpstk SHARED IMPORTED)
|
|
|
|
add_dependencies(Gpstk::gpstk gpstk-${GNSSSDR_GPSTK_LOCAL_VERSION})
|
|
|
|
file(MAKE_DIRECTORY ${GPSTK_INCLUDE_DIRS})
|
|
|
|
file(MAKE_DIRECTORY ${GPSTK_INCLUDE_DIRS}/gpstk)
|
|
|
|
set_target_properties(Gpstk::gpstk PROPERTIES
|
|
|
|
IMPORTED_LINK_INTERFACE_LANGUAGES "CXX"
|
|
|
|
IMPORTED_LOCATION "${GPSTK_LIBRARY}"
|
|
|
|
INTERFACE_INCLUDE_DIRECTORIES "${GPSTK_INCLUDE_DIRS};${GPSTK_INCLUDE_DIRS}/gpstk"
|
|
|
|
INTERFACE_LINK_LIBRARIES "${GPSTK_LIBRARY}"
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2019-04-02 02:41:20 +02:00
|
|
|
set(GPSTK_BINDIR ${GPSTK_INCLUDE_DIR}/../bin/)
|
|
|
|
add_definitions(-DGPSTK_BINDIR="${GPSTK_BINDIR}")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
2016-12-20 21:43:19 +01:00
|
|
|
|
2016-12-30 14:36:41 +01:00
|
|
|
|
2017-01-28 16:49:46 +01:00
|
|
|
if(ENABLE_UNIT_TESTING_EXTRA)
|
2018-11-19 08:51:05 +01:00
|
|
|
add_definitions(-DEXTRA_TESTS)
|
2019-03-26 23:04:08 +01:00
|
|
|
message(STATUS "Downloading some data files for testing...")
|
2018-11-19 08:51:05 +01:00
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples/gps_l2c_m_prn7_5msps.dat)
|
2019-04-02 02:41:20 +02:00
|
|
|
message(STATUS "Downloading file: gps_l2c_m_prn7_5msps.dat")
|
|
|
|
file(DOWNLOAD https://sourceforge.net/projects/gnss-sdr/files/data/gps_l2c_m_prn7_5msps.dat ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/gps_l2c_m_prn7_5msps.dat
|
|
|
|
SHOW_PROGRESS
|
|
|
|
EXPECTED_HASH MD5=a6fcbefe155137945d3c33c5ef7bd0f9
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-11-19 08:51:05 +01:00
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples/Glonass_L1_CA_SIM_Fs_62Msps_4ms.dat)
|
2019-04-02 02:41:20 +02:00
|
|
|
message(STATUS "Downloading file: Glonass_L1_CA_SIM_Fs_62Msps_4ms.dat")
|
|
|
|
file(DOWNLOAD https://sourceforge.net/projects/gnss-sdr/files/data/Glonass_L1_CA_SIM_Fs_62Msps_4ms.dat ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/Glonass_L1_CA_SIM_Fs_62Msps_4ms.dat
|
|
|
|
SHOW_PROGRESS
|
|
|
|
EXPECTED_HASH MD5=ffb72fc63c116be58d5e5ccb1daaed3a
|
|
|
|
)
|
2019-03-26 23:04:08 +01:00
|
|
|
endif()
|
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples/BdsB1IStr01_fs25e6_if0_4ms.dat)
|
2019-04-02 02:41:20 +02:00
|
|
|
message(STATUS "Downloading file: BdsB1IStr01_fs25e6_if0_4ms.dat")
|
|
|
|
file(DOWNLOAD https://sourceforge.net/projects/gnss-sdr/files/data/BdsB1IStr01_fs25e6_if0_4ms.dat ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/BdsB1IStr01_fs25e6_if0_4ms.dat
|
|
|
|
SHOW_PROGRESS
|
|
|
|
EXPECTED_HASH MD5=5a4336dad9d80f3313a16dec4fff9233
|
|
|
|
)
|
2019-03-26 23:04:08 +01:00
|
|
|
endif()
|
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples/BdsB3IStr01_fs50e6_if0_4ms.dat)
|
2019-04-02 02:41:20 +02:00
|
|
|
message(STATUS "Downloading file: BdsB3IStr01_fs50e6_if0_4ms.dat")
|
|
|
|
file(DOWNLOAD https://sourceforge.net/projects/gnss-sdr/files/data/BdsB3IStr01_fs50e6_if0_4ms.dat ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/BdsB3IStr01_fs50e6_if0_4ms.dat
|
|
|
|
SHOW_PROGRESS
|
|
|
|
EXPECTED_HASH MD5=066d0d8434a8bc81e161778b7c34cc07
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2019-03-26 23:04:08 +01:00
|
|
|
message(STATUS "Done.")
|
2018-11-19 08:51:05 +01:00
|
|
|
if(ENABLE_INSTALL_TESTS)
|
2019-04-02 02:41:20 +02:00
|
|
|
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/gps_l2c_m_prn7_5msps.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/Glonass_L1_CA_SIM_Fs_62Msps_4ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/BdsB1IStr01_fs25e6_if0_4ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../thirdparty/signal_samples/BdsB1IStr01_fs25e6_if0_4ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
2017-01-28 16:49:46 +01:00
|
|
|
|
2017-02-17 01:02:07 +01:00
|
|
|
if(ENABLE_INSTALL_TESTS)
|
2018-11-19 08:51:05 +01:00
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/GSoC_CTTC_capture_2012_07_26_4Msps_4ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/Galileo_E1_ID_1_Fs_4Msps_8ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/GPS_L1_CA_ID_1_Fs_4Msps_2ms.dat DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/NT1065_GLONASS_L1_20160831_fs6625e6_if0e3_4ms.bin DESTINATION share/gnss-sdr/signal_samples)
|
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/data/rtklib_test/obs_test1.xml DESTINATION share/gnss-sdr/data/rtklib_test)
|
|
|
|
install(FILES ${CMAKE_SOURCE_DIR}/src/tests/data/rtklib_test/eph_GPS_L1CA_test1.xml DESTINATION share/gnss-sdr/data/rtklib_test)
|
|
|
|
add_definitions(-DTEST_PATH="${CMAKE_INSTALL_PREFIX}/share/gnss-sdr/")
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2018-11-19 08:51:05 +01:00
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/GSoC_CTTC_capture_2012_07_26_4Msps_4ms.dat DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples)
|
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/Galileo_E1_ID_1_Fs_4Msps_8ms.dat DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples)
|
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/GPS_L1_CA_ID_1_Fs_4Msps_2ms.dat DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples)
|
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/signal_samples/NT1065_GLONASS_L1_20160831_fs6625e6_if0e3_4ms.bin DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/signal_samples)
|
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/data/rtklib_test/obs_test1.xml DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/data/rtklib_test)
|
|
|
|
file(COPY ${CMAKE_SOURCE_DIR}/src/tests/data/rtklib_test/eph_GPS_L1CA_test1.xml DESTINATION ${CMAKE_SOURCE_DIR}/thirdparty/data/rtklib_test)
|
|
|
|
add_definitions(-DTEST_PATH="${CMAKE_SOURCE_DIR}/thirdparty/")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2016-11-28 00:18:02 +01:00
|
|
|
|
2018-05-28 15:42:44 +02:00
|
|
|
set(LIST_INCLUDE_DIRS
|
2018-11-19 08:51:05 +01:00
|
|
|
${CMAKE_SOURCE_DIR}/src/tests/common-files
|
2012-12-26 11:19:57 +00:00
|
|
|
)
|
|
|
|
|
2018-05-28 15:42:44 +02:00
|
|
|
include_directories(${LIST_INCLUDE_DIRS})
|
2014-03-23 09:45:03 +00:00
|
|
|
|
2016-11-28 00:18:02 +01:00
|
|
|
################################################################################
|
|
|
|
# Unit testing
|
|
|
|
################################################################################
|
2016-10-02 01:59:12 +02:00
|
|
|
if(ENABLE_UNIT_TESTING)
|
|
|
|
add_executable(run_tests ${CMAKE_CURRENT_SOURCE_DIR}/test_main.cc)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(run_tests PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(run_tests PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(run_tests PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(run_tests PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2014-03-23 09:45:03 +00:00
|
|
|
|
2019-02-03 19:24:44 +01:00
|
|
|
target_link_libraries(run_tests
|
|
|
|
PUBLIC
|
2019-02-07 17:05:26 +01:00
|
|
|
Boost::thread
|
2019-02-03 19:24:44 +01:00
|
|
|
Armadillo::armadillo
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
|
|
|
Gnuradio::filter
|
|
|
|
Gnuradio::analog
|
2019-02-07 22:06:48 +01:00
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
2019-02-03 19:24:44 +01:00
|
|
|
Matio::matio
|
|
|
|
Volk::volk
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
|
|
|
signal_source_adapters
|
2019-02-10 01:13:02 +01:00
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
data_type_adapters
|
2019-02-03 19:24:44 +01:00
|
|
|
input_filter_adapters
|
|
|
|
resampler_adapters
|
|
|
|
channel_adapters
|
2019-02-10 18:34:28 +01:00
|
|
|
acquisition_adapters
|
2019-02-03 19:24:44 +01:00
|
|
|
tracking_adapters
|
2019-02-10 18:34:28 +01:00
|
|
|
tracking_libs
|
2019-02-03 19:24:44 +01:00
|
|
|
telemetry_decoder_adapters
|
|
|
|
obs_adapters
|
|
|
|
signal_generator_adapters
|
|
|
|
pvt_adapters
|
2019-02-10 18:34:28 +01:00
|
|
|
pvt_libs
|
|
|
|
algorithms_libs
|
|
|
|
core_monitor
|
2019-02-03 19:24:44 +01:00
|
|
|
signal_processing_testing_lib
|
|
|
|
system_testing_lib
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2016-10-02 01:59:12 +02:00
|
|
|
)
|
2019-02-03 19:24:44 +01:00
|
|
|
if(ENABLE_UNIT_TESTING_EXTRA)
|
|
|
|
target_link_libraries(run_tests PUBLIC Gpstk::gpstk)
|
|
|
|
endif()
|
2017-02-17 01:02:07 +01:00
|
|
|
if(ENABLE_INSTALL_TESTS)
|
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/install/run_tests)
|
|
|
|
file(REMOVE ${CMAKE_SOURCE_DIR}/install/run_tests)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2017-02-16 19:41:11 +01:00
|
|
|
install(TARGETS run_tests RUNTIME DESTINATION bin COMPONENT "run_tests")
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2017-02-17 01:02:07 +01:00
|
|
|
add_custom_command(TARGET run_tests POST_BUILD
|
2018-11-19 08:51:05 +01:00
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:run_tests>
|
2019-04-02 02:41:20 +02:00
|
|
|
${CMAKE_SOURCE_DIR}/install/$<TARGET_FILE_NAME:run_tests>
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2019-02-07 20:31:40 +01:00
|
|
|
if(ENABLE_GPERFTOOLS)
|
|
|
|
if(GPERFTOOLS_FOUND)
|
|
|
|
target_link_libraries(run_tests
|
|
|
|
PUBLIC
|
|
|
|
Gperftools::gperftools
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
endif()
|
2019-02-21 11:42:56 +01:00
|
|
|
if(ENABLE_CLANG_TIDY)
|
|
|
|
if(CLANG_TIDY_EXE)
|
|
|
|
set_target_properties(run_tests
|
|
|
|
PROPERTIES
|
|
|
|
CXX_CLANG_TIDY "${DO_CLANG_TIDY}"
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
endif()
|
2019-06-24 20:02:19 +02:00
|
|
|
if(ENABLE_CUDA AND NOT CMAKE_VERSION VERSION_GREATER 3.11)
|
2019-02-07 20:31:40 +01:00
|
|
|
target_link_libraries(run_tests
|
|
|
|
PUBLIC
|
|
|
|
${CUDA_LIBRARIES}
|
|
|
|
)
|
|
|
|
target_include_directories(run_tests
|
|
|
|
PUBLIC
|
|
|
|
${CUDA_INCLUDE_DIRS}
|
|
|
|
)
|
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2012-12-28 15:40:03 +00:00
|
|
|
|
2017-02-15 22:10:06 +01:00
|
|
|
if(ENABLE_FPGA)
|
|
|
|
add_executable(gps_l1_ca_dll_pll_tracking_test_fpga
|
2018-11-24 18:40:34 +01:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/gps_l1_ca_dll_pll_tracking_test_fpga.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(gps_l1_ca_dll_pll_tracking_test_fpga PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(gps_l1_ca_dll_pll_tracking_test_fpga PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(gps_l1_ca_dll_pll_tracking_test_fpga PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(gps_l1_ca_dll_pll_tracking_test_fpga PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2017-02-15 22:10:06 +01:00
|
|
|
target_link_libraries(gps_l1_ca_dll_pll_tracking_test_fpga
|
2019-02-03 19:24:44 +01:00
|
|
|
PUBLIC
|
2019-02-07 22:06:48 +01:00
|
|
|
Armadillo::armadillo
|
2019-02-07 17:21:32 +01:00
|
|
|
Boost::thread
|
2019-02-03 19:24:44 +01:00
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
2019-02-07 22:06:48 +01:00
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
2019-02-03 19:24:44 +01:00
|
|
|
Matio::matio
|
2019-02-07 22:06:48 +01:00
|
|
|
Volk::volk
|
2019-02-10 18:34:28 +01:00
|
|
|
channel_libs
|
|
|
|
data_type_adapters
|
2019-02-03 19:24:44 +01:00
|
|
|
tracking_adapters
|
2019-02-10 01:13:02 +01:00
|
|
|
signal_processing_testing_lib
|
2019-02-10 18:34:28 +01:00
|
|
|
algorithms_libs
|
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2018-11-24 18:40:34 +01:00
|
|
|
)
|
2017-02-15 22:10:06 +01:00
|
|
|
install(TARGETS gps_l1_ca_dll_pll_tracking_test_fpga
|
2018-11-24 18:40:34 +01:00
|
|
|
RUNTIME DESTINATION bin
|
|
|
|
COMPONENT "fpga-test"
|
|
|
|
)
|
|
|
|
endif()
|
2017-02-15 22:10:06 +01:00
|
|
|
|
2016-11-28 00:18:02 +01:00
|
|
|
|
2017-02-25 21:13:16 +01:00
|
|
|
################################################################################
|
|
|
|
# System testing
|
|
|
|
################################################################################
|
2018-05-28 15:42:44 +02:00
|
|
|
function(add_system_test executable)
|
|
|
|
## Please call this function with variables OPT_INCLUDES_ and OPT_LIBS_
|
|
|
|
## already defined.
|
|
|
|
set(SYSTEM_TEST_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/system-tests/${executable}.cc)
|
|
|
|
# Ensure that executable is rebuilt if it was previously built and then removed
|
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/install/${executable})
|
|
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E touch ${SYSTEM_TEST_SOURCES})
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-05-28 15:42:44 +02:00
|
|
|
add_executable(${executable} ${SYSTEM_TEST_SOURCES})
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(${executable} PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(${executable} PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(${executable} PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(${executable} PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2018-05-28 15:42:44 +02:00
|
|
|
|
2019-02-03 19:24:44 +01:00
|
|
|
target_include_directories(${executable} PUBLIC ${OPT_INCLUDES_} ${CMAKE_SOURCES_DIR}/src/algorithms/libs)
|
2019-02-10 18:34:28 +01:00
|
|
|
target_link_libraries(${executable} PUBLIC ${OPT_LIBS_} algorithms_libs)
|
2018-05-28 15:42:44 +02:00
|
|
|
|
|
|
|
if(ENABLE_INSTALL_TESTS)
|
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/install/${executable})
|
|
|
|
file(REMOVE ${CMAKE_SOURCE_DIR}/install/${executable})
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-05-28 15:42:44 +02:00
|
|
|
install(TARGETS ${executable} RUNTIME DESTINATION bin COMPONENT "${executable}_test")
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2018-05-28 15:42:44 +02:00
|
|
|
add_custom_command(TARGET ${executable} POST_BUILD
|
2018-11-19 08:51:05 +01:00
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:${executable}>
|
2019-04-02 02:41:20 +02:00
|
|
|
${CMAKE_SOURCE_DIR}/install/$<TARGET_FILE_NAME:${executable}>
|
|
|
|
)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2019-02-21 11:42:56 +01:00
|
|
|
if(ENABLE_CLANG_TIDY)
|
|
|
|
if(CLANG_TIDY_EXE)
|
|
|
|
set_target_properties(${executable}
|
|
|
|
PROPERTIES
|
|
|
|
CXX_CLANG_TIDY "${DO_CLANG_TIDY}"
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
endfunction()
|
2018-05-28 15:42:44 +02:00
|
|
|
|
|
|
|
|
2017-02-25 21:13:16 +01:00
|
|
|
if(ENABLE_SYSTEM_TESTING)
|
|
|
|
set(HOST_SYSTEM "Unknown")
|
|
|
|
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
|
|
|
set(HOST_SYSTEM "GNU/Linux ${LINUX_DISTRIBUTION} ${LINUX_VER} ${ARCH_}")
|
2017-08-12 13:22:54 +02:00
|
|
|
string(REPLACE "\n" "" HOST_SYSTEM "${HOST_SYSTEM}")
|
2018-11-17 19:26:06 +01:00
|
|
|
string(REPLACE "\"" "" HOST_SYSTEM "${HOST_SYSTEM}")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2017-02-25 21:13:16 +01:00
|
|
|
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|
|
|
set(HOST_SYSTEM "MacOS")
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2017-02-25 21:13:16 +01:00
|
|
|
add_definitions(-DHOST_SYSTEM="${HOST_SYSTEM}")
|
2017-11-20 11:21:23 +01:00
|
|
|
|
2018-05-28 15:42:44 +02:00
|
|
|
#### TTFF
|
2019-06-10 21:41:13 +02:00
|
|
|
set(OPT_LIBS_ Boost::thread Boost::date_time
|
2019-02-07 17:21:32 +01:00
|
|
|
Threads::Threads Gflags::gflags Glog::glog
|
|
|
|
Gnuradio::runtime GTest::GTest GTest::Main
|
|
|
|
Gnuradio::blocks Gnuradio::filter
|
2019-02-10 18:34:28 +01:00
|
|
|
Gnuradio::analog algorithms_libs
|
|
|
|
core_receiver core_system_parameters
|
2019-02-07 17:21:32 +01:00
|
|
|
)
|
2018-05-28 15:42:44 +02:00
|
|
|
add_system_test(ttff)
|
2017-02-25 21:13:16 +01:00
|
|
|
|
|
|
|
if(ENABLE_SYSTEM_TESTING_EXTRA)
|
2018-05-28 15:42:44 +02:00
|
|
|
#### POSITION_TEST
|
2019-06-10 21:41:13 +02:00
|
|
|
set(OPT_LIBS_ Boost::thread
|
2019-02-07 17:21:32 +01:00
|
|
|
Threads::Threads Gflags::gflags Glog::glog
|
|
|
|
GTest::GTest GTest::Main Gnuradio::runtime
|
|
|
|
Gnuradio::blocks Gnuradio::filter
|
|
|
|
Gnuradio::analog Matio::matio Volkgnsssdr::volkgnsssdr
|
2019-02-10 18:34:28 +01:00
|
|
|
algorithms_libs core_receiver core_system_parameters
|
2019-02-07 17:21:32 +01:00
|
|
|
system_testing_lib signal_processing_testing_lib
|
|
|
|
)
|
2018-05-28 15:42:44 +02:00
|
|
|
add_system_test(position_test)
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2017-11-10 12:34:20 +01:00
|
|
|
# Avoid working with old executables if they were switched ON and then OFF
|
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/install/position_test)
|
2018-11-19 08:51:05 +01:00
|
|
|
file(REMOVE ${CMAKE_SOURCE_DIR}/install/position_test)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
else()
|
2017-11-10 12:34:20 +01:00
|
|
|
# Avoid working with old executables if they were switched ON and then OFF
|
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/install/ttff)
|
2018-11-19 08:51:05 +01:00
|
|
|
file(REMOVE ${CMAKE_SOURCE_DIR}/install/ttff)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2017-11-10 12:34:20 +01:00
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/install/position_test)
|
|
|
|
file(REMOVE ${CMAKE_SOURCE_DIR}/install/position_test)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
|
|
|
endif()
|
2017-02-25 21:13:16 +01:00
|
|
|
|
|
|
|
|
2012-12-28 15:40:03 +00:00
|
|
|
#########################################################
|
|
|
|
# Adding Tests to Ctest
|
|
|
|
#########################################################
|
2014-12-19 23:19:50 +01:00
|
|
|
set(CMAKE_CTEST_COMMAND ctest -V)
|
|
|
|
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND})
|
|
|
|
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(flowgraph_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/control-plane/gnss_flowgraph_test.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(flowgraph_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(flowgraph_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(flowgraph_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(flowgraph_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(flowgraph_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
|
|
|
signal_source_adapters
|
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
2019-02-10 01:13:02 +01:00
|
|
|
input_filter_adapters
|
|
|
|
channel_adapters
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
algorithms_libs
|
|
|
|
core_system_parameters
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
target_include_directories(flowgraph_test
|
|
|
|
PUBLIC
|
|
|
|
${CMAKE_SOURCE_DIR}/src/algorithms/libs
|
|
|
|
)
|
|
|
|
|
|
|
|
add_test(flowgraph_test flowgraph_test)
|
2019-02-03 19:24:44 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
set_property(TEST flowgraph_test PROPERTY TIMEOUT 30)
|
|
|
|
endif()
|
2019-02-07 17:05:26 +01:00
|
|
|
|
2014-12-24 11:26:36 +01:00
|
|
|
|
2018-03-01 17:30:47 +01:00
|
|
|
#########################################################
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(gnss_block_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/sources/file_signal_source_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/filter/fir_filter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/filter/pulse_blanking_filter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/filter/notch_filter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/filter/notch_filter_lite_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/adapter/pass_through_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/adapter/adapter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/control-plane/gnss_block_factory_test.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(gnss_block_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(gnss_block_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(gnss_block_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(gnss_block_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(gnss_block_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
|
|
|
Gnuradio::filter
|
|
|
|
Gnuradio::analog
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
|
|
|
signal_source_adapters
|
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
data_type_adapters
|
2019-02-10 01:13:02 +01:00
|
|
|
input_filter_adapters
|
|
|
|
channel_adapters
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
algorithms_libs
|
|
|
|
core_system_parameters
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
target_include_directories(gnss_block_test PUBLIC ${CMAKE_SOURCE_DIR}/src/algorithms/libs)
|
2019-02-07 17:21:32 +01:00
|
|
|
|
2019-02-10 13:52:37 +01:00
|
|
|
if(ENABLE_FPGA)
|
|
|
|
target_compile_definitions(gnss_block_test PUBLIC -DENABLE_FPGA=1)
|
|
|
|
endif()
|
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
add_test(gnss_block_test gnss_block_test)
|
2019-02-07 17:21:32 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
set_property(TEST gnss_block_test PROPERTY TIMEOUT 60)
|
|
|
|
endif()
|
2019-02-07 17:21:32 +01:00
|
|
|
|
2018-03-01 17:30:47 +01:00
|
|
|
|
|
|
|
#########################################################
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(gnuradio_block_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/sources/unpack_2bit_samples_test.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(gnuradio_block_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(gnuradio_block_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(gnuradio_block_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(gnuradio_block_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(gnuradio_block_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
|
|
|
Gnuradio::filter
|
|
|
|
Gnuradio::analog
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
core_receiver
|
|
|
|
algorithms_libs
|
|
|
|
core_system_parameters
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
2019-02-07 17:21:32 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
add_test(gnuradio_block_test gnuradio_block_test)
|
2019-02-07 17:21:32 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
set_property(TEST gnuradio_block_test PROPERTY TIMEOUT 30)
|
|
|
|
endif()
|
2018-03-01 17:30:47 +01:00
|
|
|
|
2015-10-01 20:55:33 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
#########################################################
|
|
|
|
add_executable(matio_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
2018-11-24 18:40:34 +01:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/arithmetic/matio_test.cc
|
|
|
|
)
|
2019-02-10 01:13:02 +01:00
|
|
|
|
2019-07-14 09:31:03 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(matio_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(matio_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
|
|
|
target_link_libraries(matio_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(matio_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
|
|
|
|
2019-02-03 19:24:44 +01:00
|
|
|
target_link_libraries(matio_test
|
|
|
|
PUBLIC
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
2019-02-07 22:06:48 +01:00
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Matio::matio
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2018-11-24 18:40:34 +01:00
|
|
|
)
|
2019-02-03 19:24:44 +01:00
|
|
|
|
2018-02-24 00:13:35 +01:00
|
|
|
add_test(matio_test matio_test)
|
2019-02-03 19:24:44 +01:00
|
|
|
|
2018-11-18 13:00:36 +01:00
|
|
|
set_property(TEST matio_test PROPERTY TIMEOUT 30)
|
2018-03-01 17:30:47 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
|
2018-03-01 17:30:47 +01:00
|
|
|
#########################################################
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(acq_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/acquisition/gps_l1_ca_pcps_acquisition_test.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(acq_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
|
|
|
target_link_libraries(acq_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(acq_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(acq_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
|
|
|
Gnuradio::filter
|
|
|
|
Gnuradio::analog
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
2019-02-21 09:59:06 +01:00
|
|
|
signal_generator_gr_blocks
|
2019-02-10 01:13:02 +01:00
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
acquisition_adapters
|
|
|
|
acquisition_gr_blocks
|
|
|
|
algorithms_libs
|
2019-02-10 01:13:02 +01:00
|
|
|
signal_processing_testing_lib
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
2019-02-03 19:24:44 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
add_test(acq_test acq_test)
|
2019-02-07 17:05:26 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
set_property(TEST acq_test PROPERTY TIMEOUT 30)
|
|
|
|
endif()
|
2018-02-23 23:44:57 +01:00
|
|
|
|
2014-12-21 22:46:57 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
#########################################################
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-06-14 21:16:40 +02:00
|
|
|
set(NONLINEAR_SOURCES "")
|
2019-06-15 10:11:11 +02:00
|
|
|
if(ARMADILLO_VERSION_STRING VERSION_GREATER 8.400)
|
2019-06-14 21:16:40 +02:00
|
|
|
set(NONLINEAR_SOURCES
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/cubature_filter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/unscented_filter_test.cc
|
|
|
|
)
|
|
|
|
endif()
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(trk_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/galileo_e1_dll_pll_veml_tracking_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/tracking_loop_filter_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/cpu_multicorrelator_real_codes_test.cc
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/signal-processing-blocks/tracking/bayesian_estimation_test.cc
|
2019-06-14 21:16:40 +02:00
|
|
|
${NONLINEAR_SOURCES}
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(trk_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(trk_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(trk_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(trk_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2018-02-23 23:44:57 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(trk_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
Gnuradio::runtime
|
|
|
|
Gnuradio::blocks
|
|
|
|
Gnuradio::filter
|
|
|
|
Gnuradio::analog
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
Volkgnsssdr::volkgnsssdr
|
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
algorithms_libs
|
2019-02-10 01:13:02 +01:00
|
|
|
tracking_adapters
|
2019-02-21 09:59:06 +01:00
|
|
|
signal_generator_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2019-02-10 01:13:02 +01:00
|
|
|
)
|
2019-02-07 17:05:26 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
add_test(trk_test trk_test)
|
2018-11-18 13:00:36 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
set_property(TEST trk_test PROPERTY TIMEOUT 30)
|
|
|
|
endif()
|
2017-04-13 20:29:56 +02:00
|
|
|
|
2018-03-01 21:02:48 +01:00
|
|
|
#########################################################
|
|
|
|
|
2019-03-06 19:16:18 +01:00
|
|
|
if(NOT ENABLE_PACKAGING AND NOT ENABLE_FPGA)
|
2019-02-10 01:13:02 +01:00
|
|
|
add_executable(control_thread_test
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/single_test_main.cc
|
2018-11-24 18:40:34 +01:00
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/unit-tests/control-plane/control_thread_test.cc
|
|
|
|
)
|
2019-06-10 21:41:13 +02:00
|
|
|
if(${FILESYSTEM_FOUND})
|
|
|
|
target_compile_definitions(control_thread_test PRIVATE -DHAS_STD_FILESYSTEM=1)
|
2019-06-12 20:39:29 +02:00
|
|
|
if(${find_experimental})
|
|
|
|
target_compile_definitions(control_thread_test PRIVATE -DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
|
|
|
|
endif()
|
2019-06-10 21:41:13 +02:00
|
|
|
target_link_libraries(control_thread_test PRIVATE std::filesystem)
|
|
|
|
else()
|
|
|
|
target_link_libraries(control_thread_test PRIVATE Boost::filesystem Boost::system)
|
|
|
|
endif()
|
2018-03-01 21:02:48 +01:00
|
|
|
|
2019-02-10 01:13:02 +01:00
|
|
|
target_link_libraries(control_thread_test
|
|
|
|
PUBLIC
|
|
|
|
Boost::thread
|
|
|
|
Gflags::gflags
|
|
|
|
Glog::glog
|
|
|
|
GTest::GTest
|
|
|
|
GTest::Main
|
|
|
|
signal_source_adapters
|
|
|
|
signal_source_gr_blocks
|
2019-02-10 18:34:28 +01:00
|
|
|
signal_source_libs
|
|
|
|
algorithms_libs
|
|
|
|
core_receiver
|
|
|
|
core_system_parameters
|
2018-11-24 18:40:34 +01:00
|
|
|
)
|
2019-03-06 19:17:36 +01:00
|
|
|
|
2018-03-01 21:02:48 +01:00
|
|
|
add_test(control_thread_test control_thread_test)
|
2019-02-07 17:05:26 +01:00
|
|
|
|
2018-03-01 21:02:48 +01:00
|
|
|
set_property(TEST control_thread_test PROPERTY TIMEOUT 30)
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|
2018-03-01 21:02:48 +01:00
|
|
|
|
|
|
|
#########################################################
|
|
|
|
|
|
|
|
if(ENABLE_PACKAGING)
|
2019-02-03 19:24:44 +01:00
|
|
|
add_dependencies(check matio_test)
|
2018-11-24 18:40:34 +01:00
|
|
|
else()
|
2019-03-06 19:16:18 +01:00
|
|
|
if(ENABLE_FPGA)
|
|
|
|
add_dependencies(check matio_test)
|
|
|
|
else()
|
2019-04-02 02:41:20 +02:00
|
|
|
add_dependencies(check
|
|
|
|
control_thread_test
|
|
|
|
flowgraph_test
|
|
|
|
gnss_block_test
|
|
|
|
gnuradio_block_test
|
|
|
|
acq_test
|
|
|
|
trk_test
|
|
|
|
matio_test
|
|
|
|
)
|
2019-03-06 19:16:18 +01:00
|
|
|
endif()
|
2018-11-24 18:40:34 +01:00
|
|
|
endif()
|