From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id eIjNGEU3Hl8PEQAA0tVLHw (envelope-from ) for ; Mon, 27 Jul 2020 02:09:09 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id KGK2FEU3Hl+yPwAAB5/wlQ (envelope-from ) for ; Mon, 27 Jul 2020 02:09:09 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id AF5819404E1 for ; Mon, 27 Jul 2020 02:09:08 +0000 (UTC) Received: from localhost ([::1]:39482 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jzsZf-0005AG-IA for larch@yhetil.org; Sun, 26 Jul 2020 22:09:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:32782) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jzsZa-0005A9-2U for guix-patches@gnu.org; Sun, 26 Jul 2020 22:09:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:42110) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jzsZZ-0006Cp-Pj for guix-patches@gnu.org; Sun, 26 Jul 2020 22:09:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jzsZZ-00089A-Jt for guix-patches@gnu.org; Sun, 26 Jul 2020 22:09:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#42542] [PATCH] gnu: libextractor: Update to 1.10. Resent-From: Michael Rohleder Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 27 Jul 2020 02:09:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 42542 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 42542@debbugs.gnu.org Received: via spool by 42542-submit@debbugs.gnu.org id=B42542.159581569131256 (code B ref 42542); Mon, 27 Jul 2020 02:09:01 +0000 Received: (at 42542) by debbugs.gnu.org; 27 Jul 2020 02:08:11 +0000 Received: from localhost ([127.0.0.1]:53656 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jzsYg-00087z-C6 for submit@debbugs.gnu.org; Sun, 26 Jul 2020 22:08:11 -0400 Received: from wp224.webpack.hosteurope.de ([80.237.132.231]:44970) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jzsYa-00087T-Qt for 42542@debbugs.gnu.org; Sun, 26 Jul 2020 22:08:04 -0400 Received: from www.rohleder.de ([37.61.204.227]); authenticated by wp224.webpack.hosteurope.de running ExIM with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) id 1jzsYY-0003w4-LC; Mon, 27 Jul 2020 04:07:58 +0200 Received: from [192.168.1.3] (helo=micha) by www.rohleder.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94) (envelope-from ) id 1jzsYW-0003m6-PW; Mon, 27 Jul 2020 04:07:58 +0200 From: Michael Rohleder References: <87h7tv5dhi.fsf@rohleder.de> <87pn8i2rel.fsf@gnu.org> X-PGP-Fingerprint: 755E 2DE5 D0D5 85C5 2E78 2830 7C7A FFBE FEF2 CB25 X-PGP-Key: https://www.rohleder.de/~mike/pgpkey.asc Date: Mon, 27 Jul 2020 04:07:50 +0200 In-Reply-To: <87pn8i2rel.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 26 Jul 2020 18:05:22 +0200") Message-ID: <875za9k8w9.fsf@rohleder.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-bounce-key: webpack.hosteurope.de;mike@rohleder.de;1595815680;d5512839; X-HE-SMSGID: 1jzsYY-0003w4-LC X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: -3.11 X-TUID: O9DFYNvQaaGN --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hey Lodo! Thank you for reviewing! Ludovic Court=C3=A8s writes: > Does upstream libextractor have a fix for that? It would seem that the > new exiv2 rounds that geolocation meta data. > > I=E2=80=99m not comfortable using an older exiv2 version, because this is= code > that=E2=80=99s potentially given untrusted input, so it would be nicer if= we > could fix this test! Yes, exiv2 0.27.3 rounds the gps geolocation to ints, see: https://github.com/Exiv2/exiv2/pull/1107/commits/db1be4ae8e1077949fcb6a960e= 93069d6a41b395#diff-f3f55183ccbe956c720c86e61f708d9f I added a substitute for the exiv2 test as a workaround and try to contact the upstream developer. --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-libextractor-Update-to-1.10.patch Content-Transfer-Encoding: quoted-printable Content-Description: [PATCH] gnu: libextractor: Update to 1.10 * gnu/packages/gnunet.scm (libextractor): Update to 1.10. [inputs]: exiv2 update to 0.27.3 (commit 630b75f76a) rounds gps coordinates to integer, so fixed the test. [inputs]: added giflib, removed tidy-html * gnu/packages/patches/libextractor-exiv2.patch removed, because its included upstream. * gnu/local.mk: remove libextractor-exiv2.patch. =2D-- gnu/local.mk | 1 - gnu/packages/gnunet.scm | 23 ++-- gnu/packages/patches/libextractor-exiv2.patch | 124 ------------------ 3 files changed, 14 insertions(+), 134 deletions(-) delete mode 100644 gnu/packages/patches/libextractor-exiv2.patch diff --git a/gnu/local.mk b/gnu/local.mk index ef6533bd8d..f4d09a65c1 100644 =2D-- a/gnu/local.mk +++ b/gnu/local.mk @@ -1197,7 +1197,6 @@ dist_patch_DATA =3D \ %D%/packages/patches/libbonobo-activation-test-race.patch \ %D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \ %D%/packages/patches/libdrm-realpath-virtio.patch \ =2D %D%/packages/patches/libextractor-exiv2.patch \ %D%/packages/patches/libgeotiff-adapt-test-script-for-proj-6.2.patch \ %D%/packages/patches/libgit2-mtime-0.patch \ %D%/packages/patches/libgnome-encoding.patch \ diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 979dadbe2e..8b1b0711a0 100644 =2D-- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -10,6 +10,7 @@ ;;; Copyright =C2=A9 2018 Alex Vong ;;; Copyright =C2=A9 2019 Brett Gilio ;;; Copyright =C2=A9 2020 Tanguy Le Carrour +;;; Copyright =C2=A9 2020 Michael Rohleder ;;; ;;; This file is part of GNU Guix. ;;; @@ -73,24 +74,22 @@ (define-public libextractor (package (name "libextractor") =2D (version "1.9") + (version "1.10") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libextractor/libextractor-" version ".tar.gz")) (sha256 (base32 =2D "1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh")) =2D (patches (search-patches "libextractor-exiv2.patch")))) + "0mr38g7kfn3p050hd3hckbcz2yd3za6dwl1c26x2kjf7vnsi3vcy")))) (build-system gnu-build-system) ;; WARNING: Checks require /dev/shm to be in the build chroot, especial= ly ;; not to be a symbolic link to /run/shm. ;; FIXME: ;; The following dependencies are all optional, but should be ;; available for maximum coverage: =2D ;; * libmagic (file) ;; * librpm (rpm) ; investigate failure =2D ;; * libgif (giflib) ; investigate failure + ;; * libtidy-html (tidy-html) ; investigate failure (inputs `(("exiv2" ,exiv2) ("bzip2" ,bzip2) @@ -98,6 +97,7 @@ ("ffmpeg" ,ffmpeg) ("file" ,file) ;libmagic, for the MIME plu= g-in ("glib" ,glib) + ("giflib" ,giflib) ("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+) @@ -108,7 +108,6 @@ ("libmpeg2" ,libmpeg2) ("libmp4v2" ,libmp4v2) ("libsmf" ,libsmf) =2D ("tidy-html" ,tidy-html) ("libogg" ,libogg) ("libtiff" ,libtiff) ("libvorbis" ,libvorbis) @@ -120,12 +119,18 @@ (arguments `(#:configure-flags (list (string-append "--with-ltdl=3D" =2D (assoc-ref %build-inputs "libltdl")) =2D (string-append "--with-tidy=3D" =2D (assoc-ref %build-inputs "tidy-html"))) + (assoc-ref %build-inputs "libltdl"))) #:parallel-tests? #f #:phases (modify-phases %standard-phases + (add-after 'configure 'fix-exiv2-tests + ;; exiv2>=3D0.27.3 rounds geolocation + ;; https://github.com/Exiv2/exiv2/pull/1107/commits/db1be4ae8e10= 77949fcb6a960e93069d6a41b395#diff-f3f55183ccbe956c720c86e61f708d9f + (lambda _ + (substitute* "src/plugins/test_exiv2.c" + (("17.585\\\\\" ") "18\\\"") + (("21.713\\\\\" ") "22\\\"")) + #t)) (add-after 'install 'move-static-libraries (lambda* (#:key outputs #:allow-other-keys) ;; Move static libraries to the "static" output. diff --git a/gnu/packages/patches/libextractor-exiv2.patch b/gnu/packages/p= atches/libextractor-exiv2.patch deleted file mode 100644 index b92fef3ca1..0000000000 =2D-- a/gnu/packages/patches/libextractor-exiv2.patch +++ /dev/null @@ -1,124 +0,0 @@ =2DThis patch allows us to build libextractor against exiv2 0.27.x. =2DAdapted from this upstream commit: =2D =2D commit 1ecee9a47717e36cb8a3925d011d1a6de11d631c =2D Author: Christian Grothoff =2D Date: Mon Jul 29 17:58:18 2019 +0200 =2D =2D importing patch from Gentoo/AS to address exiv2 build issue (#5820) =2D =2Ddiff --git a/src/plugins/exiv2_extractor.cc b/src/plugins/exiv2_extracto= r.cc =2Dindex 8741d40..ef402a8 100644 =2D--- a/src/plugins/exiv2_extractor.cc =2D+++ b/src/plugins/exiv2_extractor.cc =2D@@ -27,10 +27,7 @@ =2D #include =2D #include =2D #include =2D-#include =2D-#include =2D-#include =2D-#include =2D+#include =2D=20 =2D /** =2D * Enable debugging to get error messages. =2D@@ -180,7 +177,7 @@ public: =2D * =2D * @return -1 on error =2D */ =2D-#if EXIV2_VERSION >=3D EXIV2_MAKE_VERSION(0,26,0) =2D+#if EXIV2_TEST_VERSION(0,26,0) =2D virtual size_t size (void) const; =2D #else =2D virtual long int size (void) const; =2D@@ -316,7 +313,11 @@ ExtractorIO::getb () =2D const unsigned char *r; =2D=20 =2D if (1 !=3D ec->read (ec->cls, &data, 1)) =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D r =3D (const unsigned char *) data; =2D return *r; =2D } =2D@@ -371,7 +372,11 @@ ExtractorIO::putb (Exiv2::byte data) =2D void =2D ExtractorIO::transfer (Exiv2::BasicIo& src) =2D { =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D } =2D=20 =2D=20 =2D@@ -416,7 +421,11 @@ ExtractorIO::seek (long offset, =2D Exiv2::byte * =2D ExtractorIO::mmap (bool isWritable) =2D { =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D } =2D=20 =2D=20 =2D@@ -449,7 +458,7 @@ ExtractorIO::tell (void) const =2D * =2D * @return -1 on error =2D */ =2D-#if EXIV2_VERSION >=3D EXIV2_MAKE_VERSION(0,26,0) =2D+#if EXIV2_TEST_VERSION(0,26,0) =2D size_t =2D #else =2D long int =2D@@ -504,7 +513,11 @@ ExtractorIO::eof () const =2D std::string =2D ExtractorIO::path () const =2D { =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D } =2D=20 =2D=20 =2D@@ -517,7 +530,11 @@ ExtractorIO::path () const =2D std::wstring =2D ExtractorIO::wpath () const =2D { =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D } =2D #endif =2D=20 =2D@@ -531,7 +548,11 @@ Exiv2::BasicIo::AutoPtr =2D ExtractorIO::temporary () const =2D { =2D fprintf (stderr, "throwing temporary error\n"); =2D+#if EXIV2_TEST_VERSION(0,27,0) =2D+ throw Exiv2::BasicError (Exiv2::kerDecodeLangAltQualifierFail= ed); =2D+#else =2D throw Exiv2::BasicError (42 /* error code */); =2D+#endif =2D } =2D=20 =2D=20 =2D@@ -697,7 +718,7 @@ EXTRACTOR_exiv2_extract_method (struct EXTRACTOR_Ext= ractContext *ec) =2D { =2D try =2D { =2D-#if EXIV2_MAKE_VERSION(0,23,0) <=3D EXIV2_VERSION =2D+#if !EXIV2_TEST_VERSION(0,24,0) =2D Exiv2::LogMsg::setLevel (Exiv2::LogMsg::mute); =2D #endif =2D std::auto_ptr eio(new ExtractorIO (ec)); =2D-=20 2.27.0 --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEdV4t5dDVhcUueCgwfHr/vv7yyyUFAl8eNvYACgkQfHr/vv7y yyV8Zwf+Ifs4IxYcx30GrttyXl5Lzts6Xf1zGofnO45SkRn5hVsB5g3/M47/9Qm6 G8ElywJ/y2zhDhPVsWXx2gxL5fC6lwI5UBdhhmE73v3eNXytHGXXGNpCb0T+dIS3 urBPQgIKd7l0hPfpZReFGTtm8YGJ89tY8amZzUlp7dYjLozFEUEbUhwH+anVZnCn HbZ1yJybPWnLyAtLHaK8szE0ZZIGoY5qkn+NjFT0DQcF7TYM9JrxIE1OE2YAZjYh YhE73wku/U3SJ5HGVPMUfZp3isesStJ/fEc4ZTwkAY5RrdIqawA9YS+dJZLB3gil Rd1OduwIyWOrfLQBulMfYoc6HbZXyQ== =yApx -----END PGP SIGNATURE----- --==-=-=--