* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2016-07-06 10:32 Michael Palimaka
0 siblings, 0 replies; 18+ messages in thread
From: Michael Palimaka @ 2016-07-06 10:32 UTC (permalink / raw
To: gentoo-commits
commit: 725674a32b62aac3abfed25b31d1ab85d7516e55
Author: Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 6 10:30:55 2016 +0000
Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Wed Jul 6 10:31:50 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=725674a3
media-gfx/exiv2: remove old
Package-Manager: portage-2.3.0
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.24-r1.ebuild | 136 ---------------
media-gfx/exiv2/exiv2-0.25-r1.ebuild | 125 --------------
.../exiv2/files/exiv2-0.23-boost-fs-contrib.patch | 182 ---------------------
.../exiv2/files/exiv2-0.24-CVE-2014-9449.patch | 27 ---
media-gfx/exiv2/files/exiv2-0.24-python3.patch | 27 ---
media-gfx/exiv2/metadata.xml | 1 -
7 files changed, 499 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 5cd1ff1..8fdb578 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.24.tar.gz 4635028 SHA256 f4a443e6c7fb9d9f5e787732f76969a64c72c4c04af69b10ed57f949c2dfef8e SHA512 e2d5d076c09a36d88472485c9d9d99b5a50aea1ab59b1e5c9301b1ce9fe2b2af02acae2662c9ff56b4c749a224688387ba58334d31b74f04f3d2d3d3c0e387e9 WHIRLPOOL b5b7eb544975d8e14739b39fc294279b58369944172684c0f881348ebf47ef0f9ccd18e8bc41113d9da3a72f8d6c048641f547a7071a7ca6d93d1d30ea2d7aed
DIST exiv2-0.25.tar.gz 5434325 SHA256 c80bfc778a15fdb06f71265db2c3d49d8493c382e516cb99b8c9f9cbde36efa4 SHA512 08d4e655ffdde715e0214f4bef01d55aba9b8ba517456a60e254a0f8541c20479e407545db28ca90a69dee8def6941fdd88f9a557fb382ebebe49e363aca8e8e WHIRLPOOL f9e7a6947dac5870e0574253b8c1cb1e7d31a916a9e1c4417c73168046c0b4bed90b9c77253444604163bcf6dca204dab92a52cb03bdcb0f85c807327623f8ac
diff --git a/media-gfx/exiv2/exiv2-0.24-r1.ebuild b/media-gfx/exiv2/exiv2-0.24-r1.ebuild
deleted file mode 100644
index 723e7dc..0000000
--- a/media-gfx/exiv2/exiv2-0.24-r1.ebuild
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-AUTOTOOLS_IN_SOURCE_BUILD=1
-PYTHON_COMPAT=( python{2_7,3_3,3_4} )
-
-inherit eutils multilib toolchain-funcs python-any-r1 autotools-multilib
-
-DESCRIPTION="EXIF and IPTC metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-SRC_URI="http://www.exiv2.org/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0/13"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE_LINGUAS="de es fi fr pl ru sk"
-IUSE="contrib doc examples nls xmp zlib static-libs $(printf 'linguas_%s ' ${IUSE_LINGUAS})"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
- zlib? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
-"
-
-DEPEND="${RDEPEND}
- contrib? ( >=dev-libs/boost-1.44 )
- doc? (
- app-doc/doxygen
- dev-libs/libxslt
- virtual/pkgconfig
- media-gfx/graphviz
- ${PYTHON_DEPS}
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-PATCHES=( "${FILESDIR}/${P}-CVE-2014-9449.patch" )
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # convert docs to UTF-8
- local i
- for i in doc/cmd.txt; do
- einfo "Converting "${i}" to UTF-8"
- iconv -f LATIN1 -t UTF-8 "${i}" > "${i}~" && mv -f "${i}~" "${i}" || rm -f "${i}~"
- done
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen 2>&1 >/dev/null -u config/Doxyfile
- fi
-
- if use contrib; then
- # create build environment for contrib
- ln -snf ../../src contrib/organize/exiv2
- sed -i -e 's:/usr/local/include/.*:'"${EPREFIX}"'/usr/include:g' \
- -e 's:/usr/local/lib/lib:-l:g' -e 's:-gcc..-mt-._..\.a::g' \
- contrib/organize/boost.mk || die
- fi
-
- epatch "${FILESDIR}/${PN}-0.24-python3.patch"
-
- # set locale to safe value for the sed commands (bug #382731)
- sed -i -r "s,(\s+)sed\s,\1LC_ALL="C" sed ,g" src/Makefile || die
-
- autotools-multilib_src_prepare
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- $(use_enable nls)
- $(use_enable xmp)
- $(use_enable static-libs static)
- )
-
- # plain 'use_with' fails
- use zlib || myeconfargs+=( --without-zlib )
-
- # Bug #78720. amd64/gcc-3.4/-fvisibility* fail.
- if [[ ${ABI} == amd64 && $(gcc-major-version) -lt 4 ]]; then
- myeconfargs+=( --disable-visibility )
- fi
-
- autotools-utils_src_configure
-}
-
-multilib_src_compile() {
- # Needed for Solaris because /bin/sh is not a bash, bug #245647
- sed -i -e "s:/bin/sh:${EPREFIX}/bin/sh:" src/Makefile || die "sed failed"
- emake
-
- if multilib_is_native_abi; then
- if use contrib; then
- emake -C contrib/organize \
- LDFLAGS="\$(BOOST_LIBS) -L../../src -lexiv2 ${LDFLAGS}" \
- CPPFLAGS="${CPPFLAGS} -I\$(BOOST_INC_DIR) -I. -DEXV_HAVE_STDINT_H"
- fi
-
- if use doc; then
- emake samples
- emake doc
- fi
- fi
-}
-
-multilib_src_install() {
- autotools-utils_src_install
-
- if multilib_is_native_abi; then
- if use contrib; then
- emake DESTDIR="${D}" -C contrib/organize install
- fi
-
- use doc && dohtml -r doc/html/.
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- prune_libtool_files --all
-
- use xmp && dodoc doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt}
- if use examples; then
- insinto /usr/share/doc/${PF}/examples
- docompress -x /usr/share/doc/${PF}/examples
- doins samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/exiv2-0.25-r1.ebuild b/media-gfx/exiv2/exiv2-0.25-r1.ebuild
deleted file mode 100644
index bc2577b..0000000
--- a/media-gfx/exiv2/exiv2-0.25-r1.ebuild
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-PYTHON_COMPAT=( python{2_7,3_3,3_4} )
-
-inherit eutils cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-SRC_URI="http://www.exiv2.org/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0/14"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-IUSE_LINGUAS="bs de es fi fr gl ms pl pt ru sk sv ug uk vi"
-IUSE="doc examples nls png webready xmp $(printf 'linguas_%s ' ${IUSE_LINGUAS})"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
-"
-
-DEPEND="${RDEPEND}
- doc? (
- app-doc/doxygen
- dev-libs/libxslt
- virtual/pkgconfig
- media-gfx/graphviz
- ${PYTHON_DEPS}
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-PATCHES=(
- "${FILESDIR}/${PN}-0.25-fix-docs.patch"
- "${FILESDIR}/${PN}-0.25-fix-install-dirs.patch"
- "${FILESDIR}/${PN}-0.25-tools-optional.patch"
- "${FILESDIR}/${PN}-0.25-fix-without-zlib.patch"
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- rm -r msvc* build || die "Failed to remove msvc dirs"
-
- if [[ ${PV} != *9999 ]] ; then
- if [[ -d po ]] ; then
- pushd po > /dev/null || die
- for lang in *.po; do
- if ! has ${lang%.po} ${LINGUAS} ; then
- rm -rf ${lang} || die
- fi
- done
- popd > /dev/null || die
- else
- die "Failed to prepare LINGUAS - po directory moved?"
- fi
- fi
-
- # convert docs to UTF-8
- local i
- for i in doc/cmd.txt; do
- einfo "Converting "${i}" to UTF-8"
- iconv -f LATIN1 -t UTF-8 "${i}" > "${i}.tmp" || die
- mv -f "${i}.tmp" "${i}" || die
- done
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_ENABLE_BUILD_PO=YES
- -DEXIV2_ENABLE_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_LIBXMP=NO
- $(multilib_is_native_abi || \
- echo -DEXIV2_ENABLE_TOOLS=NO)
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && emake -j1 doc
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- prune_libtool_files --all
-
- use xmp && dodoc doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt}
- use doc && dodoc -r "${S}"/doc/html
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.23-boost-fs-contrib.patch b/media-gfx/exiv2/files/exiv2-0.23-boost-fs-contrib.patch
deleted file mode 100644
index f5ffc47..0000000
--- a/media-gfx/exiv2/files/exiv2-0.23-boost-fs-contrib.patch
+++ /dev/null
@@ -1,182 +0,0 @@
---- work/exiv2-0.23/contrib/organize/organize.cpp 2009-03-08 09:26:30.000000000 +0100
-+++ work/exiv2-0.23/contrib/organize/organize.cpp 2009-03-08 09:26:30.000000000 +0100
-@@ -294,7 +294,7 @@
- bool md5sum(const fs::path &path, md5digest &digest)
- {
- try {
-- Exiv2::FileIo io(path.file_string());
-+ Exiv2::FileIo io(path.string());
- if (io.open() != 0)
- return false;
- Exiv2::IoCloser closer(io);
-@@ -568,8 +568,8 @@
-
- fs::path uniquify(const fs::path &dest)
- {
-- std::string ext = dest.extension();
-- std::string fname = dest.stem();
-+ std::string ext = dest.extension().string();
-+ std::string fname = dest.stem().string();
- fs::path parent = dest.parent_path();
-
- unsigned number = 1;
-@@ -600,13 +600,13 @@
- std::vector<std::string>::const_iterator x_iter = params.excludes.begin();
- std::vector<std::string>::const_iterator x_end = params.excludes.end();
- for( ; x_iter != x_end; ++x_iter ) {
-- if(boost::contains(directory.file_string(), *x_iter)) {
-+ if(boost::contains(directory.string(), *x_iter)) {
- exclude = true;
- break;
- }
- }
- if(exclude) {
-- info(std::string("excluding directory: ") + directory.file_string() +
-+ info(std::string("excluding directory: ") + directory.string() +
- " matched: " + *x_iter);
- ++params.dir_ex_count;
- return;
-@@ -621,7 +621,7 @@
- process_directory(p_iter->path(), depth + 1, params);
- else {
- info(std::string("depth reached, skipping: ") +
-- p_iter->path().file_string());
-+ p_iter->path().string());
- }
- }
- else if( is_regular_file(*p_iter) ) {
-@@ -630,13 +630,13 @@
- exclude = false;
- x_iter = params.excludes.begin();
- for( ; x_iter != x_end; ++x_iter ) {
-- if(boost::contains(p_iter->path().file_string(), *x_iter)) {
-+ if(boost::contains(p_iter->path().string(), *x_iter)) {
- exclude = true;
- break;
- }
- }
- if(exclude) {
-- info(std::string("excluding file: ") + p_iter->path().file_string() +
-+ info(std::string("excluding file: ") + p_iter->path().string() +
- " matched: " + *x_iter);
- ++params.file_ex_count;
- continue;
-@@ -648,45 +648,45 @@
- if(!dest_subdir.empty())
- dest_file = params.dest_dir / dest_subdir;
- else if(params.ignore_unsorted) {
-- info(std::string("ignoring unsorted: ") + p_iter->path().file_string());
-+ info(std::string("ignoring unsorted: ") + p_iter->path().string());
- ++params.unsorted_ignored_count;
- continue;
- }
- else {
-- info(std::string("unsorted file (missing metadata): ") + p_iter->path().file_string());
-+ info(std::string("unsorted file (missing metadata): ") + p_iter->path().string());
- dest_file = params.unsorted_dir;
- ++params.unsorted_count;
- }
-
-- dest_file /= p_iter->filename();
-+ dest_file /= p_iter->path().filename();
-
- if(fs::exists(dest_file)) {
- if(params.ignore_dups) {
-- info(std::string("ignoring: ") + p_iter->path().file_string() +
-- " duplicates: " + dest_file.file_string());
-+ info(std::string("ignoring: ") + p_iter->path().string() +
-+ " duplicates: " + dest_file.string());
- ++params.dups_ignored_count;
- continue;
- }
- else {
- if(params.force) {
-- info(std::string("force removing: ") + dest_file.file_string() + " for: "
-- + p_iter->path().file_string());
-+ info(std::string("force removing: ") + dest_file.string() + " for: "
-+ + p_iter->path().string());
- if(!params.dry_run)
- fs::remove(dest_file);
- }
- else if(params.rename) {
-- info(std::string("renaming: ") + p_iter->path().file_string() +
-- " duplicates: " + dest_file.file_string());
-+ info(std::string("renaming: ") + p_iter->path().string() +
-+ " duplicates: " + dest_file.string());
- dest_file = uniquify(dest_file);
- }
- else {
-- info(std::string("duplicate file: ") + p_iter->path().file_string() +
-- " of: " + dest_file.file_string());
-- dest_file = params.dups_dir / dest_subdir / p_iter->filename();
-+ info(std::string("duplicate file: ") + p_iter->path().string() +
-+ " of: " + dest_file.string());
-+ dest_file = params.dups_dir / dest_subdir / p_iter->path().filename();
- // Ugh, more dup possibilities
- if(fs::exists(dest_file)) {
-- info(std::string("renaming: ") + p_iter->path().file_string() +
-- " duplicates: " + dest_file.file_string());
-+ info(std::string("renaming: ") + p_iter->path().string() +
-+ " duplicates: " + dest_file.string());
- dest_file = uniquify(dest_file);
- }
- }
-@@ -698,8 +698,8 @@
- fs::create_directories(dest_file.parent_path());
-
- if(params.symlink) {
-- info(std::string("linking from: ") + p_iter->path().file_string() +
-- " to: " + dest_file.file_string());
-+ info(std::string("linking from: ") + p_iter->path().string() +
-+ " to: " + dest_file.string());
- if(!params.dry_run) {
- // The target of a symlink must be either absolute (aka complete) or
- // relative to the location of the link. Easiest solution is to make
-@@ -713,8 +713,8 @@
- }
- }
- else {
-- info(std::string("copying from: ") + p_iter->path().file_string() +
-- " to: " + dest_file.file_string());
-+ info(std::string("copying from: ") + p_iter->path().string() +
-+ " to: " + dest_file.string());
- if(!params.dry_run) {
- // Copy the file and restore its write time (needed for posix)
- std::time_t time = fs::last_write_time(*p_iter);
-@@ -730,8 +730,8 @@
- if(!ok) {
- // Should probably find a more appropriate exception for this
- throw std::runtime_error(std::string("File verification failed: '")
-- + p_iter->path().file_string() + "' differs from '" +
-- dest_file.file_string() + "'");
-+ + p_iter->path().string() + "' differs from '" +
-+ dest_file.string() + "'");
- }
- else {
- info(std::string("verification passed"));
-@@ -740,7 +740,7 @@
- }
- }
- if(params.move) {
-- info(std::string("removing: ") + p_iter->path().file_string());
-+ info(std::string("removing: ") + p_iter->path().string());
- if(!params.dry_run)
- fs::remove(*p_iter);
- }
-@@ -752,14 +752,14 @@
- ++params.ok_count;
- }
- catch(fs::filesystem_error& e) {
-- error(e, std::string("skipping file: " + p_iter->path().file_string()));
-+ error(e, std::string("skipping file: " + p_iter->path().string()));
- ++params.file_err_count;
- }
- }
- }
- }
- catch(fs::filesystem_error& e) {
-- error(e, std::string("skipping directory: " + directory.file_string()));
-+ error(e, std::string("skipping directory: " + directory.string()));
- ++params.dir_err_count;
- }
- }
diff --git a/media-gfx/exiv2/files/exiv2-0.24-CVE-2014-9449.patch b/media-gfx/exiv2/files/exiv2-0.24-CVE-2014-9449.patch
deleted file mode 100644
index cf1b46f..0000000
--- a/media-gfx/exiv2/files/exiv2-0.24-CVE-2014-9449.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -up exiv2-0.24/src/riffvideo.cpp.CVE-2014-9449 exiv2-0.24/src/riffvideo.cpp
---- exiv2-0.24/src/riffvideo.cpp.CVE-2014-9449 2013-12-01 06:13:42.000000000 -0600
-+++ exiv2-0.24/src/riffvideo.cpp 2015-01-05 11:21:42.306728309 -0600
-@@ -856,7 +856,7 @@ namespace Exiv2 {
-
- void RiffVideo::infoTagsHandler()
- {
-- const long bufMinSize = 100;
-+ const long bufMinSize = 10000;
- DataBuf buf(bufMinSize);
- buf.pData_[4] = '\0';
- io_->seek(-12, BasicIo::cur);
-@@ -879,10 +879,14 @@ namespace Exiv2 {
- if(infoSize >= 0) {
- size -= infoSize;
- io_->read(buf.pData_, infoSize);
-+ if(infoSize < 4)
-+ buf.pData_[infoSize] = '\0';
- }
-
- if(tv)
- xmpData_[exvGettext(tv->label_)] = buf.pData_;
-+ else
-+ continue;
- }
- io_->seek(cur_pos + size_external, BasicIo::beg);
- } // RiffVideo::infoTagsHandler
diff --git a/media-gfx/exiv2/files/exiv2-0.24-python3.patch b/media-gfx/exiv2/files/exiv2-0.24-python3.patch
deleted file mode 100644
index 405a7d3..0000000
--- a/media-gfx/exiv2/files/exiv2-0.24-python3.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -ub -r exiv2-0.23.org/doc/templates/gen.py exiv2-0.23/doc/templates/gen.py
---- exiv2-0.23.org/doc/templates/gen.py 2005-05-28 19:35:08.000000000 +0400
-+++ exiv2-0.23/doc/templates/gen.py 2013-12-21 03:03:54.000000000 +0400
-@@ -7,9 +7,9 @@
- # ----------------------------------------------------------------------
- # functions
- def usage():
-- print """Usage: gen.py file.in [...]
-+ print("""Usage: gen.py file.in [...]
- Substitute placeholders in input files with content
-- """
-+ """)
-
- def gen_html(file):
- """Replace variables in the file with their content"""
-@@ -49,9 +49,9 @@
- vars.sort()
-
- # Substitute variables in all input files
--print "Substituting variables", vars
-+print("Substituting variables {0}".format(vars))
- for file in input:
-- print "Processing", file, "..."
-+ print("Processing {0}...".format(file))
- text = gen_html(file)
- file = file.replace(".in", "")
- open(file, 'w').write(text)
diff --git a/media-gfx/exiv2/metadata.xml b/media-gfx/exiv2/metadata.xml
index 3d5537f..934a5a6 100644
--- a/media-gfx/exiv2/metadata.xml
+++ b/media-gfx/exiv2/metadata.xml
@@ -14,7 +14,6 @@
write EXIF, IPTC and XMP image metadata.
</longdescription>
<use>
- <flag name="contrib">Build additional contrib components</flag>
<flag name="webready">Support reading metadata over the internet</flag>
</use>
</pkgmetadata>
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2017-10-13 8:48 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2017-10-13 8:48 UTC (permalink / raw
To: gentoo-commits
commit: 77be078f05083c774eb0194c89ae2830a9d7931a
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Oct 13 08:47:24 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Oct 13 08:47:45 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77be078f
media-gfx/exiv2: Drop 0.26
Package-Manager: Portage-2.3.11, Repoman-2.3.3
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.26.ebuild | 133 ---------------------
.../exiv2/files/exiv2-0.26-CVE-2017-9239.patch | 22 ----
media-gfx/exiv2/files/exiv2-0.26-cmake1.patch | 22 ----
media-gfx/exiv2/files/exiv2-0.26-cmake2.patch | 65 ----------
media-gfx/exiv2/files/exiv2-0.26-cmake3.patch | 53 --------
media-gfx/exiv2/files/exiv2-0.26-cmake4.patch | 24 ----
media-gfx/exiv2/files/exiv2-0.26-cmake5.patch | 33 -----
media-gfx/exiv2/files/exiv2-0.26-cmake6.patch | 27 -----
media-gfx/exiv2/files/exiv2-0.26-cmake7.patch | 38 ------
media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch | 70 -----------
.../exiv2/files/exiv2-0.26-tools-optional.patch | 27 -----
12 files changed, 515 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 1cfa3b2b873..d2ca2261e26 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,3 +1,2 @@
DIST exiv2-0.25.tar.gz 5434325 SHA256 c80bfc778a15fdb06f71265db2c3d49d8493c382e516cb99b8c9f9cbde36efa4 SHA512 08d4e655ffdde715e0214f4bef01d55aba9b8ba517456a60e254a0f8541c20479e407545db28ca90a69dee8def6941fdd88f9a557fb382ebebe49e363aca8e8e WHIRLPOOL f9e7a6947dac5870e0574253b8c1cb1e7d31a916a9e1c4417c73168046c0b4bed90b9c77253444604163bcf6dca204dab92a52cb03bdcb0f85c807327623f8ac
-DIST exiv2-0.26-trunk.tar.gz 5699163 SHA256 0c625cbeb494aa1b9221280a5b053b54d0c9720d48fa9120cef7c6f93efd4dc3 SHA512 d9f354f8458d7803140b442b2a8de3c8904b1e20916cf62d7176f51524e6ff7def26d3b6fa016abc49f8140295eea624151c54dbae0676a61529c2cf33335b0c WHIRLPOOL 0d36063ee659d0a798957e9a2478337f5e8061b467df8fb86b194830ac6ec751a75e1492ad7cbf4ed31c836b9c320f037af3708920b28b07c8970840e255d711
DIST exiv2-0.26_p20171013.tar.gz 25801252 SHA256 137178f0dfc2734b174ba71b8b18d5852fcd5c6f7835eeb1b58f42b93eed7317 SHA512 4e8b10b8593a80615f5deb9fed3420f118338f1161b99c0b86456686fe8d511bb5df956ee25ed5edf990b34bab9efda64be5c80f6efbd78e6e497cb85e2a3ad5 WHIRLPOOL e32b9d98fa5be77bbf50bf275a95db8e9d15b0d40d762bdf512cb8d02f009fc452921df194121cd32d9780de1c83afd0da5cd75ef653a9ba1459f18884f71ffe
diff --git a/media-gfx/exiv2/exiv2-0.26.ebuild b/media-gfx/exiv2/exiv2-0.26.ebuild
deleted file mode 100644
index c63f2a26e98..00000000000
--- a/media-gfx/exiv2/exiv2-0.26.ebuild
+++ /dev/null
@@ -1,133 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-SRC_URI="http://www.exiv2.org/builds/${P}-trunk.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0/26"
-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"
-IUSE_LINGUAS="bs de es fi fr gl ms pl pt ru sk sv ug uk vi"
-IUSE="doc examples nls png webready xmp $(printf 'linguas_%s ' ${IUSE_LINGUAS})"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
-"
-
-DEPEND="${RDEPEND}
- doc? (
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- ${PYTHON_DEPS}
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-PATCHES=(
- "${FILESDIR}"/${P}-cmake{1,2,3,4,5,6,7}.patch
- "${FILESDIR}"/${P}-CVE-2017-9239.patch
- # TODO: Take to upstream
- "${FILESDIR}"/${P}-fix-docs.patch
- "${FILESDIR}"/${P}-tools-optional.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_unpack() {
- # FIXME @upstream: MacOS cruft is breaking the buildsystem, so don't let it in...
- tar -C "${WORKDIR}" --exclude=.* -xpf "${DISTDIR}/${A}" --gz 2> /dev/null ||
- elog "${my_tar}: tar extract command failed at least partially - continuing"
- mv "${PN}-trunk" "${S}" || die "Failed to create source dir ${S}"
-}
-
-src_prepare() {
- if [[ ${PV} != *9999 ]] ; then
- if [[ -d po ]] ; then
- pushd po > /dev/null || die
- local lang
- for lang in *.po; do
- if [[ -e ${lang} ]] && ! has ${lang/.po/} ${LINGUAS} ; then
- case ${lang} in
- CMakeLists.txt | \
- ${PN}.pot) ;;
- *) rm -r ${lang} || die ;;
- esac
- fi
- done
- popd > /dev/null || die
- else
- die "Failed to prepare LINGUAS - po directory moved?"
- fi
- fi
-
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_ENABLE_BUILD_PO=YES
- -DEXIV2_ENABLE_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_LIBXMP=NO
- $(multilib_is_native_abi || \
- echo -DEXIV2_ENABLE_TOOLS=NO)
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && emake -j1 doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
- use doc && HTML_DOCS=( "${S}"/doc/html/. )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.26-CVE-2017-9239.patch b/media-gfx/exiv2/files/exiv2-0.26-CVE-2017-9239.patch
deleted file mode 100644
index 2a3e20c9fac..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-CVE-2017-9239.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 2f8681e120d277e418941c4361c83b5028f67fd8 Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Sat, 27 May 2017 10:18:17 +0100
-Subject: [PATCH] #1296 Fix submitted.
-
----
- src/tiffcomposite.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/tiffcomposite.cpp b/src/tiffcomposite.cpp
-index c6b860d8..0c9b9c4a 100644
---- a/src/tiffcomposite.cpp
-+++ b/src/tiffcomposite.cpp
-@@ -1611,6 +1611,8 @@ namespace Exiv2 {
- uint32_t TiffImageEntry::doWriteImage(IoWrapper& ioWrapper,
- ByteOrder /*byteOrder*/) const
- {
-+ if ( !pValue() ) throw Error(21); // #1296
-+
- uint32_t len = pValue()->sizeDataArea();
- if (len > 0) {
- #ifdef DEBUG
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake1.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake1.patch
deleted file mode 100644
index 672017e404b..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake1.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From d5ae1a7502cc3a19f2ca45f5f17f1ee8fc6ad979 Mon Sep 17 00:00:00 2001
-From: Timo Gurr <timo.gurr@gmail.com>
-Date: Tue, 30 May 2017 20:25:28 +0200
-Subject: [PATCH] Use CMAKE_INSTALL_LOCALEDIR
-
----
- config/CMakeChecks.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index 77922930..b3a888f2 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -98,7 +98,7 @@ IF( EXIV2_ENABLE_NLS )
- #FIND_PACKAGE(Intl REQUIRED)
- #INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
- IF( NOT LOCALEDIR )
-- SET( LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale" )
-+ SET( LOCALEDIR "${CMAKE_INSTALL_LOCALEDIR}" )
- IF( WIN32 )
- STRING( REPLACE "/" "\\\\" LOCALEDIR ${LOCALEDIR} )
- ENDIF( WIN32 )
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake2.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake2.patch
deleted file mode 100644
index 76a19442486..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake2.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 3af0d1a6b2c12b7f62a293d19bdf235db75d6b07 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sat, 3 Jun 2017 17:18:24 +0200
-Subject: [PATCH] cmake: fix gettext support
-
-Building exiv2 with uclibc and gettext fails currently as detected
-by the buildroot autobuilders:
-http://autobuild.buildroot.net/results/def/defcdd3dd57b031c31bb16c0075f079a482bf52d/build-end.log
----
- config/CMakeChecks.txt | 12 ++++++++++--
- src/CMakeLists.txt | 6 +++---
- 2 files changed, 13 insertions(+), 5 deletions(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index b3a888f2..f7621a92 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -95,8 +95,16 @@ ELSE( EXIV2_ENABLE_SHARED )
- ENDIF( EXIV2_ENABLE_SHARED )
-
- IF( EXIV2_ENABLE_NLS )
-- #FIND_PACKAGE(Intl REQUIRED)
-- #INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
-+ FIND_PACKAGE(Intl)
-+ if(Intl_FOUND)
-+ INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
-+ find_library(LIBINTL_LIBRARY NAMES intl libintl)
-+ if(libintl_FOUND)
-+ SET(LIBINTL_LIBRARIES ${LIBINTL_LIBRARY})
-+ else(libintl_FOUND)
-+ SET(LIBINTL_LIBRARIES)
-+ endif()
-+ endif()
- IF( NOT LOCALEDIR )
- SET( LOCALEDIR "${CMAKE_INSTALL_LOCALEDIR}" )
- IF( WIN32 )
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index aecd6215..e2904c6f 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -316,13 +316,13 @@ msvc_runtime_configure(${EXIV2_ENABLE_SHARED} ${EXIV2_ENABLE_DYNAMIC_RUNTIME})
- # ******************************************************************************
- # exiv2 application
- ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
--TARGET_LINK_LIBRARIES( exiv2 exiv2lib )
-+TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
- INSTALL( TARGETS exiv2 ${INSTALL_TARGET_STANDARD_ARGS} )
-
- # ******************************************************************************
- # connection test application
- ADD_EXECUTABLE( conntest ${CONNTEST} )
--TARGET_LINK_LIBRARIES( conntest ${PRIVATE_VAR} exiv2lib ${CURL_LIBRARIES} ${SSH_LIBRARIES})
-+TARGET_LINK_LIBRARIES( conntest ${PRIVATE_VAR} exiv2lib ${CURL_LIBRARIES} ${SSH_LIBRARIES} ${LIBINTL_LIBRARIES} )
-
- # ******************************************************************************
- # exifprint application
-@@ -332,7 +332,7 @@ TARGET_LINK_LIBRARIES( conntest ${PRIVATE_VAR} exiv2lib ${CURL_LIBRARIES} ${SSH
- # ******************************************************************************
- # remotetest application
- ADD_EXECUTABLE( remotetest ${REMOTETEST} )
--TARGET_LINK_LIBRARIES( remotetest exiv2lib )
-+TARGET_LINK_LIBRARIES( remotetest exiv2lib ${LIBINTL_LIBRARIES} )
-
- # ******************************************************************************
- # Headers
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake3.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake3.patch
deleted file mode 100644
index 7a78d1c8bd8..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake3.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 8af901ce05aeeaa4f5033da99670091f857d5931 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sat, 3 Jun 2017 18:25:05 +0200
-Subject: [PATCH] cmake: always depend on threads, not only in the xmp case
-
----
- CMakeLists.txt | 1 -
- config/CMakeChecks.txt | 2 ++
- src/CMakeLists.txt | 2 ++
- 3 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7034bb67..64604c6f 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -120,7 +120,6 @@ IF( EXIV2_ENABLE_XMP )
- IF (NOT MINGW)
- set(THREADS_PREFER_PTHREAD_FLAG ON)
- ENDIF()
-- find_package(Threads REQUIRED)
- ENDIF( EXIV2_ENABLE_XMP )
-
- INCLUDE( config/CMakeChecks.txt )
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index f7621a92..0dfe96b7 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -51,6 +51,8 @@ INCLUDE_DIRECTORIES( ${CMAKE_INCLUDE_PATH} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_C
- LINK_DIRECTORIES( ${CMAKE_LIBRARY_PATH} )
- SET( CMAKE_REQUIRED_INCLUDES ${CMAKE_INCLUDE_PATH} )
-
-+find_package(Threads REQUIRED)
-+
- IF( EXIV2_ENABLE_PNG )
- FIND_PACKAGE( ZLIB REQUIRED )
- INCLUDE_DIRECTORIES( ${ZLIB_INCLUDE_DIR} )
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index e2904c6f..dcfb37e1 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -268,10 +268,12 @@ else()
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} dl ${EXPAT_LIBRARIES} )
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} dl ${CURL_LIBRARIES} )
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} dl ${SSH_LIBRARIES} )
-+ TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} dl ${CMAKE_THREAD_LIBS_INIT} )
- else()
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} ${EXPAT_LIBRARIES} )
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} ${CURL_LIBRARIES} )
- TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} ${SSH_LIBRARIES} )
-+ TARGET_LINK_LIBRARIES( exiv2lib ${PRIVATE_VAR} ${CMAKE_THREAD_LIBS_INIT} )
- endif()
- endif()
-
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake4.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake4.patch
deleted file mode 100644
index 3824a574000..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake4.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 23ac3eeced6a4de0d34ae162ac7784ab9b7e4310 Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Sat, 3 Jun 2017 20:58:08 +0100
-Subject: [PATCH] #7 Fix for libintl
-
----
- config/CMakeChecks.txt | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index 0dfe96b7..8c88aa27 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -103,8 +103,8 @@ IF( EXIV2_ENABLE_NLS )
- find_library(LIBINTL_LIBRARY NAMES intl libintl)
- if(libintl_FOUND)
- SET(LIBINTL_LIBRARIES ${LIBINTL_LIBRARY})
-- else(libintl_FOUND)
-- SET(LIBINTL_LIBRARIES)
-+ else()
-+ SET(LIBINTL_LIBRARIES -lintl)
- endif()
- endif()
- IF( NOT LOCALEDIR )
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake5.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake5.patch
deleted file mode 100644
index 0df4a19689f..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake5.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 4e86c1d61c4b8ab2cbbb31db0031b8e1d1872231 Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Sun, 4 Jun 2017 07:41:03 +0100
-Subject: [PATCH] Fix https://github.com/Exiv2/exiv2/pull/6 for
- Linux/Cygwin/MacOSX
-
----
- config/CMakeChecks.txt | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index 8c88aa27..e6100c0f 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -98,13 +98,16 @@ ENDIF( EXIV2_ENABLE_SHARED )
-
- IF( EXIV2_ENABLE_NLS )
- FIND_PACKAGE(Intl)
-- if(Intl_FOUND)
-+ if(Intl_FOUND AND NOT MSVC)
- INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
- find_library(LIBINTL_LIBRARY NAMES intl libintl)
- if(libintl_FOUND)
- SET(LIBINTL_LIBRARIES ${LIBINTL_LIBRARY})
- else()
-- SET(LIBINTL_LIBRARIES -lintl)
-+ SET(LIBINTL_LIBRARIES)
-+ if ( APPLE OR CYGWIN )
-+ SET(LIBINTL_LIBRARIES -lintl)
-+ endif()
- endif()
- endif()
- IF( NOT LOCALEDIR )
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake6.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake6.patch
deleted file mode 100644
index 105b5889fea..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake6.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 88cf58613ffde4c907011bea82f61daae6006c3c Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Sun, 4 Jun 2017 09:07:14 +0100
-Subject: [PATCH] #8 Adding INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
-
----
- config/CMakeChecks.txt | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index e6100c0f..b90d4fde 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -102,11 +102,12 @@ IF( EXIV2_ENABLE_NLS )
- INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
- find_library(LIBINTL_LIBRARY NAMES intl libintl)
- if(libintl_FOUND)
-+ INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
- SET(LIBINTL_LIBRARIES ${LIBINTL_LIBRARY})
- else()
- SET(LIBINTL_LIBRARIES)
- if ( APPLE OR CYGWIN )
-- SET(LIBINTL_LIBRARIES -lintl)
-+ SET(LIBINTL_LIBRARIES -lintl)
- endif()
- endif()
- endif()
diff --git a/media-gfx/exiv2/files/exiv2-0.26-cmake7.patch b/media-gfx/exiv2/files/exiv2-0.26-cmake7.patch
deleted file mode 100644
index 0eff32a80d5..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-cmake7.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 15e0b9052eacd3438c8b39bf3fdda5da69ec068a Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sun, 4 Jun 2017 10:13:14 +0200
-Subject: [PATCH] cmake: simplify libintl check
-
-According to https://cmake.org/cmake/help/v3.4/module/FindIntl.html
-the FindIntl module already checks for libintl.so.
----
- config/CMakeChecks.txt | 15 ++++-----------
- 1 file changed, 4 insertions(+), 11 deletions(-)
-
-diff --git a/config/CMakeChecks.txt b/config/CMakeChecks.txt
-index b90d4fde..0cd28ec7 100644
---- a/config/CMakeChecks.txt
-+++ b/config/CMakeChecks.txt
-@@ -98,18 +98,11 @@ ENDIF( EXIV2_ENABLE_SHARED )
-
- IF( EXIV2_ENABLE_NLS )
- FIND_PACKAGE(Intl)
-- if(Intl_FOUND AND NOT MSVC)
-+ if(Intl_FOUND)
- INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
-- find_library(LIBINTL_LIBRARY NAMES intl libintl)
-- if(libintl_FOUND)
-- INCLUDE_DIRECTORIES(${Intl_INCLUDE_DIRS})
-- SET(LIBINTL_LIBRARIES ${LIBINTL_LIBRARY})
-- else()
-- SET(LIBINTL_LIBRARIES)
-- if ( APPLE OR CYGWIN )
-- SET(LIBINTL_LIBRARIES -lintl)
-- endif()
-- endif()
-+ SET(LIBINTL_LIBRARIES ${Intl_LIBRARIES})
-+ else()
-+ SET(LIBINTL_LIBRARIES)
- endif()
- IF( NOT LOCALEDIR )
- SET( LOCALEDIR "${CMAKE_INSTALL_LOCALEDIR}" )
diff --git a/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch b/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
deleted file mode 100644
index a88867173df..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- a/CMakeLists.txt 2015-07-19 16:04:35.363628707 +0200
-+++ b/CMakeLists.txt 2015-07-19 16:28:31.051680136 +0200
-@@ -216,9 +216,7 @@
- ADD_SUBDIRECTORY( xmpsdk )
- ADD_SUBDIRECTORY( src )
-
--IF( EXIV2_ENABLE_BUILD_SAMPLES )
-- ADD_SUBDIRECTORY( samples )
--ENDIF( EXIV2_ENABLE_BUILD_SAMPLES )
-+ADD_SUBDIRECTORY( samples )
-
- IF( EXIV2_ENABLE_BUILD_PO )
- ADD_SUBDIRECTORY( po )
---- a/samples/CMakeLists.txt 2015-07-19 16:04:35.360628744 +0200
-+++ b/samples/CMakeLists.txt 2015-07-19 16:30:46.415987850 +0200
-@@ -21,6 +21,10 @@
- include_directories("${CMAKE_SOURCE_DIR}/include" "${CMAKE_SOURCE_DIR}/src")
-
--SET( SAMPLES addmoddel.cpp
-+SET( SAMPLES taglist.cpp )
-+
-+IF( EXIV2_ENABLE_BUILD_SAMPLES )
-+ SET( SAMPLES ${SAMPLES}
-+ addmoddel.cpp
- convert-test.cpp
- easyaccess-test.cpp
- exifcomment.cpp
-@@ -38,7 +42,6 @@
- mmap-test.cpp
- prevtest.cpp
- stringto-test.cpp
-- taglist.cpp
- tiff-test.cpp
- werror-test.cpp
- write-test.cpp
-@@ -47,6 +50,7 @@
- xmpparser-test.cpp
- xmpsample.cpp
- )
-+ENDIF()
-
- FOREACH(entry ${SAMPLES})
- STRING( REPLACE ".cpp" "" target ${entry})
-@@ -63,6 +67,7 @@
- SET( MC_SRC ${MC_SRC} ../src/getopt_win32.c )
- ENDIF( MSVC )
-
-+IF( EXIV2_ENABLE_BUILD_SAMPLES )
- SET( MC_SRC ${MC_SRC} metacopy.cpp ../src/utils.cpp )
- ADD_EXECUTABLE( metacopy ${MC_SRC} )
- TARGET_LINK_LIBRARIES( metacopy exiv2lib )
-@@ -79,6 +84,7 @@
- # ******************************************************************************
- # Man page
- INSTALL( FILES exiv2samples.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 )
-+ENDIF()
-
- # That's all Folks!
- ##
---- a/doc/templates/Makefile 2015-07-19 16:50:50.589933604 +0200
-+++ b/doc/templates/Makefile 2015-07-19 16:51:07.686719864 +0200
-@@ -143,7 +143,7 @@
- xmp_mwg-rs \
- xmp_mwg-kw
-
--TAGLIST = ../../bin/taglist
-+TAGLIST = ../../src/bin/taglist
-
- # **********************************************************************
- # ======================================================================
diff --git a/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch b/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
deleted file mode 100644
index 045e9dc58f0..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
+++ /dev/null
@@ -1,27 +0,0 @@
---- a/CMakeLists.txt 2017-06-07 00:14:25.374608170 +0200
-+++ b/CMakeLists.txt 2017-06-07 00:17:00.680483299 +0200
-@@ -60,6 +60,7 @@
- OPTION( EXIV2_ENABLE_SSH "USE Libssh for SshIo" ON )
- SET ( EXIV2_ENABLE_DYNAMIC_RUNTIME OFF )
- ENDIF()
-+OPTION( EXIV2_ENABLE_TOOLS "Build exiv2 executable" ON )
-
- # set include path for FindXXX.cmake files
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/config/")
---- a/src/CMakeLists.txt 2017-06-07 00:14:25.368608098 +0200
-+++ b/src/CMakeLists.txt 2017-06-07 00:16:06.710831682 +0200
-@@ -317,9 +317,11 @@
-
- # ******************************************************************************
- # exiv2 application
--ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
--TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
--INSTALL( TARGETS exiv2 ${INSTALL_TARGET_STANDARD_ARGS} )
-+IF(EXIV2_ENABLE_TOOLS)
-+ ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
-+ TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
-+ INSTALL( TARGETS exiv2 ${INSTALL_TARGET_STANDARD_ARGS} )
-+ENDIF( EXIV2_ENABLE_TOOLS )
-
- # ******************************************************************************
- # connection test application
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2017-10-14 7:57 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2017-10-14 7:57 UTC (permalink / raw
To: gentoo-commits
commit: 3d87a84e9efadd125720c7caf8b5045948353547
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 14 07:55:27 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Oct 14 07:55:27 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d87a84e
media-gfx/exiv2: Fix !multilib_is_native_abi build
Gentoo-bug: 634178
Package-Manager: Portage-2.3.11, Repoman-2.3.3
media-gfx/exiv2/exiv2-0.26_p20171013.ebuild | 2 +
.../exiv2/files/exiv2-0.26_p20171013-cmake.patch | 47 ++++++++++++++++++++++
2 files changed, 49 insertions(+)
diff --git a/media-gfx/exiv2/exiv2-0.26_p20171013.ebuild b/media-gfx/exiv2/exiv2-0.26_p20171013.ebuild
index 92035195fe4..9aa6302ffd0 100644
--- a/media-gfx/exiv2/exiv2-0.26_p20171013.ebuild
+++ b/media-gfx/exiv2/exiv2-0.26_p20171013.ebuild
@@ -41,6 +41,8 @@ DEPEND="${RDEPEND}
DOCS=( README.md doc/ChangeLog doc/cmd.txt )
+PATCHES=( "${FILESDIR}/${P}-cmake.patch" )
+
pkg_setup() {
use doc && python-any-r1_pkg_setup
}
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20171013-cmake.patch b/media-gfx/exiv2/files/exiv2-0.26_p20171013-cmake.patch
new file mode 100644
index 00000000000..c10f125415b
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26_p20171013-cmake.patch
@@ -0,0 +1,47 @@
+From 57883ee664260f5a1b382575e7477ad34c86ce7d Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Fri, 13 Oct 2017 18:54:11 +0200
+Subject: [PATCH] Fix build with EXIV2_BUILD_EXIV2_COMMAND=OFF
+
+---
+ src/CMakeLists.txt | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index fe49a0a6..f75cbf1b 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -291,21 +291,28 @@ if(EXIV2_BUILD_EXIV2_COMMAND)
+ if ( BUILD_SHARED_LIBS )
+ target_compile_definitions(exiv2 PRIVATE EXV_HAVE_DLL )
+ endif()
++ # modify source lists to suit environment
++
++ # TODO This should not be needed here! we need to fix the previous TODO
++ target_include_directories(exiv2 PRIVATE ${CMAKE_SOURCE_DIR}/include/)
++
++ if(NOT EXV_HAVE_TIMEGM )
++ target_sources(exiv2 PRIVATE localtime.c)
++ endif()
++
++ if (MSVC)
++ target_sources(exiv2 PRIVATE getopt_win32.c)
++ endif()
+ install(TARGETS exiv2 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ endif()
+
+-# TODO This should not be needed here! we need to fix the previous TODO
+-target_include_directories(exiv2 PRIVATE ${CMAKE_SOURCE_DIR}/include/)
+-
+ # modify source lists to suit environment
+ if(NOT EXV_HAVE_TIMEGM )
+ target_sources(exiv2lib PRIVATE localtime.c)
+- target_sources(exiv2 PRIVATE localtime.c)
+ endif()
+
+ if (MSVC)
+ target_sources(exiv2lib PRIVATE getopt_win32.c)
+- target_sources(exiv2 PRIVATE getopt_win32.c)
+ endif()
+
+ # ******************************************************************************
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2017-10-18 0:35 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2017-10-18 0:35 UTC (permalink / raw
To: gentoo-commits
commit: 7905c64ebd0e68b9267f6965508b145591b325f5
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 18 00:03:35 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Oct 18 00:28:39 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7905c64e
media-gfx/exiv2: Add 0.26_p20171018 snapshot from 0.26 branch
Since many commits haven't been backported yet, this is actually
a tarball made of my fork, until this is decided upstream.
Not pretty but better than keeping the current snapshot in tree.
Gentoo-bug: 634308
Package-Manager: Portage-2.3.11, Repoman-2.3.3
media-gfx/exiv2/Manifest | 1 +
media-gfx/exiv2/exiv2-0.26_p20171018.ebuild | 128 +++++++++++++++++++++
media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch | 83 +++++++++++++
.../exiv2/files/exiv2-0.26-tools-optional.patch | 28 +++++
4 files changed, 240 insertions(+)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index d2ca2261e26..4c27da12d82 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1,3 @@
DIST exiv2-0.25.tar.gz 5434325 SHA256 c80bfc778a15fdb06f71265db2c3d49d8493c382e516cb99b8c9f9cbde36efa4 SHA512 08d4e655ffdde715e0214f4bef01d55aba9b8ba517456a60e254a0f8541c20479e407545db28ca90a69dee8def6941fdd88f9a557fb382ebebe49e363aca8e8e WHIRLPOOL f9e7a6947dac5870e0574253b8c1cb1e7d31a916a9e1c4417c73168046c0b4bed90b9c77253444604163bcf6dca204dab92a52cb03bdcb0f85c807327623f8ac
DIST exiv2-0.26_p20171013.tar.gz 25801252 SHA256 137178f0dfc2734b174ba71b8b18d5852fcd5c6f7835eeb1b58f42b93eed7317 SHA512 4e8b10b8593a80615f5deb9fed3420f118338f1161b99c0b86456686fe8d511bb5df956ee25ed5edf990b34bab9efda64be5c80f6efbd78e6e497cb85e2a3ad5 WHIRLPOOL e32b9d98fa5be77bbf50bf275a95db8e9d15b0d40d762bdf512cb8d02f009fc452921df194121cd32d9780de1c83afd0da5cd75ef653a9ba1459f18884f71ffe
+DIST exiv2-0.26_p20171018.tar.gz 28370645 SHA256 7dea665ff7e58a7a858b1aa624d75f27f8b8b154cce645ef970344982c9de449 SHA512 fb4c867a5879ab46f31a1a8a7f8d24395620d6ff2a1088bc9d8d589ca110fad063e19266f4e2b75ad7bebc5b87141ed95db8e214220670a4d11092dfe654558c WHIRLPOOL b2c5060fbbb177479ffd8fbf68957d2329c0383da673b3555f602e574ee90672f55dd6105dcb25e47c9efde97dd4721d05596b22ab9f954bf9e502ffac0ee45c
diff --git a/media-gfx/exiv2/exiv2-0.26_p20171018.ebuild b/media-gfx/exiv2/exiv2-0.26_p20171018.ebuild
new file mode 100644
index 00000000000..aa1eeec5560
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.26_p20171018.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+LINGUAS="bs de es fi fr gl ms pl pt ru sk sv ug uk vi"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+if [[ ${PV} = *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ EGIT_BRANCH="0.26"
+ GIT_ECLASS=git-r3
+else
+ COMMIT=0a9962f5879335e4eb539ce419fce45a41de2770
+ SRC_URI="https://github.com/a17r/${PN}/tarball/${COMMIT} -> ${P}.tar.gz"
+ 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"
+fi
+inherit cmake-multilib python-any-r1 vcs-snapshot
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="http://www.exiv2.org/"
+
+LICENSE="GPL-2"
+SLOT="0/26"
+IUSE="doc examples nls png webready xmp $(printf 'linguas_%s ' ${LINGUAS})"
+
+RDEPEND="
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ webready? (
+ net-libs/libssh[${MULTILIB_USEDEP}]
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ doc? (
+ ${PYTHON_DEPS}
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ nls? ( sys-devel/gettext )
+"
+
+DOCS=( README doc/ChangeLog doc/cmd.txt )
+
+PATCHES=(
+ # TODO: Take to upstream
+ "${FILESDIR}"/${PN}-0.26-fix-docs.patch
+ "${FILESDIR}"/${PN}-0.26-tools-optional.patch
+)
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ if [[ ${PV} != *9999 ]] ; then
+ if [[ -d po ]] ; then
+ pushd po > /dev/null || die
+ local lang
+ for lang in *.po; do
+ if [[ -e ${lang} ]] && ! has ${lang/.po/} ${LINGUAS} ; then
+ case ${lang} in
+ CMakeLists.txt | \
+ ${PN}.pot) ;;
+ *) rm -r ${lang} || die ;;
+ esac
+ fi
+ done
+ popd > /dev/null || die
+ else
+ die "Failed to prepare LINGUAS - po directory moved?"
+ fi
+ fi
+
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ if use doc; then
+ einfo "Updating doxygen config"
+ doxygen &>/dev/null -u config/Doxyfile || die
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_ENABLE_BUILD_SAMPLES=NO
+ -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_SSH=$(usex webready)
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ -DEXIV2_ENABLE_LIBXMP=NO
+ $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && emake -j1 doc
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+ use doc && HTML_DOCS=( "${S}"/doc/html/. )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch b/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
new file mode 100644
index 00000000000..05ea18d6eb0
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
@@ -0,0 +1,83 @@
+--- a/CMakeLists.txt 2015-07-19 16:04:35.363628707 +0200
++++ b/CMakeLists.txt 2015-07-19 16:28:31.051680136 +0200
+@@ -216,9 +216,7 @@
+ ADD_SUBDIRECTORY( xmpsdk )
+ ADD_SUBDIRECTORY( src )
+
+-IF( EXIV2_ENABLE_BUILD_SAMPLES )
+- ADD_SUBDIRECTORY( samples )
+-ENDIF( EXIV2_ENABLE_BUILD_SAMPLES )
++ADD_SUBDIRECTORY( samples )
+
+ IF( EXIV2_ENABLE_BUILD_PO )
+ ADD_SUBDIRECTORY( po )
+--- a/samples/CMakeLists.txt 2015-07-19 16:04:35.360628744 +0200
++++ b/samples/CMakeLists.txt 2015-07-19 16:30:46.415987850 +0200
+@@ -21,6 +21,10 @@
+ include_directories("${CMAKE_SOURCE_DIR}/include" "${CMAKE_SOURCE_DIR}/src")
+
+-SET( SAMPLES addmoddel.cpp
++SET( SAMPLES taglist.cpp )
++
++IF( EXIV2_ENABLE_BUILD_SAMPLES )
++ SET( SAMPLES ${SAMPLES}
++ addmoddel.cpp
+ convert-test.cpp
+ easyaccess-test.cpp
+ exifcomment.cpp
+@@ -38,7 +42,6 @@
+ mmap-test.cpp
+ prevtest.cpp
+ stringto-test.cpp
+- taglist.cpp
+ tiff-test.cpp
+ werror-test.cpp
+ write-test.cpp
+@@ -47,6 +50,7 @@
+ xmpparser-test.cpp
+ xmpsample.cpp
+ )
++ENDIF()
+
+ FOREACH(entry ${SAMPLES})
+ STRING( REPLACE ".cpp" "" target ${entry})
+@@ -63,6 +67,7 @@
+ SET( MC_SRC ${MC_SRC} ../src/getopt_win32.c )
+ ENDIF( MSVC )
+
++IF( EXIV2_ENABLE_BUILD_SAMPLES )
+ SET( MC_SRC ${MC_SRC} metacopy.cpp ../src/utils.cpp )
+ ADD_EXECUTABLE( metacopy ${MC_SRC} )
+ TARGET_LINK_LIBRARIES( metacopy exiv2lib )
+@@ -79,6 +84,7 @@
+ # ******************************************************************************
+ # Man page
+ INSTALL( FILES exiv2samples.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 )
++ENDIF()
+
+ # That's all Folks!
+ ##
+--- a/doc/templates/Makefile 2015-07-19 16:50:50.589933604 +0200
++++ b/doc/templates/Makefile 2015-07-19 16:51:07.686719864 +0200
+@@ -143,7 +143,7 @@
+ xmp_mwg-rs \
+ xmp_mwg-kw
+
+-TAGLIST = ../../bin/taglist
++TAGLIST = ../../src/bin/taglist
+
+ # **********************************************************************
+ # ======================================================================
+diff --git a/doc/cmake_doc.sh b/doc/cmake_doc.sh
+index 44dd6760..5910a86d 100755
+--- a/doc/cmake_doc.sh
++++ b/doc/cmake_doc.sh
+@@ -16,7 +16,7 @@ if [ $# == 1 ]; then
+ mv src/exv_conf.h.keep src/exv_conf.h
+ fi
+ mkdir -p src/bin/
+- cp -f "${CMAKE_BINARY_DIR}/bin/taglist" src/bin/
++ cp -f "${CMAKE_BINARY_DIR}/samples/taglist" src/bin/
+ make doc
+ fi
+
diff --git a/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch b/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
new file mode 100644
index 00000000000..36920cd0dc4
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
@@ -0,0 +1,28 @@
+--- a/CMakeLists.txt 2017-06-07 00:14:25.374608170 +0200
++++ b/CMakeLists.txt 2017-06-07 00:17:00.680483299 +0200
+@@ -60,6 +60,7 @@
+ OPTION( EXIV2_ENABLE_SSH "USE Libssh for SshIo" ON )
+ SET ( EXIV2_ENABLE_DYNAMIC_RUNTIME OFF )
+ ENDIF()
++OPTION( EXIV2_ENABLE_TOOLS "Build exiv2 executable" ON )
+
+ # set include path for FindXXX.cmake files
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/config/")
+--- a/src/CMakeLists.txt 2017-06-07 00:14:25.368608098 +0200
++++ b/src/CMakeLists.txt 2017-06-07 00:16:06.710831682 +0200
+@@ -317,10 +317,12 @@
+
+ # ******************************************************************************
+ # exiv2 application
+-ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
++IF(EXIV2_ENABLE_TOOLS)
++ ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
+ target_compile_definitions(exiv2 PRIVATE EXV_LOCALEDIR="${CMAKE_INSTALL_LOCALEDIR}" )
+-TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
+-INSTALL( TARGETS exiv2 ${INSTALL_TARGET_STANDARD_ARGS} )
++ TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
++ INSTALL( TARGETS exiv2 ${INSTALL_TARGET_STANDARD_ARGS} )
++ENDIF( EXIV2_ENABLE_TOOLS )
+
+ # ******************************************************************************
+ # connection test application
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2017-12-05 16:15 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2017-12-05 16:15 UTC (permalink / raw
To: gentoo-commits
commit: 4c6eada07c811dc3bd34ce06907d3a5cd8cafe54
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 5 16:10:05 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Dec 5 16:15:10 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c6eada0
media-gfx/exiv2: Fix crash with Pentax/Nikon exif data
Bug: https://bugs.gentoo.org/626214
Package-Manager: Portage-2.3.13, Repoman-2.3.4
media-gfx/exiv2/Manifest | 2 +-
media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild | 129 +++++++++++++++++++++
.../exiv2/files/exiv2-0.26-pentaxnikon-crash.patch | 52 +++++++++
3 files changed, 182 insertions(+), 1 deletion(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 44859a8fee7..a9b1bd775e2 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1 +1 @@
-DIST exiv2-0.26_p20171104.tar.gz 28368697 SHA256 f7a46c0b1d3d3c30518202e62dbe086029f584a064bbb531a0ab11270a454007 SHA512 6f6a884d7978e54dceb9ce45248cd0425ff469887c85ef52b0e38cb755970f69fce96b4b5317c8e8070b833f72ca214696042aac71292a6f9c3440f6a369d474 WHIRLPOOL 7baf5fcde327b2e1decde48f44b616f98fab7c65d22ee5e94e0b356fad4d7950c116db17a94b3c91954ac1565c3fe2853b83262c0a4597744dea708b304dce09
+DIST exiv2-0.26_p20171104.tar.gz 28368697 BLAKE2B 50013cf0bf30a2a476b02d5db4027fca268a4b38733762eb4c08e5f3bdfaf737038e9a62f7ef471fecb10250d8ae686ef683f9b0ea4ccc5d109440ba534371e4 SHA512 6f6a884d7978e54dceb9ce45248cd0425ff469887c85ef52b0e38cb755970f69fce96b4b5317c8e8070b833f72ca214696042aac71292a6f9c3440f6a369d474
diff --git a/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild b/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild
new file mode 100644
index 00000000000..f7eb67dc5bf
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+LINGUAS="bs de es fi fr gl ms pl pt ru sk sv ug uk vi"
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+if [[ ${PV} = *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ EGIT_BRANCH="0.26"
+ GIT_ECLASS=git-r3
+else
+ COMMIT=900d2417dbeb46e14cbf65fc2798ed1d043ab76d
+ SRC_URI="https://github.com/Exiv2/${PN}/tarball/${COMMIT} -> ${P}.tar.gz"
+ 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"
+fi
+inherit cmake-multilib python-any-r1 vcs-snapshot
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="http://www.exiv2.org/"
+
+LICENSE="GPL-2"
+SLOT="0/26"
+IUSE="doc examples nls png webready xmp $(printf 'linguas_%s ' ${LINGUAS})"
+
+RDEPEND="
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ webready? (
+ net-libs/libssh[${MULTILIB_USEDEP}]
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ doc? (
+ ${PYTHON_DEPS}
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ nls? ( sys-devel/gettext )
+"
+
+DOCS=( README doc/ChangeLog doc/cmd.txt )
+
+PATCHES=(
+ # TODO: Take to upstream
+ "${FILESDIR}"/${PN}-0.26-fix-docs.patch
+ "${FILESDIR}"/${PN}-0.26-tools-optional.patch
+ "${FILESDIR}"/${PN}-0.26-pentaxnikon-crash.patch
+)
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ if [[ ${PV} != *9999 ]] ; then
+ if [[ -d po ]] ; then
+ pushd po > /dev/null || die
+ local lang
+ for lang in *.po; do
+ if [[ -e ${lang} ]] && ! has ${lang/.po/} ${LINGUAS} ; then
+ case ${lang} in
+ CMakeLists.txt | \
+ ${PN}.pot) ;;
+ *) rm -r ${lang} || die ;;
+ esac
+ fi
+ done
+ popd > /dev/null || die
+ else
+ die "Failed to prepare LINGUAS - po directory moved?"
+ fi
+ fi
+
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ if use doc; then
+ einfo "Updating doxygen config"
+ doxygen &>/dev/null -u config/Doxyfile || die
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_ENABLE_BUILD_SAMPLES=NO
+ -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_SSH=$(usex webready)
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ -DEXIV2_ENABLE_LIBXMP=NO
+ $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && emake -j1 doc
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+ use doc && HTML_DOCS=( "${S}"/doc/html/. )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch b/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch
new file mode 100644
index 00000000000..a66af8d5dc9
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch
@@ -0,0 +1,52 @@
+From 2dc166b04ca6152d01bff6627a332e89ddef24d1 Mon Sep 17 00:00:00 2001
+From: clanmills <robin@clanmills.com>
+Date: Tue, 12 Sep 2017 09:14:42 +0100
+Subject: [PATCH 1/2] Fix http://dev.exiv2.org/issues/1305
+
+---
+ src/pentaxmn.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/pentaxmn.cpp b/src/pentaxmn.cpp
+index 4fc38be0..b22cb43b 100644
+--- a/src/pentaxmn.cpp
++++ b/src/pentaxmn.cpp
+@@ -1167,6 +1167,8 @@ namespace Exiv2 {
+
+ std::ostream& PentaxMakerNote::printShutterCount(std::ostream& os, const Value& value, const ExifData* metadata)
+ {
++ if ( ! metadata ) return os << "undefined" ;
++
+ ExifData::const_iterator dateIt = metadata->findKey(
+ ExifKey("Exif.PentaxDng.Date"));
+ if (dateIt == metadata->end()) {
+--
+2.13.6
+
+
+From 3bc0b91bcecefdad531129b1a934be1251021c95 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?M=C4=81ris=20Narti=C5=A1s?= <mn@sungis.lv>
+Date: Mon, 18 Sep 2017 23:37:40 +0300
+Subject: [PATCH 2/2] Fix crash on undefined metadata on some Nikon images.
+ Identical to commit:5405d61623e82896e498c5c8342dd6f42e689115
+
+---
+ src/nikonmn.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/nikonmn.cpp b/src/nikonmn.cpp
+index 571ab806..34bf601c 100644
+--- a/src/nikonmn.cpp
++++ b/src/nikonmn.cpp
+@@ -299,6 +299,8 @@ namespace Exiv2 {
+ const Value& value,
+ const ExifData* exifData)
+ {
++ if ( ! exifData ) return os << "undefined" ;
++
+ if ( value.count() >= 9 ) {
+ ByteOrder bo = getKeyString("Exif.MakerNote.ByteOrder",exifData) == "MM" ? bigEndian : littleEndian;
+ byte p[4];
+--
+2.13.6
+
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2018-04-25 17:54 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2018-04-25 17:54 UTC (permalink / raw
To: gentoo-commits
commit: 1dc8557a38b42c16b34728619c94d0c89476251a
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 25 17:40:31 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Apr 25 17:53:27 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1dc8557a
media-gfx/exiv2: Add 0.26_p20180319 snapshot
Fixing CVE-2017-17669, CVE-2017-17725, CVE-2017-18005, CVE-2018-4868
Bug: https://bugs.gentoo.org/626214
Bug: https://bugs.gentoo.org/643554
Bug: https://bugs.gentoo.org/647808
Bug: https://bugs.gentoo.org/640978
Package-Manager: Portage-2.3.31, Repoman-2.3.9
media-gfx/exiv2/Manifest | 1 +
media-gfx/exiv2/exiv2-0.26_p20180319.ebuild | 136 ++++++
.../exiv2-0.26_p20180319-CVE-2017-18005.patch | 484 +++++++++++++++++++++
.../files/exiv2-0.26_p20180319-CVE-2018-4868.patch | 39 ++
4 files changed, 660 insertions(+)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index a9b1bd775e2..ff807541c73 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1 +1,2 @@
DIST exiv2-0.26_p20171104.tar.gz 28368697 BLAKE2B 50013cf0bf30a2a476b02d5db4027fca268a4b38733762eb4c08e5f3bdfaf737038e9a62f7ef471fecb10250d8ae686ef683f9b0ea4ccc5d109440ba534371e4 SHA512 6f6a884d7978e54dceb9ce45248cd0425ff469887c85ef52b0e38cb755970f69fce96b4b5317c8e8070b833f72ca214696042aac71292a6f9c3440f6a369d474
+DIST exiv2-0.26_p20180319.tar.gz 28383543 BLAKE2B 753a2ebdb2033490c0f66cb1fb2574f02125f17813f6cbaf5eca66e053af9a2cdbc1266f0a033f0706ec22b31acd6e87271e426a335a58ee947757b52d283489 SHA512 852ce2cffcc0a2d902a939933127fdf5fa0b50020e1faf3ab0a375b129b9f61c7b97b76d4f39e376e7288d7cc045867bd1a96ae15dd0b7c0bcd1ba15259628e1
diff --git a/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild b/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild
new file mode 100644
index 00000000000..9ba53069a66
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+if [[ ${PV} = *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ EGIT_BRANCH="0.26"
+ GIT_ECLASS=git-r3
+else
+ COMMIT=876b1314ab892cbfa6672b6b94adbeb90db4211f
+ SRC_URI="https://github.com/Exiv2/${PN}/tarball/${COMMIT} -> ${P}.tar.gz"
+ 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"
+fi
+inherit cmake-multilib python-any-r1
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="http://www.exiv2.org/"
+
+LICENSE="GPL-2"
+SLOT="0/26"
+IUSE="doc examples nls png webready xmp"
+
+RDEPEND="
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
+ webready? (
+ net-libs/libssh[${MULTILIB_USEDEP}]
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ app-text/dos2unix
+ doc? (
+ ${PYTHON_DEPS}
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ nls? ( sys-devel/gettext )
+"
+
+DOCS=( README doc/ChangeLog doc/cmd.txt )
+
+S="${WORKDIR}/${PN^}-${PN}-${COMMIT:0:7}"
+
+PATCHES=(
+ # master, pending backports for 0.26
+ "${FILESDIR}"/${P}-CVE-2018-4868.patch
+ "${FILESDIR}"/${P}-CVE-2017-18005.patch
+ # TODO: Take to upstream
+ "${FILESDIR}"/${PN}-0.26-fix-docs.patch
+ "${FILESDIR}"/${PN}-0.26-tools-optional.patch
+)
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ if [[ ${PV} != *9999 ]] ; then
+ if [[ -d po ]] ; then
+ pushd po > /dev/null || die
+ local lang
+ for lang in *.po; do
+ if [[ -e ${lang} ]] \
+ && ! has ${lang/.po/} ${LINGUAS-${lang/.po/}} ; then
+ case ${lang} in
+ CMakeLists.txt | \
+ ${PN}.pot) ;;
+ *) rm -r ${lang} || die ;;
+ esac
+ fi
+ done
+ popd > /dev/null || die
+ else
+ die "Failed to prepare LINGUAS - po directory moved?"
+ fi
+ fi
+
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ if use doc; then
+ einfo "Updating doxygen config"
+ doxygen &>/dev/null -u config/Doxyfile || die
+ fi
+
+ dos2unix samples/exiv2json.cpp || die # workaround for CVE-2017-18005 patch
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_ENABLE_BUILD_SAMPLES=NO
+ -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_SSH=$(usex webready)
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ -DEXIV2_ENABLE_LIBXMP=NO
+ $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && emake -j1 doc
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+ use doc && HTML_DOCS=( "${S}"/doc/html/. )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch
new file mode 100644
index 00000000000..d74ca59e3c0
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch
@@ -0,0 +1,484 @@
+From 8e31dd8c14fdc83f387f35dda7b1b70fbdbd70db Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
+Date: Tue, 19 Dec 2017 19:52:41 +0100
+Subject: [PATCH 3/8] Only print items (Params::prValue) when size > 0
+
+---
+ src/actions.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/actions.cpp b/src/actions.cpp
+index 9f850097..3963cb67 100644
+--- a/src/actions.cpp
++++ b/src/actions.cpp
+@@ -713,8 +713,9 @@ namespace Action {
+ << std::setfill(' ') << std::right
+ << md.size();
+ }
+- if (Params::instance().printItems_ & Params::prValue) {
+- if (!first) std::cout << " ";
++ if (Params::instance().printItems_ & Params::prValue && md.size() > 0) {
++ if (!first)
++ std::cout << " ";
+ first = false;
+ if ( Params::instance().binary_
+ && ( md.typeId() == Exiv2::undefined
+--
+2.17.0
+
+
+From 463485e5c1cc716108880f75b9c573715bf402b1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
+Date: Tue, 19 Dec 2017 19:54:17 +0100
+Subject: [PATCH 4/8] Move condition in if statement to discard work earlier
+
+---
+ src/actions.cpp | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/src/actions.cpp b/src/actions.cpp
+index 3963cb67..f51cb488 100644
+--- a/src/actions.cpp
++++ b/src/actions.cpp
+@@ -717,11 +717,10 @@ namespace Action {
+ if (!first)
+ std::cout << " ";
+ first = false;
+- if ( Params::instance().binary_
+- && ( md.typeId() == Exiv2::undefined
++ if (md.size() > 128 && Params::instance().binary_ && (
++ md.typeId() == Exiv2::undefined
+ || md.typeId() == Exiv2::unsignedByte
+- || md.typeId() == Exiv2::signedByte)
+- && md.size() > 128) {
++ || md.typeId() == Exiv2::signedByte)) {
+ std::cout << _("(Binary value suppressed)") << std::endl;
+ return true;
+ }
+--
+2.17.0
+
+
+From 7fe7501c01e5d1eec16a736062dd0c34d6408833 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
+Date: Tue, 19 Dec 2017 19:55:50 +0100
+Subject: [PATCH 5/8] Apply clang-format to Print::printMetadatum
+
+---
+ src/actions.cpp | 110 ++++++++++++++++++++++++------------------------
+ 1 file changed, 55 insertions(+), 55 deletions(-)
+
+diff --git a/src/actions.cpp b/src/actions.cpp
+index f51cb488..b31d6ec6 100644
+--- a/src/actions.cpp
++++ b/src/actions.cpp
+@@ -636,91 +636,90 @@ namespace Action {
+
+ bool Print::printMetadatum(const Exiv2::Metadatum& md, const Exiv2::Image* pImage)
+ {
+- if (!grepTag(md.key())) return false;
+- if (!keyTag (md.key())) return false;
++ if (!grepTag(md.key()))
++ return false;
++ if (!keyTag(md.key()))
++ return false;
+
+- if ( Params::instance().unknown_
+- && md.tagName().substr(0, 2) == "0x") {
++ if (Params::instance().unknown_ && md.tagName().substr(0, 2) == "0x") {
+ return false;
+ }
++
+ bool const manyFiles = Params::instance().files_.size() > 1;
+ if (manyFiles) {
+- std::cout << std::setfill(' ') << std::left << std::setw(20)
+- << path_ << " ";
++ std::cout << std::setfill(' ') << std::left << std::setw(20) << path_ << " ";
+ }
++
+ bool first = true;
+ if (Params::instance().printItems_ & Params::prTag) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << "0x" << std::setw(4) << std::setfill('0')
+- << std::right << std::hex
+- << md.tag();
++ std::cout << "0x" << std::setw(4) << std::setfill('0') << std::right << std::hex << md.tag();
+ }
+ if (Params::instance().printItems_ & Params::prSet) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << "set" ;
++ std::cout << "set";
+ }
+ if (Params::instance().printItems_ & Params::prGroup) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::setw(12) << std::setfill(' ') << std::left
+- << md.groupName();
++ std::cout << std::setw(12) << std::setfill(' ') << std::left << md.groupName();
+ }
+ if (Params::instance().printItems_ & Params::prKey) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::setfill(' ') << std::left << std::setw(44)
+- << md.key();
++ std::cout << std::setfill(' ') << std::left << std::setw(44) << md.key();
+ }
+ if (Params::instance().printItems_ & Params::prName) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::setw(27) << std::setfill(' ') << std::left
+- << md.tagName();
++ std::cout << std::setw(27) << std::setfill(' ') << std::left << md.tagName();
+ }
+ if (Params::instance().printItems_ & Params::prLabel) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::setw(30) << std::setfill(' ') << std::left
+- << md.tagLabel();
++ std::cout << std::setw(30) << std::setfill(' ') << std::left << md.tagLabel();
+ }
+ if (Params::instance().printItems_ & Params::prType) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+ std::cout << std::setw(9) << std::setfill(' ') << std::left;
+ const char* tn = md.typeName();
+ if (tn) {
+ std::cout << tn;
+- }
+- else {
++ } else {
+ std::ostringstream os;
+ os << "0x" << std::setw(4) << std::setfill('0') << std::hex << md.typeId();
+ std::cout << os.str();
+ }
+ }
+ if (Params::instance().printItems_ & Params::prCount) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::dec << std::setw(3)
+- << std::setfill(' ') << std::right
+- << md.count();
++ std::cout << std::dec << std::setw(3) << std::setfill(' ') << std::right << md.count();
+ }
+ if (Params::instance().printItems_ & Params::prSize) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- std::cout << std::dec << std::setw(3)
+- << std::setfill(' ') << std::right
+- << md.size();
++ std::cout << std::dec << std::setw(3) << std::setfill(' ') << std::right << md.size();
+ }
+ if (Params::instance().printItems_ & Params::prValue && md.size() > 0) {
+ if (!first)
+ std::cout << " ";
+ first = false;
+- if (md.size() > 128 && Params::instance().binary_ && (
+- md.typeId() == Exiv2::undefined
+- || md.typeId() == Exiv2::unsignedByte
+- || md.typeId() == Exiv2::signedByte)) {
++ if (md.size() > 128 && Params::instance().binary_ &&
++ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
++ md.typeId() == Exiv2::signedByte)) {
+ std::cout << _("(Binary value suppressed)") << std::endl;
+ return true;
+ }
+@@ -738,22 +737,22 @@ namespace Action {
+ }
+ if (!done) {
+ // #1114 - show negative values for SByte
+- if (md.typeId() != Exiv2::signedByte){
++ if (md.typeId() != Exiv2::signedByte) {
+ std::cout << std::dec << md.value();
+ } else {
+ int value = md.value().toLong();
+- std::cout << std::dec << (value<128?value:value-256);
++ std::cout << std::dec << (value < 128 ? value : value - 256);
+ }
+ }
+ }
+ if (Params::instance().printItems_ & Params::prTrans) {
+- if (!first) std::cout << " ";
++ if (!first)
++ std::cout << " ";
+ first = false;
+- if ( Params::instance().binary_
+- && ( md.typeId() == Exiv2::undefined
+- || md.typeId() == Exiv2::unsignedByte
+- || md.typeId() == Exiv2::signedByte)
+- && md.size() > 128) {
++ if (Params::instance().binary_ &&
++ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
++ md.typeId() == Exiv2::signedByte) &&
++ md.size() > 128) {
+ std::cout << _("(Binary value suppressed)") << std::endl;
+ return true;
+ }
+@@ -765,16 +764,17 @@ namespace Action {
+ done = true;
+ }
+ }
+- if (!done) std::cout << std::dec << md.print(&pImage->exifData());
++ if (!done)
++ std::cout << std::dec << md.print(&pImage->exifData());
+ }
+ if (Params::instance().printItems_ & Params::prHex) {
+- if (!first) std::cout << std::endl;
++ if (!first)
++ std::cout << std::endl;
+ first = false;
+- if ( Params::instance().binary_
+- && ( md.typeId() == Exiv2::undefined
+- || md.typeId() == Exiv2::unsignedByte
+- || md.typeId() == Exiv2::signedByte)
+- && md.size() > 128) {
++ if (Params::instance().binary_ &&
++ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
++ md.typeId() == Exiv2::signedByte) &&
++ md.size() > 128) {
+ std::cout << _("(Binary value suppressed)") << std::endl;
+ return true;
+ }
+@@ -784,7 +784,7 @@ namespace Action {
+ }
+ std::cout << std::endl;
+ return true;
+- } // Print::printMetadatum
++ } // Print::printMetadatum
+
+ int Print::printComment()
+ {
+--
+2.17.0
+
+
+From 78ddc7a92afaaf58b78d5c49b5c2ad7b60a4e25f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
+Date: Thu, 21 Dec 2017 16:39:43 +0100
+Subject: [PATCH 6/8] Do not deference value when it does not exist (Thanks
+ D4N)
+
+---
+ samples/exiv2json.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/samples/exiv2json.cpp b/samples/exiv2json.cpp
+index 505268d9..a81268f0 100644
+--- a/samples/exiv2json.cpp
++++ b/samples/exiv2json.cpp
+@@ -148,6 +148,11 @@ bool isArray(std::string& value)
+ template <class T>
+ void push(Jzon::Node& node,const std::string& key,T i)
+ {
++#define ABORT_IF_I_EMTPY \
++ if (i->value().size() == 0) { \
++ return; \
++ }
++
+ std::string value = i->value().toString();
+
+ switch ( i->typeId() ) {
+@@ -179,6 +184,7 @@ void push(Jzon::Node& node,const std::string& key,T i)
+
+ case Exiv2::unsignedRational:
+ case Exiv2::signedRational: {
++ ABORT_IF_I_EMTPY
+ Jzon::Array arr;
+ Exiv2::Rational rat = i->value().toRational();
+ arr.Add(rat.first );
+@@ -187,6 +193,7 @@ void push(Jzon::Node& node,const std::string& key,T i)
+ } break;
+
+ case Exiv2::langAlt: {
++ ABORT_IF_I_EMTPY
+ Jzon::Object l ;
+ const Exiv2::LangAltValue& langs = dynamic_cast<const Exiv2::LangAltValue&>(i->value());
+ for ( Exiv2::LangAltValue::ValueType::const_iterator lang = langs.value_.begin()
+--
+2.17.0
+
+
+From 871e6e3ced1cdec7e43bf8cb94e269a7f5c09d92 Mon Sep 17 00:00:00 2001
+From: Robin Mills <robin@clanmills.com>
+Date: Thu, 15 Mar 2018 10:43:18 +0000
+Subject: [PATCH 8/8] Fix for getopt(), #199. Use src/getopt_win32 code instead
+ of libc/getopt()
+
+---
+ config/config.mk.in | 2 +-
+ src/CMakeLists.txt | 6 ++----
+ src/Makefile | 13 +++++--------
+ src/getopt_win32.c | 9 +++++++++
+ src/getopt_win32.h | 7 +++++++
+ src/utils.cpp | 9 +++------
+ 6 files changed, 27 insertions(+), 19 deletions(-)
+
+diff --git a/config/config.mk.in b/config/config.mk.in
+index 8d920647..4754c722 100644
+--- a/config/config.mk.in
++++ b/config/config.mk.in
+@@ -165,7 +165,7 @@ endif
+ # **********************************************************************
+ # Compilation shortcuts
+ COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
+-COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
++COMPILE.c = $(CC) $(CFLAGS) -c
+ # LINK.cc does not need $(LIBS), libtool's dark magic takes care of that
+ # when linking a binary with a libtool library.
+ LINK.cc = $(CXX) $(LDFLAGS)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index d4dc6375..dceee236 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -218,10 +218,8 @@ IF(NOT HAVE_TIMEGM )
+ SET( PATHTEST_SRC ${PATHTEST_SRC} localtime.c )
+ ENDIF( NOT HAVE_TIMEGM )
+
+-IF( MSVC )
+- SET( EXIV2_SRC ${EXIV2_SRC} getopt_win32.c )
+- SET( LIBEXIV2_SRC ${LIBEXIV2_SRC} getopt_win32.c )
+-ENDIF( MSVC )
++SET( EXIV2_SRC ${EXIV2_SRC} getopt_win32.c )
++SET( LIBEXIV2_SRC ${LIBEXIV2_SRC} getopt_win32.c )
+
+ ##
+ # msvn tuning
+diff --git a/src/Makefile b/src/Makefile
+index 8a8366fe..d046e331 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -131,8 +131,7 @@ CCSRC += asfvideo.cpp \
+ utilsvideo.cpp
+ endif
+
+-# Add library C source files to this list
+-EXIVCSRC =
++# C source files
+ ifndef HAVE_TIMEGM
+ CSRC = localtime.c
+ endif
+@@ -141,9 +140,7 @@ endif
+ EXIV2MAIN = exiv2.cpp
+ EXIV2SRC = actions.cpp \
+ utils.cpp
+-
+-# C source files for the Exiv2 application
+-EXIVCSRC =
++EXIVCSRC = getopt_win32.c
+
+ # ******************************************************************************
+ # Library
+@@ -176,7 +173,7 @@ OBJ = $(CCOBJ) $(COBJ)
+ LOBJ = $(CCLOBJ) $(CLOBJ)
+
+ EXIV2OBJ = $(EXIV2MAIN:.cpp=.o) $(EXIV2SRC:.cpp=.o)
+-EXIV2COBJ = $(EXIVCSRC:.c=.o)
++EXIVCOBJ = $(EXIVCSRC:.c=.o)
+ EXIV2EXE = $(EXIV2MAIN:.cpp=$(EXEEXT))
+
+ ifdef DEP_TRACKING
+@@ -251,9 +248,9 @@ lib: $(OBJ)
+ $(BINARY): %: %.o lib
+ @$(LIBTOOL) --mode=link $(LINK.cc) -o $@ $(LIBRARY) $@.o -rpath $(libdir)
+
+-$(EXIV2EXE): lib $(EXIV2OBJ) $(EXIV2COBJ)
++$(EXIV2EXE): lib $(EXIV2OBJ) $(EXIVCOBJ)
+ mkdir -pv ../bin 2>&1 > /dev/null
+- @$(LIBTOOL) --mode=link $(LINK.cc) -o ../bin/$@ $(LIBRARY) $(EXIV2OBJ) $(EXIV2COBJ) -rpath $(libdir)
++ @$(LIBTOOL) --mode=link $(LINK.cc) -o ../bin/$@ $(LIBRARY) $(EXIV2OBJ) $(EXIVCOBJ) -rpath $(libdir)
+
+ install-header:
+ $(INSTALL_DIRS) $(DESTDIR)$(incdir)
+diff --git a/src/getopt_win32.c b/src/getopt_win32.c
+index fca29924..18dfcfbf 100644
+--- a/src/getopt_win32.c
++++ b/src/getopt_win32.c
+@@ -194,6 +194,10 @@ permute_args(panonopt_start, panonopt_end, opt_end, nargv)
+ }
+ }
+
++#ifdef __GETOPT_DEFINE_ARGV__
++char * const *__argv;
++#endif
++
+ /*
+ * getopt_internal --
+ * Parse argc/argv argument vector. Called by user level routines.
+@@ -205,6 +209,11 @@ getopt_internal(nargc, nargv, options)
+ char * const *nargv;
+ const char *options;
+ {
++
++#ifdef __GETOPT_DEFINE_ARGV__
++ __argv=nargv;
++#endif
++
+ char *oli; /* option letter list index */
+ int optchar;
+
+diff --git a/src/getopt_win32.h b/src/getopt_win32.h
+index 6b6f643b..cd5760a3 100644
+--- a/src/getopt_win32.h
++++ b/src/getopt_win32.h
+@@ -38,6 +38,13 @@
+ extern "C" {
+ #endif
+
++#if !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__MINGW__) && !defined(_MSC_VER)
++// the symbol __argv (and __argc and __progname and __env) are defined in Windows environments
++// for *ix environments, __argv is declared here, defined: getopt_win32.c, init'd: getopt_internal()
++#define __GETOPT_DEFINE_ARGV__
++extern char * const *__argv;
++#endif
++
+ extern int opterr; /* if error message should be printed */
+ extern int optind; /* index into parent argv vector */
+ extern int optopt; /* character checked for validity */
+diff --git a/src/utils.cpp b/src/utils.cpp
+index a3d36497..2a092330 100644
+--- a/src/utils.cpp
++++ b/src/utils.cpp
+@@ -32,18 +32,15 @@ EXIV2_RCSID("@(#) $Id$")
+ #include "config.h"
+
+ #include "utils.hpp"
+-
+-// + standard includes
+-#if defined(_MSC_VER) || defined(__MINGW__)
+-# include "getopt_win32.h"
+-#endif
++#include "getopt_win32.h"
+
+ #if defined(_MSC_VER)
+ # define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
+ #endif
+
++// + standard includes
+ #ifdef EXV_HAVE_UNISTD_H
+-# include <unistd.h> // for getopt(), stat()
++# include <unistd.h> // for stat()
+ #endif
+
+ #include <sys/types.h>
+--
+2.17.0
+
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch
new file mode 100644
index 00000000000..a594a2bfad1
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch
@@ -0,0 +1,39 @@
+From ce4f575e106697c0e513091e95a7cd12ed6a488b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dan.cermak@cgc-instruments.com>
+Date: Tue, 9 Jan 2018 21:18:36 +0100
+Subject: [PATCH 1/8] Add check for DataBuf.size_ in Jp2Image::readMetadata()
+
+When parsing a subBox that is a ColorHeader, a length is extracted
+from the input file and fed directly into DataBuf() (which calls
+malloc). A crafted input file can provide arbitrarily (up to
+max(uint32_t)-8) large values and result in excessive memory
+allocation.
+
+This commit adds a check for the new size of DataBuf so that it is not
+larger than the remaining size of the file.
+
+This fixes #202 aka CVE-2018-4868
+---
+ src/jp2image.cpp | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/jp2image.cpp b/src/jp2image.cpp
+index a308bfd9..3cebc2a8 100644
+--- a/src/jp2image.cpp
++++ b/src/jp2image.cpp
+@@ -272,7 +272,12 @@ namespace Exiv2
+ #endif
+
+ const long pad = 3 ; // 3 padding bytes 2 0 0
+- DataBuf data(Safe::add(subBox.length, static_cast<uint32_t>(8)));
++ const size_t data_length = Safe::add(subBox.length, static_cast<uint32_t>(8));
++ // data_length makes no sense if it is larger than the rest of the file
++ if (data_length > io_->size() - io_->tell()) {
++ throw Error(58);
++ }
++ DataBuf data(data_length);
+ io_->read(data.pData_,data.size_);
+ const long iccLength = getULong(data.pData_+pad, bigEndian);
+ // subtracting pad from data.size_ is safe:
+--
+2.17.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2018-04-26 3:32 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2018-04-26 3:32 UTC (permalink / raw
To: gentoo-commits
commit: a9b712f00d17e800631aca324320eda0b8dfb96f
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 26 03:25:19 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Apr 26 03:29:35 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9b712f0
media-gfx/exiv2: Drop old
Package-Manager: Portage-2.3.31, Repoman-2.3.9
media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild | 129 ---------------------
.../exiv2/files/exiv2-0.26-pentaxnikon-crash.patch | 52 ---------
2 files changed, 181 deletions(-)
diff --git a/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild b/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild
deleted file mode 100644
index 7553fc67ec9..00000000000
--- a/media-gfx/exiv2/exiv2-0.26_p20171104-r1.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- EGIT_BRANCH="0.26"
- GIT_ECLASS=git-r3
-else
- COMMIT=900d2417dbeb46e14cbf65fc2798ed1d043ab76d
- SRC_URI="https://github.com/Exiv2/${PN}/tarball/${COMMIT} -> ${P}.tar.gz"
- 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"
-fi
-inherit cmake-multilib python-any-r1 vcs-snapshot
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/26"
-IUSE="doc examples nls png webready xmp"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-PATCHES=(
- # TODO: Take to upstream
- "${FILESDIR}"/${PN}-0.26-fix-docs.patch
- "${FILESDIR}"/${PN}-0.26-tools-optional.patch
- "${FILESDIR}"/${PN}-0.26-pentaxnikon-crash.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if [[ ${PV} != *9999 ]] ; then
- if [[ -d po ]] ; then
- pushd po > /dev/null || die
- local lang
- for lang in *.po; do
- if [[ -e ${lang} ]] \
- && ! has ${lang/.po/} ${LINGUAS-${lang/.po/}} ; then
- case ${lang} in
- CMakeLists.txt | \
- ${PN}.pot) ;;
- *) rm -r ${lang} || die ;;
- esac
- fi
- done
- popd > /dev/null || die
- else
- die "Failed to prepare LINGUAS - po directory moved?"
- fi
- fi
-
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_ENABLE_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_LIBXMP=NO
- $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && emake -j1 doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
- use doc && HTML_DOCS=( "${S}"/doc/html/. )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch b/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch
deleted file mode 100644
index a66af8d5dc9..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-pentaxnikon-crash.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 2dc166b04ca6152d01bff6627a332e89ddef24d1 Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Tue, 12 Sep 2017 09:14:42 +0100
-Subject: [PATCH 1/2] Fix http://dev.exiv2.org/issues/1305
-
----
- src/pentaxmn.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/pentaxmn.cpp b/src/pentaxmn.cpp
-index 4fc38be0..b22cb43b 100644
---- a/src/pentaxmn.cpp
-+++ b/src/pentaxmn.cpp
-@@ -1167,6 +1167,8 @@ namespace Exiv2 {
-
- std::ostream& PentaxMakerNote::printShutterCount(std::ostream& os, const Value& value, const ExifData* metadata)
- {
-+ if ( ! metadata ) return os << "undefined" ;
-+
- ExifData::const_iterator dateIt = metadata->findKey(
- ExifKey("Exif.PentaxDng.Date"));
- if (dateIt == metadata->end()) {
---
-2.13.6
-
-
-From 3bc0b91bcecefdad531129b1a934be1251021c95 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?M=C4=81ris=20Narti=C5=A1s?= <mn@sungis.lv>
-Date: Mon, 18 Sep 2017 23:37:40 +0300
-Subject: [PATCH 2/2] Fix crash on undefined metadata on some Nikon images.
- Identical to commit:5405d61623e82896e498c5c8342dd6f42e689115
-
----
- src/nikonmn.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/nikonmn.cpp b/src/nikonmn.cpp
-index 571ab806..34bf601c 100644
---- a/src/nikonmn.cpp
-+++ b/src/nikonmn.cpp
-@@ -299,6 +299,8 @@ namespace Exiv2 {
- const Value& value,
- const ExifData* exifData)
- {
-+ if ( ! exifData ) return os << "undefined" ;
-+
- if ( value.count() >= 9 ) {
- ByteOrder bo = getKeyString("Exif.MakerNote.ByteOrder",exifData) == "MM" ? bigEndian : littleEndian;
- byte p[4];
---
-2.13.6
-
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2018-10-29 10:14 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2018-10-29 10:14 UTC (permalink / raw
To: gentoo-commits
commit: 8c24aae658082194548daf5a845dc996fab7f9f0
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 29 10:06:45 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Oct 29 10:14:24 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c24aae6
media-gfx/exiv2: Security cleanup
Bug: https://bugs.gentoo.org/658236
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
Package-Manager: Portage-2.3.50, Repoman-2.3.11
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.26_p20180319.ebuild | 136 ------
.../exiv2-0.26_p20180319-CVE-2017-18005.patch | 484 ---------------------
.../files/exiv2-0.26_p20180319-CVE-2018-4868.patch | 39 --
.../files/exiv2-0.26_p20180319-clang-fix.patch | 47 --
5 files changed, 707 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 1cdcc30af60..017a87d6e8b 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.26_p20180319.tar.gz 28383543 BLAKE2B 753a2ebdb2033490c0f66cb1fb2574f02125f17813f6cbaf5eca66e053af9a2cdbc1266f0a033f0706ec22b31acd6e87271e426a335a58ee947757b52d283489 SHA512 852ce2cffcc0a2d902a939933127fdf5fa0b50020e1faf3ab0a375b129b9f61c7b97b76d4f39e376e7288d7cc045867bd1a96ae15dd0b7c0bcd1ba15259628e1
DIST exiv2-0.26_p20180811d.tar.xz 1722216 BLAKE2B 9e1c8307eb923c340894c82c37e9f6c31d82ff1b1de3c79d4ec9b0ec9428ad1d05f945e9a4e440028335857e7fc32d50cdc5245842d743e017037bd641b654db SHA512 5453650888440028acb139a02b387eab0232551c97256ce88dd626fa4cc8800ec02ad66e093c314bbfdc60726995b6c8482572d1ffaec73a265209c98c901780
diff --git a/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild b/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild
deleted file mode 100644
index eb2572dfcf3..00000000000
--- a/media-gfx/exiv2/exiv2-0.26_p20180319.ebuild
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- EGIT_BRANCH="0.26"
- GIT_ECLASS=git-r3
-else
- COMMIT=876b1314ab892cbfa6672b6b94adbeb90db4211f
- SRC_URI="https://github.com/Exiv2/${PN}/tarball/${COMMIT} -> ${P}.tar.gz"
- 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"
-fi
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/26"
-IUSE="doc examples nls png webready xmp"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-S="${WORKDIR}/${PN^}-${PN}-${COMMIT:0:7}"
-
-PATCHES=(
- # 0.26 branch
- "${FILESDIR}"/${P}-CVE-2018-4868.patch
- "${FILESDIR}"/${P}-CVE-2017-18005.patch
- "${FILESDIR}"/${P}-clang-fix.patch
- # TODO: Take to upstream
- "${FILESDIR}"/${PN}-0.26-fix-docs.patch
- "${FILESDIR}"/${PN}-0.26-tools-optional.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if [[ ${PV} != *9999 ]] ; then
- if [[ -d po ]] ; then
- pushd po > /dev/null || die
- local lang
- for lang in *.po; do
- if [[ -e ${lang} ]] \
- && ! has ${lang/.po/} ${LINGUAS-${lang/.po/}} ; then
- case ${lang} in
- CMakeLists.txt | \
- ${PN}.pot) ;;
- *) rm -r ${lang} || die ;;
- esac
- fi
- done
- popd > /dev/null || die
- else
- die "Failed to prepare LINGUAS - po directory moved?"
- fi
- fi
-
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
- edos2unix samples/exiv2json.cpp # workaround for CVE-2017-18005 patch
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_ENABLE_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_LIBXMP=NO
- $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && emake -j1 doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
- use doc && HTML_DOCS=( "${S}"/doc/html/. )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch
deleted file mode 100644
index d74ca59e3c0..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2017-18005.patch
+++ /dev/null
@@ -1,484 +0,0 @@
-From 8e31dd8c14fdc83f387f35dda7b1b70fbdbd70db Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
-Date: Tue, 19 Dec 2017 19:52:41 +0100
-Subject: [PATCH 3/8] Only print items (Params::prValue) when size > 0
-
----
- src/actions.cpp | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/src/actions.cpp b/src/actions.cpp
-index 9f850097..3963cb67 100644
---- a/src/actions.cpp
-+++ b/src/actions.cpp
-@@ -713,8 +713,9 @@ namespace Action {
- << std::setfill(' ') << std::right
- << md.size();
- }
-- if (Params::instance().printItems_ & Params::prValue) {
-- if (!first) std::cout << " ";
-+ if (Params::instance().printItems_ & Params::prValue && md.size() > 0) {
-+ if (!first)
-+ std::cout << " ";
- first = false;
- if ( Params::instance().binary_
- && ( md.typeId() == Exiv2::undefined
---
-2.17.0
-
-
-From 463485e5c1cc716108880f75b9c573715bf402b1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
-Date: Tue, 19 Dec 2017 19:54:17 +0100
-Subject: [PATCH 4/8] Move condition in if statement to discard work earlier
-
----
- src/actions.cpp | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/actions.cpp b/src/actions.cpp
-index 3963cb67..f51cb488 100644
---- a/src/actions.cpp
-+++ b/src/actions.cpp
-@@ -717,11 +717,10 @@ namespace Action {
- if (!first)
- std::cout << " ";
- first = false;
-- if ( Params::instance().binary_
-- && ( md.typeId() == Exiv2::undefined
-+ if (md.size() > 128 && Params::instance().binary_ && (
-+ md.typeId() == Exiv2::undefined
- || md.typeId() == Exiv2::unsignedByte
-- || md.typeId() == Exiv2::signedByte)
-- && md.size() > 128) {
-+ || md.typeId() == Exiv2::signedByte)) {
- std::cout << _("(Binary value suppressed)") << std::endl;
- return true;
- }
---
-2.17.0
-
-
-From 7fe7501c01e5d1eec16a736062dd0c34d6408833 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
-Date: Tue, 19 Dec 2017 19:55:50 +0100
-Subject: [PATCH 5/8] Apply clang-format to Print::printMetadatum
-
----
- src/actions.cpp | 110 ++++++++++++++++++++++++------------------------
- 1 file changed, 55 insertions(+), 55 deletions(-)
-
-diff --git a/src/actions.cpp b/src/actions.cpp
-index f51cb488..b31d6ec6 100644
---- a/src/actions.cpp
-+++ b/src/actions.cpp
-@@ -636,91 +636,90 @@ namespace Action {
-
- bool Print::printMetadatum(const Exiv2::Metadatum& md, const Exiv2::Image* pImage)
- {
-- if (!grepTag(md.key())) return false;
-- if (!keyTag (md.key())) return false;
-+ if (!grepTag(md.key()))
-+ return false;
-+ if (!keyTag(md.key()))
-+ return false;
-
-- if ( Params::instance().unknown_
-- && md.tagName().substr(0, 2) == "0x") {
-+ if (Params::instance().unknown_ && md.tagName().substr(0, 2) == "0x") {
- return false;
- }
-+
- bool const manyFiles = Params::instance().files_.size() > 1;
- if (manyFiles) {
-- std::cout << std::setfill(' ') << std::left << std::setw(20)
-- << path_ << " ";
-+ std::cout << std::setfill(' ') << std::left << std::setw(20) << path_ << " ";
- }
-+
- bool first = true;
- if (Params::instance().printItems_ & Params::prTag) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << "0x" << std::setw(4) << std::setfill('0')
-- << std::right << std::hex
-- << md.tag();
-+ std::cout << "0x" << std::setw(4) << std::setfill('0') << std::right << std::hex << md.tag();
- }
- if (Params::instance().printItems_ & Params::prSet) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << "set" ;
-+ std::cout << "set";
- }
- if (Params::instance().printItems_ & Params::prGroup) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::setw(12) << std::setfill(' ') << std::left
-- << md.groupName();
-+ std::cout << std::setw(12) << std::setfill(' ') << std::left << md.groupName();
- }
- if (Params::instance().printItems_ & Params::prKey) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::setfill(' ') << std::left << std::setw(44)
-- << md.key();
-+ std::cout << std::setfill(' ') << std::left << std::setw(44) << md.key();
- }
- if (Params::instance().printItems_ & Params::prName) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::setw(27) << std::setfill(' ') << std::left
-- << md.tagName();
-+ std::cout << std::setw(27) << std::setfill(' ') << std::left << md.tagName();
- }
- if (Params::instance().printItems_ & Params::prLabel) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::setw(30) << std::setfill(' ') << std::left
-- << md.tagLabel();
-+ std::cout << std::setw(30) << std::setfill(' ') << std::left << md.tagLabel();
- }
- if (Params::instance().printItems_ & Params::prType) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
- std::cout << std::setw(9) << std::setfill(' ') << std::left;
- const char* tn = md.typeName();
- if (tn) {
- std::cout << tn;
-- }
-- else {
-+ } else {
- std::ostringstream os;
- os << "0x" << std::setw(4) << std::setfill('0') << std::hex << md.typeId();
- std::cout << os.str();
- }
- }
- if (Params::instance().printItems_ & Params::prCount) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::dec << std::setw(3)
-- << std::setfill(' ') << std::right
-- << md.count();
-+ std::cout << std::dec << std::setw(3) << std::setfill(' ') << std::right << md.count();
- }
- if (Params::instance().printItems_ & Params::prSize) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- std::cout << std::dec << std::setw(3)
-- << std::setfill(' ') << std::right
-- << md.size();
-+ std::cout << std::dec << std::setw(3) << std::setfill(' ') << std::right << md.size();
- }
- if (Params::instance().printItems_ & Params::prValue && md.size() > 0) {
- if (!first)
- std::cout << " ";
- first = false;
-- if (md.size() > 128 && Params::instance().binary_ && (
-- md.typeId() == Exiv2::undefined
-- || md.typeId() == Exiv2::unsignedByte
-- || md.typeId() == Exiv2::signedByte)) {
-+ if (md.size() > 128 && Params::instance().binary_ &&
-+ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
-+ md.typeId() == Exiv2::signedByte)) {
- std::cout << _("(Binary value suppressed)") << std::endl;
- return true;
- }
-@@ -738,22 +737,22 @@ namespace Action {
- }
- if (!done) {
- // #1114 - show negative values for SByte
-- if (md.typeId() != Exiv2::signedByte){
-+ if (md.typeId() != Exiv2::signedByte) {
- std::cout << std::dec << md.value();
- } else {
- int value = md.value().toLong();
-- std::cout << std::dec << (value<128?value:value-256);
-+ std::cout << std::dec << (value < 128 ? value : value - 256);
- }
- }
- }
- if (Params::instance().printItems_ & Params::prTrans) {
-- if (!first) std::cout << " ";
-+ if (!first)
-+ std::cout << " ";
- first = false;
-- if ( Params::instance().binary_
-- && ( md.typeId() == Exiv2::undefined
-- || md.typeId() == Exiv2::unsignedByte
-- || md.typeId() == Exiv2::signedByte)
-- && md.size() > 128) {
-+ if (Params::instance().binary_ &&
-+ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
-+ md.typeId() == Exiv2::signedByte) &&
-+ md.size() > 128) {
- std::cout << _("(Binary value suppressed)") << std::endl;
- return true;
- }
-@@ -765,16 +764,17 @@ namespace Action {
- done = true;
- }
- }
-- if (!done) std::cout << std::dec << md.print(&pImage->exifData());
-+ if (!done)
-+ std::cout << std::dec << md.print(&pImage->exifData());
- }
- if (Params::instance().printItems_ & Params::prHex) {
-- if (!first) std::cout << std::endl;
-+ if (!first)
-+ std::cout << std::endl;
- first = false;
-- if ( Params::instance().binary_
-- && ( md.typeId() == Exiv2::undefined
-- || md.typeId() == Exiv2::unsignedByte
-- || md.typeId() == Exiv2::signedByte)
-- && md.size() > 128) {
-+ if (Params::instance().binary_ &&
-+ (md.typeId() == Exiv2::undefined || md.typeId() == Exiv2::unsignedByte ||
-+ md.typeId() == Exiv2::signedByte) &&
-+ md.size() > 128) {
- std::cout << _("(Binary value suppressed)") << std::endl;
- return true;
- }
-@@ -784,7 +784,7 @@ namespace Action {
- }
- std::cout << std::endl;
- return true;
-- } // Print::printMetadatum
-+ } // Print::printMetadatum
-
- int Print::printComment()
- {
---
-2.17.0
-
-
-From 78ddc7a92afaaf58b78d5c49b5c2ad7b60a4e25f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
-Date: Thu, 21 Dec 2017 16:39:43 +0100
-Subject: [PATCH 6/8] Do not deference value when it does not exist (Thanks
- D4N)
-
----
- samples/exiv2json.cpp | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/samples/exiv2json.cpp b/samples/exiv2json.cpp
-index 505268d9..a81268f0 100644
---- a/samples/exiv2json.cpp
-+++ b/samples/exiv2json.cpp
-@@ -148,6 +148,11 @@ bool isArray(std::string& value)
- template <class T>
- void push(Jzon::Node& node,const std::string& key,T i)
- {
-+#define ABORT_IF_I_EMTPY \
-+ if (i->value().size() == 0) { \
-+ return; \
-+ }
-+
- std::string value = i->value().toString();
-
- switch ( i->typeId() ) {
-@@ -179,6 +184,7 @@ void push(Jzon::Node& node,const std::string& key,T i)
-
- case Exiv2::unsignedRational:
- case Exiv2::signedRational: {
-+ ABORT_IF_I_EMTPY
- Jzon::Array arr;
- Exiv2::Rational rat = i->value().toRational();
- arr.Add(rat.first );
-@@ -187,6 +193,7 @@ void push(Jzon::Node& node,const std::string& key,T i)
- } break;
-
- case Exiv2::langAlt: {
-+ ABORT_IF_I_EMTPY
- Jzon::Object l ;
- const Exiv2::LangAltValue& langs = dynamic_cast<const Exiv2::LangAltValue&>(i->value());
- for ( Exiv2::LangAltValue::ValueType::const_iterator lang = langs.value_.begin()
---
-2.17.0
-
-
-From 871e6e3ced1cdec7e43bf8cb94e269a7f5c09d92 Mon Sep 17 00:00:00 2001
-From: Robin Mills <robin@clanmills.com>
-Date: Thu, 15 Mar 2018 10:43:18 +0000
-Subject: [PATCH 8/8] Fix for getopt(), #199. Use src/getopt_win32 code instead
- of libc/getopt()
-
----
- config/config.mk.in | 2 +-
- src/CMakeLists.txt | 6 ++----
- src/Makefile | 13 +++++--------
- src/getopt_win32.c | 9 +++++++++
- src/getopt_win32.h | 7 +++++++
- src/utils.cpp | 9 +++------
- 6 files changed, 27 insertions(+), 19 deletions(-)
-
-diff --git a/config/config.mk.in b/config/config.mk.in
-index 8d920647..4754c722 100644
---- a/config/config.mk.in
-+++ b/config/config.mk.in
-@@ -165,7 +165,7 @@ endif
- # **********************************************************************
- # Compilation shortcuts
- COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
--COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
-+COMPILE.c = $(CC) $(CFLAGS) -c
- # LINK.cc does not need $(LIBS), libtool's dark magic takes care of that
- # when linking a binary with a libtool library.
- LINK.cc = $(CXX) $(LDFLAGS)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index d4dc6375..dceee236 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -218,10 +218,8 @@ IF(NOT HAVE_TIMEGM )
- SET( PATHTEST_SRC ${PATHTEST_SRC} localtime.c )
- ENDIF( NOT HAVE_TIMEGM )
-
--IF( MSVC )
-- SET( EXIV2_SRC ${EXIV2_SRC} getopt_win32.c )
-- SET( LIBEXIV2_SRC ${LIBEXIV2_SRC} getopt_win32.c )
--ENDIF( MSVC )
-+SET( EXIV2_SRC ${EXIV2_SRC} getopt_win32.c )
-+SET( LIBEXIV2_SRC ${LIBEXIV2_SRC} getopt_win32.c )
-
- ##
- # msvn tuning
-diff --git a/src/Makefile b/src/Makefile
-index 8a8366fe..d046e331 100644
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -131,8 +131,7 @@ CCSRC += asfvideo.cpp \
- utilsvideo.cpp
- endif
-
--# Add library C source files to this list
--EXIVCSRC =
-+# C source files
- ifndef HAVE_TIMEGM
- CSRC = localtime.c
- endif
-@@ -141,9 +140,7 @@ endif
- EXIV2MAIN = exiv2.cpp
- EXIV2SRC = actions.cpp \
- utils.cpp
--
--# C source files for the Exiv2 application
--EXIVCSRC =
-+EXIVCSRC = getopt_win32.c
-
- # ******************************************************************************
- # Library
-@@ -176,7 +173,7 @@ OBJ = $(CCOBJ) $(COBJ)
- LOBJ = $(CCLOBJ) $(CLOBJ)
-
- EXIV2OBJ = $(EXIV2MAIN:.cpp=.o) $(EXIV2SRC:.cpp=.o)
--EXIV2COBJ = $(EXIVCSRC:.c=.o)
-+EXIVCOBJ = $(EXIVCSRC:.c=.o)
- EXIV2EXE = $(EXIV2MAIN:.cpp=$(EXEEXT))
-
- ifdef DEP_TRACKING
-@@ -251,9 +248,9 @@ lib: $(OBJ)
- $(BINARY): %: %.o lib
- @$(LIBTOOL) --mode=link $(LINK.cc) -o $@ $(LIBRARY) $@.o -rpath $(libdir)
-
--$(EXIV2EXE): lib $(EXIV2OBJ) $(EXIV2COBJ)
-+$(EXIV2EXE): lib $(EXIV2OBJ) $(EXIVCOBJ)
- mkdir -pv ../bin 2>&1 > /dev/null
-- @$(LIBTOOL) --mode=link $(LINK.cc) -o ../bin/$@ $(LIBRARY) $(EXIV2OBJ) $(EXIV2COBJ) -rpath $(libdir)
-+ @$(LIBTOOL) --mode=link $(LINK.cc) -o ../bin/$@ $(LIBRARY) $(EXIV2OBJ) $(EXIVCOBJ) -rpath $(libdir)
-
- install-header:
- $(INSTALL_DIRS) $(DESTDIR)$(incdir)
-diff --git a/src/getopt_win32.c b/src/getopt_win32.c
-index fca29924..18dfcfbf 100644
---- a/src/getopt_win32.c
-+++ b/src/getopt_win32.c
-@@ -194,6 +194,10 @@ permute_args(panonopt_start, panonopt_end, opt_end, nargv)
- }
- }
-
-+#ifdef __GETOPT_DEFINE_ARGV__
-+char * const *__argv;
-+#endif
-+
- /*
- * getopt_internal --
- * Parse argc/argv argument vector. Called by user level routines.
-@@ -205,6 +209,11 @@ getopt_internal(nargc, nargv, options)
- char * const *nargv;
- const char *options;
- {
-+
-+#ifdef __GETOPT_DEFINE_ARGV__
-+ __argv=nargv;
-+#endif
-+
- char *oli; /* option letter list index */
- int optchar;
-
-diff --git a/src/getopt_win32.h b/src/getopt_win32.h
-index 6b6f643b..cd5760a3 100644
---- a/src/getopt_win32.h
-+++ b/src/getopt_win32.h
-@@ -38,6 +38,13 @@
- extern "C" {
- #endif
-
-+#if !defined(_WIN32) && !defined(__CYGWIN__) && !defined(__MINGW__) && !defined(_MSC_VER)
-+// the symbol __argv (and __argc and __progname and __env) are defined in Windows environments
-+// for *ix environments, __argv is declared here, defined: getopt_win32.c, init'd: getopt_internal()
-+#define __GETOPT_DEFINE_ARGV__
-+extern char * const *__argv;
-+#endif
-+
- extern int opterr; /* if error message should be printed */
- extern int optind; /* index into parent argv vector */
- extern int optopt; /* character checked for validity */
-diff --git a/src/utils.cpp b/src/utils.cpp
-index a3d36497..2a092330 100644
---- a/src/utils.cpp
-+++ b/src/utils.cpp
-@@ -32,18 +32,15 @@ EXIV2_RCSID("@(#) $Id$")
- #include "config.h"
-
- #include "utils.hpp"
--
--// + standard includes
--#if defined(_MSC_VER) || defined(__MINGW__)
--# include "getopt_win32.h"
--#endif
-+#include "getopt_win32.h"
-
- #if defined(_MSC_VER)
- # define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
- #endif
-
-+// + standard includes
- #ifdef EXV_HAVE_UNISTD_H
--# include <unistd.h> // for getopt(), stat()
-+# include <unistd.h> // for stat()
- #endif
-
- #include <sys/types.h>
---
-2.17.0
-
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch b/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch
deleted file mode 100644
index a594a2bfad1..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26_p20180319-CVE-2018-4868.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From ce4f575e106697c0e513091e95a7cd12ed6a488b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dan.cermak@cgc-instruments.com>
-Date: Tue, 9 Jan 2018 21:18:36 +0100
-Subject: [PATCH 1/8] Add check for DataBuf.size_ in Jp2Image::readMetadata()
-
-When parsing a subBox that is a ColorHeader, a length is extracted
-from the input file and fed directly into DataBuf() (which calls
-malloc). A crafted input file can provide arbitrarily (up to
-max(uint32_t)-8) large values and result in excessive memory
-allocation.
-
-This commit adds a check for the new size of DataBuf so that it is not
-larger than the remaining size of the file.
-
-This fixes #202 aka CVE-2018-4868
----
- src/jp2image.cpp | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/src/jp2image.cpp b/src/jp2image.cpp
-index a308bfd9..3cebc2a8 100644
---- a/src/jp2image.cpp
-+++ b/src/jp2image.cpp
-@@ -272,7 +272,12 @@ namespace Exiv2
- #endif
-
- const long pad = 3 ; // 3 padding bytes 2 0 0
-- DataBuf data(Safe::add(subBox.length, static_cast<uint32_t>(8)));
-+ const size_t data_length = Safe::add(subBox.length, static_cast<uint32_t>(8));
-+ // data_length makes no sense if it is larger than the rest of the file
-+ if (data_length > io_->size() - io_->tell()) {
-+ throw Error(58);
-+ }
-+ DataBuf data(data_length);
- io_->read(data.pData_,data.size_);
- const long iccLength = getULong(data.pData_+pad, bigEndian);
- // subtracting pad from data.size_ is safe:
---
-2.17.0
diff --git a/media-gfx/exiv2/files/exiv2-0.26_p20180319-clang-fix.patch b/media-gfx/exiv2/files/exiv2-0.26_p20180319-clang-fix.patch
deleted file mode 100644
index a80543a5ecd..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26_p20180319-clang-fix.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 176ba44cc31064183fdfbce55a7dd7e6b5e2a962 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Dan=20=C4=8Cerm=C3=A1k?= <dan.cermak@cgc-instruments.com>
-Date: Fri, 8 Jun 2018 23:46:04 +0200
-Subject: [PATCH] Fix C & C++ flag adding in CMakeLists.txt
-
----
- CMakeLists.txt | 22 ++++++++++++----------
- 1 file changed, 12 insertions(+), 10 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2e179bf5..98a172ed 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -74,21 +74,23 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/config/")
-
- if( MINGW OR UNIX )
- if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
-- ADD_DEFINITIONS(-Wall
-- -Wcast-align
-- -Wpointer-arith
-- -Wformat-security
-- -Wmissing-format-attribute
-- -Woverloaded-virtual
-- -W
-- )
-+ string(CONCAT WARNING_FLAGS " -Wall"
-+ " -Wcast-align"
-+ " -Wpointer-arith"
-+ " -Wformat-security"
-+ " -Wmissing-format-attribute"
-+ " -Woverloaded-virtual"
-+ " -W"
-+ )
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WARNING_FLAGS}")
-+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WARNING_FLAGS}")
- ENDIF()
-
- message(STATUS "Compiler info: ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) ; version: ${CMAKE_CXX_COMPILER_VERSION}")
- IF ( CYGWIN OR (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 5.0))
-- ADD_DEFINITIONS( -std=gnu++98 ) # to support snprintf
-+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++98" ) # to support snprintf
- ELSE()
-- ADD_DEFINITIONS( -std=c++98 )
-+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98" )
- ENDIF()
-
- ENDIF( MINGW OR UNIX )
\ No newline at end of file
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2019-01-18 12:40 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2019-01-18 12:40 UTC (permalink / raw
To: gentoo-commits
commit: 6193a852d7a16148e5cdbc2f69f618834df5925d
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 18 12:33:47 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Jan 18 12:39:49 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6193a852
media-gfx/exiv2: Fix USE doc
Closes: https://bugs.gentoo.org/675740
Package-Manager: Portage-2.3.56, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/exiv2-0.27.0-r2.ebuild | 17 ++++++-----------
media-gfx/exiv2/files/exiv2-0.27.0-doc.patch | 28 ++++++++++++++++++++++++++++
2 files changed, 34 insertions(+), 11 deletions(-)
diff --git a/media-gfx/exiv2/exiv2-0.27.0-r2.ebuild b/media-gfx/exiv2/exiv2-0.27.0-r2.ebuild
index 4b30b442529..80de16822e2 100644
--- a/media-gfx/exiv2/exiv2-0.27.0-r2.ebuild
+++ b/media-gfx/exiv2/exiv2-0.27.0-r2.ebuild
@@ -47,10 +47,9 @@ DOCS=( README.md doc/ChangeLog doc/cmd.txt )
S="${S}-Source"
PATCHES=(
- # pending upstream
- "${FILESDIR}"/${P}-png-broken-icc-profile.patch
- # bug 675240
- "${FILESDIR}"/${P}-fix-pkgconfig.patch
+ "${FILESDIR}"/${P}-png-broken-icc-profile.patch # pending upstream
+ "${FILESDIR}"/${P}-fix-pkgconfig.patch # bug 675240
+ "${FILESDIR}"/${P}-doc.patch # bug 675740
)
pkg_setup() {
@@ -63,11 +62,6 @@ src_prepare() {
iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
mv -f doc/cmd.txt.tmp doc/cmd.txt || die
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
cmake-utils_src_prepare
}
@@ -82,6 +76,8 @@ multilib_src_configure() {
-DEXIV2_ENABLE_WEBREADY=$(usex webready)
-DEXIV2_ENABLE_XMP=$(usex xmp)
$(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
+ -DCMAKE_INSTALL_DOCDIR=${EPREFIX}/usr/share/doc/${PF}/html
)
cmake-utils_src_configure
@@ -91,13 +87,12 @@ multilib_src_compile() {
cmake-utils_src_compile
if multilib_is_native_abi; then
- use doc && emake -j1 doc
+ use doc && eninja doc
fi
}
multilib_src_install_all() {
use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
- use doc && HTML_DOCS=( "${S}"/doc/html/. )
einstalldocs
find "${D}" -name '*.la' -delete || die
diff --git a/media-gfx/exiv2/files/exiv2-0.27.0-doc.patch b/media-gfx/exiv2/files/exiv2-0.27.0-doc.patch
new file mode 100644
index 00000000000..a57da03199c
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.0-doc.patch
@@ -0,0 +1,28 @@
+From f8f63a8b4033549d47384c6e2b1972ae1a2775fc Mon Sep 17 00:00:00 2001
+From: Andreas Schneider <asn@cryptomilk.org>
+Date: Wed, 2 Jan 2019 10:28:57 +0100
+Subject: [PATCH] cmake: Use correct installation dir for generated docs
+
+Fixes #623
+
+Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
+---
+ cmake/generateDoc.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/generateDoc.cmake b/cmake/generateDoc.cmake
+index a3aea727..16823946 100644
+--- a/cmake/generateDoc.cmake
++++ b/cmake/generateDoc.cmake
+@@ -21,7 +21,7 @@ macro(generate_documentation DOX_CONFIG_FILE)
+ set(DOXY_CONFIG "${CMAKE_CURRENT_BINARY_DIR}/doxy.config")
+ add_custom_target(doc ${DOXYGEN_EXECUTABLE} ${DOXY_CONFIG})
+
+- install(DIRECTORY "${PROJECT_BINARY_DIR}/doc/html/" DESTINATION "share/doc/lib${PROJECT_NAME}")
++ install(DIRECTORY "${PROJECT_BINARY_DIR}/doc/html/" DESTINATION ${CMAKE_INSTALL_DOCDIR})
+
+ set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES doc)
+ endmacro()
+--
+2.20.1
+
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2019-03-11 6:14 Michael Palimaka
0 siblings, 0 replies; 18+ messages in thread
From: Michael Palimaka @ 2019-03-11 6:14 UTC (permalink / raw
To: gentoo-commits
commit: d6652e1db55b96b632f0cdbf5988b4ce213146bd
Author: Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 11 06:13:48 2019 +0000
Commit: Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Mon Mar 11 06:14:00 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d6652e1d
media-gfx/exiv2: remove vulnerable 0.26_p20180811-r3
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Michael Palimaka <kensington <AT> gentoo.org>
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.26_p20180811-r3.ebuild | 123 ---------------------
media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch | 83 --------------
.../exiv2/files/exiv2-0.26-tools-optional.patch | 28 -----
4 files changed, 235 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index b8b4960b6b2..364b5bf76aa 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.26_p20180811d.tar.xz 1722216 BLAKE2B 9e1c8307eb923c340894c82c37e9f6c31d82ff1b1de3c79d4ec9b0ec9428ad1d05f945e9a4e440028335857e7fc32d50cdc5245842d743e017037bd641b654db SHA512 5453650888440028acb139a02b387eab0232551c97256ce88dd626fa4cc8800ec02ad66e093c314bbfdc60726995b6c8482572d1ffaec73a265209c98c901780
DIST exiv2-0.27.0a-Source.tar.gz 27168207 BLAKE2B 3f5c4fbe4f41c1114c0a54433c810ed0fb28ae3fbe8258eb7a02da716b833d62a94725f839accf22600c420ace5cdbead599440d335ff694a4f123820613ecd9 SHA512 9873d6815c2a87b7cdc49e8863f72c713fe1054f2f46d2c9aaa7ca2cd42096a36c2970e6a396af9000faba32fa9ff054b9d2c5e22f3e2624669440e553239f9c
diff --git a/media-gfx/exiv2/exiv2-0.26_p20180811-r3.ebuild b/media-gfx/exiv2/exiv2-0.26_p20180811-r3.ebuild
deleted file mode 100644
index bce9baadb49..00000000000
--- a/media-gfx/exiv2/exiv2-0.26_p20180811-r3.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="http://www.exiv2.org/"
-SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}d.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0/26"
-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"
-IUSE="doc examples nls png webready xmp"
-
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README doc/ChangeLog doc/cmd.txt )
-
-PATCHES=(
- # TODO: Take to upstream
- "${FILESDIR}"/${PN}-0.26-fix-docs.patch
- "${FILESDIR}"/${PN}-0.26-tools-optional.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- if [[ ${PV} != *9999 ]] ; then
- if [[ -d po ]] ; then
- pushd po > /dev/null || die
- local lang
- for lang in *.po; do
- if [[ -e ${lang} ]] \
- && ! has ${lang/.po/} ${LINGUAS-${lang/.po/}} ; then
- case ${lang} in
- CMakeLists.txt | \
- ${PN}.pot) ;;
- *) rm -r ${lang} || die ;;
- esac
- fi
- done
- popd > /dev/null || die
- else
- die "Failed to prepare LINGUAS - po directory moved?"
- fi
- fi
-
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- if use doc; then
- einfo "Updating doxygen config"
- doxygen &>/dev/null -u config/Doxyfile || die
- fi
-
- edos2unix samples/exiv2json.cpp # workaround for CVE-2017-18005 patch
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_ENABLE_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_LIBXMP=NO
- $(multilib_is_native_abi || echo -DEXIV2_ENABLE_TOOLS=NO)
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && emake -j1 doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
- use doc && HTML_DOCS=( "${S}"/doc/html/. )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch b/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
deleted file mode 100644
index 05ea18d6eb0..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
+++ /dev/null
@@ -1,83 +0,0 @@
---- a/CMakeLists.txt 2015-07-19 16:04:35.363628707 +0200
-+++ b/CMakeLists.txt 2015-07-19 16:28:31.051680136 +0200
-@@ -216,9 +216,7 @@
- ADD_SUBDIRECTORY( xmpsdk )
- ADD_SUBDIRECTORY( src )
-
--IF( EXIV2_ENABLE_BUILD_SAMPLES )
-- ADD_SUBDIRECTORY( samples )
--ENDIF( EXIV2_ENABLE_BUILD_SAMPLES )
-+ADD_SUBDIRECTORY( samples )
-
- IF( EXIV2_ENABLE_BUILD_PO )
- ADD_SUBDIRECTORY( po )
---- a/samples/CMakeLists.txt 2015-07-19 16:04:35.360628744 +0200
-+++ b/samples/CMakeLists.txt 2015-07-19 16:30:46.415987850 +0200
-@@ -21,6 +21,10 @@
- include_directories("${CMAKE_SOURCE_DIR}/include" "${CMAKE_SOURCE_DIR}/src")
-
--SET( SAMPLES addmoddel.cpp
-+SET( SAMPLES taglist.cpp )
-+
-+IF( EXIV2_ENABLE_BUILD_SAMPLES )
-+ SET( SAMPLES ${SAMPLES}
-+ addmoddel.cpp
- convert-test.cpp
- easyaccess-test.cpp
- exifcomment.cpp
-@@ -38,7 +42,6 @@
- mmap-test.cpp
- prevtest.cpp
- stringto-test.cpp
-- taglist.cpp
- tiff-test.cpp
- werror-test.cpp
- write-test.cpp
-@@ -47,6 +50,7 @@
- xmpparser-test.cpp
- xmpsample.cpp
- )
-+ENDIF()
-
- FOREACH(entry ${SAMPLES})
- STRING( REPLACE ".cpp" "" target ${entry})
-@@ -63,6 +67,7 @@
- SET( MC_SRC ${MC_SRC} ../src/getopt_win32.c )
- ENDIF( MSVC )
-
-+IF( EXIV2_ENABLE_BUILD_SAMPLES )
- SET( MC_SRC ${MC_SRC} metacopy.cpp ../src/utils.cpp )
- ADD_EXECUTABLE( metacopy ${MC_SRC} )
- TARGET_LINK_LIBRARIES( metacopy exiv2lib )
-@@ -79,6 +84,7 @@
- # ******************************************************************************
- # Man page
- INSTALL( FILES exiv2samples.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 )
-+ENDIF()
-
- # That's all Folks!
- ##
---- a/doc/templates/Makefile 2015-07-19 16:50:50.589933604 +0200
-+++ b/doc/templates/Makefile 2015-07-19 16:51:07.686719864 +0200
-@@ -143,7 +143,7 @@
- xmp_mwg-rs \
- xmp_mwg-kw
-
--TAGLIST = ../../bin/taglist
-+TAGLIST = ../../src/bin/taglist
-
- # **********************************************************************
- # ======================================================================
-diff --git a/doc/cmake_doc.sh b/doc/cmake_doc.sh
-index 44dd6760..5910a86d 100755
---- a/doc/cmake_doc.sh
-+++ b/doc/cmake_doc.sh
-@@ -16,7 +16,7 @@ if [ $# == 1 ]; then
- mv src/exv_conf.h.keep src/exv_conf.h
- fi
- mkdir -p src/bin/
-- cp -f "${CMAKE_BINARY_DIR}/bin/taglist" src/bin/
-+ cp -f "${CMAKE_BINARY_DIR}/samples/taglist" src/bin/
- make doc
- fi
-
diff --git a/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch b/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
deleted file mode 100644
index 686b37ff8b6..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- a/CMakeLists.txt 2017-06-07 00:14:25.374608170 +0200
-+++ b/CMakeLists.txt 2017-06-07 00:17:00.680483299 +0200
-@@ -60,6 +60,7 @@
- OPTION( EXIV2_ENABLE_SSH "USE Libssh for SshIo" ON )
- SET ( EXIV2_ENABLE_DYNAMIC_RUNTIME OFF )
- ENDIF()
-+OPTION( EXIV2_ENABLE_TOOLS "Build exiv2 executable" ON )
-
- # set include path for FindXXX.cmake files
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/config/")
---- a/src/CMakeLists.txt 2017-06-07 00:14:25.368608098 +0200
-+++ b/src/CMakeLists.txt 2017-06-07 00:16:06.710831682 +0200
-@@ -317,10 +317,12 @@
-
- # ******************************************************************************
- # exiv2 application
--ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
-+IF(EXIV2_ENABLE_TOOLS)
-+ ADD_EXECUTABLE( exiv2 ${EXIV2_SRC} ${EXIV2_HDR} )
- target_compile_definitions(exiv2 PRIVATE EXV_LOCALEDIR="${CMAKE_INSTALL_LOCALEDIR}" )
--TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
--INSTALL( TARGETS exiv2 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-+ TARGET_LINK_LIBRARIES( exiv2 exiv2lib ${LIBINTL_LIBRARIES} )
-+ INSTALL( TARGETS exiv2 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-+ENDIF( EXIV2_ENABLE_TOOLS )
-
- # ******************************************************************************
- # connection test application
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2019-06-23 20:58 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2019-06-23 20:58 UTC (permalink / raw
To: gentoo-commits
commit: 6853625c9ea324021f861e92b2aa94349ecc9240
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 23 20:53:41 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jun 23 20:57:29 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6853625c
media-gfx/exiv2: Fix cmake module, link targets, use libssh-config
Package-Manager: Portage-2.3.67, Repoman-2.3.15
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/exiv2-0.27.1-r1.ebuild | 108 +++++++++++++++++++
.../exiv2/files/exiv2-0.27.1-private-libs.patch | 59 ++++++++++
.../exiv2-0.27.1-restore-0.25-behaviour.patch | 119 +++++++++++++++++++++
.../exiv2-0.27.1-system-cmakemoduledir1.patch | 41 +++++++
.../exiv2-0.27.1-system-cmakemoduledir2.patch | 28 +++++
.../files/exiv2-0.27.1-system-libssh-config.patch | 93 ++++++++++++++++
6 files changed, 448 insertions(+)
diff --git a/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild b/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild
new file mode 100644
index 00000000000..8ffcb2c29e9
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} = *9999 ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ inherit git-r3
+else
+ SRC_URI="https://exiv2.org/builds/${P}-Source.tar.gz"
+ 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"
+fi
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+inherit cmake-multilib python-any-r1
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="https://www.exiv2.org/"
+
+LICENSE="GPL-2"
+SLOT="0/27"
+IUSE="doc examples nls +png webready +xmp"
+
+BDEPEND="
+ doc? (
+ ${PYTHON_DEPS}
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ nls? ( sys-devel/gettext )
+"
+DEPEND="
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
+ webready? (
+ net-libs/libssh[${MULTILIB_USEDEP}]
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( README.md doc/ChangeLog doc/cmd.txt )
+
+S="${S}-Source"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-system-cmakemoduledir{1,2}.patch
+ "${FILESDIR}"/${P}-private-libs.patch
+ "${FILESDIR}"/${P}-restore-0.25-behaviour.patch
+ "${FILESDIR}"/${P}-system-libssh-config.patch
+)
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ cmake-utils_src_prepare
+
+ sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_BUILD_SAMPLES=NO
+ -DEXIV2_BUILD_PO=$(usex nls)
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_SSH=$(usex webready)
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
+ -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_compile() {
+ cmake-utils_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && eninja doc
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch b/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch
new file mode 100644
index 00000000000..c99a19098ae
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch
@@ -0,0 +1,59 @@
+From f05d100579effd7459fd0715b26239d4cd2c9bcc Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
+Date: Sat, 4 May 2019 16:14:15 +0200
+Subject: [PATCH] CURL lib and include directories private for exiv2lib
+
+(cherry picked from commit 5d64a0b11c5a45dd9d58c56e946301f3f98942a7)
+---
+ samples/CMakeLists.txt | 14 ++++++++++++++
+ src/CMakeLists.txt | 10 +++++-----
+ 2 files changed, 19 insertions(+), 5 deletions(-)
+
+diff --git a/samples/CMakeLists.txt b/samples/CMakeLists.txt
+index a82403e3b..c3f4722df 100644
+--- a/samples/CMakeLists.txt
++++ b/samples/CMakeLists.txt
+@@ -96,6 +96,20 @@ endif()
+ add_executable(conntest conntest.cpp)
+ list(APPEND APPLICATIONS conntest)
+
++if (EXIV2_ENABLE_WEBREADY)
++ if( EXIV2_ENABLE_CURL )
++ target_include_directories(conntest SYSTEM PRIVATE ${CURL_INCLUDE_DIR} )
++ target_link_libraries(conntest PRIVATE ${CURL_LIBRARIES})
++ if (USING_CONAN)
++ target_compile_definitions(conntest PRIVATE ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
++ target_link_libraries(conntest PRIVATE ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
++ if (NOT APPLE)
++ target_link_libraries(conntest PRIVATE CONAN_PKG::OpenSSL)
++ endif()
++ endif()
++ endif()
++endif()
++
+ # ******************************************************************************
+ # remotetest application
+ add_executable(remotetest remotetest.cpp)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 976327775..d0e989d26 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -179,13 +179,13 @@ if (EXIV2_ENABLE_WEBREADY)
+ endif()
+
+ if( EXIV2_ENABLE_CURL )
+- target_include_directories(exiv2lib SYSTEM PUBLIC ${CURL_INCLUDE_DIR} )
+- target_link_libraries(exiv2lib PUBLIC ${CURL_LIBRARIES})
++ target_include_directories(exiv2lib SYSTEM PRIVATE ${CURL_INCLUDE_DIR} )
++ target_link_libraries(exiv2lib PRIVATE ${CURL_LIBRARIES})
+ if (USING_CONAN)
+- target_compile_definitions(exiv2lib PUBLIC ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
+- target_link_libraries(exiv2lib PUBLIC ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
++ target_compile_definitions(exiv2lib PRIVATE ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
++ target_link_libraries(exiv2lib PRIVATE ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
+ if (NOT APPLE)
+- target_link_libraries(exiv2lib PUBLIC CONAN_PKG::OpenSSL)
++ target_link_libraries(exiv2lib PRIVATE CONAN_PKG::OpenSSL)
+ endif()
+ endif()
+ endif()
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch b/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch
new file mode 100644
index 00000000000..2aa4d3a826f
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch
@@ -0,0 +1,119 @@
+From db870755b928cca7411a092ce12292afe9c4fa36 Mon Sep 17 00:00:00 2001
+From: clanmills <robin@clanmills.com>
+Date: Thu, 9 May 2019 11:26:29 +0100
+Subject: [PATCH] fix #818. Restore 0.25 behaviour of `$ exiv2 -g image ...`
+ to apply grep to keys.
+
+---
+ src/actions.cpp | 2 +-
+ src/exiv2.1 | 50 +++++++++++++++++--------
+ tests/bugfixes/github/test_issue_818.py | 32 ++++++++++++++++
+ 3 files changed, 67 insertions(+), 17 deletions(-)
+ create mode 100644 tests/bugfixes/github/test_issue_818.py
+
+diff --git a/src/actions.cpp b/src/actions.cpp
+index 34a7a80d5..68260186d 100644
+--- a/src/actions.cpp
++++ b/src/actions.cpp
+@@ -243,7 +243,7 @@ namespace Action {
+ int rc = 0;
+ Exiv2::PrintStructureOption option = Exiv2::kpsNone ;
+ switch (Params::instance().printMode_) {
+- case Params::pmSummary: rc = printSummary(); break;
++ case Params::pmSummary: rc = Params::instance().greps_.empty() ? printSummary() : printList(); break;
+ case Params::pmList: rc = printList(); break;
+ case Params::pmComment: rc = printComment(); break;
+ case Params::pmPreview: rc = printPreviewList(); break;
+diff --git a/src/exiv2.1 b/src/exiv2.1
+index 4f6f3b51b..048f09af7 100644
+--- a/src/exiv2.1
++++ b/src/exiv2.1
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH EXIV2 1 "Apr 25, 2019"
++.TH EXIV2 1 "May 8, 2019"
+ .\" Please adjust this date whenever revising the manpage.
+ .\"
+ .\" Some roff macros, for reference:
+@@ -222,19 +222,30 @@ Show unknown tags (default is to suppress tags which don't have a name).
+ Only keys which match the given key (grep).
+ .br
+ Multiple \fB\-g\fP options
+-can be used to grep info for several keys. Example:
++can be used to filter info to less keys. Example:
+ exiv2 -v -V -g webready -g time.
++The default exiv2 command prints a "summary report" which is quite short. When you use -g without a -pmod option, you do not get a summary report and in effect you get -g pattern -pa image ...
+
+ .nf
+-exiv2 \-g Date \-pt R.jpg
+-Exif.Image.DateTime Ascii 20 2012:08:07 16:01:05
+-Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
+-Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
++$ bin/exiv2 -g Date http://clanmills.com/Stonehenge.jpg
++Exif.Image.DateTime Ascii 20 2015:07:16 20:25:28
++Exif.Photo.DateTimeOriginal Ascii 20 2015:07:16 15:38:54
++Exif.Photo.DateTimeDigitized Ascii 20 2015:07:16 15:38:54
++Exif.NikonWt.DateDisplayFormat Byte 1 Y/M/D
++Exif.GPSInfo.GPSDateStamp Ascii 11 2015:07:16
++Xmp.xmp.ModifyDate XmpText 25 2015-07-16T20:25:28+01:00
+
+ .fi
+--g (--grep) is only applied to keys. It is not generally applied to all output such as the default -ps report.
++You may use -pmod filters to further filter output. For example:
++.nf
++
++$ bin/exiv2 -px -g Date http://clanmills.com/Stonehenge.jpg
++Xmp.xmp.ModifyDate XmpText 25 2015-07-16T20:25:28+01:00
+
+-The key may finish with the optional modifier /i to indicated case insensitive.
++.fi
++The option -g (--grep) applies to keys and not values.
++
++The key may finish with the optional modifier /i to indicate case insensitive.
+ .TP
+ .B \-K \fIkey\fP
+ Only report data for given key.
+@@ -243,8 +254,8 @@ Multiple \fB\-K\fP options can be used to report more than a single key.
+
+ .nf
+ exiv2 \-K Exif.Photo.DateTimeDigitized -K Exif.Photo.DateTimeOriginal \-pt R.jpg
+-Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
+-Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
++Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
++Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
+ .fi
+ .TP
+ .B \-n \fIenc\fP
+@@ -594,17 +605,24 @@ You obtain the lensID for your camera with the command:
+ .nf
+ .sp 1
+ $ exiv2 -pv --grep lens/i http://clanmills.com/Stonehenge.jpg
+-0x0083 Nikon3 LensType Byte 1 14
+-0x0084 Nikon3 Lens Rational 4 180/10 2500/10 35/10 63/10
+-0x008b Nikon3 LensFStops Undefined 4 55 1 12 0
+-0x000c NikonLd3 LensIDNumber Byte 1 146 <--- This number
+-0x000d NikonLd3 LensFStops Byte 1 55
++0x0083 Nikon3 LensType Byte 1 14
++0x0084 Nikon3 Lens Rational 4 180/10 2500/10 35/10 63/10
++0x008b Nikon3 LensFStops Undefined 4 55 1 12 0
++0x000c NikonLd3 LensIDNumber Byte 1 146 <--- This number
++0x000d NikonLd3 LensFStops Byte 1 55
+ .br
+ .ne 40
+ .SH EXAMPLES
+ .TP
+ exiv2 *.jpg
+-Prints a summary of the Exif information for all JPEG files in the directory.
++Prints a summary of the Exif information for all JPEG files in the directory. The summary report is rather brief and presentation does not use the Family.Group.Tag convention.
++
++If you use --grep pattern, the default becomes -pa. See -g/grep above.
++
++.nf
++$ exiv2 -g Date http://clanmills.com/Stonehenge.jpg
++
++.fi
+ .TP
+ exiv2 \-pi image.jpg
+ Prints the IPTC metadata of the image.
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch
new file mode 100644
index 00000000000..77a68437502
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch
@@ -0,0 +1,41 @@
+From 78676b2a025023ab3de2d094e0798ed64ef7df97 Mon Sep 17 00:00:00 2001
+From: Robin Mills <robin@clanmills.com>
+Date: Sat, 27 Apr 2019 11:18:22 +0100
+Subject: [PATCH] Fix #798
+
+---
+ README.md | 2 +-
+ releasenotes/CYGWIN/ReadMe.txt | 17 +----------------
+ releasenotes/Darwin/ReadMe.txt | 6 ++----
+ releasenotes/Linux/ReadMe.txt | 2 +-
+ releasenotes/MinGW/ReadMe.txt | 2 +-
+ releasenotes/msvc/ReadMe.txt | 2 +-
+ src/CMakeLists.txt | 2 +-
+ 7 files changed, 8 insertions(+), 25 deletions(-)
+
+diff --git a/README.md b/README.md
+index 6e9f50a94..92cca39e6 100644
+--- a/README.md
++++ b/README.md
+@@ -189,7 +189,7 @@ project(exifprint VERSION 0.0.1 LANGUAGES CXX)
+ set(CMAKE_CXX_STANDARD 11)
+ set(CMAKE_CXX_EXTENSIONS OFF)
+
+-find_package(exiv2 REQUIRED CONFIG NAMES exiv2) # search ${CMAKE_INSTALL_PREFIX}/lib/exiv2/cmake/
++find_package(exiv2 REQUIRED CONFIG NAMES exiv2) # search ${CMAKE_INSTALL_PREFIX}/lib/cmake/exiv2
+ add_executable(exifprint ../samples/exifprint.cpp) # compile this
+ target_link_libraries(exifprint exiv2lib) # link exiv2lib
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 340870048..976327775 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -239,7 +239,7 @@ 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")
+
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch
new file mode 100644
index 00000000000..1770449564a
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch
@@ -0,0 +1,28 @@
+From 6819f2ac456c57291f94cc1f4db13ce134eed468 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 23 Jun 2019 19:32:29 +0200
+Subject: [PATCH] Fix install path of exiv2ConfigVersion.cmake
+
+This seems to have been caused by duplicate work between master branch
+and 0.27-maintenance branch, as commit 3b48249eeb350301dfb3efa3ba6f7d7b162455be
+had already got that right.
+---
+ src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 1d0ccee4..05ce4e14 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -245,7 +245,7 @@ install(FILES
+
+ 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
+--
+2.22.0
+
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch
new file mode 100644
index 00000000000..555314ae932
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch
@@ -0,0 +1,93 @@
+From e85ce17fc91e11eff26c6f5a89125505b7db5fd3 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 23 Jun 2019 19:50:01 +0200
+Subject: [PATCH 1/2] Switch to libssh's own libssh-config.cmake
+
+This is provided by libssh since 2013.
+---
+ cmake/findDependencies.cmake | 2 +-
+ src/CMakeLists.txt | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/cmake/findDependencies.cmake b/cmake/findDependencies.cmake
+index 12d47525..52760185 100644
+--- a/cmake/findDependencies.cmake
++++ b/cmake/findDependencies.cmake
+@@ -20,7 +20,7 @@ if( EXIV2_ENABLE_WEBREADY )
+ endif()
+
+ if( EXIV2_ENABLE_SSH )
+- find_package( SSH REQUIRED)
++ find_package(libssh CONFIG REQUIRED)
+ endif( )
+ endif( )
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 1d0ccee4..b532fc7b 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -174,8 +174,8 @@ target_include_directories(exiv2lib_int PUBLIC
+ if (EXIV2_ENABLE_WEBREADY)
+
+ if( EXIV2_ENABLE_SSH )
+- target_include_directories(exiv2lib SYSTEM PUBLIC ${SSH_INCLUDE_DIR} )
+- target_link_libraries( exiv2lib PUBLIC ${SSH_LIBRARIES})
++ target_include_directories(exiv2lib SYSTEM PUBLIC ${LIBSSH_INCLUDE_DIR})
++ target_link_libraries(exiv2lib PUBLIC ${LIBSSH_LIBRARIES})
+ endif()
+
+ if( EXIV2_ENABLE_CURL )
+--
+2.22.0
+
+
+From 89d8160a410c2c526ad021fd456accc709cae520 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 23 Jun 2019 19:50:44 +0200
+Subject: [PATCH 2/2] Drop now obsolete FindSSH.cmake
+
+---
+ cmake/FindSSH.cmake | 31 -------------------------------
+ 1 file changed, 31 deletions(-)
+ delete mode 100644 cmake/FindSSH.cmake
+
+diff --git a/cmake/FindSSH.cmake b/cmake/FindSSH.cmake
+deleted file mode 100644
+index 2a6fa378..00000000
+--- a/cmake/FindSSH.cmake
++++ /dev/null
+@@ -1,31 +0,0 @@
+-# - Find libssh
+-# Find the native SSH headers and libraries.
+-#
+-# SSH_INCLUDE_DIRS - where to find libssh.h, etc.
+-# SSH_LIBRARIES - List of libraries when using libssh.
+-# SSH_FOUND - True if libssh found.
+-#
+-# Redistribution and use is allowed according to the terms of the BSD license.
+-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+-
+-# Look for the header file.
+-FIND_PATH(SSH_INCLUDE_DIR NAMES libssh/libssh.h)
+-
+-# Look for the library.
+-FIND_LIBRARY(SSH_LIBRARY NAMES ssh libssh)
+-
+-# handle the QUIETLY and REQUIRED arguments and set SSH_FOUND to TRUE if
+-# all listed variables are TRUE
+-INCLUDE(FindPackageHandleStandardArgs)
+-FIND_PACKAGE_HANDLE_STANDARD_ARGS(SSH DEFAULT_MSG SSH_LIBRARY SSH_INCLUDE_DIR)
+-
+-# Copy the results to the output variables.
+-IF(SSH_FOUND)
+- SET(SSH_LIBRARIES ${SSH_LIBRARY})
+- SET(SSH_INCLUDE_DIRS ${SSH_INCLUDE_DIR})
+-ELSE(SSH_FOUND)
+- SET(SSH_LIBRARIES)
+- SET(SSH_INCLUDE_DIRS)
+-ENDIF(SSH_FOUND)
+-
+-MARK_AS_ADVANCED(SSH_INCLUDE_DIR SSH_LIBRARY)
+--
+2.22.0
+
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2019-07-29 18:55 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2019-07-29 18:55 UTC (permalink / raw
To: gentoo-commits
commit: 610fd2a54f84a8131e3323b0bf43423eb89b99ea
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 29 18:52:15 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Jul 29 18:55:40 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=610fd2a5
media-gfx/exiv2: Drop 0.27.1-r1 and 0.27.2_rc3
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/Manifest | 2 -
media-gfx/exiv2/exiv2-0.27.1-r1.ebuild | 108 -------------------
media-gfx/exiv2/exiv2-0.27.2_rc3.ebuild | 103 ------------------
.../exiv2/files/exiv2-0.27.1-private-libs.patch | 59 ----------
.../exiv2-0.27.1-restore-0.25-behaviour.patch | 119 ---------------------
.../exiv2-0.27.1-system-cmakemoduledir1.patch | 41 -------
.../exiv2-0.27.1-system-cmakemoduledir2.patch | 28 -----
.../files/exiv2-0.27.1-system-libssh-config.patch | 93 ----------------
8 files changed, 553 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 68142c104ee..b4bb2f2a157 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,4 +1,2 @@
DIST exiv2-0.27.0a-Source.tar.gz 27168207 BLAKE2B 3f5c4fbe4f41c1114c0a54433c810ed0fb28ae3fbe8258eb7a02da716b833d62a94725f839accf22600c420ace5cdbead599440d335ff694a4f123820613ecd9 SHA512 9873d6815c2a87b7cdc49e8863f72c713fe1054f2f46d2c9aaa7ca2cd42096a36c2970e6a396af9000faba32fa9ff054b9d2c5e22f3e2624669440e553239f9c
-DIST exiv2-0.27.1-Source.tar.gz 27210365 BLAKE2B 1ce9a0b26c0908b876e35b5488fc5680789eb864376b379d9bd57977d456a5c6dc5983c4a8ef3e3558ffc061c0b7cda1d1f89a1629af920de1747fd4afbdbb39 SHA512 038b51241f5bfb323eb298695b5397a7d88d5c7d7303828e5e20b3f82c3df2615cee3e7e3426ea17438ca05d5abea10984cfd41f0649ddab72df1d1415bf3529
DIST exiv2-0.27.2-Source.tar.gz 27591236 BLAKE2B bd10d71356e4c8a465b71f8ceac07fbf2fd6cfb287cb22774568ad35eb38200be504e297224920af50a15ab4e9da98384ff4da7c33713f5346b33738380698b0 SHA512 39eb7d920dce18b275ac66f4766c7c73f7c72ee10e3e1e43d84c611b24f48ce20a70eac6d53948914e93242a25b8b52cc4bc760ee611ddcd77481306c1f9e721
-DIST exiv2-0.27.2_rc3.tar.gz 27291247 BLAKE2B 72825a50fbafe4eed4ab4a12e135b22bc8a4ef66736dd22794d73e6b1789a3a4da3037dc292948561b7affc33ac1c577ba259b6d4173aa5bd5a640bb7b3dcaef SHA512 3af8ee5f6bc9fcd5e1451ef8750861a79da4aa7c31ceb00d3a659000fc0c939c5adc809b8e37936587212707a8b2b529d30cafce55d35f8baf8eedb1a017e2e6
diff --git a/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild b/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild
deleted file mode 100644
index 8ffcb2c29e9..00000000000
--- a/media-gfx/exiv2/exiv2-0.27.1-r1.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- inherit git-r3
-else
- SRC_URI="https://exiv2.org/builds/${P}-Source.tar.gz"
- 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"
-fi
-
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="https://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/27"
-IUSE="doc examples nls +png webready +xmp"
-
-BDEPEND="
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-DEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
-"
-RDEPEND="${DEPEND}"
-
-DOCS=( README.md doc/ChangeLog doc/cmd.txt )
-
-S="${S}-Source"
-
-PATCHES=(
- "${FILESDIR}"/${P}-system-cmakemoduledir{1,2}.patch
- "${FILESDIR}"/${P}-private-libs.patch
- "${FILESDIR}"/${P}-restore-0.25-behaviour.patch
- "${FILESDIR}"/${P}-system-libssh-config.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- cmake-utils_src_prepare
-
- sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_BUILD_SAMPLES=NO
- -DEXIV2_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
- -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && eninja doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/exiv2-0.27.2_rc3.ebuild b/media-gfx/exiv2/exiv2-0.27.2_rc3.ebuild
deleted file mode 100644
index 2adb54834e7..00000000000
--- a/media-gfx/exiv2/exiv2-0.27.2_rc3.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- inherit git-r3
-else
-# SRC_URI="https://exiv2.org/builds/${P}-Source.tar.gz"
- SRC_URI="https://github.com/Exiv2/${PN}/archive/v${PV/_rc/-RC}.tar.gz -> ${P}.tar.gz"
- 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"
-fi
-
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="https://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/27"
-IUSE="doc examples nls +png webready +xmp"
-
-BDEPEND="
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-DEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
-"
-RDEPEND="${DEPEND}"
-
-DOCS=( README.md doc/ChangeLog doc/cmd.txt )
-
-# S="${S}-Source"
-S="${WORKDIR}/${P/_rc/-RC}"
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- cmake-utils_src_prepare
-
- sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_BUILD_SAMPLES=NO
- -DEXIV2_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
- -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
- )
-
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- if multilib_is_native_abi; then
- use doc && eninja doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch b/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch
deleted file mode 100644
index c99a19098ae..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.1-private-libs.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From f05d100579effd7459fd0715b26239d4cd2c9bcc Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Luis=20D=C3=ADaz=20M=C3=A1s?= <piponazo@gmail.com>
-Date: Sat, 4 May 2019 16:14:15 +0200
-Subject: [PATCH] CURL lib and include directories private for exiv2lib
-
-(cherry picked from commit 5d64a0b11c5a45dd9d58c56e946301f3f98942a7)
----
- samples/CMakeLists.txt | 14 ++++++++++++++
- src/CMakeLists.txt | 10 +++++-----
- 2 files changed, 19 insertions(+), 5 deletions(-)
-
-diff --git a/samples/CMakeLists.txt b/samples/CMakeLists.txt
-index a82403e3b..c3f4722df 100644
---- a/samples/CMakeLists.txt
-+++ b/samples/CMakeLists.txt
-@@ -96,6 +96,20 @@ endif()
- add_executable(conntest conntest.cpp)
- list(APPEND APPLICATIONS conntest)
-
-+if (EXIV2_ENABLE_WEBREADY)
-+ if( EXIV2_ENABLE_CURL )
-+ target_include_directories(conntest SYSTEM PRIVATE ${CURL_INCLUDE_DIR} )
-+ target_link_libraries(conntest PRIVATE ${CURL_LIBRARIES})
-+ if (USING_CONAN)
-+ target_compile_definitions(conntest PRIVATE ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
-+ target_link_libraries(conntest PRIVATE ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
-+ if (NOT APPLE)
-+ target_link_libraries(conntest PRIVATE CONAN_PKG::OpenSSL)
-+ endif()
-+ endif()
-+ endif()
-+endif()
-+
- # ******************************************************************************
- # remotetest application
- add_executable(remotetest remotetest.cpp)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 976327775..d0e989d26 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -179,13 +179,13 @@ if (EXIV2_ENABLE_WEBREADY)
- endif()
-
- if( EXIV2_ENABLE_CURL )
-- target_include_directories(exiv2lib SYSTEM PUBLIC ${CURL_INCLUDE_DIR} )
-- target_link_libraries(exiv2lib PUBLIC ${CURL_LIBRARIES})
-+ target_include_directories(exiv2lib SYSTEM PRIVATE ${CURL_INCLUDE_DIR} )
-+ target_link_libraries(exiv2lib PRIVATE ${CURL_LIBRARIES})
- if (USING_CONAN)
-- target_compile_definitions(exiv2lib PUBLIC ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
-- target_link_libraries(exiv2lib PUBLIC ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
-+ target_compile_definitions(exiv2lib PRIVATE ${CONAN_COMPILE_DEFINITIONS_LIBCURL})
-+ target_link_libraries(exiv2lib PRIVATE ${CONAN_EXE_LINKER_FLAGS_LIBCURL})
- if (NOT APPLE)
-- target_link_libraries(exiv2lib PUBLIC CONAN_PKG::OpenSSL)
-+ target_link_libraries(exiv2lib PRIVATE CONAN_PKG::OpenSSL)
- endif()
- endif()
- endif()
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch b/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch
deleted file mode 100644
index 2aa4d3a826f..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.1-restore-0.25-behaviour.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From db870755b928cca7411a092ce12292afe9c4fa36 Mon Sep 17 00:00:00 2001
-From: clanmills <robin@clanmills.com>
-Date: Thu, 9 May 2019 11:26:29 +0100
-Subject: [PATCH] fix #818. Restore 0.25 behaviour of `$ exiv2 -g image ...`
- to apply grep to keys.
-
----
- src/actions.cpp | 2 +-
- src/exiv2.1 | 50 +++++++++++++++++--------
- tests/bugfixes/github/test_issue_818.py | 32 ++++++++++++++++
- 3 files changed, 67 insertions(+), 17 deletions(-)
- create mode 100644 tests/bugfixes/github/test_issue_818.py
-
-diff --git a/src/actions.cpp b/src/actions.cpp
-index 34a7a80d5..68260186d 100644
---- a/src/actions.cpp
-+++ b/src/actions.cpp
-@@ -243,7 +243,7 @@ namespace Action {
- int rc = 0;
- Exiv2::PrintStructureOption option = Exiv2::kpsNone ;
- switch (Params::instance().printMode_) {
-- case Params::pmSummary: rc = printSummary(); break;
-+ case Params::pmSummary: rc = Params::instance().greps_.empty() ? printSummary() : printList(); break;
- case Params::pmList: rc = printList(); break;
- case Params::pmComment: rc = printComment(); break;
- case Params::pmPreview: rc = printPreviewList(); break;
-diff --git a/src/exiv2.1 b/src/exiv2.1
-index 4f6f3b51b..048f09af7 100644
---- a/src/exiv2.1
-+++ b/src/exiv2.1
-@@ -2,7 +2,7 @@
- .\" First parameter, NAME, should be all caps
- .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
- .\" other parameters are allowed: see man(7), man(1)
--.TH EXIV2 1 "Apr 25, 2019"
-+.TH EXIV2 1 "May 8, 2019"
- .\" Please adjust this date whenever revising the manpage.
- .\"
- .\" Some roff macros, for reference:
-@@ -222,19 +222,30 @@ Show unknown tags (default is to suppress tags which don't have a name).
- Only keys which match the given key (grep).
- .br
- Multiple \fB\-g\fP options
--can be used to grep info for several keys. Example:
-+can be used to filter info to less keys. Example:
- exiv2 -v -V -g webready -g time.
-+The default exiv2 command prints a "summary report" which is quite short. When you use -g without a -pmod option, you do not get a summary report and in effect you get -g pattern -pa image ...
-
- .nf
--exiv2 \-g Date \-pt R.jpg
--Exif.Image.DateTime Ascii 20 2012:08:07 16:01:05
--Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
--Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
-+$ bin/exiv2 -g Date http://clanmills.com/Stonehenge.jpg
-+Exif.Image.DateTime Ascii 20 2015:07:16 20:25:28
-+Exif.Photo.DateTimeOriginal Ascii 20 2015:07:16 15:38:54
-+Exif.Photo.DateTimeDigitized Ascii 20 2015:07:16 15:38:54
-+Exif.NikonWt.DateDisplayFormat Byte 1 Y/M/D
-+Exif.GPSInfo.GPSDateStamp Ascii 11 2015:07:16
-+Xmp.xmp.ModifyDate XmpText 25 2015-07-16T20:25:28+01:00
-
- .fi
---g (--grep) is only applied to keys. It is not generally applied to all output such as the default -ps report.
-+You may use -pmod filters to further filter output. For example:
-+.nf
-+
-+$ bin/exiv2 -px -g Date http://clanmills.com/Stonehenge.jpg
-+Xmp.xmp.ModifyDate XmpText 25 2015-07-16T20:25:28+01:00
-
--The key may finish with the optional modifier /i to indicated case insensitive.
-+.fi
-+The option -g (--grep) applies to keys and not values.
-+
-+The key may finish with the optional modifier /i to indicate case insensitive.
- .TP
- .B \-K \fIkey\fP
- Only report data for given key.
-@@ -243,8 +254,8 @@ Multiple \fB\-K\fP options can be used to report more than a single key.
-
- .nf
- exiv2 \-K Exif.Photo.DateTimeDigitized -K Exif.Photo.DateTimeOriginal \-pt R.jpg
--Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
--Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
-+Exif.Photo.DateTimeOriginal Ascii 20 2011:09:18 16:25:48
-+Exif.Photo.DateTimeDigitized Ascii 20 2011:09:18 16:25:48
- .fi
- .TP
- .B \-n \fIenc\fP
-@@ -594,17 +605,24 @@ You obtain the lensID for your camera with the command:
- .nf
- .sp 1
- $ exiv2 -pv --grep lens/i http://clanmills.com/Stonehenge.jpg
--0x0083 Nikon3 LensType Byte 1 14
--0x0084 Nikon3 Lens Rational 4 180/10 2500/10 35/10 63/10
--0x008b Nikon3 LensFStops Undefined 4 55 1 12 0
--0x000c NikonLd3 LensIDNumber Byte 1 146 <--- This number
--0x000d NikonLd3 LensFStops Byte 1 55
-+0x0083 Nikon3 LensType Byte 1 14
-+0x0084 Nikon3 Lens Rational 4 180/10 2500/10 35/10 63/10
-+0x008b Nikon3 LensFStops Undefined 4 55 1 12 0
-+0x000c NikonLd3 LensIDNumber Byte 1 146 <--- This number
-+0x000d NikonLd3 LensFStops Byte 1 55
- .br
- .ne 40
- .SH EXAMPLES
- .TP
- exiv2 *.jpg
--Prints a summary of the Exif information for all JPEG files in the directory.
-+Prints a summary of the Exif information for all JPEG files in the directory. The summary report is rather brief and presentation does not use the Family.Group.Tag convention.
-+
-+If you use --grep pattern, the default becomes -pa. See -g/grep above.
-+
-+.nf
-+$ exiv2 -g Date http://clanmills.com/Stonehenge.jpg
-+
-+.fi
- .TP
- exiv2 \-pi image.jpg
- Prints the IPTC metadata of the image.
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch
deleted file mode 100644
index 77a68437502..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir1.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 78676b2a025023ab3de2d094e0798ed64ef7df97 Mon Sep 17 00:00:00 2001
-From: Robin Mills <robin@clanmills.com>
-Date: Sat, 27 Apr 2019 11:18:22 +0100
-Subject: [PATCH] Fix #798
-
----
- README.md | 2 +-
- releasenotes/CYGWIN/ReadMe.txt | 17 +----------------
- releasenotes/Darwin/ReadMe.txt | 6 ++----
- releasenotes/Linux/ReadMe.txt | 2 +-
- releasenotes/MinGW/ReadMe.txt | 2 +-
- releasenotes/msvc/ReadMe.txt | 2 +-
- src/CMakeLists.txt | 2 +-
- 7 files changed, 8 insertions(+), 25 deletions(-)
-
-diff --git a/README.md b/README.md
-index 6e9f50a94..92cca39e6 100644
---- a/README.md
-+++ b/README.md
-@@ -189,7 +189,7 @@ project(exifprint VERSION 0.0.1 LANGUAGES CXX)
- set(CMAKE_CXX_STANDARD 11)
- set(CMAKE_CXX_EXTENSIONS OFF)
-
--find_package(exiv2 REQUIRED CONFIG NAMES exiv2) # search ${CMAKE_INSTALL_PREFIX}/lib/exiv2/cmake/
-+find_package(exiv2 REQUIRED CONFIG NAMES exiv2) # search ${CMAKE_INSTALL_PREFIX}/lib/cmake/exiv2
- add_executable(exifprint ../samples/exifprint.cpp) # compile this
- target_link_libraries(exifprint exiv2lib) # link exiv2lib
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 340870048..976327775 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -239,7 +239,7 @@ 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")
-
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch
deleted file mode 100644
index 1770449564a..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.1-system-cmakemoduledir2.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 6819f2ac456c57291f94cc1f4db13ce134eed468 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sun, 23 Jun 2019 19:32:29 +0200
-Subject: [PATCH] Fix install path of exiv2ConfigVersion.cmake
-
-This seems to have been caused by duplicate work between master branch
-and 0.27-maintenance branch, as commit 3b48249eeb350301dfb3efa3ba6f7d7b162455be
-had already got that right.
----
- src/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 1d0ccee4..05ce4e14 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -245,7 +245,7 @@ install(FILES
-
- 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
---
-2.22.0
-
diff --git a/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch b/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch
deleted file mode 100644
index 555314ae932..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.1-system-libssh-config.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From e85ce17fc91e11eff26c6f5a89125505b7db5fd3 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sun, 23 Jun 2019 19:50:01 +0200
-Subject: [PATCH 1/2] Switch to libssh's own libssh-config.cmake
-
-This is provided by libssh since 2013.
----
- cmake/findDependencies.cmake | 2 +-
- src/CMakeLists.txt | 4 ++--
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/cmake/findDependencies.cmake b/cmake/findDependencies.cmake
-index 12d47525..52760185 100644
---- a/cmake/findDependencies.cmake
-+++ b/cmake/findDependencies.cmake
-@@ -20,7 +20,7 @@ if( EXIV2_ENABLE_WEBREADY )
- endif()
-
- if( EXIV2_ENABLE_SSH )
-- find_package( SSH REQUIRED)
-+ find_package(libssh CONFIG REQUIRED)
- endif( )
- endif( )
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 1d0ccee4..b532fc7b 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -174,8 +174,8 @@ target_include_directories(exiv2lib_int PUBLIC
- if (EXIV2_ENABLE_WEBREADY)
-
- if( EXIV2_ENABLE_SSH )
-- target_include_directories(exiv2lib SYSTEM PUBLIC ${SSH_INCLUDE_DIR} )
-- target_link_libraries( exiv2lib PUBLIC ${SSH_LIBRARIES})
-+ target_include_directories(exiv2lib SYSTEM PUBLIC ${LIBSSH_INCLUDE_DIR})
-+ target_link_libraries(exiv2lib PUBLIC ${LIBSSH_LIBRARIES})
- endif()
-
- if( EXIV2_ENABLE_CURL )
---
-2.22.0
-
-
-From 89d8160a410c2c526ad021fd456accc709cae520 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Sun, 23 Jun 2019 19:50:44 +0200
-Subject: [PATCH 2/2] Drop now obsolete FindSSH.cmake
-
----
- cmake/FindSSH.cmake | 31 -------------------------------
- 1 file changed, 31 deletions(-)
- delete mode 100644 cmake/FindSSH.cmake
-
-diff --git a/cmake/FindSSH.cmake b/cmake/FindSSH.cmake
-deleted file mode 100644
-index 2a6fa378..00000000
---- a/cmake/FindSSH.cmake
-+++ /dev/null
-@@ -1,31 +0,0 @@
--# - Find libssh
--# Find the native SSH headers and libraries.
--#
--# SSH_INCLUDE_DIRS - where to find libssh.h, etc.
--# SSH_LIBRARIES - List of libraries when using libssh.
--# SSH_FOUND - True if libssh found.
--#
--# Redistribution and use is allowed according to the terms of the BSD license.
--# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
--
--# Look for the header file.
--FIND_PATH(SSH_INCLUDE_DIR NAMES libssh/libssh.h)
--
--# Look for the library.
--FIND_LIBRARY(SSH_LIBRARY NAMES ssh libssh)
--
--# handle the QUIETLY and REQUIRED arguments and set SSH_FOUND to TRUE if
--# all listed variables are TRUE
--INCLUDE(FindPackageHandleStandardArgs)
--FIND_PACKAGE_HANDLE_STANDARD_ARGS(SSH DEFAULT_MSG SSH_LIBRARY SSH_INCLUDE_DIR)
--
--# Copy the results to the output variables.
--IF(SSH_FOUND)
-- SET(SSH_LIBRARIES ${SSH_LIBRARY})
-- SET(SSH_INCLUDE_DIRS ${SSH_INCLUDE_DIR})
--ELSE(SSH_FOUND)
-- SET(SSH_LIBRARIES)
-- SET(SSH_INCLUDE_DIRS)
--ENDIF(SSH_FOUND)
--
--MARK_AS_ADVANCED(SSH_INCLUDE_DIR SSH_LIBRARY)
---
-2.22.0
-
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2019-11-14 15:59 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2019-11-14 15:59 UTC (permalink / raw
To: gentoo-commits
commit: 74f4ec456198c500f81f8294da29b1a2f9daee71
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 14 14:08:25 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 14 15:59:35 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74f4ec45
media-gfx/exiv2: Fix build against >=net-libs/libssh-0.9.2
Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/exiv2-0.27.2.ebuild | 2 +
.../exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch | 56 ++++++++++++++++++++++
2 files changed, 58 insertions(+)
diff --git a/media-gfx/exiv2/exiv2-0.27.2.ebuild b/media-gfx/exiv2/exiv2-0.27.2.ebuild
index e70d4f902f1..3d6060c5535 100644
--- a/media-gfx/exiv2/exiv2-0.27.2.ebuild
+++ b/media-gfx/exiv2/exiv2-0.27.2.ebuild
@@ -45,6 +45,8 @@ RDEPEND="${DEPEND}"
DOCS=( README.md doc/ChangeLog doc/cmd.txt )
+PATCHES=( "${FILESDIR}/${P}-libssh-0.9.2.patch" )
+
S="${S}-Source"
pkg_setup() {
diff --git a/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch b/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch
new file mode 100644
index 00000000000..abf165b83f4
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch
@@ -0,0 +1,56 @@
+From c59eb810728572fde84492d43a932dcac89746d6 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 14 Nov 2019 15:06:38 +0100
+Subject: [PATCH] EXIV2_ENABLE_SSH: Fix compatibility with >=libssh-0.9.2
+
+0.9.1 remains broken regardless and is beyond fixing in this place.
+
+Build-tested with both libssh 0.9.0 and 0.9.2.
+
+Solution copied from KDE's kio-extras commit 24506c2af8d1904a99538543804306c6c2b81ca2
+---
+ cmake/findDependencies.cmake | 13 +++++++++++--
+ src/CMakeLists.txt | 3 +--
+ 2 files changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/cmake/findDependencies.cmake b/cmake/findDependencies.cmake
+index a458a0c9..ec3a43f5 100644
+--- a/cmake/findDependencies.cmake
++++ b/cmake/findDependencies.cmake
+@@ -26,8 +26,17 @@ if( EXIV2_ENABLE_WEBREADY )
+
+ if( EXIV2_ENABLE_SSH )
+ find_package(libssh CONFIG REQUIRED)
+- endif( )
+-endif( )
++ # Define an imported target to have compatibility with <=libssh-0.9.0
++ # libssh-0.9.1 is broken regardless.
++ if(NOT TARGET ssh)
++ add_library(ssh SHARED IMPORTED)
++ set_target_properties(ssh PROPERTIES
++ IMPORTED_LOCATION "${LIBSSH_LIBRARIES}"
++ INTERFACE_INCLUDE_DIRECTORIES "${LIBSSH_INCLUDE_DIR}"
++ )
++ endif()
++ endif()
++endif()
+
+ if (EXIV2_ENABLE_XMP AND EXIV2_ENABLE_EXTERNAL_XMP)
+ message(FATAL_ERROR "EXIV2_ENABLE_XMP AND EXIV2_ENABLE_EXTERNAL_XMP are mutually exclusive. You can only choose one of them")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 27f8dbb1..bdd83fa0 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -173,8 +173,7 @@ target_include_directories(exiv2lib_int PUBLIC
+ if (EXIV2_ENABLE_WEBREADY)
+
+ if( EXIV2_ENABLE_SSH )
+- target_include_directories(exiv2lib SYSTEM PUBLIC ${LIBSSH_INCLUDE_DIR})
+- target_link_libraries(exiv2lib PUBLIC ${LIBSSH_LIBRARIES})
++ target_link_libraries(exiv2lib PUBLIC ssh)
+ endif()
+
+ if( EXIV2_ENABLE_CURL )
+--
+2.24.0
+
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2020-07-18 8:41 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2020-07-18 8:41 UTC (permalink / raw
To: gentoo-commits
commit: 3d590f5ec305ccd3c2bb60f38f0fd47167f4dd3e
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 18 01:00:22 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Jul 18 08:31:58 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d590f5e
media-gfx/exiv2: Drop vulnerable 0.27.2
Bug: https://bugs.gentoo.org/701902
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.27.2.ebuild | 104 ---------------------
.../exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch | 56 -----------
3 files changed, 161 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 4946e9e6a68..53c6bf2b073 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.27.2-Source.tar.gz 27591236 BLAKE2B bd10d71356e4c8a465b71f8ceac07fbf2fd6cfb287cb22774568ad35eb38200be504e297224920af50a15ab4e9da98384ff4da7c33713f5346b33738380698b0 SHA512 39eb7d920dce18b275ac66f4766c7c73f7c72ee10e3e1e43d84c611b24f48ce20a70eac6d53948914e93242a25b8b52cc4bc760ee611ddcd77481306c1f9e721
DIST exiv2-0.27.3-Source.tar.gz 26447901 BLAKE2B ac13e6d8fce83923278cfeb628f143310a3c62b42936c8ed8b302a2c3df4c36f5666fa749adfb1d745e42da8f519762532e6fc281993aa55bcd7ce56e08c6e3e SHA512 3f5758ee862b811eeb89cc75fc2bbd8bf10329efa2ce1e68555cdc7729faa6cfd1603e0cc859fbdbe6d8fd5e53bd9b9e6d869d8a20ed17497bf87ce78c005de9
diff --git a/media-gfx/exiv2/exiv2-0.27.2.ebuild b/media-gfx/exiv2/exiv2-0.27.2.ebuild
deleted file mode 100644
index fff1d66eeb2..00000000000
--- a/media-gfx/exiv2/exiv2-0.27.2.ebuild
+++ /dev/null
@@ -1,104 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- inherit git-r3
-else
- SRC_URI="https://exiv2.org/builds/${P}-Source.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
-fi
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{6,7} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="https://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/27"
-IUSE="doc examples nls +png webready +xmp"
-
-BDEPEND="
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-DEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- webready? (
- net-libs/libssh[${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
-"
-RDEPEND="${DEPEND}"
-
-DOCS=( README.md doc/ChangeLog doc/cmd.txt )
-
-PATCHES=( "${FILESDIR}/${P}-libssh-0.9.2.patch" )
-
-S="${S}-Source"
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- cmake_src_prepare
-
- sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_BUILD_SAMPLES=NO
- -DEXIV2_BUILD_PO=$(usex nls)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
- -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
- )
-
- cmake_src_configure
-}
-
-multilib_src_compile() {
- cmake_src_compile
-
- if multilib_is_native_abi; then
- use doc && eninja doc
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch b/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch
deleted file mode 100644
index abf165b83f4..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.2-libssh-0.9.2.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From c59eb810728572fde84492d43a932dcac89746d6 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <asturm@gentoo.org>
-Date: Thu, 14 Nov 2019 15:06:38 +0100
-Subject: [PATCH] EXIV2_ENABLE_SSH: Fix compatibility with >=libssh-0.9.2
-
-0.9.1 remains broken regardless and is beyond fixing in this place.
-
-Build-tested with both libssh 0.9.0 and 0.9.2.
-
-Solution copied from KDE's kio-extras commit 24506c2af8d1904a99538543804306c6c2b81ca2
----
- cmake/findDependencies.cmake | 13 +++++++++++--
- src/CMakeLists.txt | 3 +--
- 2 files changed, 12 insertions(+), 4 deletions(-)
-
-diff --git a/cmake/findDependencies.cmake b/cmake/findDependencies.cmake
-index a458a0c9..ec3a43f5 100644
---- a/cmake/findDependencies.cmake
-+++ b/cmake/findDependencies.cmake
-@@ -26,8 +26,17 @@ if( EXIV2_ENABLE_WEBREADY )
-
- if( EXIV2_ENABLE_SSH )
- find_package(libssh CONFIG REQUIRED)
-- endif( )
--endif( )
-+ # Define an imported target to have compatibility with <=libssh-0.9.0
-+ # libssh-0.9.1 is broken regardless.
-+ if(NOT TARGET ssh)
-+ add_library(ssh SHARED IMPORTED)
-+ set_target_properties(ssh PROPERTIES
-+ IMPORTED_LOCATION "${LIBSSH_LIBRARIES}"
-+ INTERFACE_INCLUDE_DIRECTORIES "${LIBSSH_INCLUDE_DIR}"
-+ )
-+ endif()
-+ endif()
-+endif()
-
- if (EXIV2_ENABLE_XMP AND EXIV2_ENABLE_EXTERNAL_XMP)
- message(FATAL_ERROR "EXIV2_ENABLE_XMP AND EXIV2_ENABLE_EXTERNAL_XMP are mutually exclusive. You can only choose one of them")
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 27f8dbb1..bdd83fa0 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -173,8 +173,7 @@ target_include_directories(exiv2lib_int PUBLIC
- if (EXIV2_ENABLE_WEBREADY)
-
- if( EXIV2_ENABLE_SSH )
-- target_include_directories(exiv2lib SYSTEM PUBLIC ${LIBSSH_INCLUDE_DIR})
-- target_link_libraries(exiv2lib PUBLIC ${LIBSSH_LIBRARIES})
-+ target_link_libraries(exiv2lib PUBLIC ssh)
- endif()
-
- if( EXIV2_ENABLE_CURL )
---
-2.24.0
-
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2021-11-10 10:45 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2021-11-10 10:45 UTC (permalink / raw
To: gentoo-commits
commit: 8034036cc6039af965de8da3d0439c88e407371b
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 10 10:44:48 2021 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Nov 10 10:44:48 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8034036c
media-gfx/exiv2: Cleanup vulnerable 0.27.4-r2
Bug: https://bugs.gentoo.org/807346
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.27.4-r2.ebuild | 116 ---------------------
.../exiv2/files/exiv2-0.27.4-gtest-1.11.patch | 32 ------
3 files changed, 149 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 88b7a7c4f8d..a9c896be4e0 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.27.4-Source.tar.gz 32055837 BLAKE2B 9c31c08fafb38895fa7812a8c7a195335e80a6b9c15f7b5f3750f5ab30903c4c3bbf9aee5a7293a7d437d15a49a9cb7b45a3133cbb36ee62081efae0dd67b61a SHA512 f6798baafb36a54ba5bc65c2d28d4f4469e298582c90b417eb437b5dbda8e11963fb3314e8419717b3815ee8c3a68955cddc79e45351d9f2c165a0b73eb7b7be
DIST exiv2-0.27.5-Source.tar.gz 32720608 BLAKE2B 803cb853fd049b28d309952c2332589a8544ff90c16fc1a588b6f1a2d4ae5e96da7ae746cf2247954ac54e155b84e0ad1f4f2d89f22d07e7bbd34038f0e292a5 SHA512 0f2d2dfbc976052a428dfeb597225d3ea3c725f584d05b99316bd4aa9cbf0ba5e1e37bcde71f9041975cf003b4fdb578c559adb144268d784bfd64494f451491
diff --git a/media-gfx/exiv2/exiv2-0.27.4-r2.ebuild b/media-gfx/exiv2/exiv2-0.27.4-r2.ebuild
deleted file mode 100644
index 7acbc098873..00000000000
--- a/media-gfx/exiv2/exiv2-0.27.4-r2.ebuild
+++ /dev/null
@@ -1,116 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-if [[ ${PV} = *9999 ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- inherit git-r3
-else
- SRC_URI="https://exiv2.org/builds/${P}-Source.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
- S="${WORKDIR}/${P}-Source"
-fi
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="https://www.exiv2.org/"
-
-LICENSE="GPL-2"
-SLOT="0/27"
-IUSE="+bmff doc examples nls +png test webready +xmp"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- doc? (
- ${PYTHON_DEPS}
- app-doc/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- nls? ( sys-devel/gettext )
-"
-RDEPEND="
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- webready? (
- >net-libs/libssh-0.9.1[sftp,${MULTILIB_USEDEP}]
- net-misc/curl[${MULTILIB_USEDEP}]
- )
- xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
-"
-DEPEND="${DEPEND}
- test? ( dev-cpp/gtest )"
-
-DOCS=( README.md doc/ChangeLog doc/cmd.txt )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.27.4-gtest-1.11.patch
-)
-
-pkg_setup() {
- use doc && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- cmake_src_prepare
-
- sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DCMAKE_CXX_STANDARD=14
- -DEXIV2_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_SSH=$(usex webready)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_BMFF=$(usex bmff)
- $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_UNIT_TESTS=$(usex test))
- -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
- )
-
- cmake_src_configure
-}
-
-multilib_src_compile() {
- cmake_src_compile
-
- if multilib_is_native_abi; then
- use doc && eninja doc
- fi
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- cd "${BUILD_DIR}"/bin || die
- ./unit_tests || die "Failed to run tests"
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.27.4-gtest-1.11.patch b/media-gfx/exiv2/files/exiv2-0.27.4-gtest-1.11.patch
deleted file mode 100644
index bb368d367cb..00000000000
--- a/media-gfx/exiv2/files/exiv2-0.27.4-gtest-1.11.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://github.com/Exiv2/exiv2/pull/1722
-
-From f01805f68eb19f56b0415a50a1128cbbdd82bff4 Mon Sep 17 00:00:00 2001
-From: Antonio Rojas <arojas@archlinux.org>
-Date: Fri, 18 Jun 2021 18:53:46 +0200
-Subject: [PATCH] Fix build with gtest 1.11
-
-INSTANTIATE_TYPED_TEST_CASE_P requires a non-empty prefix now
----
- unitTests/test_slice.cpp | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/unitTests/test_slice.cpp b/unitTests/test_slice.cpp
-index ccf80d98d..59171cfcf 100644
---- a/unitTests/test_slice.cpp
-+++ b/unitTests/test_slice.cpp
-@@ -440,12 +440,12 @@ REGISTER_TYPED_TEST_CASE_P(slice, atAccess, iteratorAccess, constructionFailsFro
- constMethodsPreserveConst);
-
- typedef ::testing::Types<const std::vector<int>, std::vector<int>, int*, const int*> test_types_t;
--INSTANTIATE_TYPED_TEST_CASE_P(, slice, test_types_t);
-+INSTANTIATE_TYPED_TEST_CASE_P(slice, slice, test_types_t);
-
- REGISTER_TYPED_TEST_CASE_P(mutableSlice, iterators, at);
- typedef ::testing::Types<std::vector<int>, int*> mut_test_types_t;
--INSTANTIATE_TYPED_TEST_CASE_P(, mutableSlice, mut_test_types_t);
-+INSTANTIATE_TYPED_TEST_CASE_P(slice, mutableSlice, mut_test_types_t);
-
- REGISTER_TYPED_TEST_CASE_P(dataBufSlice, successfulConstruction, failedConstruction);
- typedef ::testing::Types<DataBuf&, const DataBuf&> data_buf_types_t;
--INSTANTIATE_TYPED_TEST_CASE_P(, dataBufSlice, data_buf_types_t);
-+INSTANTIATE_TYPED_TEST_CASE_P(slice, dataBufSlice, data_buf_types_t);
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2023-11-21 22:36 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2023-11-21 22:36 UTC (permalink / raw
To: gentoo-commits
commit: 66125082f84df7dfc165559b8f0c1dffaf41582f
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 21 20:13:25 2023 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Nov 21 22:19:56 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=66125082
media-gfx/exiv2: Restore exiv2lib target
Closes: https://bugs.gentoo.org/917483
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/exiv2-0.28.1-r1.ebuild | 132 ++++++++++++++++++++++
media-gfx/exiv2/files/exiv2-0.28.1-exiv2lib.patch | 31 +++++
2 files changed, 163 insertions(+)
diff --git a/media-gfx/exiv2/exiv2-0.28.1-r1.ebuild b/media-gfx/exiv2/exiv2-0.28.1-r1.ebuild
new file mode 100644
index 000000000000..a099676b0818
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.28.1-r1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit cmake-multilib python-any-r1
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="https://exiv2.org/"
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/Exiv2/exiv2/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+# Upstream hope to have stable ABI in 1.0. Until then, go off ${PV}.
+# We may be able to change it to $(ver_cut 1-2) once e.g.
+# https://github.com/Exiv2/exiv2/pull/917 is merged.
+SLOT="0/$(ver_cut 1-2)"
+IUSE="+bmff doc examples nls +png test webready +xmp"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
+ webready? (
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+"
+DEPEND="
+ ${DEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ doc? (
+ ${PYTHON_DEPS}
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ test? ( ${PYTHON_DEPS} )
+ nls? ( sys-devel/gettext )
+"
+
+DOCS=( README.md doc/ChangeLog doc/cmd.txt )
+
+# https://github.com/Exiv2/exiv2/pull/2832
+PATCHES=( "${FILESDIR}/${P}-exiv2lib.patch" ) # bug 917483
+
+pkg_setup() {
+ if use doc || use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ cmake_src_prepare
+
+ sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_BUILD_SAMPLES=NO
+ -DEXIV2_ENABLE_BROTLI=OFF
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_INIH=OFF # multilib/libdir logic is broken
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ -DEXIV2_ENABLE_BMFF=$(usex bmff)
+
+ # We let users control this.
+ -DBUILD_WITH_CCACHE=OFF
+ # Our toolchain sets this by default.
+ -DBUILD_WITH_STACK_PROTECTOR=OFF
+
+ $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_UNIT_TESTS=$(usex test))
+ -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
+ )
+
+ if use doc || use test ; then
+ mycmakeargs+=(
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+multilib_src_compile() {
+ cmake_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && eninja doc
+ fi
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi; then
+ cd "${BUILD_DIR}"/bin || die
+ ./unit_tests || die "Failed to run tests"
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.28.1-exiv2lib.patch b/media-gfx/exiv2/files/exiv2-0.28.1-exiv2lib.patch
new file mode 100644
index 000000000000..dba8fd3e2896
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.28.1-exiv2lib.patch
@@ -0,0 +1,31 @@
+From 4f6d0b806714a702ccbe9e10c5155eb6a1699380 Mon Sep 17 00:00:00 2001
+From: Pino Toscano <toscano.pino@tiscali.it>
+Date: Tue, 14 Nov 2023 07:23:32 +0100
+Subject: [PATCH] cmake: restore a "exiv2lib" target
+
+Commit a8c3455e5cd7ee65acc5f398581e1386f7df5108 and
+commit eb05551ed2d21079299f2f4da2f463df6857b884 changed the target of
+the exiv2 library ("exiv2lib"), exporting it in the "Exiv2" namespace,
+so making it usable as "Exiv2::exiv2lib" instead. An ALIAS to "exiv2lib"
+was added, however cmake does not install or export ALIAS targets [1].
+
+Hence, restore compatibility with the existing cmake users of exiv2:
+manually create an ALIAS target in the cmake config files after all the
+targets are loaded and checked.
+
+[1] https://cmake.org/cmake/help/latest/command/add_library.html
+---
+ cmake/exiv2Config.cmake.in | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/cmake/exiv2Config.cmake.in b/cmake/exiv2Config.cmake.in
+index 63c9362ff7..c9e2eba9b5 100644
+--- a/cmake/exiv2Config.cmake.in
++++ b/cmake/exiv2Config.cmake.in
+@@ -14,3 +14,6 @@ endif()
+ include("${CMAKE_CURRENT_LIST_DIR}/exiv2Export.cmake")
+
+ check_required_components(exiv2)
++
++# compatibility with non-aliased users
++add_library(exiv2lib ALIAS Exiv2::exiv2lib)
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2024-02-19 20:20 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2024-02-19 20:20 UTC (permalink / raw
To: gentoo-commits
commit: 9e4e8555087b7cb392059bf12c79ac8549f383c4
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 19 20:18:42 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Feb 19 20:19:01 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e4e8555
media-gfx/exiv2: add 0.28.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/Manifest | 1 +
media-gfx/exiv2/exiv2-0.28.2.ebuild | 131 +++++++++++++++++++++
.../files/exiv2-0.28.2-errors-localisation.patch | 23 ++++
3 files changed, 155 insertions(+)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index e718292d55e6..0d500799da92 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1 +1,2 @@
DIST exiv2-0.28.1.tar.gz 45225200 BLAKE2B a26f8e54cf6284c56ff429c13d5a8985dc6181a36b4c13ea6f2e59bc00016a2a8d915ddbc0cedb441b8283e30f18312a500900ffd89ca984006ac84807a03852 SHA512 7b872a3c0cbe343014b1ca4618cecaf6ee8d78dec7ef83accfce95cb8eadc6b52116977a41e1f1be5c6149a47bdd9457fadc08d73708aa2a6ab69795fd3de23b
+DIST exiv2-0.28.2.tar.gz 45224206 BLAKE2B 9d1d05c99804032dfb9b740e543d1e3cceae011b17853c8565ccad87e726ce1d0f410c13bf4fa8839bc8e0fecdf170a3acac568f14aad4628b3b844f6c21dd7e SHA512 197cc607c0271b5731714713283756250031cef81ba7ed5d9c3e222b4c2397966cc2bbdbceaae706598329dde6f8a9729597d0ae4c36ac264c76546942e4e37b
diff --git a/media-gfx/exiv2/exiv2-0.28.2.ebuild b/media-gfx/exiv2/exiv2-0.28.2.ebuild
new file mode 100644
index 000000000000..c7e62ae426fc
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.28.2.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+inherit cmake-multilib python-any-r1
+
+DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
+HOMEPAGE="https://exiv2.org/"
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/Exiv2/exiv2/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+# Upstream hope to have stable ABI in 1.0. Until then, go off ${PV}.
+# We may be able to change it to $(ver_cut 1-2) once e.g.
+# https://github.com/Exiv2/exiv2/pull/917 is merged.
+SLOT="0/$(ver_cut 1-2)"
+IUSE="+bmff doc examples nls +png test webready +xmp"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/inih[${MULTILIB_USEDEP}]
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
+ png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
+ webready? (
+ net-misc/curl[${MULTILIB_USEDEP}]
+ )
+ xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
+"
+DEPEND="${DEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ doc? (
+ ${PYTHON_DEPS}
+ app-text/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz
+ virtual/pkgconfig
+ )
+ test? ( ${PYTHON_DEPS} )
+ nls? ( sys-devel/gettext )
+"
+
+DOCS=( README.md doc/ChangeLog doc/cmd.txt )
+
+PATCHES=( "${FILESDIR}/${P}-errors-localisation.patch" )
+
+pkg_setup() {
+ if use doc || use test ; then
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ # FIXME @upstream:
+ einfo "Converting doc/cmd.txt to UTF-8"
+ iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
+ mv -f doc/cmd.txt.tmp doc/cmd.txt || die
+
+ cmake_src_prepare
+
+ sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DEXIV2_BUILD_SAMPLES=NO
+ -DEXIV2_ENABLE_BROTLI=OFF
+ -DEXIV2_ENABLE_NLS=$(usex nls)
+ -DEXIV2_ENABLE_PNG=$(usex png)
+ -DEXIV2_ENABLE_CURL=$(usex webready)
+ -DEXIV2_ENABLE_INIH=ON # must be enabled (bug #921937)
+ -DEXIV2_ENABLE_WEBREADY=$(usex webready)
+ -DEXIV2_ENABLE_XMP=$(usex xmp)
+ -DEXIV2_ENABLE_BMFF=$(usex bmff)
+
+ # We let users control this.
+ -DBUILD_WITH_CCACHE=OFF
+ # Our toolchain sets this by default.
+ -DBUILD_WITH_STACK_PROTECTOR=OFF
+
+ $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
+ $(multilib_is_native_abi && echo -DEXIV2_BUILD_UNIT_TESTS=$(usex test))
+ -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
+ )
+
+ if use doc || use test ; then
+ mycmakeargs+=(
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+multilib_src_compile() {
+ cmake_src_compile
+
+ if multilib_is_native_abi; then
+ use doc && eninja doc
+ fi
+}
+
+multilib_src_test() {
+ if multilib_is_native_abi; then
+ cd "${BUILD_DIR}"/bin || die
+ ./unit_tests || die "Failed to run tests"
+ fi
+}
+
+multilib_src_install_all() {
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ docinto examples
+ dodoc samples/*.cpp
+ fi
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch b/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch
new file mode 100644
index 000000000000..7799232d74a8
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch
@@ -0,0 +1,23 @@
+From a3985001b13132ce4841bf1170626f7ef8f9dae7 Mon Sep 17 00:00:00 2001
+From: Jim Easterbrook <jim@jim-easterbrook.me.uk>
+Date: Thu, 15 Feb 2024 16:41:35 +0000
+Subject: [PATCH] Restore localisation of error messages/exceptions
+
+Signed-off-by: Jim Easterbrook <jim@jim-easterbrook.me.uk>
+---
+ src/error.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/error.cpp b/src/error.cpp
+index c4ce1f2e01..135f4730d8 100644
+--- a/src/error.cpp
++++ b/src/error.cpp
+@@ -163,7 +163,7 @@ const char* Error::what() const noexcept {
+ }
+
+ void Error::setMsg(int count) {
+- std::string msg{errList.at(static_cast<size_t>(code_))};
++ std::string msg{_(errList.at(static_cast<size_t>(code_)))};
+ auto pos = msg.find("%0");
+ if (pos != std::string::npos) {
+ msg.replace(pos, 2, std::to_string(static_cast<int>(code_)));
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/
@ 2024-10-07 23:06 Andreas Sturmlechner
0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2024-10-07 23:06 UTC (permalink / raw
To: gentoo-commits
commit: 8432d68de63518e773f1e17d23598d700641e9a9
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 7 21:37:37 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Oct 7 23:06:01 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8432d68d
media-gfx/exiv2: drop 0.28.2-r1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
media-gfx/exiv2/Manifest | 1 -
media-gfx/exiv2/exiv2-0.28.2-r1.ebuild | 130 ---------------------
.../files/exiv2-0.28.2-errors-localisation.patch | 23 ----
3 files changed, 154 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index d2d876e53ed8..117da48992c6 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -1,2 +1 @@
-DIST exiv2-0.28.2.tar.gz 45224206 BLAKE2B 9d1d05c99804032dfb9b740e543d1e3cceae011b17853c8565ccad87e726ce1d0f410c13bf4fa8839bc8e0fecdf170a3acac568f14aad4628b3b844f6c21dd7e SHA512 197cc607c0271b5731714713283756250031cef81ba7ed5d9c3e222b4c2397966cc2bbdbceaae706598329dde6f8a9729597d0ae4c36ac264c76546942e4e37b
DIST exiv2-0.28.3.tar.gz 46480702 BLAKE2B 73ebdca376d69514a89261d2f78604c5d7ccbc6e73e5c5d61f8caa596fd6b60dd4d06df19cb9f93e402d9a76f1511955f77cfd74b407310a13952092ecfbf0ef SHA512 c8338a118feefa104d73932890c732247c884ab9ce1d170c43a22ab5884517a0e2a7fd1febde7705b8290fbbbc29e64738610404816e4db2b56a70fc444ca049
diff --git a/media-gfx/exiv2/exiv2-0.28.2-r1.ebuild b/media-gfx/exiv2/exiv2-0.28.2-r1.ebuild
deleted file mode 100644
index ce29a0cec77b..000000000000
--- a/media-gfx/exiv2/exiv2-0.28.2-r1.ebuild
+++ /dev/null
@@ -1,130 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake-multilib python-any-r1
-
-DESCRIPTION="EXIF, IPTC and XMP metadata C++ library and command line utility"
-HOMEPAGE="https://exiv2.org/"
-
-if [[ ${PV} == *9999* ]]; then
- EGIT_REPO_URI="https://github.com/Exiv2/exiv2.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/Exiv2/exiv2/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="GPL-2"
-# Upstream hope to have stable ABI in 1.0. Until then, go off ${PV}.
-# We may be able to change it to $(ver_cut 1-2) once e.g.
-# https://github.com/Exiv2/exiv2/pull/917 is merged.
-SLOT="0/$(ver_cut 1-2)"
-IUSE="+bmff doc examples jpegxl nls +png test webready +xmp"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/inih[${MULTILIB_USEDEP}]
- >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
- jpegxl? ( app-arch/brotli:=[${MULTILIB_USEDEP}] )
- nls? ( >=virtual/libintl-0-r1[${MULTILIB_USEDEP}] )
- png? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
- webready? ( net-misc/curl[${MULTILIB_USEDEP}] )
- xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}
- test? ( dev-cpp/gtest )
-"
-BDEPEND="
- doc? (
- ${PYTHON_DEPS}
- app-text/doxygen
- dev-libs/libxslt
- media-gfx/graphviz
- virtual/pkgconfig
- )
- test? ( ${PYTHON_DEPS} )
- nls? ( sys-devel/gettext )
-"
-
-DOCS=( README.md doc/ChangeLog doc/cmd.txt )
-
-PATCHES=( "${FILESDIR}/${P}-errors-localisation.patch" )
-
-pkg_setup() {
- if use doc || use test ; then
- python-any-r1_pkg_setup
- fi
-}
-
-src_prepare() {
- # FIXME @upstream:
- einfo "Converting doc/cmd.txt to UTF-8"
- iconv -f LATIN1 -t UTF-8 doc/cmd.txt > doc/cmd.txt.tmp || die
- mv -f doc/cmd.txt.tmp doc/cmd.txt || die
-
- cmake_src_prepare
-
- sed -e "/^include.*compilerFlags/s/^/#DONT /" -i CMakeLists.txt || die
-}
-
-multilib_src_configure() {
- local mycmakeargs=(
- -DEXIV2_BUILD_SAMPLES=NO
- -DEXIV2_ENABLE_BROTLI=$(usex jpegxl)
- -DEXIV2_ENABLE_NLS=$(usex nls)
- -DEXIV2_ENABLE_PNG=$(usex png)
- -DEXIV2_ENABLE_CURL=$(usex webready)
- -DEXIV2_ENABLE_INIH=ON # must be enabled (bug #921937)
- -DEXIV2_ENABLE_WEBREADY=$(usex webready)
- -DEXIV2_ENABLE_XMP=$(usex xmp)
- -DEXIV2_ENABLE_BMFF=$(usex bmff)
-
- # We let users control this.
- -DBUILD_WITH_CCACHE=OFF
- # Our toolchain sets this by default.
- -DBUILD_WITH_STACK_PROTECTOR=OFF
-
- $(multilib_is_native_abi || echo -DEXIV2_BUILD_EXIV2_COMMAND=NO)
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_DOC=$(usex doc))
- $(multilib_is_native_abi && echo -DEXIV2_BUILD_UNIT_TESTS=$(usex test))
- -DCMAKE_INSTALL_DOCDIR="${EPREFIX}"/usr/share/doc/${PF}/html
- )
-
- if use doc || use test ; then
- mycmakeargs+=(
- -DPython3_EXECUTABLE="${PYTHON}"
- )
- fi
-
- cmake_src_configure
-}
-
-multilib_src_compile() {
- cmake_src_compile
-
- if multilib_is_native_abi; then
- use doc && eninja doc
- fi
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- cd "${BUILD_DIR}"/bin || die
- ./unit_tests || die "Failed to run tests"
- fi
-}
-
-multilib_src_install_all() {
- use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
-
- einstalldocs
- find "${D}" -name '*.la' -delete || die
-
- if use examples; then
- docinto examples
- dodoc samples/*.cpp
- fi
-}
diff --git a/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch b/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch
deleted file mode 100644
index 7799232d74a8..000000000000
--- a/media-gfx/exiv2/files/exiv2-0.28.2-errors-localisation.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From a3985001b13132ce4841bf1170626f7ef8f9dae7 Mon Sep 17 00:00:00 2001
-From: Jim Easterbrook <jim@jim-easterbrook.me.uk>
-Date: Thu, 15 Feb 2024 16:41:35 +0000
-Subject: [PATCH] Restore localisation of error messages/exceptions
-
-Signed-off-by: Jim Easterbrook <jim@jim-easterbrook.me.uk>
----
- src/error.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/error.cpp b/src/error.cpp
-index c4ce1f2e01..135f4730d8 100644
---- a/src/error.cpp
-+++ b/src/error.cpp
-@@ -163,7 +163,7 @@ const char* Error::what() const noexcept {
- }
-
- void Error::setMsg(int count) {
-- std::string msg{errList.at(static_cast<size_t>(code_))};
-+ std::string msg{_(errList.at(static_cast<size_t>(code_)))};
- auto pos = msg.find("%0");
- if (pos != std::string::npos) {
- msg.replace(pos, 2, std::to_string(static_cast<int>(code_)));
^ permalink raw reply related [flat|nested] 18+ messages in thread
end of thread, other threads:[~2024-10-07 23:06 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-19 20:20 [gentoo-commits] repo/gentoo:master commit in: media-gfx/exiv2/, media-gfx/exiv2/files/ Andreas Sturmlechner
-- strict thread matches above, loose matches on Subject: below --
2024-10-07 23:06 Andreas Sturmlechner
2023-11-21 22:36 Andreas Sturmlechner
2021-11-10 10:45 Andreas Sturmlechner
2020-07-18 8:41 Andreas Sturmlechner
2019-11-14 15:59 Andreas Sturmlechner
2019-07-29 18:55 Andreas Sturmlechner
2019-06-23 20:58 Andreas Sturmlechner
2019-03-11 6:14 Michael Palimaka
2019-01-18 12:40 Andreas Sturmlechner
2018-10-29 10:14 Andreas Sturmlechner
2018-04-26 3:32 Andreas Sturmlechner
2018-04-25 17:54 Andreas Sturmlechner
2017-12-05 16:15 Andreas Sturmlechner
2017-10-18 0:35 Andreas Sturmlechner
2017-10-14 7:57 Andreas Sturmlechner
2017-10-13 8:48 Andreas Sturmlechner
2016-07-06 10:32 Michael Palimaka
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox