Find cpu_features.a file in more distributions. Update Google benchmark to 1.5.2

This commit is contained in:
Carles Fernandez 2020-10-24 10:48:48 +02:00
parent 3bc4cf2637
commit 33cee471f1
No known key found for this signature in database
GPG Key ID: 4C583C52B0C3877D
3 changed files with 26 additions and 86 deletions

View File

@ -329,7 +329,7 @@ set(GNSSSDR_GPSTK_LOCAL_VERSION "3.0.0")
set(GNSSSDR_MATIO_LOCAL_VERSION "1.5.18")
set(GNSSSDR_PUGIXML_LOCAL_VERSION "1.10")
set(GNSSSDR_PROTOCOLBUFFERS_LOCAL_VERSION "3.13.0")
set(GNSSSDR_BENCHMARK_LOCAL_VERSION "1.5.1")
set(GNSSSDR_BENCHMARK_LOCAL_VERSION "1.5.2")
if(CMAKE_VERSION VERSION_LESS "3.0.2")
set(GNSSSDR_GFLAGS_LOCAL_VERSION "2.2.1") # Fix for CentOS 7
@ -1117,6 +1117,7 @@ if(NOT VOLKGNSSSDR_FOUND)
)
endif()
endif()
include(GNUInstallDirs)
if(CMAKE_VERSION VERSION_LESS 3.2)
ExternalProject_Add(volk_gnsssdr_module
PREFIX ${CMAKE_BINARY_DIR}/volk_gnsssdr_module
@ -1143,7 +1144,7 @@ if(NOT VOLKGNSSSDR_FOUND)
BUILD_COMMAND ${VOLK_GNSSSDR_BUILD_COMMAND} volk_gnsssdr_profile
BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/lib/${CMAKE_FIND_LIBRARY_PREFIXES}volk_gnsssdr${CMAKE_STATIC_LIBRARY_SUFFIX}
${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/bin/volk_gnsssdr_profile
${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/lib/${CMAKE_FIND_LIBRARY_PREFIXES}cpu_features${CMAKE_STATIC_LIBRARY_SUFFIX}
${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/${CMAKE_INSTALL_LIBDIR}/${CMAKE_FIND_LIBRARY_PREFIXES}cpu_features${CMAKE_STATIC_LIBRARY_SUFFIX}
INSTALL_DIR ${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install
)
endif()
@ -1169,9 +1170,9 @@ 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...
if(CMAKE_VERSION VERSION_GREATER 3.0)
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}
INTERFACE_LINK_LIBRARIES ${CMAKE_BINARY_DIR}/volk_gnsssdr_module/install/${CMAKE_INSTALL_LIBDIR}/${CMAKE_FIND_LIBRARY_PREFIXES}cpu_features${CMAKE_STATIC_LIBRARY_SUFFIX}
)
endif()
endif()

View File

@ -53,7 +53,7 @@ target_include_directories(volk_gnsssdr_profile
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
)
if(NOT ${FILESYSTEM_FOUND})
if(NOT FILESYSTEM_FOUND)
target_include_directories(volk_gnsssdr_profile
PUBLIC ${Boost_INCLUDE_DIRS}
)
@ -61,7 +61,7 @@ if(NOT ${FILESYSTEM_FOUND})
endif()
if(${FILESYSTEM_FOUND})
if(FILESYSTEM_FOUND)
add_definitions(-DHAS_STD_FILESYSTEM=1)
if(${find_experimental})
add_definitions(-DHAS_STD_FILESYSTEM_EXPERIMENTAL=1)
@ -70,9 +70,9 @@ if(${FILESYSTEM_FOUND})
endif()
if(ENABLE_STATIC_LIBS)
target_link_libraries(volk_gnsssdr_profile PUBLIC volk_gnsssdr_static ${orc_lib})
target_link_libraries(volk_gnsssdr_profile PRIVATE volk_gnsssdr_static ${orc_lib})
else()
target_link_libraries(volk_gnsssdr_profile PUBLIC volk_gnsssdr ${orc_lib})
target_link_libraries(volk_gnsssdr_profile PRIVATE volk_gnsssdr ${orc_lib})
add_dependencies(volk_gnsssdr_profile volk_gnsssdr)
endif()
@ -122,8 +122,8 @@ install(
# Launch volk_gnsssdr_profile if requested to do so
if(ENABLE_PROFILING)
if(DEFINED VOLK_CONFIGPATH)
set( VOLK_CONFIG_ARG "-p${VOLK_CONFIGPATH}" )
set( VOLK_CONFIG "${VOLK_CONFIGPATH}/volk_gnsssdr_config" )
set(VOLK_CONFIG_ARG "-p${VOLK_CONFIGPATH}")
set(VOLK_CONFIG "${VOLK_CONFIGPATH}/volk_gnsssdr_config")
endif()
add_custom_command(OUTPUT ${VOLK_CONFIG}
COMMAND volk_gnsssdr_profile "${VOLK_CONFIG_ARG}"

View File

@ -46,7 +46,7 @@
<arch name="64">
<!-- <check name="check_extended_cpuid"> -->
<!-- <param>0x80000001</param>
<!-- <param>0x80000001</param>
</check> -->
<!--<check name="cpuid_x86_bit"> checks to see if a bit is set -->
<!-- <param>3</param> eax, ebx, ecx, [edx] -->
@ -58,22 +58,14 @@
</arch>
<arch name="popcount">
<check name="popcnt">
<param>2</param>
<param>0x00000001</param>
<param>23</param>
</check>
<check name="popcnt"></check>
<flag compiler="gnu">-mpopcnt</flag>
<flag compiler="clang">-mpopcnt</flag>
<flag compiler="msvc">/arch:AVX</flag>
</arch>
<arch name="mmx">
<check name="mmx">
<param>3</param>
<param>0x00000001</param>
<param>23</param>
</check>
<check name="mmx"></check>
<flag compiler="gnu">-mmmx</flag>
<flag compiler="clang">-mmmx</flag>
<flag compiler="msvc">/arch:SSE</flag>
@ -81,11 +73,7 @@
</arch>
<arch name="fma">
<check name="fma3">
<param>2</param>
<param>0x00000001</param>
<param>12</param>
</check>
<check name="fma3"></check>
<flag compiler="gnu">-mfma</flag>
<flag compiler="clang">-mfma</flag>
<flag compiler="msvc">/arch:AVX2</flag>
@ -93,11 +81,7 @@
</arch>
<arch name="sse">
<check name="sse">
<param>3</param>
<param>0x00000001</param>
<param>25</param>
</check>
<check name="sse"></check>
<flag compiler="gnu">-msse</flag>
<flag compiler="clang">-msse</flag>
<flag compiler="msvc">/arch:SSE</flag>
@ -107,11 +91,7 @@
</arch>
<arch name="sse2">
<check name="sse2">
<param>3</param>
<param>0x00000001</param>
<param>26</param>
</check>
<check name="sse2"></check>
<flag compiler="gnu">-msse2</flag>
<flag compiler="clang">-msse2</flag>
<flag compiler="msvc">/arch:SSE2</flag>
@ -126,11 +106,7 @@
</arch>
<arch name="sse3">
<check name="sse3">
<param>2</param>
<param>0x00000001</param>
<param>0</param>
</check>
<check name="sse3"></check>
<flag compiler="gnu">-msse3</flag>
<flag compiler="clang">-msse3</flag>
<flag compiler="msvc">/arch:AVX</flag>
@ -140,11 +116,7 @@
</arch>
<arch name="ssse3">
<check name="ssse3">
<param>2</param>
<param>0x00000001</param>
<param>9</param>
</check>
<check name="ssse3"></check>
<flag compiler="gnu">-mssse3</flag>
<flag compiler="clang">-mssse3</flag>
<flag compiler="msvc">/arch:AVX</flag>
@ -152,22 +124,14 @@
</arch>
<arch name="sse4_a">
<check name="sse4a">
<param>2</param>
<param>0x80000001</param>
<param>6</param>
</check>
<check name="sse4a"></check>
<flag compiler="gnu">-msse4a</flag>
<flag compiler="clang">-msse4a</flag>
<alignment>16</alignment>
</arch>
<arch name="sse4_1">
<check name="sse4_1">
<param>2</param>
<param>0x00000001</param>
<param>19</param>
</check>
<check name="sse4_1"></check>
<flag compiler="gnu">-msse4.1</flag>
<flag compiler="clang">-msse4.1</flag>
<flag compiler="msvc">/arch:AVX</flag>
@ -175,11 +139,7 @@
</arch>
<arch name="sse4_2">
<check name="sse4_2">
<param>2</param>
<param>0x00000001</param>
<param>20</param>
</check>
<check name="sse4_2"></check>
<flag compiler="gnu">-msse4.2</flag>
<flag compiler="clang">-msse4.2</flag>
<flag compiler="msvc">/arch:AVX</flag>
@ -187,11 +147,7 @@
</arch>
<arch name="avx">
<check name="avx">
<param>2</param>
<param>0x00000001</param>
<param>28</param>
</check>
<check name="avx"></check>
<flag compiler="gnu">-mavx</flag>
<flag compiler="clang">-mavx</flag>
<flag compiler="msvc">/arch:AVX</flag>
@ -199,12 +155,7 @@
</arch>
<arch name="avx2">
<check name="avx2">
<param>7</param>
<param>0</param>
<param>1</param>
<param>5</param>
</check>
<check name="avx2"></check>
<flag compiler="gnu">-mavx2</flag>
<flag compiler="clang">-mavx2</flag>
<flag compiler="msvc">/arch:AVX2</flag>
@ -212,13 +163,7 @@
</arch>
<arch name="avx512f">
<!-- check for AVX512F -->
<check name="avx512f">
<param>7</param>
<param>0</param>
<param>1</param>
<param>16</param>
</check>
<check name="avx512f"></check>
<flag compiler="gnu">-mavx512f</flag>
<flag compiler="clang">-mavx512f</flag>
<flag compiler="msvc">/arch:AVX512F</flag>
@ -226,13 +171,7 @@
</arch>
<arch name="avx512cd">
<!-- check for AVX512CD -->
<check name="avx512cd">
<param>7</param>
<param>0</param>
<param>1</param>
<param>28</param>
</check>
<check name="avx512cd"></check>
<flag compiler="gnu">-mavx512cd</flag>
<flag compiler="clang">-mavx512cd</flag>
<flag compiler="msvc">/arch:AVX512CD</flag>