Created attachment 347840 [details] An ebuild supporting multilib. It would be very good if there could be a dev-cpp/libxmlpp ebuild supporting multilib. It is needed by the proaudio overlay to supply a multilib ebuild for libffado (and thus a multilib ebuild for jack-audio-connection-kit). I'm submitting a converted ebuild with support for multilib through the multilib-minimal eclass. The DOCS variable is dropped because docs install fine anyway. The ebuild also depends on emul-linux-x86-{baselibs,gtkmmlibs}. I think that is the best solution for now until those packages are split up in multilib ebuilds. When those emul packages have been migrated the dependencies can be changed to ||-dependendencies.
Comment on attachment 347840 [details] An ebuild supporting multilib. --- libxmlpp-2.36.0.ebuild 2013-04-02 23:18:54.076430605 +0200 +++ - 2013-05-09 15:37:30.974576153 +0200 @@ -1,37 +1,51 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxmlpp/libxmlpp-2.36.0.ebuild,v 1.9 2013/04/01 18:23:46 ago Exp $ +# $Header: $ EAPI="5" GCONF_DEBUG="no" GNOME2_LA_PUNT="yes" GNOME_ORG_MODULE="${PN/pp/++}" -inherit gnome2 +inherit gnome2 multilib-minimal DESCRIPTION="C++ wrapper for the libxml2 XML parser library" HOMEPAGE="http://libxmlplusplus.sourceforge.net/" LICENSE="LGPL-2.1" SLOT="2.6" -KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris" IUSE="doc test" RDEPEND=">=dev-libs/libxml2-2.7.3 - >=dev-cpp/glibmm-2.32" + >=dev-cpp/glibmm-2.32 + amd64? ( abi_x86_32? ( + app-emulation/emul-linux-x86-baselibs[development] + app-emulation/emul-linux-x86-gtkmmlibs[development] ) )" DEPEND="${RDEPEND} virtual/pkgconfig" +ECONF_SOURCE="${S}" + src_prepare() { - DOCS="AUTHORS ChangeLog NEWS README*" G2CONF="${G2CONF} $(use_enable doc documentation)" gnome2_src_prepare } -src_install() { +multilib_src_configure() { + gnome2_src_configure +} + +multilib_src_compile() { + gnome2_src_compile +} + +multilib_src_install() { gnome2_src_install +} +multilib_src_install_all() { rm -fr "${ED}"usr/share/doc/libxml++* use doc && dohtml docs/reference/html/* }
Here is an updated patch that does not depend on the emul-linux-x86 libraries. This patch differs from the last one in two other ways; I had to move DOCS="..." in src_prepare to dodoc ... in multilib_src_install_all for the files to be installed and I had to move $(use_enable doc documentation) to multilib_src_configure for the option to have any effect. --- libxmlpp-2.36.0.ebuild 2015-03-22 19:51:35.352663766 +0100 +++ libxmlpp-2.36.0-r1.ebuild 2015-03-22 20:02:55.777659944 +0100 @@ -1,37 +1,47 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libxmlpp/libxmlpp-2.36.0.ebuild,v 1.10 2014/06/22 18:43:47 maekke Exp $ +# $Header: $ EAPI="5" GCONF_DEBUG="no" GNOME2_LA_PUNT="yes" GNOME_ORG_MODULE="${PN/pp/++}" -inherit gnome2 +inherit gnome2 multilib-minimal DESCRIPTION="C++ wrapper for the libxml2 XML parser library" HOMEPAGE="http://libxmlplusplus.sourceforge.net/" LICENSE="LGPL-2.1" SLOT="2.6" -KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris" IUSE="doc test" -RDEPEND=">=dev-libs/libxml2-2.7.3 - >=dev-cpp/glibmm-2.32" +RDEPEND=">=dev-libs/libxml2-2.7.3[${MULTILIB_USEDEP}] + >=dev-cpp/glibmm-2.32[${MULTILIB_USEDEP}]" DEPEND="${RDEPEND} virtual/pkgconfig" -src_prepare() { - DOCS="AUTHORS ChangeLog NEWS README*" - G2CONF="${G2CONF} $(use_enable doc documentation)" +ECONF_SOURCE="${S}" +multilib_src_prepare() { gnome2_src_prepare } -src_install() { +multilib_src_configure() { + gnome2_src_configure $(use_enable doc documentation) +} + +multilib_src_compile() { + gnome2_src_compile +} + +multilib_src_install() { gnome2_src_install +} +multilib_src_install_all() { rm -fr "${ED}"usr/share/doc/libxml++* + dodoc AUTHORS ChangeLog NEWS README use doc && dohtml docs/reference/html/* }
(In reply to Karl Lindén from comment #2) > +multilib_src_configure() { > + gnome2_src_configure $(use_enable doc documentation) > +} Should be ECONF_SOURCE="${S}" gnome2_src_configure :)
Added, sorry for the very long wait! +*libxmlpp-2.36.0-r1 (22 Mar 2015) + + 22 Mar 2015; Alexandre Rostovtsev <tetromino@gentoo.org> + +libxmlpp-2.36.0-r1.ebuild: + Add multilib support (bug #469180, thanks to Karl Lindén). Install docs + where upstream expects so other *pp docs can link to them.