mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-30 23:03:05 +00:00 
			
		
		
		
	No Armadillo bound checking if compiled in Release mode
This commit is contained in:
		| @@ -95,6 +95,12 @@ target_include_directories(pvt_libs | |||||||
|  |  | ||||||
| target_compile_definitions(pvt_libs PRIVATE -DGNSS_SDR_VERSION="${VERSION}") | target_compile_definitions(pvt_libs PRIVATE -DGNSS_SDR_VERSION="${VERSION}") | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(pvt_libs | ||||||
|  |         PUBLIC -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| if(Boost_VERSION_STRING VERSION_GREATER 1.65.99) | if(Boost_VERSION_STRING VERSION_GREATER 1.65.99) | ||||||
|     target_compile_definitions(pvt_libs |     target_compile_definitions(pvt_libs | ||||||
|         PUBLIC |         PUBLIC | ||||||
|   | |||||||
| @@ -32,6 +32,9 @@ | |||||||
| #ifndef GNSS_SDR_PVT_SOLUTION_H_ | #ifndef GNSS_SDR_PVT_SOLUTION_H_ | ||||||
| #define GNSS_SDR_PVT_SOLUTION_H_ | #define GNSS_SDR_PVT_SOLUTION_H_ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include <armadillo> | #include <armadillo> | ||||||
| #include <boost/date_time/posix_time/posix_time.hpp> | #include <boost/date_time/posix_time/posix_time.hpp> | ||||||
|   | |||||||
| @@ -69,12 +69,13 @@ endif() | |||||||
| target_link_libraries(acquisition_gr_blocks | target_link_libraries(acquisition_gr_blocks | ||||||
|     PUBLIC |     PUBLIC | ||||||
|         algorithms_libs |         algorithms_libs | ||||||
|  |         acquisition_libs | ||||||
|  |         channel_libs | ||||||
|  |         core_system_parameters | ||||||
|  |         Armadillo::armadillo | ||||||
|         Gnuradio::runtime |         Gnuradio::runtime | ||||||
|         Gnuradio::fft |         Gnuradio::fft | ||||||
|         Volk::volk |         Volk::volk | ||||||
|         channel_libs |  | ||||||
|         acquisition_libs |  | ||||||
|         core_system_parameters |  | ||||||
|     PRIVATE |     PRIVATE | ||||||
|         Gflags::gflags |         Gflags::gflags | ||||||
|         Glog::glog |         Glog::glog | ||||||
| @@ -90,6 +91,12 @@ target_include_directories(acquisition_gr_blocks | |||||||
|         ${CMAKE_SOURCE_DIR}/src/core/receiver |         ${CMAKE_SOURCE_DIR}/src/core/receiver | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(acquisition_gr_blocks | ||||||
|  |         PUBLIC -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| if(OPENCL_FOUND) | if(OPENCL_FOUND) | ||||||
|     target_link_libraries(acquisition_gr_blocks PUBLIC OpenCL::OpenCL) |     target_link_libraries(acquisition_gr_blocks PUBLIC OpenCL::OpenCL) | ||||||
|     target_include_directories(acquisition_gr_blocks |     target_include_directories(acquisition_gr_blocks | ||||||
|   | |||||||
| @@ -52,6 +52,10 @@ | |||||||
| #ifndef GNSS_SDR_PCPS_ACQUISITION_H_ | #ifndef GNSS_SDR_PCPS_ACQUISITION_H_ | ||||||
| #define GNSS_SDR_PCPS_ACQUISITION_H_ | #define GNSS_SDR_PCPS_ACQUISITION_H_ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include "acq_conf.h" | #include "acq_conf.h" | ||||||
| #include "channel_fsm.h" | #include "channel_fsm.h" | ||||||
| #include <armadillo> | #include <armadillo> | ||||||
|   | |||||||
| @@ -49,6 +49,10 @@ | |||||||
| #ifndef GNSS_SDR_PCPS_ACQUISITION_FINE_DOPPLER_CC_H_ | #ifndef GNSS_SDR_PCPS_ACQUISITION_FINE_DOPPLER_CC_H_ | ||||||
| #define GNSS_SDR_PCPS_ACQUISITION_FINE_DOPPLER_CC_H_ | #define GNSS_SDR_PCPS_ACQUISITION_FINE_DOPPLER_CC_H_ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include "acq_conf.h" | #include "acq_conf.h" | ||||||
| #include "channel_fsm.h" | #include "channel_fsm.h" | ||||||
| #include "gnss_synchro.h" | #include "gnss_synchro.h" | ||||||
|   | |||||||
| @@ -130,6 +130,12 @@ if(OPENCL_FOUND) | |||||||
|     ) |     ) | ||||||
| endif() | endif() | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(algorithms_libs | ||||||
|  |         PUBLIC -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| target_include_directories(algorithms_libs | target_include_directories(algorithms_libs | ||||||
|     PUBLIC |     PUBLIC | ||||||
|         ${CMAKE_SOURCE_DIR}/src/core/interfaces |         ${CMAKE_SOURCE_DIR}/src/core/interfaces | ||||||
|   | |||||||
| @@ -32,6 +32,10 @@ | |||||||
| #ifndef GNSS_SDR_GEOFUNCTIONS_H | #ifndef GNSS_SDR_GEOFUNCTIONS_H | ||||||
| #define GNSS_SDR_GEOFUNCTIONS_H | #define GNSS_SDR_GEOFUNCTIONS_H | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include <armadillo> | #include <armadillo> | ||||||
|  |  | ||||||
| arma::mat Skew_symmetric(const arma::vec &a);  //!< Calculates skew-symmetric matrix | arma::mat Skew_symmetric(const arma::vec &a);  //!< Calculates skew-symmetric matrix | ||||||
|   | |||||||
| @@ -251,7 +251,7 @@ void signal_generator_c::generate_codes() | |||||||
|  |  | ||||||
|                             std::array<char, 3> signal_1C = {{'1', 'C', '\0'}}; |                             std::array<char, 3> signal_1C = {{'1', 'C', '\0'}}; | ||||||
|  |  | ||||||
|                             galileo_e1_code_gen_complex_sampled(gsl::span<gr_complex>(sampled_code_pilot_[sat].data(), vector_length_), signal_1C, cboc, PRN_[sat], fs_in_, |                             galileo_e1_code_gen_complex_sampled(sampled_code_pilot_[sat], signal_1C, cboc, PRN_[sat], fs_in_, | ||||||
|                                 static_cast<int>(GALILEO_E1_B_CODE_LENGTH_CHIPS) - delay_chips_[sat], true); |                                 static_cast<int>(GALILEO_E1_B_CODE_LENGTH_CHIPS) - delay_chips_[sat], true); | ||||||
|  |  | ||||||
|                             // Obtain the desired CN0 assuming that Pn = 1. |                             // Obtain the desired CN0 assuming that Pn = 1. | ||||||
|   | |||||||
| @@ -89,6 +89,7 @@ endif() | |||||||
| target_link_libraries(tracking_gr_blocks | target_link_libraries(tracking_gr_blocks | ||||||
|     PUBLIC |     PUBLIC | ||||||
|         Boost::boost |         Boost::boost | ||||||
|  |         Armadillo::armadillo | ||||||
|         Gnuradio::blocks |         Gnuradio::blocks | ||||||
|         Matio::matio |         Matio::matio | ||||||
|         Volkgnsssdr::volkgnsssdr |         Volkgnsssdr::volkgnsssdr | ||||||
| @@ -108,6 +109,12 @@ if(ENABLE_CUDA AND NOT CMAKE_VERSION VERSION_GREATER 3.11) | |||||||
|     ) |     ) | ||||||
| endif() | endif() | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(tracking_gr_blocks | ||||||
|  |         PUBLIC -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| if(ENABLE_CLANG_TIDY) | if(ENABLE_CLANG_TIDY) | ||||||
|     if(CLANG_TIDY_EXE) |     if(CLANG_TIDY_EXE) | ||||||
|         set_target_properties(tracking_gr_blocks |         set_target_properties(tracking_gr_blocks | ||||||
|   | |||||||
| @@ -40,6 +40,10 @@ | |||||||
| #ifndef GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H | #ifndef GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H | ||||||
| #define GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H | #define GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include "bayesian_estimation.h" | #include "bayesian_estimation.h" | ||||||
| #include "cpu_multicorrelator_real_codes.h" | #include "cpu_multicorrelator_real_codes.h" | ||||||
| #include "gnss_synchro.h" | #include "gnss_synchro.h" | ||||||
|   | |||||||
| @@ -134,6 +134,12 @@ if(OS_IS_MACOSX) | |||||||
|     endif() |     endif() | ||||||
| endif() | endif() | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(tracking_libs | ||||||
|  |         PUBLIC -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| if(ENABLE_CLANG_TIDY) | if(ENABLE_CLANG_TIDY) | ||||||
|     if(CLANG_TIDY_EXE) |     if(CLANG_TIDY_EXE) | ||||||
|         set_target_properties(tracking_libs |         set_target_properties(tracking_libs | ||||||
|   | |||||||
| @@ -45,6 +45,10 @@ | |||||||
| #ifndef GNSS_SDR_BAYESIAN_ESTIMATION_H_ | #ifndef GNSS_SDR_BAYESIAN_ESTIMATION_H_ | ||||||
| #define GNSS_SDR_BAYESIAN_ESTIMATION_H_ | #define GNSS_SDR_BAYESIAN_ESTIMATION_H_ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include <armadillo> | #include <armadillo> | ||||||
| #include <gnuradio/gr_complex.h> | #include <gnuradio/gr_complex.h> | ||||||
|  |  | ||||||
|   | |||||||
| @@ -43,6 +43,10 @@ | |||||||
| #ifndef GNSS_SDR_NONLINEAR_TRACKING_H_ | #ifndef GNSS_SDR_NONLINEAR_TRACKING_H_ | ||||||
| #define GNSS_SDR_NONLINEAR_TRACKING_H_ | #define GNSS_SDR_NONLINEAR_TRACKING_H_ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include <armadillo> | #include <armadillo> | ||||||
| #include <gnuradio/gr_complex.h> | #include <gnuradio/gr_complex.h> | ||||||
|  |  | ||||||
|   | |||||||
| @@ -156,6 +156,12 @@ target_link_libraries(core_receiver | |||||||
|         Armadillo::armadillo |         Armadillo::armadillo | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | if(CMAKE_BUILD_TYPE MATCHES Rel) | ||||||
|  |     target_compile_definitions(core_receiver | ||||||
|  |         PRIVATE -DARMA_NO_BOUND_CHECKING=1 | ||||||
|  |     ) | ||||||
|  | endif() | ||||||
|  |  | ||||||
| # Fix for Boost Asio < 1.70 | # Fix for Boost Asio < 1.70 | ||||||
| if(OS_IS_MACOSX) | if(OS_IS_MACOSX) | ||||||
|     if((CMAKE_CXX_COMPILER_ID MATCHES "Clang") AND (Boost_VERSION_STRING VERSION_LESS 1.70.0)) |     if((CMAKE_CXX_COMPILER_ID MATCHES "Clang") AND (Boost_VERSION_STRING VERSION_LESS 1.70.0)) | ||||||
|   | |||||||
| @@ -32,6 +32,10 @@ | |||||||
|  * ------------------------------------------------------------------------- |  * ------------------------------------------------------------------------- | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
|  | #if ARMA_NO_BOUND_CHECKING | ||||||
|  | #define ARMA_NO_DEBUG 1 | ||||||
|  | #endif | ||||||
|  |  | ||||||
| #include "control_thread.h" | #include "control_thread.h" | ||||||
| #include "channel_event.h" | #include "channel_event.h" | ||||||
| #include "command_event.h" | #include "command_event.h" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Carles Fernandez
					Carles Fernandez