From 3dc2c52851fd373f2ffe4ea87c86b94b575cb391 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sat, 5 Sep 2020 01:12:08 +0200 Subject: [PATCH] exiv2: clean up - EXIV2_BUILD_PO has been replaced by EXIV2_ENABLE_NLS https://github.com/Exiv2/exiv2/commit/076585d1476283bc7cffcf08e9006fc64ffbfa10 Confusingly, the former still appears in the flag summary. - Remove enableParallelBuilding since it is on by default with CMake - Reorder the expression - Apply upstream GNUInstallDirs patch - Build stuff in build phase, not in install phase - Add maintainers field (empty at the moment) --- pkgs/development/libraries/exiv2/default.nix | 38 +++++++++----------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix index e7c41bcedc5..24c39cb8cdc 100644 --- a/pkgs/development/libraries/exiv2/default.nix +++ b/pkgs/development/libraries/exiv2/default.nix @@ -17,6 +17,8 @@ stdenv.mkDerivation rec { pname = "exiv2"; version = "0.27.3"; + outputs = [ "out" "dev" "doc" "man" ]; + src = fetchFromGitHub { owner = "exiv2"; repo = "exiv2"; @@ -31,21 +33,16 @@ stdenv.mkDerivation rec { url = "https://github.com/Exiv2/exiv2/commit/bbe0b70840cf28b7dd8c0b7e9bb1b741aeda2efd.patch"; sha256 = "13zw1mn0ag0jrz73hqjhdsh1img7jvj5yddip2k2sb5phy04rzfx"; }) - ]; - cmakeFlags = [ - "-DEXIV2_BUILD_PO=ON" - "-DEXIV2_BUILD_DOC=ON" - # the cmake package does not handle absolute CMAKE_INSTALL_INCLUDEDIR correctly - # (setting it to an absolute path causes include files to go to $out/$out/include, - # because the absolute path is interpreted with root at $out). - # Can probably be removed once https://github.com/Exiv2/exiv2/pull/1263 is merged. - "-DCMAKE_INSTALL_INCLUDEDIR=include" - "-DCMAKE_INSTALL_LIBDIR=lib" + # Use correct paths with multiple outputs + # https://github.com/Exiv2/exiv2/pull/1275 + (fetchpatch { + name = "cmake-fix-aarch64.patch"; + url = "https://github.com/Exiv2/exiv2/commit/48f2c9dbbacc0ef84c8ebf4cb1a603327f0b8750.patch"; + sha256 = "vjB3+Ld4c/2LT7nq6uatYwfHTh+HeU5QFPFXuNLpIPA="; + }) ]; - outputs = [ "out" "dev" "doc" "man" ]; - nativeBuildInputs = [ cmake doxygen @@ -65,7 +62,13 @@ stdenv.mkDerivation rec { which ]; + cmakeFlags = [ + "-DEXIV2_ENABLE_NLS=ON" + "-DEXIV2_BUILD_DOC=ON" + ]; + buildFlags = [ + "all" "doc" ]; @@ -102,20 +105,11 @@ stdenv.mkDerivation rec { ) ''; - # Fix CMake export paths. Can be removed once https://github.com/Exiv2/exiv2/pull/1263 is merged. - postFixup = '' - sed -i "$dev/lib/cmake/exiv2/exiv2Config.cmake" \ - -e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${_IMPORT_PREFIX}@$dev@" \ - -e "/Compute the installation prefix/ a set(_IMPORT_PREFIX \"$out\")" \ - -e "/^get_filename_component(_IMPORT_PREFIX/ d" - ''; - - enableParallelBuilding = true; - meta = with stdenv.lib; { homepage = "https://www.exiv2.org/"; description = "A library and command-line utility to manage image metadata"; platforms = platforms.all; license = licenses.gpl2Plus; + maintainers = [ ]; }; }