Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/
Date: Fri, 21 Sep 2018 13:59:37
Message-Id: 1537538225.58faaacd193af38a758055cb35d9a6082486bea6.asturm@gentoo
1 commit: 58faaacd193af38a758055cb35d9a6082486bea6
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 21 13:47:24 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 21 13:57:05 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=58faaacd
7
8 media-gfx/exiv2: Tarball respun for CVE-2017-17724
9
10 Custom packed tarball based on upstream 0.26 branch as of 2018-08-11,
11 with additional fixes from git master.
12
13 Ignore massive test suite changes, since we do not use it at all in 0.26.
14
15 Bug: https://bugs.gentoo.org/647810
16 Package-Manager: Portage-2.3.49, Repoman-2.3.10
17
18 media-gfx/exiv2/Manifest | 1 +
19 media-gfx/exiv2/exiv2-0.26_p20180811-r2.ebuild | 123 +++++++++++++++++++++++++
20 2 files changed, 124 insertions(+)
21
22 diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
23 index c392fee3bc6..17f8eb9677e 100644
24 --- a/media-gfx/exiv2/Manifest
25 +++ b/media-gfx/exiv2/Manifest
26 @@ -1,3 +1,4 @@
27 DIST exiv2-0.26_p20180319.tar.gz 28383543 BLAKE2B 753a2ebdb2033490c0f66cb1fb2574f02125f17813f6cbaf5eca66e053af9a2cdbc1266f0a033f0706ec22b31acd6e87271e426a335a58ee947757b52d283489 SHA512 852ce2cffcc0a2d902a939933127fdf5fa0b50020e1faf3ab0a375b129b9f61c7b97b76d4f39e376e7288d7cc045867bd1a96ae15dd0b7c0bcd1ba15259628e1
28 DIST exiv2-0.26_p20180811.tar.xz 1746120 BLAKE2B 55d8719fd3726f2ead772b9b330dd9d452a6ddfd06df14d4d51a4139792de054bd891b7006f9813d5fa75cfd0a9dea1d0d254d8c978ef20cb9a14a9d294ab2cf SHA512 5f48b8e6cc22520059da388d184797090582df688bc04a32dd9ae6b80bacea4a2cbc81709c7274ba7ff1d8c5c318dd6428f027bdc63f590cedc83025cf0e5d51
29 DIST exiv2-0.26_p20180811b.tar.xz 1722288 BLAKE2B 30b34e75c23509924e41ccf21215c63dd91424a7c21bb530486edabf3c089ff27251073efe11223e983014536b80005bb44ef721d5bd0a50e04ea8d3b6732189 SHA512 252683a7da1073aac08b9745b4b2ce4a9d628828315ba5d0d72453184e74f34a6d1f22bd5291a6818008f394cd6bf8fc4d460d70a942e85db8c3fd6c3ca22f88
30 +DIST exiv2-0.26_p20180811c.tar.xz 1723668 BLAKE2B 0bbba3d04ca063f62797ce5bd9a1a39f87c5ed26ed9eecb73fb11051660c761d2c56dec392d73d3a33573599efa95790d84d59b3c4da3122a1eb564f5978ef65 SHA512 4a7bc11805e204b541819f434defc48ff579b2c84c9504d6c7826a3808f73cda3d68f357a179f14a8277e6a338c3bb94c9e63da9f61a5ea3c548e0ad93df56ce
31
32 diff --git a/media-gfx/exiv2/exiv2-0.26_p20180811-r2.ebuild b/media-gfx/exiv2/exiv2-0.26_p20180811-r2.ebuild
33 new file mode 100644
34 index 00000000000..ec7d78e7856
35 --- /dev/null
36 +++ b/media-gfx/exiv2/exiv2-0.26_p20180811-r2.ebuild
37 @@ -0,0 +1,123 @@
38 +# Copyright 1999-2018 Gentoo Foundation
39 +# Distributed under the terms of the GNU General Public License v2
40 +
41 +EAPI=6
42 +
43 +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
44 +inherit cmake-multilib python-any-r1
45 +
46 +DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
47 +HOMEPAGE="http://www.exiv2.org/"
48 +SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}c.tar.xz"
49 +
50 +LICENSE="GPL-2"
51 +SLOT="0/26"
52 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
53 +IUSE="doc examples nls png webready xmp"
54 +
55 +RDEPEND="
56 + >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
57 + nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
58 + png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
59 + webready? (
60 + net-libs/libssh[${MULTILIB_USEDEP}]
61 + net-misc/curl[${MULTILIB_USEDEP}]
62 + )
63 + xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
64 +"
65 +DEPEND="${RDEPEND}
66 + doc? (
67 + ${PYTHON_DEPS}
68 + app-doc/doxygen
69 + dev-libs/libxslt
70 + media-gfx/graphviz
71 + virtual/pkgconfig
72 + )
73 + nls? ( sys-devel/gettext )
74 +"
75 +
76 +DOCS=( README doc/ChangeLog doc/cmd.txt )
77 +
78 +PATCHES=(
79 + # TODO: Take to upstream
80 + "${FILESDIR}"/${PN}-0.26-fix-docs.patch
81 + "${FILESDIR}"/${PN}-0.26-tools-optional.patch
82 +)
83 +
84 +pkg_setup() {
85 + use doc && python-any-r1_pkg_setup
86 +}
87 +
88 +src_prepare() {
89 + if [[ ${PV} != *9999 ]] ; then
90 + if [[ -d po ]] ; then
91 + pushd po > /dev/null || die
92 + local lang
93 + for lang in *.po; do
94 + if [[ -e ${lang} ]] \
95 + && ! has ${lang/.po/} ${LINGUAS-${lang/.po/}} ; then
96 + case ${lang} in
97 + CMakeLists.txt | \
98 + ${PN}.pot) ;;
99 + *) rm -r ${lang} || die ;;
100 + esac
101 + fi
102 + done
103 + popd > /dev/null || die
104 + else
105 + die "Failed to prepare LINGUAS - po directory moved?"
106 + fi
107 + fi
108 +
109 + # FIXME @upstream:
110 + einfo "Converting doc/cmd.txt to UTF-8"
111 + iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
112 + mv -f doc/cmd.txt.tmp doc/cmd.txt || die
113 +
114 + if use doc; then
115 + einfo "Updating doxygen config"
116 + doxygen &>/dev/null -u config/Doxyfile || die
117 + fi
118 +
119 + edos2unix samples/exiv2json.cpp # workaround for CVE-2017-18005 patch
120 +
121 + cmake-utils_src_prepare
122 +}
123 +
124 +multilib_src_configure() {
125 + local mycmakeargs=(
126 + -DEXIV2_ENABLE_BUILD_SAMPLES=NO
127 + -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
128 + -DEXIV2_ENABLE_NLS=$(usex nls)
129 + -DEXIV2_ENABLE_PNG=$(usex png)
130 + -DEXIV2_ENABLE_CURL=$(usex webready)
131 + -DEXIV2_ENABLE_SSH=$(usex webready)
132 + -DEXIV2_ENABLE_WEBREADY=$(usex webready)
133 + -DEXIV2_ENABLE_XMP=$(usex xmp)
134 + -DEXIV2_ENABLE_LIBXMP=NO
135 + $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
136 + )
137 +
138 + cmake-utils_src_configure
139 +}
140 +
141 +multilib_src_compile() {
142 + cmake-utils_src_compile
143 +
144 + if multilib_is_native_abi; then
145 + use doc && emake -j1 doc
146 + fi
147 +}
148 +
149 +multilib_src_install_all() {
150 + use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
151 + use doc && HTML_DOCS=( "${S}"/doc/html/. )
152 +
153 + einstalldocs
154 + find "${D}" -name '*.la' -delete || die
155 +
156 + if use examples; then
157 + docinto examples
158 + dodoc samples/*.cpp
159 + fi
160 +}