From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: pacho@gentoo.org
Subject: Re: [gentoo-dev] [PATCH] autotools-multilib: wrapper eclass for multilib builds.
Date: Sun, 23 Sep 2012 13:13:46 +0200 [thread overview]
Message-ID: <20120923131346.0f7eae26@pomiocik.lan> (raw)
In-Reply-To: <1348398236.2085.83.camel@belkin4>
[-- Attachment #1: Type: text/plain, Size: 4684 bytes --]
On Sun, 23 Sep 2012 13:03:56 +0200
Pacho Ramos <pacho@gentoo.org> wrote:
> El dom, 23-09-2012 a las 12:40 +0200, Michał Górny escribió:
> > On Sun, 23 Sep 2012 12:33:58 +0200
> > Pacho Ramos <pacho@gentoo.org> wrote:
> >
> > > El dom, 23-09-2012 a las 11:56 +0200, Michał Górny escribió:
> > > > On Sun, 23 Sep 2012 11:07:30 +0200
> > > > Thomas Sachau <tommy@gentoo.org> wrote:
> > > >
> > > > > Matt Turner schrieb:
> > > > > > On Sat, Sep 22, 2012 at 2:24 PM, Michał Górny <mgorny@gentoo.org> wrote:
> > > > > >> It is a simple eclass using autotools out-of-source builds to build
> > > > > >> packages for multiple ABIs when multilib is supported.
> > > > > >
> > > > > > Thanks a lot, Michał! This looks good to me.
> > > > > >
> > > > > >> Use case: xorg packages, ask Matt.
> > > > > >
> > > > > > So the idea is that users want up-to-date 32-bit drivers for games and
> > > > > > WINE. The emul- packages aren't a very good solution for a number of
> > > > > > reasons.
> > > > > >
> > > > > > I'd like to add multilib USE flags to Mesa and thus its dependencies.
> > > > > > I realized that almost everything in x11-libs/ could be converted very
> > > > > > easily, which would allow us to get rid of emul-linux-x86-xlibs in
> > > > > > addition to emul-linux-x86-opengl.
> > > > > >
> > > > > >
> > > > >
> > > > > This looks like a shortened duplication of a subset of multilib-portage
> > > > > features. While this wont hurt multilib-portage (since it does exclude
> > > > > most actions on ebuilds with USE=multilib), it will mean a rewrite for
> > > > > many ebuilds, which then again need another rewrite (or more likely
> > > > > revert), when multilib-portage is accepted in a future EAPI.
> > > >
> > > > s/when/if/
> > > >
> > > > > So i would prefer some help/support with multilib-portage to get it
> > > > > accepted sooner, instead of this additional workaround for a subset of
> > > > > packages.
> > > >
> > > > I prefer the simpler solution.
> > > >
> > > > > P.S.: I know, that users, who want up-to-date 32bit drivers for games
> > > > > and wine do use multilib-portage, so we already have a working solution
> > > > > for this issue.
> > > >
> > > > They will no longer have to do that.
> > > >
> > >
> > > I would prefer if eclass way could be extended to packages not using
> > > autotools too, otherwise, we will still need emul packages for, for
> > > example, qt libs. If that would be possible via eclass, maybe
> > > multilib-portage wouldn't be needed but, if not, we will still need it
> > > and, then, would be nice if this inclussion for autotools packages
> > > wouldn't cause more problems to get the "strong" solution land in the
> > > "near" future :/
> > >
> > > The simpler solution (eclass) looks fine to me, but it would need to be
> > > extended to more packages than autotools based ones to let it replace
> > > portage-multilib/emul packages
> >
> > Qt uses cmake, doesn't it?
> >
> > I don't mind having cmake-multilib as well? We could probably move
> > the foreach_abi() function to some more common eclass, like multilib
> > eclass.
> >
>
> Looks interesting, yes, it uses cmake. I guess we would need to move all
> packages needing 32bits libs to this eclasses. Are you sure wouldn't be
> better to try to go to an "upper" level like Alexis Ballier suggested
> some messages ago?:
> "On Sat, 22 Sep 2012 23:24:46 +0200
> Michał Górny <mgorny@gentoo.org> wrote:
>
> > It is a simple eclass using autotools out-of-source builds to build
> > packages for multiple ABIs when multilib is supported.
> >
>
> to some extent, can't you do the same by unpacking twice to different
> $S and calling src_prepare/compile/install instead of their
> autotools-utils counterpart with tweaked $S so that it works with almost
> every ebuild ?
>
> -- this really starts to resemble multilib portage :)"
>
> That would be better as there are a ton of ebuilds not inheritting
> autotools-utils.eclass even being autotools based (think for example in
> gnome packages or many others)
You could fix those ebuilds to inherit it too ;). autotools-utils was
especially designed to use out-of-source builds for multilib
in the future.
I'm afraid the 'upper level' is technically impossible without either
going into PM itself (which means waiting for EAPI 6 at least
and getting some scary logic into it) or reinventing the phases alike
ruby-ng/python-distutils-ng. Well, the latter may be useful to some
degree; still, it would require each ebuild to redefine all phases.
--
Best regards,
Michał Górny
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 316 bytes --]
next prev parent reply other threads:[~2012-09-23 11:14 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-22 21:24 [gentoo-dev] [PATCH] autotools-multilib: wrapper eclass for multilib builds Michał Górny
2012-09-22 21:44 ` Luca Barbato
2012-09-22 22:02 ` Michał Górny
2012-09-23 0:46 ` Alexis Ballier
2012-09-23 7:21 ` Michał Górny
2012-09-23 15:47 ` Alexis Ballier
2012-09-23 16:31 ` Michał Górny
2012-09-24 15:17 ` Alexis Ballier
2012-09-24 17:32 ` Michał Górny
2012-09-24 17:53 ` Alexis Ballier
2012-09-24 18:12 ` Michał Górny
2012-09-24 19:16 ` Alexis Ballier
2012-09-24 20:47 ` Michał Górny
2012-09-24 21:19 ` Alexis Ballier
2012-09-24 21:51 ` Michał Górny
2012-09-24 21:59 ` Alexis Ballier
2012-09-24 22:10 ` Michał Górny
2012-09-24 22:22 ` Alexis Ballier
2012-09-25 0:44 ` Matt Turner
2012-09-25 11:37 ` Alexis Ballier
2012-09-23 1:54 ` Matt Turner
2012-09-23 1:59 ` Diego Elio Pettenò
2012-09-23 3:42 ` Matt Turner
2012-09-23 16:07 ` Diego Elio Pettenò
2012-09-23 16:57 ` Matt Turner
2012-09-23 9:07 ` Thomas Sachau
2012-09-23 9:56 ` Michał Górny
2012-09-23 10:02 ` hasufell
2012-09-23 10:40 ` Michał Górny
2012-09-23 12:05 ` hasufell
2012-09-23 12:30 ` Michał Górny
2012-09-23 17:01 ` Matt Turner
2012-09-23 19:16 ` Zac Medico
2012-09-23 10:33 ` Pacho Ramos
2012-09-23 10:40 ` Michał Górny
2012-09-23 11:03 ` Pacho Ramos
2012-09-23 11:13 ` Michał Górny [this message]
2012-09-23 11:30 ` Pacho Ramos
2012-09-23 11:57 ` Michał Górny
2012-09-23 14:26 ` Peter Stuge
2012-09-23 16:32 ` Michał Górny
2012-09-24 3:18 ` Ben de Groot
2012-09-23 11:52 ` Thomas Sachau
2012-09-23 12:18 ` Pacho Ramos
2012-09-23 14:49 ` Thomas Sachau
2012-09-25 13:21 ` Alexis Ballier
2013-01-02 23:25 ` Pacho Ramos
2013-01-03 10:44 ` Thomas Sachau
2013-01-14 18:04 ` Alexis Ballier
2013-01-14 18:45 ` Michał Górny
2013-01-03 0:14 ` Peter Stuge
2012-09-23 17:07 ` Matt Turner
2012-09-23 12:30 ` Pacho Ramos
2012-09-23 17:10 ` Matt Turner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120923131346.0f7eae26@pomiocik.lan \
--to=mgorny@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
--cc=pacho@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox