Blob Blame History Raw
--- pcl-pcl-1.12.0/cmake/pcl_find_sse.cmake	2021-08-13 13:31:26.035282081 -0700
+++ pcl-pcl-1.12.0/cmake/pcl_find_sse.cmake.new	2021-08-13 13:31:31.965314984 -0700
@@ -4,20 +4,6 @@
   set(SSE_FLAGS)
   set(SSE_DEFINITIONS)
 
-  if(NOT CMAKE_CROSSCOMPILING)
-    # Test GCC/G++ and CLANG
-    if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
-      include(CheckCXXCompilerFlag)
-      check_cxx_compiler_flag("-march=native" HAVE_MARCH)
-      if(HAVE_MARCH)
-          list(APPEND SSE_FLAGS "-march=native")
-      else()
-          list(APPEND SSE_FLAGS "-mtune=native")
-      endif()
-      message(STATUS "Using CPU native flags for SSE optimization: ${SSE_FLAGS}")
-    endif()
-  endif()
-
   # Unfortunately we need to check for SSE to enable "-mfpmath=sse" alongside
   # "-march=native". The reason for this is that by default, 32bit architectures
   # tend to use the x87 FPU (which has 80 bit internal precision), thus leading
@@ -203,21 +189,9 @@
   endif()
   
   if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
-    if(SSE_LEVEL GREATER_EQUAL 1.0)
-      if(SSE_LEVEL GREATER_EQUAL 4.2)
-        set(SSE_FLAGS "-msse4.2")
-      elseif(SSE_LEVEL GREATER_EQUAL 4.1)
-        set(SSE_FLAGS "-msse4.1")
-      elseif(SSE_LEVEL GREATER_EQUAL 3.1)
-        set(SSE_FLAGS "-msse3")
-      elseif(SSE_LEVEL GREATER_EQUAL 3.0)
-        set(SSE_FLAGS "-msse3")
-      elseif(SSE_LEVEL GREATER_EQUAL 2.0)
-        set(SSE_FLAGS "-msse2")
-      else()
-        set(SSE_FLAGS "-msse")
-      endif()
-      string(APPEND SSE_FLAGS " -mfpmath=sse")
+    if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64" AND "${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
+          MESSAGE(STATUS "Enabling SSE Support (${CMAKE_SYSTEM_PROCESSOR}, ${CMAKE_SIZEOF_VOID_P})")
+          set(SSE_FLAGS "-msse2")
     else()
       # Setting -ffloat-store to alleviate 32bit vs 64bit discrepancies on non-SSE
       # platforms.