From b7209229ac2df15ae3cce874742a0b7352cc1efe39e223db4bd33aef1949240c Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Fri, 3 Jan 2020 16:34:12 +0000 Subject: [PATCH] Accepting request 760486 from graphics OBS-URL: https://build.opensuse.org/request/show/760486 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/darktable?expand=0&rev=81 --- 0001-Fix-build-with-exiv2-0.27.patch | 27 ---- basecurve.readme.patch | 37 ------ darktable-2.6.3.tar.xz | 3 - darktable-2.6.3.tar.xz.asc | 6 - darktable-3.0.0.tar.xz | 3 + darktable-3.0.0.tar.xz.asc | 6 + darktable.changes | 17 +++ darktable.spec | 177 ++++++++------------------- 8 files changed, 77 insertions(+), 199 deletions(-) delete mode 100644 0001-Fix-build-with-exiv2-0.27.patch delete mode 100644 basecurve.readme.patch delete mode 100644 darktable-2.6.3.tar.xz delete mode 100644 darktable-2.6.3.tar.xz.asc create mode 100644 darktable-3.0.0.tar.xz create mode 100644 darktable-3.0.0.tar.xz.asc diff --git a/0001-Fix-build-with-exiv2-0.27.patch b/0001-Fix-build-with-exiv2-0.27.patch deleted file mode 100644 index 393472e..0000000 --- a/0001-Fix-build-with-exiv2-0.27.patch +++ /dev/null @@ -1,27 +0,0 @@ -From c5e131d33f1148a37e7ea0226670ecac188acbce Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Stefan=20Br=C3=BCns?= -Date: Mon, 15 Jul 2019 22:55:08 +0200 -Subject: [PATCH] Fix build with exiv2 0.27 - -Use exiv2.hpp as recommended by upstream ---- - tools/basecurve/exif-wrapper.cpp | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/tools/basecurve/exif-wrapper.cpp b/tools/basecurve/exif-wrapper.cpp -index 7255072..4281e1d 100644 ---- a/tools/basecurve/exif-wrapper.cpp -+++ b/tools/basecurve/exif-wrapper.cpp -@@ -16,8 +16,7 @@ - along with darktable. If not, see . - */ - --#include --#include -+#include - - #include - #include --- -2.22.0 - diff --git a/basecurve.readme.patch b/basecurve.readme.patch deleted file mode 100644 index a65fa56..0000000 --- a/basecurve.readme.patch +++ /dev/null @@ -1,37 +0,0 @@ -Index: darktable/tools/basecurve/README.md -=================================================================== ---- darktable.orig/tools/basecurve/README.md -+++ darktable/tools/basecurve/README.md -@@ -45,20 +45,11 @@ You can build the tool using the followi - - You are invited to print the help message to get to know the tool's options: - -- $ "$YOUR_INSTALL_PATH/bin/dt-curve-tool" -h -+ $ "/usr/bin/dt-curve-tool" -h - - It may help you better understand the following paragraphs. - - --## Determining a basecurve/tonecurve using _dt-curve-tool-helper_ script -- -- --An additional helper script called _dt-curve-tool-helper_ is provided. This --script should automate many steps of the curve determination process. -- --It is assumed that `$YOUR_INSTALL_PATH` is in your `$PATH`. -- -- - ### Gathering the statistics - - -@@ -218,8 +209,8 @@ Two GNUPlot scripts are provided in the - suppose default filenames for the basecurve/tonecurve data/fit files have been - used - -- $ gnuplot -e ${dt src}/tools/basecurve/gnuplot.tonecurve -- $ gnuplot -e ${dt src}/tools/basecurve/gnuplot.basecurve -+ $ gnuplot -c /usr/share/darktable/tools/basecurve/gnuplot.tonecurve -+ $ gnuplot -c /usr/share/darktable/tools/basecurve/gnuplot.basecurve - - This generates a `basecurve.pdf`; resp `tonecurve.pdf` file with a graph of the - gathered data and the fitted curves. This can help you measuring how much of diff --git a/darktable-2.6.3.tar.xz b/darktable-2.6.3.tar.xz deleted file mode 100644 index 6ed1507..0000000 --- a/darktable-2.6.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a518999c8458472edfc04577026ce5047d74553052af0f52d10ba8ce601b78f0 -size 3522292 diff --git a/darktable-2.6.3.tar.xz.asc b/darktable-2.6.3.tar.xz.asc deleted file mode 100644 index bc26f59..0000000 --- a/darktable-2.6.3.tar.xz.asc +++ /dev/null @@ -1,6 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iF0EABECAB0WIQTxD5aGZSsOlJ/NlMMY3KEj+Um9OwUCXaxYGQAKCRAY3KEj+Um9 -O4CjAKDbIITBuycuuJE5vUhNeKqf42L3igCfRxgKmH6ElXj6PydKbsejqj1HLA0= -=hwkN ------END PGP SIGNATURE----- diff --git a/darktable-3.0.0.tar.xz b/darktable-3.0.0.tar.xz new file mode 100644 index 0000000..239f985 --- /dev/null +++ b/darktable-3.0.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7195a5ff7ee95ab7c5a57e4e84f8c90cc4728b2c917359203c21293ab754c0db +size 3827412 diff --git a/darktable-3.0.0.tar.xz.asc b/darktable-3.0.0.tar.xz.asc new file mode 100644 index 0000000..afec696 --- /dev/null +++ b/darktable-3.0.0.tar.xz.asc @@ -0,0 +1,6 @@ +-----BEGIN PGP SIGNATURE----- + +iF0EABECAB0WIQTxD5aGZSsOlJ/NlMMY3KEj+Um9OwUCXf3towAKCRAY3KEj+Um9 +O5r9AJ4uTtqV9XCPfNlrHFC/DPLEJDbYWQCfcCPdtR2SJPDiLuflXR7DZqYrlXM= +=XC3w +-----END PGP SIGNATURE----- diff --git a/darktable.changes b/darktable.changes index 51dc9e7..2c05954 100644 --- a/darktable.changes +++ b/darktable.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Thu Jan 2 19:52:30 UTC 2020 - Stefan BrĂ¼ns + +- Cleanup spec file: + * Move LICENSE to licensedir + * Use _libexecdir for tools + * Remove conditionals for obsolete distribution versions +- Do not copy developer/packager documentation to docdir + +------------------------------------------------------------------- +Fri Dec 27 13:12:23 UTC 2019 - Andreas Schneider + +- Update to version 3.0.0 + * https://github.com/darktable-org/darktable/releases/tag/release-3.0.0 +- Removed 0001-Fix-build-with-exiv2-0.27.patch +- Removed basecurve.readme.patch + ------------------------------------------------------------------- Mon Oct 21 14:52:51 UTC 2019 - Marcus Rueckert diff --git a/darktable.spec b/darktable.spec index bceef4a..efd0a51 100644 --- a/darktable.spec +++ b/darktable.spec @@ -1,7 +1,7 @@ # # spec file for package darktable # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,11 +16,6 @@ # -%if 0%{?fedora_version} -%bcond_with basecurve_tool -%else -%bcond_without basecurve_tool -%endif %bcond_with clang %if 0%{?is_opensuse} || 0%{?fedora_version} >= 26 @@ -33,22 +28,20 @@ %bcond_with translated_manpages %endif -%if 0%{?suse_version} >= 1330 || 0%{?fedora_version} >= 26 -%bcond_without system_lua -%else -%bcond_with system_lua -%endif - %ifarch ppc64le +# The OpenCL kernels don't compile on ppc64le and if you get +# them compiled there are funny runtime issues. %bcond_with opencl %else %bcond_without opencl %endif -%if 0%{?suse_version} > 1320 || 0%{?fedora_version} >= 26 -%bcond_without system_opencl +%bcond_without openmp + +%if %{with openmp} +%global _use_openmp "ON" %else -%bcond_with system_opencl +%global _use_openmp "OFF" %endif %if %{with opencl} @@ -57,44 +50,28 @@ %global _use_opencl "OFF" %endif -%global _libexec_subdir "lib" -%if 0%{?fedora_version} -%global _libexec_subdir "libexec" -%endif - -%global _rawspeed_with_lto "ON" -%if (0%{?fedora_version} && 0%{?fedora_version} <= 27) || (0%{?suse_version} && 0%{?suse_version} < 1550) -# Linker crashes. Do not really care since F27 is EOL. -%global _rawspeed_with_lto "OFF" -%endif - -%define cmake_options -DCMAKE_SKIP_RPATH:BOOL=OFF -DCMAKE_BUILD_TYPE=Release -DRAWSPEED_ENABLE_LTO="%{_rawspeed_with_lto}" -DBINARY_PACKAGE_BUILD=1 -DCMAKE_INSTALL_DATAROOTDIR="share" -DCMAKE_INSTALL_LIBDIR="%{_lib}" -DCMAKE_INSTALL_LIBEXECDIR="%{_libexec_subdir}" -DUSE_OPENCL="%{_use_opencl}" -DBUILD_NOISE_TOOLS=ON - -%if 0%{?suse_version} == 1315 +%if 0%{?suse_version} < 1550 %define force_gcc_version 7 %endif Name: darktable -Version: 2.6.3 +Version: 3.0.0 Release: 0 %define pkg_name darktable -%define pkg_version 2.6.3 -Url: http://www.darktable.org/ -Source0: %{name}-%{pkg_version}.tar.xz +%define pkg_version 3.0.0 +URL: http://www.darktable.org/ +Source0: %{pkg_name}-%{pkg_version}.tar.xz Source1: https://github.com/darktable-org/darktable/releases/download/release-2.6.1/darktable-usermanual.pdf Source2: https://github.com/darktable-org/darktable/releases/download/release-2.6.1/darktable-usermanual-de.pdf Source3: https://github.com/darktable-org/darktable/releases/download/release-2.6.1/darktable-usermanual-it.pdf Source4: https://github.com/darktable-org/darktable/releases/download/release-2.0.0/darktable-lua-api.pdf -Source96: %{name}-%{pkg_version}.tar.xz.asc +Source96: %{pkg_name}-%{pkg_version}.tar.xz.asc Source97: darktable.dsc Source98: debian.tar.xz Source99: README.openSUSE Patch: darktable-old-glib.patch -Patch1: basecurve.readme.patch -# PATCH-FIX-UPSTREAM Fixed (differently) in 2.8.0 -Patch2: 0001-Fix-build-with-exiv2-0.27.patch -ExclusiveArch: x86_64 aarch64 +ExclusiveArch: x86_64 aarch64 ppc64le # build time tools BuildRequires: clang BuildRequires: cmake >= 3.4 @@ -103,7 +80,7 @@ BuildRequires: llvm-devel %if 0%{?fedora_version} BuildRequires: llvm-static %endif -%if ! %{with clang} +%if %{without clang} BuildRequires: gcc%{?force_gcc_version}-c++ >= 5 %if 0%{?force_gcc_version} #!BuildIgnore: libgcc_s1 @@ -126,28 +103,24 @@ BuildRequires: libjpeg-devel BuildRequires: libtiff-devel BuildRequires: libxml2-devel # -%if %{with system_lua} BuildRequires: lua-devel >= 5.3 -%endif BuildRequires: pugixml-devel # BuildRequires: pkgconfig -%if 0%{?suse_version} != 1315 || ( 0%{?suse_version} == 1315 && 0%{?is_opensuse} ) BuildRequires: pkgconfig(GraphicsMagick) -BuildRequires: pkgconfig(libopenjp2) -%endif BuildRequires: pkgconfig(OpenEXR) BuildRequires: pkgconfig(atk) BuildRequires: pkgconfig(colord) BuildRequires: pkgconfig(colord-gtk) -BuildRequires: pkgconfig(exiv2) > 0.24 +BuildRequires: pkgconfig(exiv2) +BuildRequires: pkgconfig(libopenjp2) %if %{with flickcurl} BuildRequires: pkgconfig(flickcurl) %endif BuildRequires: pkgconfig(gdk-pixbuf-2.0) BuildRequires: pkgconfig(gio-2.0) -BuildRequires: pkgconfig(glib-2.0) > 2.40 -BuildRequires: pkgconfig(gtk+-3.0) > 3.14 +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(gtk+-3.0) >= 3.22 BuildRequires: pkgconfig(iso-codes) BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(lcms2) @@ -162,13 +135,21 @@ BuildRequires: pkgconfig(osmgpsmap-1.0) %endif BuildRequires: pkgconfig(pango) BuildRequires: pkgconfig(sqlite3) -%if %{with opencl} && %{with system_opencl} +%if %{with opencl} BuildRequires: opencl-headers %endif # for the sake of simplicity we do not enforce the version here # the package is small enough that installing it doesnt hurt Requires: iso-codes # +# Some CSS themes suggest to use the the Roboto font family +# https://github.com/darktable-org/darktable/releases/tag/release-3.0.0 +%if 0%{?fedora_version} +Recommends: roboto-fontface-fonts +%else +Recommends: google-roboto-fonts +%endif +# Summary: A virtual Lighttable and Darkroom License: GPL-3.0-or-later Group: Productivity/Graphics/Viewers @@ -221,28 +202,31 @@ lighttable. It also enables developing raw images and enhance them. This package provides the user manual in PDF format. %prep -%setup -q -n %{pkg_name}-%{version} -%patch -p1 -%patch1 -p1 -%patch2 -p1 -chmod -x tools/basecurve/* tools/noise/* +%autosetup -p1 -n %{pkg_name}-%{version} cp %{S:1} %{S:2} %{S:3} %{S:4} . cp %{S:99} . -%if %{with system_opencl} || !%{with opencl} # Remove bundled OpenCL headers. rm -rf src/external/CL src/external/OpenCL sed -i -e 's, \"external/CL/\*\.h\" , ,' src/CMakeLists.txt -%endif -%if %{with system_lua} # Remove bundled lua rm -rf src/external/lua/ -%endif %build -export BUILDDIR="$PWD" +%define cmake_options \\\ + -DCMAKE_SKIP_RPATH:BOOL=OFF \\\ + -DCMAKE_INSTALL_DATAROOTDIR="share" \\\ + -DCMAKE_INSTALL_LIBEXECDIR="%{_libexecdir}" \\\ + -DCMAKE_INSTALL_DOCDIR="%{_defaultdocdir}/%{pkg_name}" \\\ + -DBINARY_PACKAGE_BUILD=1 \\\ + -DRAWSPEED_ENABLE_LTO=ON \\\ + -DUSE_OPENCL="%{_use_opencl}" \\\ + -DUSE_OPENMP="%{_use_openmp}" \\\ + -DBUILD_NOISE_TOOLS=ON \\\ + -DBUILD_CURVE_TOOLS=ON + %if 0%{?force_gcc_version} export CC="gcc-%{?force_gcc_version}" export CXX="g++-%{?force_gcc_version}" @@ -256,105 +240,49 @@ export _OPENCL_INCLUDE_DIR=$(clang -print-search-dirs | awk -F= '/^libra/ {print #suse branch %cmake \ -DCLANG_OPENCL_INCLUDE_DIR=${_OPENCL_INCLUDE_DIR} \ - %if ! %{with system_lua} - -DDONT_USE_INTERNAL_LUA=Off \ - %endif + -DDONT_USE_INTERNAL_LUA=ON \ %ifarch aarch64 -DTESTBUILD_OPENCL_PROGRAMS=OFF \ %endif %{cmake_options} \ || cat CMakeFiles/CMakeError.log -make %{_smp_mflags} VERBOSE=1 -cd $BUILDDIR +%cmake_build -cd tools/basecurve -%cmake -make %{_smp_mflags} VERBOSE=1 #/ suse branch %else #fedora branch mkdir %{_target_platform} pushd %{_target_platform} %cmake \ - %if ! %{with system_lua} - -DDONT_USE_INTERNAL_LUA=Off \ - %endif + -DDONT_USE_INTERNAL_LUA=ON \ %ifarch aarch64 -DTESTBUILD_OPENCL_PROGRAMS=OFF \ %endif %{cmake_options} .. make %{_smp_mflags} VERBOSE=1 -cd $BUILDDIR -%if %{with basecurve_tool} -cd tools/basecurve -mkdir %{_target_platform} -pushd %{_target_platform} -%cmake .. -make %{_smp_mflags} VERBOSE=1 %endif -%endif -cd $BUILDDIR %install %if 0%{?suse_version} # suse branch %cmake_install -%if %{with basecurve_tool} -pushd tools/basecurve -%cmake_install -popd -%endif %suse_update_desktop_file darktable - -mkdir -p %{buildroot}%{_defaultdocdir}/%{pkg_name}/ -mv %{buildroot}%{_datadir}/doc/darktable/* %{buildroot}%{_defaultdocdir}/%{pkg_name}/ #/ suse branch %else # fedora branch %make_install -C %{_target_platform} -%if %{with basecurve_tool} -%make_install -C tools/basecurve/%{_target_platform} -%endif #/ fedora branch %endif -find %{buildroot}%{_libdir} -name "*.la" -delete %find_lang darktable -cp -av %{S:1} %{S:2} %{S:3} %{S:4} \ - doc/ChangeLog doc/NEWS \ - doc/thumbnail_color_management.txt \ - doc/TODO doc/TRANSLATORS* \ +cp -av %{S:1} %{S:2} %{S:3} %{S:4} doc/TODO \ %{buildroot}%{_defaultdocdir}/%{pkg_name} - -mkdir -p %{buildroot}%{_defaultdocdir}/%{pkg_name}/tools/ %{buildroot}%{_datadir}/%{pkg_name}/tools/ - -cp -av tools/purge* tools/common.sh \ - %{buildroot}%{_datadir}/%{pkg_name}/tools/ - -%if %{with basecurve_tool} -mkdir -p %{buildroot}%{_datadir}/%{pkg_name}/tools/basecurve/ -cp -av tools/basecurve/plot* \ - %{buildroot}%{_datadir}/%{pkg_name}/tools/basecurve/ - -install -D -m 0644 tools/basecurve/README.md \ - %{buildroot}%{_defaultdocdir}/%{pkg_name}/README.tools.basecurve.md -%endif +rm %{buildroot}%{_defaultdocdir}/%{pkg_name}/LICENSE %fdupes %{buildroot}/%{_prefix} -%if 0%{?suse_version} -# on newer distros it is handled via file trigger -%if 0%{?suse_version} < 1500 -%post -%desktop_database_post -%icon_theme_cache_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%endif -%else +%if ! 0%{?suse_version} %post touch --no-create %{_datadir}/icons/hicolor >/dev/null 2>/dev/null || : @@ -371,10 +299,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >/dev/null 2>/dev/null || : %files -f darktable.lang %doc %{_defaultdocdir}/%{pkg_name} +%license LICENSE %exclude %{_defaultdocdir}/%{pkg_name}/*.pdf -%if %{with basecurve_tool} %exclude %{_defaultdocdir}/%{pkg_name}/README.tools.basecurve.md -%endif %{_bindir}/darktable %if %{with opencl} %{_bindir}/darktable-cltest @@ -398,13 +325,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor >/dev/null 2>/dev/null || : %dir %{_libexecdir}/darktable %dir %{_libexecdir}/darktable/tools -%if %{with basecurve_tool} %files tools-basecurve -%{_bindir}/dt-curve-tool -%{_bindir}/dt-curve-tool-helper +%{_libexecdir}/darktable/tools/darktable-curve-tool +%{_libexecdir}/darktable/tools/darktable-curve-tool-helper %{_datadir}/%{pkg_name}/tools/basecurve/ %doc %{_defaultdocdir}/%{pkg_name}/README.tools.basecurve.md -%endif %files tools-noise %{_libexecdir}/darktable/tools/darktable-gen-noiseprofile