mirror of
https://github.com/cpm-cmake/CPM.cmake.git
synced 2025-11-16 14:17:37 -05:00
29 lines
977 B
CMake
29 lines
977 B
CMake
|
|
cmake_minimum_required(VERSION 3.14 FATAL_ERROR)
|
||
|
|
|
||
|
|
project(CPMExamplePatchHighway)
|
||
|
|
|
||
|
|
# ---- Dependencies ----
|
||
|
|
|
||
|
|
include(../../cmake/CPM.cmake)
|
||
|
|
|
||
|
|
# Google's highway Includes a SIMD sorting function that is faster than x86-simd-sort for larger
|
||
|
|
# arrays. See: https://github.com/google/highway/blob/master/g3doc/quick_reference.md
|
||
|
|
CPMAddPackage(
|
||
|
|
NAME highway
|
||
|
|
URL https://github.com/google/highway/archive/refs/tags/1.1.0.tar.gz
|
||
|
|
URL_HASH SHA256=354a8b4539b588e70b98ec70844273e3f2741302c4c377bcc4e81b3d1866f7c9
|
||
|
|
PATCHES "highway.patch" # This adds SYSTEM to the includes.
|
||
|
|
OPTIONS "HWY_ENABLE_EXAMPLES OFF" "HWY_ENABLE_INSTALL OFF" "HWY_ENABLE_TESTS OFF"
|
||
|
|
)
|
||
|
|
|
||
|
|
# ---- Executable ----
|
||
|
|
|
||
|
|
if(LINUX)
|
||
|
|
# This would cause a float compare error inside the highway header code if the patch is NOT
|
||
|
|
# applied.
|
||
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wfloat-equal")
|
||
|
|
endif()
|
||
|
|
|
||
|
|
add_executable(CPMExamplePatchHighway "main.cpp")
|
||
|
|
target_link_libraries(CPMExamplePatchHighway hwy hwy_contrib)
|