]> rtime.felk.cvut.cz Git - opencv.git/commitdiff
Update SSE3 and PNG support in cmake
authorkecsup <kecsup@73c94f0f-984f-4a5f-82bc-2d8db8d8ee08>
Wed, 21 Jan 2009 07:51:34 +0000 (07:51 +0000)
committerkecsup <kecsup@73c94f0f-984f-4a5f-82bc-2d8db8d8ee08>
Wed, 21 Jan 2009 07:51:34 +0000 (07:51 +0000)
git-svn-id: https://code.ros.org/svn/opencv/trunk@1521 73c94f0f-984f-4a5f-82bc-2d8db8d8ee08

opencv/CMakeLists.txt

index 26b57953515b816f6e762f873c0d856621de5eef..2a2b57955b99946df5c0239f91295f9081589a19 100644 (file)
@@ -161,6 +161,7 @@ if(CMAKE_COMPILER_IS_GNUCXX)
         set(OPENCV_USE_MMX ON CACHE BOOL "Enable MMX for GCC")
         set(OPENCV_USE_SSE ON CACHE BOOL "Enable SSE for GCC")
         set(OPENCV_USE_SSE2 ON CACHE BOOL "Enable SSE2 for GCC")
+        set(OPENCV_USE_SSE3 ON CACHE BOOL "Enable SSE3 for GCC")
     endif()
     if(${CMAKE_SYSTEM_PROCESSOR} MATCHES powerpc*)
         set(OPENCV_USE_O3 ON CACHE BOOL "Enable -O3 for GCC")
@@ -247,9 +248,11 @@ if(UNIX)
 
         include(FindPNG)
         if(PNG_FOUND)
+            CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/png.h HAVE_PNG_H)
+            CHECK_INCLUDE_FILE(${PNG_PNG_INCLUDE_DIR}/libpng/png.h HAVE_LIBPNG_PNG_H)
             string(REGEX MATCH libpng HAVE_LIBPNG_PNG_H ${PNG_PNG_INCLUDE_DIR})
-            if(NOT HAVE_LIBPNG_PNG_H)
-                set(HAVE_PNG_H TRUE)
+            if(NOT HAVE_LIBPNG_PNG_H AND NOT HAVE_PNG_H)
+                set(HAVE_PNG FALSE)
             endif()
         endif()
         include(FindJPEG)
@@ -425,6 +428,10 @@ if(CMAKE_COMPILER_IS_GNUCXX)
     if(OPENCV_USE_SSE2)
        set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse2")
     endif()
+    # SSE3 should be disabled under MingW because it generates compiler errors
+    if(OPENCV_USE_SSE3 AND NOT MINGW)
+       set(EXTRA_C_FLAGS_RELEASE "${EXTRA_C_FLAGS_RELEASE} -msse3")
+    endif()
 
     # Profiling?
     if(OPENCV_ENABLE_PROFILING)