summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Briesenick <sbriesen@gentoo.org>2010-12-21 12:31:54 +0000
committerStefan Briesenick <sbriesen@gentoo.org>2010-12-21 12:31:54 +0000
commit646f8ab5a753e9bd26465f007010656dc337fa00 (patch)
tree4bd6550134a7c325c95ccef0528e6aeeb399f58e /media-gfx/exiv2
parentBlock sys-apps/moreutils due to file collisions, see bug 349225 by Helmut Jar... (diff)
downloadgentoo-2-646f8ab5a753e9bd26465f007010656dc337fa00.tar.gz
gentoo-2-646f8ab5a753e9bd26465f007010656dc337fa00.tar.bz2
gentoo-2-646f8ab5a753e9bd26465f007010656dc337fa00.zip
fixes compile-problems with USE=-xmp, solves (partially) bug #349091.
(Portage version: 2.2.0_alpha8/cvs/Linux x86_64)
Diffstat (limited to 'media-gfx/exiv2')
-rw-r--r--media-gfx/exiv2/ChangeLog8
-rw-r--r--media-gfx/exiv2/exiv2-0.21-r1.ebuild115
-rw-r--r--media-gfx/exiv2/files/exiv2-0.21-xmp-fix.patch15
3 files changed, 137 insertions, 1 deletions
diff --git a/media-gfx/exiv2/ChangeLog b/media-gfx/exiv2/ChangeLog
index a34da507083c..8714836c123e 100644
--- a/media-gfx/exiv2/ChangeLog
+++ b/media-gfx/exiv2/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-gfx/exiv2
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/exiv2/ChangeLog,v 1.90 2010/12/19 13:01:45 sbriesen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/exiv2/ChangeLog,v 1.91 2010/12/21 12:31:54 sbriesen Exp $
+
+*exiv2-0.21-r1 (21 Dec 2010)
+
+ 21 Dec 2010; Stefan Briesenick <sbriesen@gentoo.org> +exiv2-0.21-r1.ebuild,
+ +files/exiv2-0.21-xmp-fix.patch:
+ fixes compile-problems with USE=-xmp, solves (partially) bug #349091.
*exiv2-0.21 (19 Dec 2010)
diff --git a/media-gfx/exiv2/exiv2-0.21-r1.ebuild b/media-gfx/exiv2/exiv2-0.21-r1.ebuild
new file mode 100644
index 000000000000..d50fb0e12e44
--- /dev/null
+++ b/media-gfx/exiv2/exiv2-0.21-r1.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/exiv2/exiv2-0.21-r1.ebuild,v 1.1 2010/12/21 12:31:54 sbriesen Exp $
+
+EAPI="2"
+PYTHON_DEPEND="2"
+
+inherit eutils multilib toolchain-funcs python
+
+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"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="contrib doc examples nls xmp zlib"
+IUSE_LINGUAS="de es fi fr pl ru sk"
+IUSE="${IUSE} $(printf 'linguas_%s ' ${IUSE_LINGUAS})"
+
+RDEPEND="
+ virtual/libiconv
+ nls? ( virtual/libintl )
+ xmp? ( dev-libs/expat )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}
+ contrib? ( >=dev-libs/boost-1.37 )
+ doc? (
+ app-doc/doxygen
+ dev-libs/libxslt
+ dev-util/pkgconfig
+ media-gfx/graphviz
+ )
+ nls? ( sys-devel/gettext )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-xmp-fix.patch"
+
+ # convert docs to UTF-8
+ 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/.*:/usr/include:g' \
+ -e 's:/usr/local/lib/lib:-l:g' -e 's:-gcc..-mt-._..\.a::g' \
+ contrib/organize/boost.mk
+ fi
+
+ # fix python shebang
+ python_convert_shebangs -r 2 doc/templates
+}
+
+src_configure() {
+ local myconf="$(use_enable nls) $(use_enable xmp)"
+ use zlib || myconf="${myconf} --without-zlib" # plain 'use_with' fails
+
+ # Bug #78720. amd64/gcc-3.4/-fvisibility* fail.
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ use amd64 && myconf="${myconf} --disable-visibility"
+ fi
+
+ econf ${myconf}
+}
+
+src_compile() {
+ emake || die "emake failed"
+
+ 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" \
+ || die "emake organize failed"
+ fi
+
+ if use doc; then
+ emake doc || die "emake doc failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ if use contrib; then
+ emake DESTDIR="${D}" -C contrib/organize install || die "emake install organize failed"
+ fi
+
+ dodoc README doc/{ChangeLog,cmd.txt}
+ use xmp && dodoc doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt}
+ use doc && dohtml -r doc/html/.
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins samples/*.cpp
+ fi
+}
+
+pkg_postinst() {
+ ewarn
+ ewarn "PLEASE PLEASE take note of this:"
+ ewarn "Please make *sure* to run revdep-rebuild now"
+ ewarn "Certain things on your system may have linked against a"
+ ewarn "different version of exiv2 -- those things need to be"
+ ewarn "recompiled. Sorry for the inconvenience!"
+ ewarn
+}
diff --git a/media-gfx/exiv2/files/exiv2-0.21-xmp-fix.patch b/media-gfx/exiv2/files/exiv2-0.21-xmp-fix.patch
new file mode 100644
index 000000000000..5f67cc95e456
--- /dev/null
+++ b/media-gfx/exiv2/files/exiv2-0.21-xmp-fix.patch
@@ -0,0 +1,15 @@
+--- exiv2-0.21.orig/src/xmp.cpp 2010-11-06 13:53:15.000000000 +0000
++++ exiv2-0.21/src/xmp.cpp 2010-12-20 12:35:34.931520681 +0000
+@@ -420,11 +420,10 @@ namespace Exiv2 {
+ }
+ } // XmpParser::registerNs
+ #else
+- bool XmpParser::registerNs(const std::string& /*ns*/,
++ void XmpParser::registerNs(const std::string& /*ns*/,
+ const std::string& /*prefix*/)
+ {
+ initialize();
+- return true;
+ } // XmpParser::registerNs
+ #endif
+