Merge pull request #61853 from worldofpeace/exiv2-0.27.x

exiv2: 0.26.2018.12.30 -> 0.27.1
This commit is contained in:
worldofpeace 2019-07-01 16:57:57 -04:00 committed by GitHub
commit 3ddbe024f7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 242 additions and 124 deletions

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, pkgconfig, autoconf, automake, gettext, intltool
, gtk3, lcms2, exiv2, libchamplain, clutter-gtk, ffmpegthumbnailer, fbida
, wrapGAppsHook
, wrapGAppsHook, fetchpatch
}:
stdenv.mkDerivation rec {
@ -12,8 +12,20 @@ stdenv.mkDerivation rec {
sha256 = "0ciygvcxb78pqg59r6p061mkbpvkgv2rv3r79j3kgv3kalb3ln2w";
};
# Do not build the changelog as this requires markdown.
patches = [ ./geeqie-no-changelog.patch ];
patches = [
# Do not build the changelog as this requires markdown.
(fetchpatch {
name = "geeqie-1.4-goodbye-changelog.patch";
url = "https://src.fedoraproject.org/rpms/geeqie/raw/132fb04a1a5e74ddb333d2474f7edb9a39dc8d27/f/geeqie-1.4-goodbye-changelog.patch";
sha256 = "00a35dds44kjjdqsbbfk0x9y82jspvsbpm2makcm1ivzlhjjgszn";
})
# Fixes build with exiv2 0.27.1
(fetchpatch {
name = "geeqie-exiv2-0.27.patch";
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/geeqie-exiv2-0.27.patch?h=packages/geeqie&id=dee28a8b3e9039b9cd6927b5a93ef2a07cd8271d";
sha256 = "05skpbyp8pcq92psgijyccc8liwfy2cpwprw6m186pf454yb5y9p";
})
];
preConfigure = "./autogen.sh";

View File

@ -1,14 +0,0 @@
--- geeqie-1.4.orig/Makefile.am 2017-12-31 07:31:21.000000000 -0500
+++ geeqie-1.4/Makefile.am 2018-01-01 15:05:58.742068166 -0500
@@ -10,9 +10,9 @@
readmedir = @readmedir@
if HAVE_MARKDOWN
-readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS README.html ChangeLog.html
+readme_DATA = README.md COPYING TODO README.lirc AUTHORS README.html
else
-readme_DATA = README.md COPYING ChangeLog TODO README.lirc AUTHORS ChangeLog.html
+readme_DATA = README.md COPYING TODO README.lirc AUTHORS
endif
desktopdir = $(datadir)/applications

View File

@ -1,4 +1,4 @@
{ stdenv, cmake, fetchurl, gnumake, makeWrapper, pkgconfig
{ stdenv, cmake, fetchurl, gnumake, makeWrapper, pkgconfig, fetchpatch
, autopanosiftc, boost, cairo, enblend-enfuse, exiv2, fftw, flann, gettext
, glew, ilmbase, lcms2, lensfun, libjpeg, libpng, libtiff, libX11, libXi
, libXmu, libGLU_combined, openexr, panotools, perlPackages, sqlite, vigra, wxGTK, zlib
@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
sha256 = "1l925qslp98gg7yzmgps10h6dq0nb60wbfk345anlxsv0g2ifizr";
};
patches = [
# Fixes build with exiv2 0.27.1
(fetchpatch {
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/hugin-exiv2-0.27.1.patch?h=packages/hugin";
sha256 = "1yxvlpvrhyrfd2w6kwx1w3mncsvlzdhp0w7xchy8q6kc2kd5nf7r";
})
];
buildInputs = [
boost cairo exiv2 fftw flann gettext glew ilmbase lcms2 lensfun libjpeg
libpng libtiff libX11 libXi libXmu libGLU_combined openexr panotools sqlite vigra

View File

@ -1,23 +1,25 @@
{ stdenv, cmake, fetchurl, pkgconfig, boost, exiv2, fftwFloat, gsl
{ stdenv, cmake, fetchFromGitHub, pkgconfig, boost, exiv2, fftwFloat, gsl
, ilmbase, lcms2, libraw, libtiff, openexr
, qtbase, qtdeclarative, qttools, qtwebengine
, qtbase, qtdeclarative, qttools, qtwebengine, eigen
}:
stdenv.mkDerivation rec {
name = "luminance-hdr-2.5.1";
pname = "luminance-hdr";
version = "2.6.0";
src = fetchurl {
url = "mirror://sourceforge/qtpfsgui/${name}.tar.bz2";
sha256 = "15hnyk9yjkkc97dmnrg2ipfgwqxprlcyv2kyvbls4d54zc56x658";
src = fetchFromGitHub {
owner = "LuminanceHDR";
repo = "LuminanceHDR";
rev = "v.${version}";
sha256 = "1izmgjjp8mgyxv57sjjr05z7g7059ykb5wchlcn4wrnnb6aslnvn";
};
NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR";
buildInputs =
[
qtbase qtdeclarative qttools qtwebengine
boost exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr
];
buildInputs = [
qtbase qtdeclarative qttools qtwebengine eigen
boost exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr
];
nativeBuildInputs = [ cmake pkgconfig ];

View File

@ -27,6 +27,10 @@ stdenv.mkDerivation rec {
sha256 = "12582i5v85da7vwjxj8grj99hxg34ij5cn3b1578wspdfw1xfy1i";
};
patches = [
./nomacs-iostream.patch
];
enableParallelBuilding = true;
setSourceRoot = ''

View File

@ -0,0 +1,26 @@
diff --git a/src/DkCore/DkMetaData.cpp b/src/DkCore/DkMetaData.cpp
index d195757e..affec7be 100644
--- a/src/DkCore/DkMetaData.cpp
+++ b/src/DkCore/DkMetaData.cpp
@@ -42,6 +42,8 @@
#include <QApplication>
#pragma warning(pop) // no warnings from includes - end
+#include <iostream>
+
namespace nmc {
// DkMetaDataT --------------------------------------------------------------------
diff --git a/src/DkGui/DkNoMacs.cpp b/src/DkGui/DkNoMacs.cpp
index 6a412f70..bbfba233 100644
--- a/src/DkGui/DkNoMacs.cpp
+++ b/src/DkGui/DkNoMacs.cpp
@@ -96,6 +96,8 @@
#include <QWinTaskbarButton>
#endif
+#include <iostream>
+
namespace nmc {
DkNomacsOSXEventFilter::DkNomacsOSXEventFilter(QObject *parent) : QObject(parent) {

View File

@ -37,5 +37,6 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
platforms = platforms.linux;
license = licenses.gpl3;
broken = true; # exiv2 0.27.1 FTBFS
};
}

View File

@ -1,23 +1,36 @@
{ stdenv, fetchurl, cmake, exiv2, graphicsmagick, libraw
{ stdenv, fetchurl, cmake, exiv2, graphicsmagick, libraw, fetchpatch
, qtbase, qtdeclarative, qtmultimedia, qtquickcontrols, qttools, qtgraphicaleffects
, extra-cmake-modules, poppler, kimageformats, libarchive, libdevil
}:
stdenv.mkDerivation rec {
name = "photoqt-${version}";
version = "1.5.1";
pname = "photoqt";
version = "1.7.1";
src = fetchurl {
url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz";
sha256 = "17kkpzkmzfnigs26jjyd75iy58qffjsclif81cmviq73lzmqy0b1";
url = "https://${pname}.org/pkgs/${pname}-${version}.tar.gz";
sha256 = "1qvxdh3cbjcywqx0da2qp8z092660qyzv5yknqbps2zr12qqb103";
};
patches = [ ./photoqt-1.5.1-qt-5.9.patch ];
patches = [
# Fixes build with exiv2 0.27.1
(fetchpatch {
url = "https://gitlab.com/luspi/photoqt/commit/c6fd41478e818f3a651d40f96cab3d790e1c09a4.patch";
sha256 = "1j2pdr7hm3js7lswhb4qkf9sj9viclhjqz50qxpyd7pqrl1gf2va";
})
];
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [ cmake extra-cmake-modules qttools ];
buildInputs = [
qtbase qtquickcontrols qttools exiv2 graphicsmagick
qtbase qtquickcontrols exiv2 graphicsmagick poppler
qtmultimedia qtdeclarative libraw qtgraphicaleffects
kimageformats libarchive
];
cmakeFlags = [
"-DFREEIMAGE=OFF"
"-DDEVIL=OFF"
];
preConfigure = ''

View File

@ -1,13 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 97abcb5..fd4877a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,7 +50,7 @@ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O3 -Wall")
#### FIND REQUIRED PACKAGES ####
################################
-FIND_PACKAGE(Qt5 COMPONENTS LinguistTools Quick Widgets Core Svg REQUIRED)
+FIND_PACKAGE(Qt5 COMPONENTS LinguistTools Quick Widgets Core Svg Sql Xml REQUIRED)
SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake" ${CMAKE_MODULE_PATH})
FIND_PACKAGE(Magick)
FIND_PACKAGE(Exiv2)

View File

@ -1,41 +0,0 @@
{stdenv, fetchurl, qt4, qmake4Hook, exiv2, openexr, fftwSinglePrec, libtiff, ilmbase }:
stdenv.mkDerivation rec {
name = "qtpfsgui-1.9.3";
src = fetchurl {
url = "mirror://sourceforge/qtpfsgui/${name}.tar.gz";
sha256 = "1mlg9dry4mfnnjlnwsw375hzsiagssdhccfmapx5nh6ykqrslsh1";
};
buildInputs = [ qt4 exiv2 openexr fftwSinglePrec libtiff ];
nativeBuildInputs = [ qmake4Hook ];
hardeningDisable = [ "format" ];
preConfigure = ''
export CPATH="${ilmbase.dev}/include/OpenEXR:$CPATH"
'';
qmakeFlags = [
"EXIV2PATH=${exiv2.dev}/include/exiv2"
"OPENEXRDIR=${openexr.dev}/include/OpenEXR"
"FFTW3DIR=${fftwSinglePrec.dev}/include"
"LIBTIFFDIR=${libtiff.dev}/include"
];
meta = {
homepage = http://qtpfsgui.sourceforge.net/;
description = "Qtpfsqui, a graphical application for high dynamic range (HDR) imaging";
longDescription =
'' Qtpfsgui is an open source graphical user interface application that
aims to provide a workflow for high dynamic range (HDR) imaging.
'';
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ ];
platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
};
}

View File

@ -3,7 +3,7 @@
extra-cmake-modules, kdoctools,
exiv2, lcms2,
baloo, kactivities, kdelibs4support, kio, kipi-plugins, libkdcraw, libkipi,
phonon, qtimageformats, qtsvg, qtx11extras, kinit
phonon, qtimageformats, qtsvg, qtx11extras, kinit, fetchpatch
}:
mkDerivation {
@ -18,4 +18,12 @@ mkDerivation {
qtimageformats qtsvg qtx11extras
];
propagatedUserEnvPkgs = [ kipi-plugins libkipi (lib.getBin kinit) ];
# Fixes build with exiv2-0.27.1. Drop in 19.04.2
patches = [
(fetchpatch {
url = "https://github.com/KDE/gwenview/commit/172560b845460b6121154f88221c855542219943.patch";
sha256 = "0y1l34h2s7rhfknvg6ggcc389jfzhpq69wf0s3xd5ccwfw7c0ycq";
})
];
}

View File

@ -1,28 +1,41 @@
{ fetchFromGitHub, stdenv, pkgconfig, exiv2, libxml2, gtk2
, libxslt, docbook_xsl, docbook_xml_dtd_42 }:
{ fetchFromGitHub, stdenv, fetchpatch, pkgconfig, exiv2, libxml2, gtk3
, libxslt, docbook_xsl, docbook_xml_dtd_42, desktop-file-utils }:
stdenv.mkDerivation rec {
name = "gpscorrelate-${version}";
version = "1.6.1";
pname = "gpscorrelate";
version = "unstable-2019-06-05";
src = fetchFromGitHub {
owner = "freefoote";
repo = "gpscorrelate";
rev = version;
sha256 = "1z0fc75rx7dl6nnydksa578qv116j2c2xs1czfiijzxjghx8njdj";
owner = "dfandrich";
repo = pname;
rev = "80b14fe7c10c1cc8f62c13f517c062577ce88c85";
sha256 = "1gaan0nd7ai0bwilfnkza7lg5mz87804mvlygj0gjc672izr37r6";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [
exiv2 libxml2 gtk2
libxslt docbook_xsl
nativeBuildInputs = [
desktop-file-utils
docbook_xml_dtd_42
docbook_xsl
libxslt
pkgconfig
];
patchPhase = ''
sed -i "Makefile" \
-es",^[[:blank:]]*prefix[[:blank:]]*=.*$,prefix = $out,g"
'';
buildInputs = [
exiv2
gtk3
libxml2
];
makeFlags = [
"prefix=${placeholder ''out''}"
"GTK=3"
"CC=cc"
"CXX=c++"
];
doCheck = true;
installTargets = [ "install" "install-desktop-file" ];
meta = with stdenv.lib; {
description = "A GPS photo correlation tool, to add EXIF geotags";
@ -44,7 +57,7 @@ stdenv.mkDerivation rec {
'';
license = licenses.gpl2Plus;
homepage = https://github.com/freefoote/gpscorrelate;
homepage = "https://github.com/dfandrich/gpscorrelate";
platforms = platforms.linux;
};
}

View File

@ -2,7 +2,7 @@
, libpulseaudio, fftwSinglePrec , lame, zlib, libGLU_combined, alsaLib, freetype
, perl, pkgconfig , libX11, libXv, libXrandr, libXvMC, libXinerama, libXxf86vm
, libXmu , yasm, libuuid, taglib, libtool, autoconf, automake, file, exiv2
, linuxHeaders
, linuxHeaders, fetchpatch
}:
stdenv.mkDerivation rec {
@ -16,6 +16,15 @@ stdenv.mkDerivation rec {
sha256 = "0pjxv4bmq8h285jsr02svgaa03614arsyk12fn9d4rndjsi2cc3x";
};
patches = [
# Fixes build with exiv2 0.27.1.
(fetchpatch {
name = "004-exiv2.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/004-exiv2.patch?h=mythtv&id=76ea37f8556805b205878772ad7874e487c0d946";
sha256 = "0mh542f53qgky0w3s2bv0gmcxzvmb10834z3cfff40fby2ffr6k8";
})
];
setSourceRoot = ''sourceRoot=$(echo */mythtv)'';
buildInputs = [

View File

@ -1,28 +1,94 @@
{ stdenv, fetchFromGitHub, zlib, expat, gettext
, autoconf }:
{ stdenv
, fetchFromGitHub
, zlib
, expat
, cmake
, which
, libxml2
, python3
, gettext
, doxygen
, graphviz
, libxslt
}:
stdenv.mkDerivation rec {
name = "exiv2-0.26.2018.12.30";
pname = "exiv2";
version = "0.27.1";
#url = "https://www.exiv2.org/builds/${name}-trunk.tar.gz";
src = fetchFromGitHub rec {
owner = "exiv2";
repo = "exiv2";
rev = "f5d0b25"; # https://github.com/Exiv2/exiv2/commits/0.26
sha256 = "1blaz3g8dlij881g14nv2nsgr984wy6ypbwgi2pixk978p0gm70i";
rev = version;
sha256 = "0b5m921070fkyif0zlyb49gly3p6xd0hv1jyym4j25hx12gzbx0c";
};
postPatch = "patchShebangs ./src/svn_version.sh";
patches = [
# https://github.com/Exiv2/exiv2/commit/aae88060ca85a483cd7fe791ba116c04d96c0bf9#comments
./fix-cmake.patch
];
preConfigure = "make config"; # needed because not using tarball
cmakeFlags = [
"-DEXIV2_BUILD_PO=ON"
"-DEXIV2_BUILD_DOC=ON"
];
outputs = [ "out" "dev" ];
outputs = [ "out" "dev" "doc" "man" ];
nativeBuildInputs = [
cmake
doxygen
gettext
autoconf # needed because not using tarball
graphviz
libxslt
];
propagatedBuildInputs = [ zlib expat ];
propagatedBuildInputs = [
expat
zlib
];
checkInputs = [
libxml2.bin
python3
which
];
buildFlags = [
"doc"
];
doCheck = stdenv.isLinux;
# Test setup found by inspecting ${src}/.travis/run.sh; problems without cmake.
checkTarget = "tests";
preCheck = ''
patchShebangs ../test/
mkdir ../test/tmp
export LD_LIBRARY_PATH="$(realpath ../build/lib)"
# Fix tests on Aarch64
${stdenv.lib.optionalString stdenv.isAarch64 ''
rm -f ../tests/bugfixes/github/test_CVE_2018_12265.py
''}
'';
postCheck = ''
(cd ../tests/ && python3 runner.py)
'';
# With cmake we have to enable samples or there won't be
# a tests target. This removes them.
postInstall = ''
( cd "$out/bin"
mv exiv2 .exiv2
rm *
mv .exiv2 exiv2
)
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://www.exiv2.org/;

View File

@ -0,0 +1,16 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 34087004..41b3a068 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -239,9 +239,9 @@ install(FILES
${CMAKE_BINARY_DIR}/exiv2lib_export.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/exiv2)
-install(EXPORT exiv2Config DESTINATION "${CMAKE_INSTALL_LIBDIR}/exiv2/cmake")
+install(EXPORT exiv2Config DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/exiv2")
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/exiv2ConfigVersion.cmake DESTINATION "${CMAKE_INSTALL_LIBDIR}/exiv2/cmake")
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/exiv2ConfigVersion.cmake DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/exiv2")
# ******************************************************************************
# exiv2 application

View File

@ -1,5 +1,5 @@
{ fetchurl, stdenv, libtool, gettext, zlib, bzip2, flac, libvorbis
, exiv2, libgsf, rpm, pkgconfig
, exiv2, libgsf, rpm, pkgconfig, fetchpatch
, gtkSupport ? true, glib ? null, gtk3 ? null
, videoSupport ? true, ffmpeg ? null, libmpeg2 ? null}:
@ -14,6 +14,15 @@ stdenv.mkDerivation rec {
sha256 = "1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh";
};
patches = [
# Fixes build with exiv2 0.27
(fetchpatch {
name = "libextractor-exiv2-0.27.patch";
url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/libextractor-exiv2-0.27.patch?h=packages/libextractor&id=4dc53f7fc69210ae571285dface108ed65d8ee53";
sha256 = "0w4gc1q1m1yxsd4hv105nblmif465nw3g5nxzldy0x2rl9mdncg6";
})
];
preConfigure =
'' echo "patching installation directory in \`extractor.c'..."
sed -i "src/main/extractor.c" \

View File

@ -280,6 +280,7 @@ mapAliases ({
qt_gstreamer1 = qt-gstreamer1; # added 2017-02
quake3game = ioquake3; # added 2016-01-14
qwt6 = libsForQt5.qwt; # added 2015-12-19
qtpfsgui = throw "Is now luminanceHDR"; # added 2019-06-26
rdiff_backup = rdiff-backup; # added 2014-11-23
rdmd = dtools; # added 2017-08-19
rhc = throw "deprecated in 2019-04-09: abandoned by upstream.";

View File

@ -19846,8 +19846,6 @@ in
qtpass = libsForQt5.callPackage ../applications/misc/qtpass { };
qtpfsgui = callPackage ../applications/graphics/qtpfsgui { };
qtractor = libsForQt5.callPackage ../applications/audio/qtractor { };
qtscrobbler = callPackage ../applications/audio/qtscrobbler { };