From a25ce40d5457b1a4245b86252f1378d750cf127f Mon Sep 17 00:00:00 2001 From: Marc Majoral Date: Thu, 6 May 2021 20:38:22 +0200 Subject: [PATCH 1/4] added a signal in the FPGA to stop the receiver modules. --- .../galileo_e1_pcps_ambiguous_acquisition_fpga.cc | 4 ++-- .../adapters/galileo_e5a_pcps_acquisition_fpga.cc | 4 ++-- .../adapters/gps_l1_ca_pcps_acquisition_fpga.cc | 4 ++-- .../adapters/gps_l2_m_pcps_acquisition_fpga.cc | 2 ++ .../adapters/gps_l5i_pcps_acquisition_fpga.cc | 4 ++-- .../gnuradio_blocks/pcps_acquisition_fpga.cc | 8 ++++++++ .../gnuradio_blocks/pcps_acquisition_fpga.h | 5 +++++ src/algorithms/acquisition/libs/fpga_acquisition.cc | 8 ++++++-- src/algorithms/acquisition/libs/fpga_acquisition.h | 10 ++++++++-- 9 files changed, 37 insertions(+), 12 deletions(-) diff --git a/src/algorithms/acquisition/adapters/galileo_e1_pcps_ambiguous_acquisition_fpga.cc b/src/algorithms/acquisition/adapters/galileo_e1_pcps_ambiguous_acquisition_fpga.cc index 30c096a63..59ebe3309 100644 --- a/src/algorithms/acquisition/adapters/galileo_e1_pcps_ambiguous_acquisition_fpga.cc +++ b/src/algorithms/acquisition/adapters/galileo_e1_pcps_ambiguous_acquisition_fpga.cc @@ -189,8 +189,8 @@ GalileoE1PcpsAmbiguousAcquisitionFpga::GalileoE1PcpsAmbiguousAcquisitionFpga( void GalileoE1PcpsAmbiguousAcquisitionFpga::stop_acquisition() { - // this command causes the SW to reset the HW. - acquisition_fpga_->reset_acquisition(); + // stop the acquisition and the other FPGA modules. + acquisition_fpga_->stop_acquisition(); } diff --git a/src/algorithms/acquisition/adapters/galileo_e5a_pcps_acquisition_fpga.cc b/src/algorithms/acquisition/adapters/galileo_e5a_pcps_acquisition_fpga.cc index 62461494f..ca26fba62 100644 --- a/src/algorithms/acquisition/adapters/galileo_e5a_pcps_acquisition_fpga.cc +++ b/src/algorithms/acquisition/adapters/galileo_e5a_pcps_acquisition_fpga.cc @@ -192,8 +192,8 @@ GalileoE5aPcpsAcquisitionFpga::GalileoE5aPcpsAcquisitionFpga( void GalileoE5aPcpsAcquisitionFpga::stop_acquisition() { - // this command causes the SW to reset the HW. - acquisition_fpga_->reset_acquisition(); + // stop the acquisition and the other FPGA modules. + acquisition_fpga_->stop_acquisition(); } diff --git a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition_fpga.cc b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition_fpga.cc index 8117920c7..5362f78bc 100644 --- a/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition_fpga.cc +++ b/src/algorithms/acquisition/adapters/gps_l1_ca_pcps_acquisition_fpga.cc @@ -168,8 +168,8 @@ GpsL1CaPcpsAcquisitionFpga::GpsL1CaPcpsAcquisitionFpga( void GpsL1CaPcpsAcquisitionFpga::stop_acquisition() { - // this command causes the SW to reset the HW. - acquisition_fpga_->reset_acquisition(); + // stop the acquisition and the other FPGA modules. + acquisition_fpga_->stop_acquisition(); } diff --git a/src/algorithms/acquisition/adapters/gps_l2_m_pcps_acquisition_fpga.cc b/src/algorithms/acquisition/adapters/gps_l2_m_pcps_acquisition_fpga.cc index 464959a74..b3d0d117d 100644 --- a/src/algorithms/acquisition/adapters/gps_l2_m_pcps_acquisition_fpga.cc +++ b/src/algorithms/acquisition/adapters/gps_l2_m_pcps_acquisition_fpga.cc @@ -158,6 +158,8 @@ GpsL2MPcpsAcquisitionFpga::GpsL2MPcpsAcquisitionFpga( void GpsL2MPcpsAcquisitionFpga::stop_acquisition() { + // stop the acquisition and the other FPGA modules. + acquisition_fpga_->stop_acquisition(); } diff --git a/src/algorithms/acquisition/adapters/gps_l5i_pcps_acquisition_fpga.cc b/src/algorithms/acquisition/adapters/gps_l5i_pcps_acquisition_fpga.cc index e287a8fd1..fe9a7a605 100644 --- a/src/algorithms/acquisition/adapters/gps_l5i_pcps_acquisition_fpga.cc +++ b/src/algorithms/acquisition/adapters/gps_l5i_pcps_acquisition_fpga.cc @@ -170,8 +170,8 @@ GpsL5iPcpsAcquisitionFpga::GpsL5iPcpsAcquisitionFpga( void GpsL5iPcpsAcquisitionFpga::stop_acquisition() { - // this command causes the SW to reset the HW. - acquisition_fpga_->reset_acquisition(); + // stop the acquisition and the other FPGA modules. + acquisition_fpga_->stop_acquisition(); } diff --git a/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.cc b/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.cc index 07629d80e..e1f8949e1 100644 --- a/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.cc +++ b/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.cc @@ -301,3 +301,11 @@ void pcps_acquisition_fpga::reset_acquisition() d_acquisition_fpga->reset_acquisition(); d_acquisition_fpga->close_device(); } + +void pcps_acquisition_fpga::stop_acquisition() +{ + // this function stops the acquisition and the other FPGA Modules. + d_acquisition_fpga->open_device(); + d_acquisition_fpga->stop_acquisition(); + d_acquisition_fpga->close_device(); +} diff --git a/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.h b/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.h index aeebc27c9..3b3e534ee 100644 --- a/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.h +++ b/src/algorithms/acquisition/gnuradio_blocks/pcps_acquisition_fpga.h @@ -189,6 +189,11 @@ public: */ void reset_acquisition(); + /*! + * \brief stop the acquisition and the other FPGA modules. + */ + void stop_acquisition(); + private: friend pcps_acquisition_fpga_sptr pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_); explicit pcps_acquisition_fpga(pcpsconf_fpga_t conf_); diff --git a/src/algorithms/acquisition/libs/fpga_acquisition.cc b/src/algorithms/acquisition/libs/fpga_acquisition.cc index ab1439567..e198b32aa 100644 --- a/src/algorithms/acquisition/libs/fpga_acquisition.cc +++ b/src/algorithms/acquisition/libs/fpga_acquisition.cc @@ -240,11 +240,15 @@ void Fpga_Acquisition::close_device() void Fpga_Acquisition::reset_acquisition() { - // printf("============ resetting the hw now from the acquisition ==============="); - d_map_base[8] = RESET_ACQUISITION; // writing a 2 to d_map_base[8] resets the acquisition. This causes a reset of all + d_map_base[8] = RESET_ACQUISITION; // setting bit 2 of d_map_base[8] resets the acquisition. This causes a reset of all // the FPGA HW modules including the multicorrelators } +void Fpga_Acquisition::stop_acquisition() +{ + d_map_base[8] = STOP_ACQUISITION; // setting bit 3 of d_map_base[8] stops the acquisition module. This stops all + // the FPGA HW modules including the multicorrelators +} // this function is only used for the unit tests void Fpga_Acquisition::read_fpga_total_scale_factor(uint32_t *total_scale_factor, uint32_t *fw_scale_factor) diff --git a/src/algorithms/acquisition/libs/fpga_acquisition.h b/src/algorithms/acquisition/libs/fpga_acquisition.h index 7b5453f0c..3b6aa792c 100644 --- a/src/algorithms/acquisition/libs/fpga_acquisition.h +++ b/src/algorithms/acquisition/libs/fpga_acquisition.h @@ -105,6 +105,11 @@ public: */ void reset_acquisition(); + /*! + * \brief stop the acquisition and the FPGA modules. + */ + void stop_acquisition(); + /*! * \brief Read the scaling factor that has been used by the FFT-IFFT */ @@ -138,8 +143,9 @@ public: private: // FPGA register parameters static const uint32_t PAGE_SIZE_DEFAULT = 0x10000; // default page size for the multicorrelator memory map - static const uint32_t RESET_ACQUISITION = 2; // command to reset the multicorrelator - static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the multicorrelator + static const uint32_t RESET_ACQUISITION = 2; // command to reset the acquisition and the FPGA Modules + static const uint32_t STOP_ACQUISITION = 4; // command to stop the acquisition and the FPGA modules + static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the acquisition process static const uint32_t TEST_REG_SANITY_CHECK = 0x55AA; // value to check the presence of the test register (to detect the hw) static const uint32_t LOCAL_CODE_CLEAR_MEM = 0x10000000; // command to clear the internal memory of the multicorrelator static const uint32_t MEM_LOCAL_CODE_WR_ENABLE = 0x0C000000; // command to enable the ENA and WR pins of the internal memory of the multicorrelator From 8b21572331c02fba3365440bb07f2943326d67c4 Mon Sep 17 00:00:00 2001 From: Marc Majoral Date: Thu, 6 May 2021 20:48:41 +0200 Subject: [PATCH 2/4] code cleaning --- src/algorithms/acquisition/libs/fpga_acquisition.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/algorithms/acquisition/libs/fpga_acquisition.h b/src/algorithms/acquisition/libs/fpga_acquisition.h index 3b6aa792c..d9d2b31ba 100644 --- a/src/algorithms/acquisition/libs/fpga_acquisition.h +++ b/src/algorithms/acquisition/libs/fpga_acquisition.h @@ -143,9 +143,9 @@ public: private: // FPGA register parameters static const uint32_t PAGE_SIZE_DEFAULT = 0x10000; // default page size for the multicorrelator memory map + static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the acquisition process static const uint32_t RESET_ACQUISITION = 2; // command to reset the acquisition and the FPGA Modules static const uint32_t STOP_ACQUISITION = 4; // command to stop the acquisition and the FPGA modules - static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the acquisition process static const uint32_t TEST_REG_SANITY_CHECK = 0x55AA; // value to check the presence of the test register (to detect the hw) static const uint32_t LOCAL_CODE_CLEAR_MEM = 0x10000000; // command to clear the internal memory of the multicorrelator static const uint32_t MEM_LOCAL_CODE_WR_ENABLE = 0x0C000000; // command to enable the ENA and WR pins of the internal memory of the multicorrelator From 9e12aa792437abb7988cd0230ef7288f6ce579ab Mon Sep 17 00:00:00 2001 From: Carles Fernandez Date: Sun, 9 May 2021 09:27:51 +0200 Subject: [PATCH 3/4] Update local glog version to 0.5.0, ProtocolBuffers version to 3.16.0 and update Googletest commit --- CMakeLists.txt | 20 +++++++++++--------- README.md | 16 ++++++++-------- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0d846cdfb..846d8083f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -322,25 +322,27 @@ set(GNSSSDR_PROTOBUF_MIN_VERSION "3.0.0") # Versions to download and build (but not installed) if not found ################################################################################ set(GNSSSDR_GFLAGS_LOCAL_VERSION "2.2.2") -set(GNSSSDR_GLOG_LOCAL_VERSION "0.4.0") +set(GNSSSDR_GLOG_LOCAL_VERSION "0.5.0") set(GNSSSDR_ARMADILLO_LOCAL_VERSION "10.4.x") set(GNSSSDR_GTEST_LOCAL_VERSION "1.10.x") -set(GNSSSDR_GTEST_LOCAL_VERSION_POST_CMAKE_3_19 "23ef29555ef4789f555f1ba8c51b4c52975f0907") # Used with CMake >= 3.19 +set(GNSSSDR_GTEST_LOCAL_VERSION_POST_CMAKE_3_19 "f5e592d8ee5ffb1d9af5be7f715ce3576b8bf9c4") # Used with CMake >= 3.19 set(GNSSSDR_GNSS_SIM_LOCAL_VERSION "master") set(GNSSSDR_GPSTK_LOCAL_VERSION "8.0.0") set(GNSSSDR_MATIO_LOCAL_VERSION "1.5.21") set(GNSSSDR_PUGIXML_LOCAL_VERSION "1.11.4") -set(GNSSSDR_PROTOCOLBUFFERS_LOCAL_VERSION "3.15.8") +set(GNSSSDR_PROTOCOLBUFFERS_LOCAL_VERSION "3.16.0") set(GNSSSDR_BENCHMARK_LOCAL_VERSION "1.5.3") set(GNSSSDR_MATHJAX_EXTERNAL_VERSION "2.7.7") +if(CMAKE_VERSION VERSION_LESS "3.3") + set(GNSSSDR_GLOG_LOCAL_VERSION "0.4.0") # Fix for Debian 8 +endif() + if(CMAKE_VERSION VERSION_LESS "3.0.2") set(GNSSSDR_GFLAGS_LOCAL_VERSION "2.2.1") # Fix for CentOS 7 set(GNSSSDR_GLOG_LOCAL_VERSION "0.3.4") # Fix for Ubuntu 14.04 endif() - - ################################################################################ # Check compiler version ################################################################################ @@ -1467,7 +1469,7 @@ if(NOT GLOG_FOUND OR ${LOCAL_GFLAGS}) set(GLOG_TOOLCHAIN_FILE -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}) endif() - if(CMAKE_VERSION VERSION_LESS 3.2) + if(CMAKE_VERSION VERSION_LESS 3.3) if(CMAKE_VERSION VERSION_LESS 3.0) set(GLOG_MAKE_PROGRAM ${CMAKE_MAKE_PROGRAM}) set(GFLAGS_LIBRARIES_TO_LINK ${GFlags_LIBS}) @@ -1576,7 +1578,7 @@ ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configure ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/src ${CMAKE_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/src ) - else() # CMake > 3.0 but < 3.2 + else() # CMake > 3.0 but < 3.3 ExternalProject_Add(glog-${GNSSSDR_GLOG_LOCAL_VERSION} DEPENDS ${TARGET_GFLAGS} PREFIX ${CMAKE_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION} @@ -1600,7 +1602,7 @@ ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configure ${GFlags_INCLUDE_DIRS} ) endif() - else() # CMake > 3.2 + else() # CMake > 3.3 set(GLOG_BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/${CMAKE_FIND_LIBRARY_PREFIXES}glog${CMAKE_STATIC_LIBRARY_SUFFIX} ) @@ -1621,10 +1623,10 @@ ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configure SOURCE_DIR ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION} BINARY_DIR ${CMAKE_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION} CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} - -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_PREFIX_PATH=${GFLAGS_PREFIX_PATH} ${GLOG_TOOLCHAIN_FILE} -DCMAKE_BUILD_TYPE=$<$:Debug>$<$:Release>$<$:RelWithDebInfo>$<$:MinSizeRel>$<$:Debug>$<$:Debug>$<$:RelWithDebInfo>$<$:RelWithDebInfo>$<$:Debug> + -DBUILD_SHARED_LIBS=OFF BUILD_COMMAND "${GLOG_MAKE_PROGRAM} ${PARALLEL_BUILD}" BUILD_BYPRODUCTS ${GLOG_BUILD_BYPRODUCTS} UPDATE_COMMAND "" diff --git a/README.md b/README.md index 4c858f4a6..eac9d2e42 100644 --- a/README.md +++ b/README.md @@ -322,11 +322,11 @@ $ sudo ldconfig #### Install [Glog](https://github.com/google/glog "Glog's Homepage"), a library that implements application-level logging: ``` -$ wget https://github.com/google/glog/archive/v0.4.0.tar.gz -$ tar xvfz v0.4.0.tar.gz -$ cd glog-0.4.0 -$ ./autogen.sh -$ ./configure +$ wget https://github.com/google/glog/archive/v0.5.0.tar.gz +$ tar xvfz v0.5.0.tar.gz +$ cd glog-0.5.0 +$ mkdir build && cd build +$ cmake .. $ make $ sudo make install $ sudo ldconfig @@ -395,9 +395,9 @@ $ sudo apt-get install autoconf automake libtool curl make g++ unzip and then: ``` -$ wget https://github.com/protocolbuffers/protobuf/releases/download/v3.15.8/protobuf-cpp-3.15.8.tar.gz -$ tar xvfz protobuf-cpp-3.15.8.tar.gz -$ cd protobuf-3.15.8 +$ wget https://github.com/protocolbuffers/protobuf/releases/download/v3.16.0/protobuf-cpp-3.16.0.tar.gz +$ tar xvfz protobuf-cpp-3.16.0.tar.gz +$ cd protobuf-3.16.0 $ ./autogen.sh $ ./configure $ make From 6dedcb6c3aa559c66fca8f5aa5718e1e8ad25c2f Mon Sep 17 00:00:00 2001 From: Carles Fernandez Date: Tue, 11 May 2021 11:56:01 +0200 Subject: [PATCH 4/4] Save time and some warnings when building glog-v0.5.0 by deactivating tests Improve wording in messages --- CMakeLists.txt | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 846d8083f..0de5a622a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -343,6 +343,8 @@ if(CMAKE_VERSION VERSION_LESS "3.0.2") set(GNSSSDR_GLOG_LOCAL_VERSION "0.3.4") # Fix for Ubuntu 14.04 endif() + + ################################################################################ # Check compiler version ################################################################################ @@ -549,7 +551,7 @@ set_package_properties(GOOGLETEST PROPERTIES ) 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}'." + PURPOSE "Googletest v${GNSSSDR_GTEST_LOCAL_VERSION} will be downloaded, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() @@ -1306,7 +1308,7 @@ if(NOT GFLAGS_FOUND) else() message(STATUS " The gflags library has not been found.") endif() - message(STATUS " gflags v${GNSSSDR_GFLAGS_LOCAL_VERSION} will be downloaded and built automatically") + message(STATUS " gflags v${GNSSSDR_GFLAGS_LOCAL_VERSION} will be downloaded, built, and statically linked automatically") message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") set(GFLAGS_BUILD_COMMAND ${CMAKE_COMMAND} "--build" "${CMAKE_BINARY_DIR}/gflags-${GNSSSDR_GFLAGS_LOCAL_VERSION}" @@ -1418,9 +1420,9 @@ if(NOT GFLAGS_FOUND) target_link_libraries(Gflags::gflags INTERFACE shlwapi.lib) endif() - set(LOCAL_GFLAGS TRUE CACHE STRING "GFlags downloaded and built automatically" FORCE) + set(LOCAL_GFLAGS TRUE CACHE STRING "GFlags downloaded, built, and statically linked automatically" FORCE) set_package_properties(GFLAGS PROPERTIES - PURPOSE "Gflags v${GNSSSDR_GFLAGS_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." + PURPOSE "Gflags v${GNSSSDR_GFLAGS_LOCAL_VERSION} and Glog v${GNSSSDR_GLOG_LOCAL_VERSION} will be downloaded, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) if(CMAKE_VERSION VERSION_LESS 3.2) set_property(TARGET Gflags::gflags APPEND PROPERTY @@ -1446,7 +1448,7 @@ if(NOT GLOG_FOUND OR ${LOCAL_GFLAGS}) if(NOT GFLAGS_FOUND) message(STATUS " or it is likely not linked to gflags.") endif() - message(STATUS " glog v${GNSSSDR_GLOG_LOCAL_VERSION} will be downloaded and built automatically") + message(STATUS " glog v${GNSSSDR_GLOG_LOCAL_VERSION} will be downloaded, built, and statically linked automatically") message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") if(NOT ${LOCAL_GFLAGS}) add_library(gflags-${GNSSSDR_GFLAGS_LOCAL_VERSION} UNKNOWN IMPORTED) @@ -1627,6 +1629,7 @@ ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configure ${GLOG_TOOLCHAIN_FILE} -DCMAKE_BUILD_TYPE=$<$:Debug>$<$:Release>$<$:RelWithDebInfo>$<$:MinSizeRel>$<$:Debug>$<$:Debug>$<$:RelWithDebInfo>$<$:RelWithDebInfo>$<$:Debug> -DBUILD_SHARED_LIBS=OFF + -DBUILD_TESTING=OFF BUILD_COMMAND "${GLOG_MAKE_PROGRAM} ${PARALLEL_BUILD}" BUILD_BYPRODUCTS ${GLOG_BUILD_BYPRODUCTS} UPDATE_COMMAND "" @@ -1685,10 +1688,10 @@ ${CMAKE_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configure endif() endif() - set(LOCAL_GLOG TRUE CACHE STRING "Glog downloaded and built automatically" FORCE) + set(LOCAL_GLOG TRUE CACHE STRING "Glog downloaded, built, and statically linked automatically" FORCE) set_package_properties(GLOG PROPERTIES - PURPOSE "Glog v${GNSSSDR_GLOG_LOCAL_VERSION} will be downloaded and built when doing 'make'." + PURPOSE "Glog v${GNSSSDR_GLOG_LOCAL_VERSION} will be downloaded, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() @@ -1814,7 +1817,7 @@ else() endif() if(NOT ARMADILLO_FOUND OR ENABLE_OWN_ARMADILLO) - message(STATUS " Armadillo ${GNSSSDR_ARMADILLO_LOCAL_VERSION} will be downloaded and built automatically") + message(STATUS " Armadillo ${GNSSSDR_ARMADILLO_LOCAL_VERSION} will be downloaded, built, and statically linked automatically") message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") set(armadillo_BRANCH ${GNSSSDR_ARMADILLO_LOCAL_VERSION}) set(armadillo_RELEASE ${armadillo_BRANCH}) @@ -1909,7 +1912,7 @@ if(NOT ARMADILLO_FOUND OR ENABLE_OWN_ARMADILLO) set(GFORTRAN "") endif() set(ARMADILLO_STATIC_LIBRARY ${binary_dir}/${CMAKE_FIND_LIBRARY_PREFIXES}armadillo${CMAKE_STATIC_LIBRARY_SUFFIX}) - set(LOCAL_ARMADILLO TRUE CACHE STRING "Armadillo downloaded and built automatically" FORCE) + set(LOCAL_ARMADILLO TRUE CACHE STRING "Armadillo downloaded, built, and statically linked automatically" FORCE) set(ARMADILLO_VERSION_STRING ${armadillo_RELEASE}) file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/thirdparty/armadillo/armadillo-${armadillo_RELEASE}/include) add_library(Armadillo::armadillo STATIC IMPORTED) @@ -1941,7 +1944,7 @@ if(NOT ARMADILLO_FOUND OR ENABLE_OWN_ARMADILLO) endif() 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, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() @@ -2053,7 +2056,7 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS if(MATIO_FOUND) message(STATUS " Matio installed version (${MATIO_VERSION_STRING}) is too old (>= ${GNSSSDR_MATIO_MIN_VERSION} is required).") 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, built, and statically linked automatically") message(STATUS " when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") find_package(ZLIB) set_package_properties(ZLIB PROPERTIES @@ -2222,7 +2225,7 @@ if(NOT MATIO_FOUND OR MATIO_VERSION_STRING VERSION_LESS ${GNSSSDR_MATIO_MIN_VERS message(FATAL_ERROR "*** The zlib library is required to build gnss-sdr") endif() set_package_properties(MATIO PROPERTIES - PURPOSE "Matio v${GNSSSDR_MATIO_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." + PURPOSE "Matio v${GNSSSDR_MATIO_LOCAL_VERSION} will be downloaded, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() @@ -2237,7 +2240,7 @@ set_package_properties(PUGIXML PROPERTIES TYPE REQUIRED ) if(NOT PUGIXML_FOUND) - 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, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'.") set(PUGIXML_COMPILER -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}) set(PUGIXML_CMAKE_FLAGS "") if(DEFINED ENV{OECORE_TARGET_SYSROOT}) @@ -2326,7 +2329,7 @@ if(NOT PUGIXML_FOUND) endif() 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, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() @@ -2580,7 +2583,7 @@ if((NOT Protobuf_FOUND) OR (NOT Protobuf_PROTOC_EXECUTABLE) OR (${Protobuf_VERSI endif() endif() set_package_properties(Protobuf PROPERTIES - PURPOSE "Protocol Buffers v${GNSSSDR_PROTOCOLBUFFERS_LOCAL_VERSION} will be downloaded and built when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." + PURPOSE "Protocol Buffers v${GNSSSDR_PROTOCOLBUFFERS_LOCAL_VERSION} will be downloaded, built, and statically linked when doing '${CMAKE_MAKE_PROGRAM_PRETTY_NAME}'." ) endif() if(${Protobuf_VERSION} VERSION_EQUAL "0.0.0")