commit: a3ce31bcfbb264a312d6a02955a967e130b15c61
Author: Aric Belsito <lluixhi <AT> gmail <DOT> com>
AuthorDate: Thu Jun 8 17:42:42 2017 +0000
Commit: Aric Belsito <lluixhi <AT> gmail <DOT> com>
CommitDate: Thu Jun 8 17:42:42 2017 +0000
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=a3ce31bc
media-gfx/exiv2: version bump to 0.26
media-gfx/exiv2/Manifest | 14 ++++-
media-gfx/exiv2/exiv2-0.25-r2.ebuild | 3 +-
.../{exiv2-0.25-r2.ebuild => exiv2-0.26.ebuild} | 67 +++++++++++----------
.../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 +++++++++
13 files changed, 431 insertions(+), 34 deletions(-)
diff --git a/media-gfx/exiv2/Manifest b/media-gfx/exiv2/Manifest
index 1e7e8d0..0920aea 100644
--- a/media-gfx/exiv2/Manifest
+++ b/media-gfx/exiv2/Manifest
@@ -5,6 +5,18 @@ AUX exiv2-0.25-fvisibility-hidden.patch 700 SHA256
2d0eb374e3df7dd58a513b616786e
AUX exiv2-0.25-hide-symbols.patch 4098 SHA256
b6fe63951717360caad547275c3810c42803ef2d8dea25c75e02b45b9d7add9e SHA512
aed6746329b12769d8084ca79a99eccd6b52449b80c0b3d1c1d6b22294c2b62398366f0715efa207e2ace0ed52740a8eb81af58d17322d42a4674336fd24e725
WHIRLPOOL
ac8e900303ac0b19f24b5eff13791dd42459395763d4c8795ff978c1f2c05431b3f3586dedd2b7df375452d3826d7356fc190c4ba3bc8fc4713792bc9d31d033
AUX exiv2-0.25-musl.patch 464 SHA256
c32333fa1d157bd2b14aaf18e19c2a67511baad89a9b526d6f984bb955dbf9ee SHA512
25e7d53fd2840d1166795a0a27c07de9370f493b1c8a047a020b73fe9330303d97a48414937c25e5aa5961fa7d416b10e4e3ea6b35008e4d9705ed19d71bb85d
WHIRLPOOL
0e71a59b5fa87633c98e46385260835077e3a93c7a9aad9022c58060efbfecba295c37726d248580b9a79ee7cecdc8f0e23f24cfcaa1085ab33e44f33bbc5d49
AUX exiv2-0.25-tools-optional.patch 1332 SHA256
6c9a3ed5c2b9acff10c3b2f2dd2ca639936beaf6263526b9d85ede579a1d67e1 SHA512
14a8703b86dc4a7a1f210e26bd6532c529f850dd1b25ef116c703a576c389a120e3f8b1087e289cd8b44073071ac88a97503dc2c0cf72f21d32094b2cabbc58c
WHIRLPOOL
dc7efa7ddcaf1be665cd79aff0b36a0f2b135a87a3a93f9cb6091105b965b4b009e569c447d54d602482410ec59d674d99a71bee2699e8007575b8e2cc727998
+AUX exiv2-0.26-CVE-2017-9239.patch 738 SHA256
014407dc03154c12675d66368b9e5674bc761bd77102665bb4ccbbc1561b8098 SHA512
f6d3c081ca145bc9614fff83d59512329bb30b19010be16484c0d341c6c7167195c98131458b9427ef0afd9cf0bd1f1cdd10b0cfd689322327bd685759bd125f
WHIRLPOOL
724b65d05228677d6d9493489d0e9882308e1a5fdef502528c80676767c582fe9ff828d50b67b447ba57b0c114926143c5ca9864e04e3b4dcfd6118a2e06daf9
+AUX exiv2-0.26-cmake1.patch 805 SHA256
ce6797ef659aad6ad0687ea7236d193a22552c4c91855f486216371de0608f2e SHA512
5b99674cdf01ab712df2f743487be1afd5a5751133222d13eaab36ce9e0b86c9c89eb8a09244eb521a60bce12081dbefb6b867aab75158df193d80965a0f0681
WHIRLPOOL
734fcdb96037486a7ec834ecf1f90d3e63e35ef22efd832e787e2e6efa8a9d59923311e46ff6486acd96668c0245f2ac0de620ea35e75665fce9a34c9caa401e
+AUX exiv2-0.26-cmake2.patch 2781 SHA256
f5b4404a124e2fb11e2c363973c25bbc91c1da9787822f9f1a3252ef2bf0224b SHA512
2ff6baad558ff79ec514a9bd78adb01d1c894d51713a5f98573c7e60356b90ed5f9ad462c43f6454874e2e775f61edf38a5881eb9526c5c9cd5543af0777e543
WHIRLPOOL
297cb349e63e9fb9a696c3e60de6e8d1c547b7f163abff6aeabe7687d6bc1c643b0a0166438f544ba33c02b285029244b339b0963afe894cd736175c9b7c1f87
+AUX exiv2-0.26-cmake3.patch 2040 SHA256
14c67fe154053c72d41696546b998c320129190dc3b43471b25731d71c9e7c19 SHA512
98c63cbe51126090835b2422433af625cea683d89d3d4e822191bfa19633ff1e4b98b41356dd9f2326c4e30c34faa80b9408ed488644575ab5cbf8f5477f6d8f
WHIRLPOOL
9065ff20231c6dc36a8314e0cbf36237d2b6acaceea69cfe16ec616a3e53b99fd756305e1fd771c4e2c1349a051ea2d875374f8bea67ef9049e677803fcc390d
+AUX exiv2-0.26-cmake4.patch 783 SHA256
fee765278dc3bdc11b0d140e2e082ef29209aa78d591808ecf608434be87deda SHA512
e2a197fcf1255e02d1ce35a3d9428f40533fad8dcbac39f17b8b5d3f2b365479e202c9fca3b969b6f16ab3e58ff2d8654b85308536e5acec3ba8d7af38fc17a0
WHIRLPOOL
8b28f0bd49bd4af64a8638bffbe977aa9feb257f9cf8c2075493b4e56aa6065c8e475ce33f988575e1b2b90030abd179902682537f00576cddb7069f0aa32607
+AUX exiv2-0.26-cmake5.patch 1066 SHA256
aa7fcff3eace01ac2faf9a901fa2ebd3949d1ae4836bcfc884a119b394c083b5 SHA512
6ac55cd0d73b484357b84b07f0e059f239e717a32d0cb4acec23522ac23546374f13edbb5306fe1acf7d75049ee642f4c6e851fb1dc0b38bec5feecfd4efbb0f
WHIRLPOOL
11118cc7bc6a753700b6a1dd381c67ef883fab4c64ee1f5248b641bf265081994b99d88147d4fdaf208ebe4dab91f8488e4fa105919d3f0ab984ead146cdc3f7
+AUX exiv2-0.26-cmake6.patch 973 SHA256
4a167f386a87f261481b5544844aa26c61386bb77e702407f21490b052b866aa SHA512
d32b2d8856651ec168732367c5d7c65131e9301fb899bf7ce018b68d783d66120b99fff624ce3c37b36c5aa1682d5cdde74adf232c11807f496cff987bf478a7
WHIRLPOOL
6060e8c85a6f953a4853bbdedfd85c2dbd3c9943c972d9b0612239017886d78bf2db50fc1a2474aad949d03079e9adc8254307598e3dd734af015b7133d2c004
+AUX exiv2-0.26-cmake7.patch 1328 SHA256
a882283ea89183c4a415b9816cf03daa80683ea5a85c5a78c7b430f1b602f293 SHA512
f500dd7cf0520d5cdb177a33554329d7da0f9895a1d04e1fd2d91e37814df61901b13f7e9c33b245fa4ad9cd6b7361cf289af868363187f9917691366a6672a3
WHIRLPOOL
661b44e517138b93c2633f13507c3ec67ac1308b7b794731996bde75cf83fce3ef315287fdff4dc2a418253c94ecfb38f73ea96e9599bc124e80a7a0e89d15c7
+AUX exiv2-0.26-fix-docs.patch 2147 SHA256
6cdab606c6fb6ddc7913fd311d9051946f97c1de5dabac614e934e704ea4c7ca SHA512
fa2f35d00df2fd1d958e1139e7b8fe0dd0c0f7f6fe5295b2ac5b0a156ae68af9e275e23c943929c90315a99e3116376a4e21e384c1bb219b3d5b657ac12165ec
WHIRLPOOL
5e70a648303cab83e6265c064e94144d65421bc9cf514744b624a6af466cce1827c983664ee71f78431919d47370f2f9d17931aa96941c2079826232687ab78c
+AUX exiv2-0.26-tools-optional.patch 1276 SHA256
5df66e4cbf15b911b4c05bb9240452f64f9e4c84bd04e7e516ef34bd43c3e849 SHA512
23e797e76cedf6c4a2025e0d6d2f7301d8e13adcbb836660fe2568eeb94348c6cac649284789551f97a69790271936b6412ff7d1416ee95a87851624b317e4c9
WHIRLPOOL
c7f32aa72c9051c69cb54176335ab05258aca72f9cd658fd323873bd7d3f8db5fd0b10f9940b5ee5bb3d1c84902a59a73087f510db37542b100c5fd9d8f755fb
DIST exiv2-0.25.tar.gz 5434325 SHA256
c80bfc778a15fdb06f71265db2c3d49d8493c382e516cb99b8c9f9cbde36efa4 SHA512
08d4e655ffdde715e0214f4bef01d55aba9b8ba517456a60e254a0f8541c20479e407545db28ca90a69dee8def6941fdd88f9a557fb382ebebe49e363aca8e8e
WHIRLPOOL
f9e7a6947dac5870e0574253b8c1cb1e7d31a916a9e1c4417c73168046c0b4bed90b9c77253444604163bcf6dca204dab92a52cb03bdcb0f85c807327623f8ac
-EBUILD exiv2-0.25-r2.ebuild 3103 SHA256
c48fdd8020549ca39c408baee62955733e6dee2be511196784fced07078d141d SHA512
be4ec43d8846adde52834b4af06522bbb0d4e7e09b23a150dc143237595270cfbb85b38f9b71339b1b418a4a8bb2821f258a2e770b3f847cc914e1fe4171c5c4
WHIRLPOOL
41a38ab10cb0fe7ffa27b8dab6102ca68100e79681f257441499d2a3e2376d156237ae2d0c69846264633377a27bf4c216817f2ce4daba43042a4846e202ade6
+DIST exiv2-0.26-trunk.tar.gz 5699163 SHA256
0c625cbeb494aa1b9221280a5b053b54d0c9720d48fa9120cef7c6f93efd4dc3 SHA512
d9f354f8458d7803140b442b2a8de3c8904b1e20916cf62d7176f51524e6ff7def26d3b6fa016abc49f8140295eea624151c54dbae0676a61529c2cf33335b0c
WHIRLPOOL
0d36063ee659d0a798957e9a2478337f5e8061b467df8fb86b194830ac6ec751a75e1492ad7cbf4ed31c836b9c320f037af3708920b28b07c8970840e255d711
+EBUILD exiv2-0.25-r2.ebuild 3104 SHA256
790f4ad93ca7799eba393f76a30e3dcdf5148834ce85b2a2e8f095da8ca9c0b9 SHA512
7ef6da58f714555f7065891a984e83e19e14c22e71a45d4ec4f1aff7a49404628b07f8b371efb26ad06f53e452a8ee61cb556df20c8c0706be3990716a823402
WHIRLPOOL
cf3f43c404d456bfd989fb0bb620db4fc12d7297adf68f6e90b10fd1b59a43b34dc8fe14483e03a2983bc9df704e6963505ce693bbdb42b3b1b111bd81d6961e
+EBUILD exiv2-0.26.ebuild 3393 SHA256
f47eeee789c29be290a6b1e203098a9a3c4f6de68897a1ae916066fe38aa7115 SHA512
0e1d1e5266b0399d61ce2e8640bab6f41a049e5de3f16a232df3a5ad811e56f3b659722f459ca2a8d5aa217c58bb5edd340d88db4603a837f16b97ed2fb6bfa5
WHIRLPOOL
c9e99dfc5949c02305ccaf0292c086324c9b32d611ab0cd10bbc1f89560049560a715c1a618fa3d36ba59a6fe27c1b4fa73e66223834ef462f5db35d1149483b
MISC metadata.xml 612 SHA256
2700f3a6eb0fea03635790e9e55611f58a19dace74c70d0e0106bd70ef825c60 SHA512
9b4926ba8420a125dc4cefd351ee1ec10a4df2fc4306a56720f6e8de7c5fd9f36a8646c8583958fca9a45ebe1b65b19c053c7da37176546bc19ae64afa87e4f5
WHIRLPOOL
0996d01f595fe4ab40a65fcc19d2eced4dc31a1c8efddddca353828447ff3ca974499dcc81482d47a3470d9530a1886abde9acfaa2ac75df0e845f1a70402056
diff --git a/media-gfx/exiv2/exiv2-0.25-r2.ebuild
b/media-gfx/exiv2/exiv2-0.25-r2.ebuild
index 31fd7df..8b34d48 100644
--- a/media-gfx/exiv2/exiv2-0.25-r2.ebuild
+++ b/media-gfx/exiv2/exiv2-0.25-r2.ebuild
@@ -1,9 +1,8 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Id$
EAPI=5
-PYTHON_COMPAT=( python{2_7,3_4} )
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
inherit eutils cmake-multilib python-any-r1
diff --git a/media-gfx/exiv2/exiv2-0.25-r2.ebuild
b/media-gfx/exiv2/exiv2-0.26.ebuild
similarity index 60%
copy from media-gfx/exiv2/exiv2-0.25-r2.ebuild
copy to media-gfx/exiv2/exiv2-0.26.ebuild
index 31fd7df..3926c66 100644
--- a/media-gfx/exiv2/exiv2-0.25-r2.ebuild
+++ b/media-gfx/exiv2/exiv2-0.26.ebuild
@@ -1,19 +1,19 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Id$
-EAPI=5
-PYTHON_COMPAT=( python{2_7,3_4} )
+EAPI=6
-inherit eutils cmake-multilib python-any-r1
+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/${P}.tar.gz"
+SRC_URI="http://www.exiv2.org/builds/${P}-trunk.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 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
+SLOT="0/26"
+KEYWORDS="~alpha ~amd64 ~arm ~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})"
@@ -32,8 +32,8 @@ DEPEND="${RDEPEND}
doc? (
app-doc/doxygen
dev-libs/libxslt
- virtual/pkgconfig
media-gfx/graphviz
+ virtual/pkgconfig
${PYTHON_DEPS}
)
nls? ( sys-devel/gettext )
@@ -42,29 +42,37 @@ DEPEND="${RDEPEND}
DOCS=( README doc/ChangeLog doc/cmd.txt )
PATCHES=(
- "${FILESDIR}/${PN}-0.25-fix-install-dirs.patch"
- "${FILESDIR}/${PN}-0.25-fix-without-zlib.patch"
- "${FILESDIR}/${PN}-0.25-hide-symbols.patch"
- "${FILESDIR}/${PN}-0.25-fvisibility-hidden.patch"
- "${FILESDIR}/${PN}-0.25-musl.patch"
+ "${FILESDIR}"/${P}-cmake{1,2,3,4,5,6,7}.patch
+ "${FILESDIR}"/${P}-CVE-2017-9239.patch
+ "${FILESDIR}"/${PN}-0.25-musl.patch
# TODO: Take to upstream
- "${FILESDIR}/${PN}-0.25-fix-docs.patch"
- "${FILESDIR}/${PN}-0.25-tools-optional.patch"
+ "${FILESDIR}"/${P}-fix-docs.patch
+ "${FILESDIR}"/${P}-tools-optional.patch
)
pkg_setup() {
use doc && python-any-r1_pkg_setup
}
-src_prepare() {
- rm -r msvc* build || die "Failed to remove msvc dirs"
+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 ! has ${lang%.po} ${LINGUAS} ; then
- rm -rf ${lang} || die
+ 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
@@ -73,13 +81,10 @@ src_prepare() {
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
+ # 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"
@@ -93,9 +98,9 @@ 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_CURL=$(usex webready)
-DEXIV2_ENABLE_SSH=$(usex webready)
-DEXIV2_ENABLE_WEBREADY=$(usex webready)
-DEXIV2_ENABLE_XMP=$(usex xmp)
@@ -116,11 +121,11 @@ multilib_src_compile() {
}
multilib_src_install_all() {
- einstalldocs
- prune_libtool_files --all
+ use xmp && DOCS+=( doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} )
+ use doc && HTML_DOCS=( "${S}"/doc/html/. )
- use xmp && dodoc doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt}
- use doc && dodoc -r "${S}"/doc/html
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
if use examples; then
docinto examples
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
new file mode 100644
index 0000000..2a3e20c
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-CVE-2017-9239.patch
@@ -0,0 +1,22 @@
+From 2f8681e120d277e418941c4361c83b5028f67fd8 Mon Sep 17 00:00:00 2001
+From: clanmills <[email protected]>
+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
new file mode 100644
index 0000000..672017e
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake1.patch
@@ -0,0 +1,22 @@
+From d5ae1a7502cc3a19f2ca45f5f17f1ee8fc6ad979 Mon Sep 17 00:00:00 2001
+From: Timo Gurr <[email protected]>
+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
new file mode 100644
index 0000000..76a1944
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake2.patch
@@ -0,0 +1,65 @@
+From 3af0d1a6b2c12b7f62a293d19bdf235db75d6b07 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <[email protected]>
+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
new file mode 100644
index 0000000..7a78d1c
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake3.patch
@@ -0,0 +1,53 @@
+From 8af901ce05aeeaa4f5033da99670091f857d5931 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <[email protected]>
+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
new file mode 100644
index 0000000..3824a57
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake4.patch
@@ -0,0 +1,24 @@
+From 23ac3eeced6a4de0d34ae162ac7784ab9b7e4310 Mon Sep 17 00:00:00 2001
+From: clanmills <[email protected]>
+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
new file mode 100644
index 0000000..0df4a19
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake5.patch
@@ -0,0 +1,33 @@
+From 4e86c1d61c4b8ab2cbbb31db0031b8e1d1872231 Mon Sep 17 00:00:00 2001
+From: clanmills <[email protected]>
+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
new file mode 100644
index 0000000..105b588
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake6.patch
@@ -0,0 +1,27 @@
+From 88cf58613ffde4c907011bea82f61daae6006c3c Mon Sep 17 00:00:00 2001
+From: clanmills <[email protected]>
+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
new file mode 100644
index 0000000..0eff32a
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-cmake7.patch
@@ -0,0 +1,38 @@
+From 15e0b9052eacd3438c8b39bf3fdda5da69ec068a Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <[email protected]>
+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
new file mode 100644
index 0000000..a888671
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-fix-docs.patch
@@ -0,0 +1,70 @@
+--- 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
new file mode 100644
index 0000000..045e9dc
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.26-tools-optional.patch
@@ -0,0 +1,27 @@
+--- 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