--- exiv2-0.23-r1.ebuild 2013-09-20 16:35:31.000000000 +0200 +++ exiv2-0.23-r3.ebuild 2014-01-15 12:52:31.707309371 +0100 @@ -4,8 +4,9 @@ EAPI=4 AUTOTOOLS_IN_SOURCE_BUILD=1 +PYTHON_COMPAT=( python{2_6,2_7} ) -inherit eutils autotools-utils multilib toolchain-funcs python +inherit eutils autotools-multilib multilib toolchain-funcs python-any-r1 DESCRIPTION="EXIF and IPTC metadata C++ library and command line utility" HOMEPAGE="http://www.exiv2.org/" @@ -13,15 +14,15 @@ SRC_URI="http://www.exiv2.org/${P}.tar.g LICENSE="GPL-2" SLOT="0" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" 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 - nls? ( virtual/libintl ) - xmp? ( dev-libs/expat ) - zlib? ( sys-libs/zlib ) + virtual/libiconv[${MULTILIB_USEDEP}] + nls? ( virtual/libintl[${MULTILIB_USEDEP}] ) + xmp? ( dev-libs/expat[${MULTILIB_USEDEP}] ) + zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) " DEPEND="${RDEPEND} @@ -31,13 +32,17 @@ DEPEND="${RDEPEND} dev-libs/libxslt virtual/pkgconfig media-gfx/graphviz - =dev-lang/python-2* + ${PYTHON_DEPS} ) nls? ( sys-devel/gettext ) " DOCS=( README doc/ChangeLog doc/cmd.txt ) +pkg_setup() { + use doc && python-any-r1_pkg_setup +} + src_prepare() { # convert docs to UTF-8 local i @@ -49,7 +54,6 @@ src_prepare() { if use doc; then einfo "Updating doxygen config" doxygen 2>&1 >/dev/null -u config/Doxyfile - python_convert_shebangs -r 2 doc/templates fi if use contrib; then @@ -59,14 +63,15 @@ src_prepare() { 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 + contrib/organize/boost.mk || die fi - # 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 + sed -i -r "s,(\s+)sed\s,\1LC_ALL="C" sed ,g" src/Makefile || die + + autotools-multilib_src_prepare } -src_configure() { +multilib_src_configure() { local myeconfargs=( $(use_enable nls) $(use_enable xmp) @@ -74,40 +79,47 @@ src_configure() { ) # plain 'use_with' fails - use zlib || myeconfargs+=("${myconf} --without-zlib") + use zlib || myeconfargs+=( --without-zlib ) # Bug #78720. amd64/gcc-3.4/-fvisibility* fail. - if [ $(gcc-major-version) -lt 4 ]; then - use amd64 && myeconfargs+=("${myconf} --disable-visibility") + if [[ ${ABI} == amd64 && $(gcc-major-version) -lt 4 ]]; then + myeconfargs+=( --disable-visibility ) fi autotools-utils_src_configure } -src_compile() { - autotools-utils_src_compile +multilib_src_compile() { + emake - 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 multilib_build_binaries; 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 doc || die "emake doc failed" + use doc && emake doc fi } -src_install() { +multilib_src_install() { autotools-utils_src_install - if use contrib; then - emake DESTDIR="${D}" -C contrib/organize install || die "emake install organize failed" + if multilib_build_binaries; then + if use contrib; then + emake DESTDIR="${D}" -C contrib/organize install + fi + + use xmp && dodoc doc/{COPYING-XMPSDK,README-XMP,cmdxmp.txt} + use doc && dohtml -r doc/html/. fi +} + +multilib_src_install_all() { + prune_libtool_files + einstalldocs - 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 docompress -x /usr/share/doc/${PF}/examples