diff options
author | Stefan Briesenick <sbriesen@gentoo.org> | 2010-12-21 12:31:54 +0000 |
---|---|---|
committer | Stefan Briesenick <sbriesen@gentoo.org> | 2010-12-21 12:31:54 +0000 |
commit | 646f8ab5a753e9bd26465f007010656dc337fa00 (patch) | |
tree | 4bd6550134a7c325c95ccef0528e6aeeb399f58e /media-gfx/exiv2 | |
parent | Block sys-apps/moreutils due to file collisions, see bug 349225 by Helmut Jar... (diff) | |
download | gentoo-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/ChangeLog | 8 | ||||
-rw-r--r-- | media-gfx/exiv2/exiv2-0.21-r1.ebuild | 115 | ||||
-rw-r--r-- | media-gfx/exiv2/files/exiv2-0.21-xmp-fix.patch | 15 |
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 + |