diff --git a/CMakeLists.txt b/CMakeLists.txt index 5710cca7a..1dd1b53eb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -120,6 +120,7 @@ endif() option(ENABLE_EXTERNAL_MATHJAX "Use MathJax from an external CDN in HTML docs" ON) +option(ENABLE_ORC "Use (if available) the Optimized Inner Loop Runtime Compiler (ORC)" OFF) ################################################################################ # GNSS-SDR version information @@ -1139,15 +1140,22 @@ if(NOT VOLKGNSSSDR_FOUND) else() set(VOLK_GNSSSDR_COMPILER -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}) endif() - find_package(ORC) - set_package_properties(ORC PROPERTIES - PURPOSE "Used by volk_gnsssdr." - TYPE OPTIONAL - ) - if(ORC_FOUND) - set(ORC_ENABLED ON) + + if(ENABLE_ORC) + find_package(ORC) + set_package_properties(ORC PROPERTIES + PURPOSE "Used by volk_gnsssdr." + TYPE OPTIONAL + ) + if(ORC_FOUND) + set(ORC_ENABLED ON) + else() + set(ORC_ENABLED OFF) + set(ENABLE_ORC OFF) + endif() else() set(ORC_ENABLED OFF) + set(ENABLE_ORC OFF) endif() set(VOLK_GNSSSDR_CMAKE_ARGS ${VOLK_GNSSSDR_COMPILER} @@ -1336,6 +1344,7 @@ if(NOT VOLKGNSSSDR_FOUND) ) else() set(ENABLE_OWN_CPUFEATURES OFF) + set(ENABLE_ORC OFF) endif() @@ -3337,6 +3346,7 @@ add_feature_info(ENABLE_PACKAGING ENABLE_PACKAGING "Enables software packaging." add_feature_info(ENABLE_OWN_GLOG ENABLE_OWN_GLOG "Forces the downloading and building of Google glog.") add_feature_info(ENABLE_OWN_ARMADILLO ENABLE_OWN_ARMADILLO "Forces the downloading and building of Armadillo.") add_feature_info(ENABLE_LOG ENABLE_LOG "Enables runtime internal logging with Google glog.") +add_feature_info(ENABLE_ORC ENABLE_ORC "Use the Optimized Inner Loop Runtime Compiler (ORC) for building volk_gnsssdr.") add_feature_info(ENABLE_STRIP ENABLE_STRIP "Enables the generation of stripped binaries (without debugging symbols).") add_feature_info(ENABLE_UNIT_TESTING ENABLE_UNIT_TESTING "Enables building of Unit Tests.") add_feature_info(ENABLE_UNIT_TESTING_MINIMAL ENABLE_UNIT_TESTING_MINIMAL "Enables building a minimal set of Unit Tests.") diff --git a/src/algorithms/telemetry_decoder/gnuradio_blocks/galileo_telemetry_decoder_gs.cc b/src/algorithms/telemetry_decoder/gnuradio_blocks/galileo_telemetry_decoder_gs.cc index d8d4b97f8..977c2b7d7 100644 --- a/src/algorithms/telemetry_decoder/gnuradio_blocks/galileo_telemetry_decoder_gs.cc +++ b/src/algorithms/telemetry_decoder/gnuradio_blocks/galileo_telemetry_decoder_gs.cc @@ -604,6 +604,7 @@ void galileo_telemetry_decoder_gs::reset() d_TOW_at_Preamble_ms = 0; d_fnav_nav.set_flag_TOW_set(false); d_inav_nav.set_flag_TOW_set(false); + d_inav_nav.set_TOW0_flag(false); d_last_valid_preamble = d_sample_counter; d_sent_tlm_failed_msg = false; d_stat = 0;