freebsd-ports/multimedia/vid.stab/files/patch-CMakeModules_FindSSE.cmake
Alberto Villa 26846cddde multimedia/vid.stab: fix build on ARM and MIPS
The project was hardcoding SSE support, thus making the build fail on
ARM and MIPS architectures.

PR:		197133
MFH:		2015Q2
2015-06-11 17:12:08 +00:00

39 lines
1.5 KiB
CMake

--- CMakeModules/FindSSE.cmake.orig 2014-03-12 19:42:49 UTC
+++ CMakeModules/FindSSE.cmake
@@ -40,6 +40,36 @@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
ELSE (SSE41_TRUE)
set(SSE4_1_FOUND false CACHE BOOL "SSE4.1 available on host")
ENDIF (SSE41_TRUE)
+ELSEIF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+ EXEC_PROGRAM(make ARGS "-V MACHINE_CPU" OUTPUT_VARIABLE CPUINFO)
+
+ STRING(REGEX MATCH "(^|[^s])sse2" SSE2_TRUE ${CPUINFO})
+ IF (SSE2_TRUE)
+ set(SSE2_FOUND true CACHE BOOL "SSE2 available on host")
+ ELSE (SSE2_TRUE)
+ set(SSE2_FOUND false CACHE BOOL "SSE2 available on host")
+ ENDIF (SSE2_TRUE)
+
+ STRING(REGEX MATCH "(^|[^s])sse3" SSE3_TRUE ${CPUINFO})
+ IF (SSE3_TRUE)
+ set(SSE3_FOUND true CACHE BOOL "SSE3 available on host")
+ ELSE (SSE3_TRUE)
+ set(SSE3_FOUND false CACHE BOOL "SSE3 available on host")
+ ENDIF (SSE3_TRUE)
+
+ STRING(REGEX MATCH "ssse3" SSSE3_TRUE ${CPUINFO})
+ IF (SSSE3_TRUE)
+ set(SSSE3_FOUND true CACHE BOOL "SSSE3 available on host")
+ ELSE (SSSE3_TRUE)
+ set(SSSE3_FOUND false CACHE BOOL "SSSE3 available on host")
+ ENDIF (SSSE3_TRUE)
+
+ STRING(REGEX MATCH "sse41" SSE41_TRUE ${CPUINFO})
+ IF (SSE41_TRUE)
+ set(SSE4_1_FOUND true CACHE BOOL "SSE4.1 available on host")
+ ELSE (SSE41_TRUE)
+ set(SSE4_1_FOUND false CACHE BOOL "SSE4.1 available on host")
+ ENDIF (SSE41_TRUE)
ELSEIF(CMAKE_SYSTEM_NAME MATCHES "Darwin")
EXEC_PROGRAM("/usr/sbin/sysctl -n machdep.cpu.features" OUTPUT_VARIABLE
CPUINFO)