Activate usage of cpu_features

This commit is contained in:
Carles Fernandez 2020-08-21 16:31:57 +02:00
parent cda2c998b8
commit d1085af3ac
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
3 changed files with 14 additions and 1 deletions

View File

@ -1168,6 +1168,11 @@ if(NOT VOLKGNSSSDR_FOUND)
INTERFACE_INCLUDE_DIRECTORIES "${VOLK_GNSSSDR_INCLUDE_DIRS}"
INTERFACE_LINK_LIBRARIES "${VOLK_GNSSSDR_LIBRARIES}"
)
if(CMAKE_VERSION VERSION_GREATER 3.0) # and GCC, and Clang and PYTHON...
set_target_properties(Volkgnsssdr::volkgnsssdr PROPERTIES
INTERFACE_LINK_LIBRARIES ${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/lib/${CMAKE_FIND_LIBRARY_PREFIXES}cpu_features${CMAKE_STATIC_LIBRARY_SUFFIX}
)
endif()
endif()
if(CMAKE_VERSION VERSION_LESS 3.2)

View File

@ -31,6 +31,15 @@ SPDX-FileCopyrightText: 2011-2020 Carles Fernandez-Prades <carles.fernandez@cttc
- Replaced `git://` by `https://` as the used protocol when downloading Gflags,
so it can work through firewalls requiring authentication.
- Fixed static linking of the matio library when downloaded and built by CMake.
- Improved CPU feature detection by switching to Google's
[cpu_features](https://github.com/google/cpu_features) library: The
`volk_gnsssdr` library had its own CPU feature detection methods, which were
not totally reliable and difficult to implement across compilers and OSes.
This is now handled by the `cpu_features` library, thus building upon that
expertise. Since that library has higher dependency version requirements than
GNSS-SDR, the old method is still used in old development environments. No
extra dependency is needed. This change is transparent to the user, since
everything is managed by the CMake scripts.
### Improvements in Usability:

View File

@ -234,7 +234,6 @@ if(CMAKE_VERSION VERSION_GREATER 3.0)
set(USE_CPU_FEATURES ON)
add_subdirectory(cpu_features)
endif()
set(USE_CPU_FEATURES OFF)
# Python
include(VolkPython) # sets PYTHON_EXECUTABLE