[packages/lensfun] small fixes from fedora (disabling SSE on non-x86)

atler atler at pld-linux.org
Wed Dec 9 18:50:27 CET 2020


commit 43f75fa05a63089a7389c537781304686a2fc0ea
Author: Jan Palus <atler at pld-linux.org>
Date:   Wed Dec 9 18:44:08 2020 +0100

    small fixes from fedora (disabling SSE on non-x86)

 ...rious-CMake-patches-from-the-mailing-list.patch | 85 ++++++++++++++++++++++
 lensfun.spec                                       |  2 +
 2 files changed, 87 insertions(+)
---
diff --git a/lensfun.spec b/lensfun.spec
index 66fdf5a..fde4024 100644
--- a/lensfun.spec
+++ b/lensfun.spec
@@ -7,6 +7,7 @@ License:	LGPL v3 (library), CC-BY-SA v3.0 (lens database)
 Group:		Libraries
 Source0:	http://downloads.sourceforge.net/lensfun/%{name}-%{version}.tar.gz
 # Source0-md5:	247e59a0812ec451f6cd0d20b3379cb5
+Patch0:		0060-Various-CMake-patches-from-the-mailing-list.patch
 URL:		http://lensfun.sourceforge.net/
 BuildRequires:	cmake >= 2.8
 BuildRequires:	docutils
@@ -61,6 +62,7 @@ Dokumentacja API biblioteki lensfun.
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 install -d build
diff --git a/0060-Various-CMake-patches-from-the-mailing-list.patch b/0060-Various-CMake-patches-from-the-mailing-list.patch
new file mode 100644
index 0000000..312b540
--- /dev/null
+++ b/0060-Various-CMake-patches-from-the-mailing-list.patch
@@ -0,0 +1,85 @@
+From bba9aa37c899999fca01101a8ed271a3aa9d82b7 Mon Sep 17 00:00:00 2001
+From: Sebastian Kraft <mail at sebastiankraft.net>
+Date: Sat, 16 Jan 2016 15:42:57 +0100
+Subject: [PATCH 060/113] Various CMake patches from the mailing list
+
+- Add GLIB2 libray path to link directories
+- Enable -msseX compiler switch for Clang
+- Set -mseeX switch only for files with SSE code
+- Do not enable SSE optimizations on non-x86 hardware by default
+---
+ CMakeLists.txt              | 19 +++++++++++++------
+ libs/lensfun/CMakeLists.txt |  5 +++++
+ 2 files changed, 18 insertions(+), 6 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 21f082b..b85656c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -31,12 +31,18 @@ IF(NOT HAVE_REGEX_H)
+   INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/libs/regex)
+ ENDIF()
+ 
++IF(CMAKE_SYSTEM_PROCESSOR MATCHES "[XxIi][0-9]?86|[Aa][Mm][Dd]64")
++  SET(X86_ON ON)
++else()
++  SET(X86_ON OFF)
++ENDIF()
++
+ # options controlling the build process
+ OPTION(BUILD_STATIC "Build static library" OFF)
+ OPTION(BUILD_TESTS "Build test suite" OFF)
+ OPTION(BUILD_LENSTOOL "Build the lenstool (requires libpng)" OFF)
+-OPTION(BUILD_FOR_SSE "Build with support for SSE" ON)
+-OPTION(BUILD_FOR_SSE2 "Build with support for SSE2" ON)
++OPTION(BUILD_FOR_SSE "Build with support for SSE" ${X86_ON})
++OPTION(BUILD_FOR_SSE2 "Build with support for SSE2" ${X86_ON})
+ OPTION(BUILD_DOC "Build documentation with doxygen" OFF)
+ OPTION(INSTALL_HELPER_SCRIPTS "Install various helper scripts" ON)
+ 
+@@ -62,14 +68,14 @@ ENDIF()
+ 
+ IF(BUILD_FOR_SSE)
+   SET(VECTORIZATION_SSE 1)
+-  IF(CMAKE_COMPILER_IS_GNUCXX)
+-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse")
++  IF(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
++    SET(VECTORIZATION_SSE_FLAGS "-msse")
+   ENDIF()
+ ENDIF()
+ IF(BUILD_FOR_SSE2)
+   SET(VECTORIZATION_SSE2 1)
+-  IF(CMAKE_COMPILER_IS_GNUCXX)
+-    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2")
++  IF(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
++    SET(VECTORIZATION_SSE2_FLAGS "-msse2")
+   ENDIF()
+ ENDIF()
+ 
+@@ -97,6 +103,7 @@ ELSE()
+ ENDIF()
+ 
+ INCLUDE_DIRECTORIES(SYSTEM ${GLIB2_INCLUDE_DIRS})
++LINK_DIRECTORIES(${GLIB2_LIBRARY_DIRS})
+ 
+ 
+ IF(BUILD_STATIC)
+diff --git a/libs/lensfun/CMakeLists.txt b/libs/lensfun/CMakeLists.txt
+index 6beadec..b0ca638 100644
+--- a/libs/lensfun/CMakeLists.txt
++++ b/libs/lensfun/CMakeLists.txt
+@@ -9,6 +9,11 @@ IF(WIN32)
+   LIST(APPEND LENSFUN_SRC windows/auxfun.cpp)
+ ENDIF()
+ 
++SET_SOURCE_FILES_PROPERTIES(mod-color-sse.cpp mod-coord-sse.cpp
++  PROPERTIES COMPILE_FLAGS "${VECTORIZATION_SSE_FLAGS}")
++SET_SOURCE_FILES_PROPERTIES(mod-color-sse2.cpp
++  PROPERTIES COMPILE_FLAGS "${VECTORIZATION_SSE2_FLAGS}")
++
+ IF(BUILD_STATIC)
+   ADD_LIBRARY(lensfun STATIC ${LENSFUN_SRC})
+ ELSE()
+-- 
+2.7.4
+
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/lensfun.git/commitdiff/5f7bb4937271ccb6af4f494d14aa1dba96de5c95



More information about the pld-cvs-commit mailing list