diff --git a/darktable-2.0.7.tar.xz b/darktable-2.0.7.tar.xz deleted file mode 100644 index 735e9ee..0000000 --- a/darktable-2.0.7.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a9226157404538183549079e3b8707c910fedbb669bd018106bdf584b88a1dab -size 2960436 diff --git a/darktable-2.2.0.tar.xz b/darktable-2.2.0.tar.xz new file mode 100644 index 0000000..250281f --- /dev/null +++ b/darktable-2.2.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3eca193831faae58200bb1cb6ef29e658bce43a81706b54420953a7c33d79377 +size 3061716 diff --git a/darktable-old-glib.patch b/darktable-old-glib.patch new file mode 100644 index 0000000..919aa10 --- /dev/null +++ b/darktable-old-glib.patch @@ -0,0 +1,45 @@ +Index: darktable-2.0.2/src/common/exif.cc +=================================================================== +--- darktable-2.0.2.orig/src/common/exif.cc ++++ darktable-2.0.2/src/common/exif.cc +@@ -78,6 +78,13 @@ const char *dt_xmp_keys[] + + static const guint dt_xmp_keys_n = G_N_ELEMENTS(dt_xmp_keys); // the number of XmpBag XmpSeq keys that dt uses + ++#if ! GLIB_CHECK_VERSION(2,40,0) ++static gboolean _str_is_ascii(const char *str) ++{ ++ while(*str) if((guchar)*str++ >= 0x80) return FALSE; ++ return TRUE; ++} ++#endif + + /* a few helper functions inspired by + https://projects.kde.org/projects/kde/kdegraphics/libs/libkexiv2/repository/revisions/master/entry/libkexiv2/kexiv2gps.cpp +@@ -1291,7 +1298,11 @@ int dt_exif_read_blob(uint8_t *buf, cons + if(res != NULL) + { + char *desc = (char *)res->data; ++#if GLIB_CHECK_VERSION(2,40,0) + if(g_str_is_ascii(desc)) ++#else ++ if(_str_is_ascii(desc)) ++#endif + exifData["Exif.Image.ImageDescription"] = desc; + else + exifData["Exif.Photo.UserComment"] = desc; +# Index: darktable-2.0.2/cmake/modules/FindGTK3.cmake +# =================================================================== +# --- darktable-2.0.2.orig/cmake/modules/FindGTK3.cmake +# +++ darktable-2.0.2/cmake/modules/FindGTK3.cmake +# @@ -84,8 +84,8 @@ find_library(GDKPIXBUF_LIBRARY NAMES gdk +# # Glib +# +# # NOTE: must be one of the macros listed in https://developer.gnome.org/glib/stable/glib-Version-Information.html +# -find_package(Glib REQUIRED 2.40) +# -set(GTK3_DEFINITIONS ${GTK3_DEFINITIONS} "-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_40") +# +find_package(Glib REQUIRED 2.32) +# +set(GTK3_DEFINITIONS ${GTK3_DEFINITIONS} "-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32") +# set(GTK3_DEFINITIONS ${GTK3_DEFINITIONS} "-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_MIN_REQUIRED") +# +# if(NOT Glib_FOUND) diff --git a/darktable.changes b/darktable.changes index 39deeb5..9378546 100644 --- a/darktable.changes +++ b/darktable.changes @@ -1,3 +1,356 @@ +------------------------------------------------------------------- +Fri Dec 23 12:52:26 UTC 2016 - mrueckert@suse.de + +- update to 2.2.0: + + Well over 2k commits since 2.0.0 + + - The Big Ones: + - Add new automatic perspective correction module + (https://www.darktable.org/2016/03/a-new-module-for-automatic-perspective-correction/) + - Liquify tool for all your fancy pixel moving + (https://www.darktable.org/2016/04/liquify-liquify/) + - A new image module to use a Color Look Up Table (CLUT) to + change colors in the image + (https://www.darktable.org/2016/05/colour-manipulation-with-the-colour-checker-lut-module/) + - In Highlight reconstruction module, the mode LCh + reconstruction was completely rewritten, and is no longer + useless! + - A new tool, darktable-chart, that goes along with the CLUT + module, to create styles for the latter + - Exposure fusion in the basecurve module to lower the dynamic + range of images + (https://www.darktable.org/2016/08/compressing-dynamic-range-with-exposure-fusion/) + - Add new raw overexposure indication + (https://www.darktable.org/2016/10/raw-overexposed/) + - Darkroom: the preview (in top-left corner) is now no longer + pre-demosaiced (but just downscaled without demosaicing it at + the same time), thus the preview, color picker, histogram + show the proper results, especially when there is highlight + clipping. + - Quite Interesting Changes: + - Split the database into a library containing images and a + general one with styles, presets and tags. That allows having + access to those when for example running with a :memory: + library + - Support running on platforms other than x86 (64bit + little-endian, currently ARM64 only) + (https://www.darktable.org/2016/04/running-on-non-x86-platforms/) + - darktable is now happy to use smaller stack sizes (no less + than 256Kb). That should allow using musl libc + - Allow darktable-cli to work on directories + - Allow to import/export tags from Lightroom keyword files + - Allow using modifier keys to modify the step for sliders and + curves. Defaults: Ctrl - x0.1; Shift - x10 + - Allow using the [keyboard] cursor keys to interact with + sliders, comboboxes and curves; modifiers apply too + - Support presets in "more modules" so you can quickly switch + between your favorite sets of modules shown in the GUI + - Add range operator and date compare to the collection module + - Add basic undo/redo support for the darkroom (masks are not + accounted !) + - Support the Exif date and time when importing photos from + camera + - Input color profile module, when profile is just matrix (and + linear curve), is 1/3 faster now. + - Rudimentary CYGM and RGBE color filter array support + - Nicer web gallery exporter -- now touch friendly! + - OpenCL implementation of VNG/VNG4 demosaicing methods + - OpenCL implementation of Markesteijn demosaicing method for + X-Trans sensors + - Filter-out some useless EXIF tags when exporting, helps keep + EXIF size under ~64Kb + - OpenCL: properly discard CPU-based OpenCL devices. Fixes + crashes on startup with some partially-working OpenCL + implementations like pocl. + - darktable-cli: do not even try to open display, we don't need + it. + - Hotpixels module: make it actually work for X-Trans + - Cmstest tool should now produce correct output in more cases, + especially in multi-monitor setups. + - Darkroom histogram now uses more bins: use all 8-bit of the + output, not just 6. + - Some More Changes, Probably Not Complete: + - Drop darktable-viewer tool in favor of slideshow view + - Remove gnome keyring password backend, use libsecret instead + - When using libsecret to store passwords then put them into + the correct collection + - Hint via window manager when import/export is done + - Quick tagging searches anywhere, not just at the start of + tags + - The sidecar XMP schema for history entries is now more + consistent and less error prone + - Rawspeed: fixes for building with libjpeg (as opposed to + libjpeg-turbo) + - Give the choice of equidistant and proportional feathering + when using elliptical masks (shift+click) + - Add geolocation to watermark variables + - Fix some crashes with missing configured ICC profiles + - Support greyscale color profiles + - Lens correction module: switched back to normal Lensfun + search mode for lens lookups. + - Make sure that proper signal handlers are still set after GM + initialization... + - OSX: add trash support (thanks to Michael Kefeder for initial + patch) + - Attach Xmp data to EXR files + - Several fixes for HighDPI displays + - Use Pango for text layout, thus supporting RTL languages + - Feathering size in some mask shapes can be set with + shift+scroll + - Many bugs got fixed and some memory leaks plugged + - The usermanual was updated to reflect the changes in the 2.2 + series + - Tone curve: mode "automatic in XYZ" mode for "scale chroma" + - Some compilation fixes + - Lua specific changes: + - All asynchronous calls have been rewritten + - the darktable-specific implementation of yield was removed + - darktable.control.execute allows to execute some shell + commands without blocking Lua + - darktable.control.read allows to wait for a file to be + readable without blocking Lua + - darktable.control.sleep allows to pause the Lua execution + without blocking other Lua threads + - darktable.gui.libs.metadata_view.register_info allows to add + new field to the metadata widget in the darkroom view + - The TextView widget can now be created in Lua, allowing input + of large chunks of text + - It is now possible to use a custom widget in the Lua + preference window to configure a preference + - It is now possible to set the precision and step on slider + widgets + - Changed Dependencies: + - CMake 3.0 is now required. + - In order to compile darktable you now need at least + gcc-4.7+/clang-3.3+, but better use gcc-5.0+ + - Drop support for OS X 10.6 + - Bump required libexiv2 version up to 0.24 + - Bump GTK+ requirement to gtk-3.14. (because even debian + stable has it) + - Bump GLib requirement to glib-2.40. + - Port to OpenJPEG2 + - SDL is no longer needed. + - Remove gnome keyring password backend + - Base Support: + - Canon EOS-1D X Mark II + - Canon EOS 5D Mark IV + - Canon EOS 80D + - Canon EOS 1300D + - Canon EOS Kiss X80 + - Canon EOS Rebel T6 + - Canon EOS M10 + - Canon PowerShot A720 IS (dng) + - Canon PowerShot G7 X Mark II + - Canon PowerShot G9 X + - Canon PowerShot SD450 (dng) + - Canon PowerShot SX130 IS (dng) + - Canon PowerShot SX260 HS (dng) + - Canon PowerShot SX510 HS (dng) + - Fujifilm FinePix S100FS + - Fujifilm X-Pro2 + - Fujifilm X-T2 + - Fujifilm X70 + - Fujifilm XQ2 + - GITUP GIT2 (chdk-a, chdk-b) + - (most nikon cameras here are just fixes, and they were + supported before already) + - Nikon 1 AW1 (12bit-compressed) + - Nikon 1 J1 (12bit-compressed) + - Nikon 1 J2 (12bit-compressed) + - Nikon 1 J3 (12bit-compressed) + - Nikon 1 J4 (12bit-compressed) + - Nikon 1 J5 (12bit-compressed, 12bit-uncompressed) + - Nikon 1 S1 (12bit-compressed) + - Nikon 1 S2 (12bit-compressed) + - Nikon 1 V1 (12bit-compressed) + - Nikon 1 V2 (12bit-compressed) + - Nikon 1 V3 (12bit-compressed, 12bit-uncompressed) + - Nikon Coolpix A (14bit-compressed) + - Nikon Coolpix P330 (12bit-compressed) + - Nikon Coolpix P340 (12bit-compressed, 12bit-uncompressed) + - Nikon Coolpix P6000 (12bit-uncompressed) + - Nikon Coolpix P7000 (12bit-uncompressed) + - Nikon Coolpix P7100 (12bit-uncompressed) + - Nikon Coolpix P7700 (12bit-compressed) + - Nikon Coolpix P7800 (12bit-compressed) + - Nikon D1 (12bit-uncompressed) + - Nikon D100 (12bit-compressed, 12bit-uncompressed) + - Nikon D1H (12bit-compressed, 12bit-uncompressed) + - Nikon D1X (12bit-compressed, 12bit-uncompressed) + - Nikon D200 (12bit-compressed, 12bit-uncompressed) + - Nikon D2H (12bit-compressed, 12bit-uncompressed) + - Nikon D2Hs (12bit-compressed, 12bit-uncompressed) + - Nikon D2X (12bit-compressed, 12bit-uncompressed) + - Nikon D3 (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D300 (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D3000 (12bit-compressed) + - Nikon D300S (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D3100 (12bit-compressed) + - Nikon D3200 (12bit-compressed) + - Nikon D3300 (12bit-compressed, 12bit-uncompressed) + - Nikon D3400 (12bit-compressed) + - Nikon D3S (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D3X (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D4 (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D40 (12bit-compressed, 12bit-uncompressed) + - Nikon D40X (12bit-compressed, 12bit-uncompressed) + - Nikon D4S (14bit-compressed) + - Nikon D5 (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon D50 (12bit-compressed) + - Nikon D500 (14bit-compressed, 12bit-compressed) + - Nikon D5000 (12bit-compressed, 12bit-uncompressed) + - Nikon D5100 (14bit-compressed, 14bit-uncompressed) + - Nikon D5200 (14bit-compressed) + - Nikon D5300 (12bit-uncompressed, 14bit-compressed, + 14bit-uncompressed) + - Nikon D5500 (12bit-uncompressed, 14bit-compressed, + 14bit-uncompressed) + - Nikon D60 (12bit-compressed, 12bit-uncompressed) + - Nikon D600 (14bit-compressed, 12bit-compressed) + - Nikon D610 (14bit-compressed, 12bit-compressed) + - Nikon D70 (12bit-compressed) + - Nikon D700 (12bit-compressed, 12bit-uncompressed, + 14bit-compressed) + - Nikon D7000 (14bit-compressed, 12bit-compressed) + - Nikon D70s (12bit-compressed) + - Nikon D7100 (14bit-compressed, 12bit-compressed) + - Nikon D80 (12bit-compressed, 12bit-uncompressed) + - Nikon D800 (14bit-compressed, 12bit-compressed, + 12bit-uncompressed) + - Nikon D800E (14bit-compressed, 12bit-compressed, + 12bit-uncompressed) + - Nikon D90 (12bit-compressed, 12bit-uncompressed) + - Nikon Df (14bit-compressed, 14bit-uncompressed, + 12bit-compressed, 12bit-uncompressed) + - Nikon E5400 (12bit-uncompressed) + - Nikon E5700 (12bit-uncompressed) + - Olympus PEN-F + - OnePlus One (dng) + - Panasonic DMC-FZ150 (1:1, 16:9) + - Panasonic DMC-FZ18 (16:9, 3:2) + - Panasonic DMC-FZ300 (4:3) + - Panasonic DMC-FZ50 (16:9, 3:2) + - Panasonic DMC-G8 (4:3) + - Panasonic DMC-G80 (4:3) + - Panasonic DMC-G81 (4:3) + - Panasonic DMC-G85 (4:3) + - Panasonic DMC-GX80 (4:3) + - Panasonic DMC-GX85 (4:3) + - Panasonic DMC-LX3 (1:1) + - Panasonic DMC-LX10 (3:2) + - Panasonic DMC-LX15 (3:2) + - Panasonic DMC-LX9 (3:2) + - Panasonic DMC-TZ100 (3:2) + - Panasonic DMC-TZ101 (3:2) + - Panasonic DMC-TZ110 (3:2) + - Panasonic DMC-ZS110 (3:2) + - Pentax K-1 + - Pentax K-70 + - Samsung GX20 (dng) + - Sony DSC-F828 + - Sony DSC-RX100M5 + - Sony DSC-RX10M3 + - Sony DSLR-A380 + - Sony ILCA-68 + - Sony ILCA-99M2 + - Sony ILCE-6300 + - We were unable to bring back these 2 cameras, because we have + no samples. If anyone reading this owns such a camera, please + do consider providing samples. + - Nikon E8400 + - Nikon E8800 + - White Balance Presets: + - Canon EOS 1200D + - Canon EOS Kiss X70 + - Canon EOS Rebel T5 + - Canon EOS 1300D + - Canon EOS Kiss X80 + - Canon EOS Rebel T6 + - Canon EOS 5D Mark IV + - Canon EOS 5DS + - Canon EOS 5DS R + - Canon EOS 750D + - Canon EOS Kiss X8i + - Canon EOS Rebel T6i + - Canon EOS 760D + - Canon EOS 8000D + - Canon EOS Rebel T6s + - Canon EOS 80D + - Canon EOS M10 + - Canon EOS-1D X Mark II + - Canon PowerShot G7 X Mark II + - Fujifilm X-Pro2 + - Fujifilm X-T2 + - Fujifilm X-T10 + - Fujifilm X100T + - Fujifilm X20 + - Fujifilm X70 + - Nikon 1 V3 + - Nikon D5500 + - Olympus PEN-F + - Pentax K-1 + - Pentax K-70 + - Pentax K-S1 + - Pentax K-S2 + - Sony ILCA-68 + - Sony ILCE-6300 + - Noise Profiles: + - Canon EOS 5DS R + - Canon EOS 80D + - Canon PowerShot G15 + - Canon PowerShot S100 + - Canon PowerShot SX100 IS + - Canon PowerShot SX50 HS + - Fujifilm X-T10 + - Fujifilm X-T2 + - Fujifilm X100T + - Fujifilm X20 + - Fujifilm X70 + - Nikon 1 V3 + - Nikon D5 + - Nikon D5500 + - Olympus E-PL6 + - Olympus E-PM2 + - Olympus PEN-F + - Panasonic DMC-FZ1000 + - Panasonic DMC-GF7 + - Pentax K-1 + - Pentax K-S2 + - Ricoh GR + - Sony DSLR-A900 + - Sony DSC-RX10 + - Sony ILCE-6300 + - Sony NEX-5 + - Sony SLT-A37 + - New Translations: + - Hebrew + - Slovenian + - Updated Translations: + - Catalan + - Czech + - Danish + - Dutch + - French + - German + - Hungarian + - Italian + - Polish + - Russian + - Slovak + - Spanish + - Swedish + - Ukrainian +- add darktable-old-glib.patch to allow building with slightly + older glib versions + ------------------------------------------------------------------- Fri Oct 28 21:05:27 UTC 2016 - mrueckert@suse.de diff --git a/darktable.spec b/darktable.spec index d18553f..2a8291d 100644 --- a/darktable.spec +++ b/darktable.spec @@ -16,6 +16,8 @@ # +%bcond_with clang + %if ( 0%{?suse_version} > 1310 && 0%{?is_opensuse} ) || 0%{?fedora_version} >= 22 || 0%{?fc22}%{?fc23}%{?fc24}%{?fc25} %bcond_without osmgpsmap %else @@ -42,25 +44,30 @@ %bcond_with system_opencl %endif -%define cmake_options -DCMAKE_SKIP_RPATH:BOOL=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBINARY_PACKAGE_BUILD=1 -DPROJECT_VERSION:STRING="%{version}-%{release}" +%define cmake_options -DCMAKE_SKIP_RPATH:BOOL=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBINARY_PACKAGE_BUILD=1 -DCMAKE_INSTALL_DATAROOTDIR="share" -DCMAKE_INSTALL_LIBDIR="%{_lib}" Name: darktable -Version: 2.0.7 +Version: 2.2.0 Release: 0 Url: http://www.darktable.org/ -Source0: https://github.com/darktable-org/darktable/releases/download/release-%{version}/%{name}-%{version}.tar.xz +Source0: %{name}-%{version}.tar.xz Source1: https://github.com/darktable-org/darktable/releases/download/release-2.0.0/darktable-usermanual.pdf Source2: https://github.com/darktable-org/darktable/releases/download/release-2.0.0/darktable-usermanual-fr.pdf Source3: https://github.com/darktable-org/darktable/releases/download/release-2.0.0/darktable-usermanual-es.pdf Source4: https://github.com/darktable-org/darktable/releases/download/release-2.0.0/darktable-lua-api.pdf Source99: README.openSUSE +Patch: darktable-old-glib.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -ExclusiveArch: %ix86 x86_64 +ExclusiveArch: %ix86 x86_64 aarch64 # build time tools -BuildRequires: cmake +BuildRequires: cmake >= 3 BuildRequires: fdupes +%if %{with clang} +BuildRequires: llvm-clang +%else BuildRequires: gcc-c++ +%endif BuildRequires: intltool BuildRequires: libxslt %if %{with translated_manpages} @@ -148,10 +155,14 @@ This package provides the user manual in pdf format %prep %setup -q -n %{name}-%{version} +%patch -p1 chmod -x tools/create_control_svg.sh tools/purge_non_existing_images.sh tools/basecurve/* tools/noise/* cp %{S:1} %{S:2} %{S:3} %{S:4} . cp %{S:99} . +%ifarch ppc64le +echo "" > src/is_supported_platform.h +%endif %if %{with system_opencl} # Remove bundled OpenCL headers. @@ -165,13 +176,21 @@ rm -rf src/external/lua/ %endif %build -echo "#define PACKAGE_VERSION \"%{version}\"" | tee src/version_gen.h +./tools/create_version_c.sh src/version_gen.c "%{version}-%{release}" +%if %{with clang} +export CC="/usr/bin/clang" +export CXX="/usr/bin/clang++" +%endif %if 0%{?suse_version} -%cmake %{cmake_options} +%cmake %{cmake_options} || cat CMakeFiles/CMakeError.log %else mkdir %{_target_platform} pushd %{_target_platform} -%cmake %{cmake_options} .. +%cmake %{cmake_options} \ + %if ! %{with system_lua} + -DDONT_USE_INTERNAL_LUA=Off \ + %endif + .. %endif make %{_smp_mflags} VERBOSE=1 @@ -235,8 +254,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{_bindir}/darktable-cltest %{_bindir}/darktable-cli %{_bindir}/darktable-generate-cache -%{_bindir}/darktable-viewer +%{_bindir}/darktable-chart %{_bindir}/darktable-cmstest +%{_bindir}/darktable-rs-identify %{_libdir}/darktable %{_datadir}/applications/darktable.desktop %{_datadir}/darktable