Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-07 Thread Enrico Weigelt
* David Leverton levert...@googlemail.com schrieb:

  And for Distros, it doesnt make sense to try to support anything imaginable.
 
 Not breaking things that already work would be a decent compromise.

Any concerete example on what would break if .la files aren't 
installed anymore ?

  I'm now working in embedded area (where static linking is quite common)
  for about 10yrs, and pkg-config has proven quite well here. (packages
  that dont provide .pc-descriptor yet, simply have to be fixed to do
  so ;-p). Libtool, on the other hand, always had been a nightmare.
 
 What about things that don't use pkg-config? 

As said above: fix them.

 If you say we don't support that, modify it to use pkg-config, 
 does that mean you're willing to make Gentoo incompatible with
 Linux in general? 

This doesn't have to do anything w/ Linux - it's an purely userland
(and build-time only) issue, applicable to dozens of platforms.

When it comes to Gentoo (and maybe other distros) we only have to 
fix a few packages which don't use or support pkg-config yet,
but do libtool-based imports. In recent years, those became quite rare.

 (That question isn't just about .la files, it applies to any change
 versus upstream that affects interfaces between components.)

Are you sure, these .la files are really part of the interface for
most packages, but not just an side effect of using libtool ?

 Just to reiterate, I'm not trying to block anything here.  I'm just
 asking for a small override so people with use-cases you (in general,
 not a specific person) haven't thought of can be happy. 

In this case you'd need some kind of switch. Okay, let's just
introduce some make.conf variable for that and tell everybody
that there's no support for it whatsoever.


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--



Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-06 Thread Alec Warner
The portion that is not clear to me is why there is so much animosity
against a var to enable .la files.

I find the folks commenting to be very technical.  I trust that
removing .la files is the right choice to make here.  What I don't
grok is when someone makes a statement like 'removing .la files will
not break anything' or 'I understand exactly what affects this change
will have on the entire tree and the affects are trivial.'  I don't
think any one person can make statements like that.  The distribution
is large, our userbase is large, and the risk is difficult to
quantify.

Because of the above, adding a toggle to roll back the change seems
like a reasonable request.  If the idea is to add a remove_la_files
type function to eutils then the toggle can be added in a centralized
place.  If this change goes horribly awry and breaks the distribution
(or some subset of users) everyone has an easy revert (set some envvar
and rebuild everything...)

What I do not want to see is editing thousands of ebuilds to
'rollback' the change.  Nor do I want to see some complex procedure
where we have to slip in a different implementation of remove_la_files
to inhibit their deletion.  The work to add a rollback trigger is all
of 5 lines of bash; so why would we avoid adding it?

-A

On Mon, Oct 4, 2010 at 7:13 PM, Diego Elio Pettenò flamee...@gmail.com wrote:
 Il giorno sab, 02/10/2010 alle 19.54 +, Jorge Manuel B. S. Vicetto
 ha scritto:

 With that goal in mind, I'd like to ask anyone with arguments about
 this
 issue to present them as a reply to this thread.

 I'm going instead to link my latest blog post on the matter where I
 summarised most of the points. Why a blog post? Because so I have it
 available as reference for the future together with all the others.
 Don't like that? Sorry, I don't care; I'm presenting information, if you
 choose to not even look at it because I serve it via HTTP rather than a
 mailing list, do state so; I'll make sure to ignore any of your opinions
 in the future.

 Now, stop with the less-than-friendly remarks, the content is at

 http://blog.flameeyes.eu/2010/10/04/libtool-archives-and-their-pointless-points

 Also, I would like to ask again that if you're going to argue you never
 know who might use them, you're going to have to actually understand
 _what_ the files are used for, _which_ software uses them, and come up
 with a use case for them, not a vague oh there might be a project that
 use them.

 I might disagree with Nirbheek's assessment with the severity of the hit
 on users (or rather, on the relative severity of it compared with the
 alternative), but his reasoning is at least sound and based on real
 concerns. Things like taking in account what isn't in the
 tree (without actually having a clue on what .la files are for),
 looking for alternative approaches (to do what, exactly?), or fixing
 what needs .la files (why? if the package needs its own .la files to be
 around and nothing else, just leave it be!) are not concerns that I care
 about because they are not based on actual usefulness of .la files but
 on vague ideas of either fending off the finding of a solution (I don't
 want to know why, sincerely) or the idea that .la files are a binary
 situation where you shouldn't have any at all.

 From my point of view, the only points worth to be raised are Nirbheek's
 (even though I disagree, as I said), Rémi's (which I don't think he
 either considers showstoppers at this point) and those not-yet-spoken
 off by Prefix (they might support architectures where .la files are
 worth something).

 Other than that, do we really have a problem here? Nirbheek's point
 about stable will become moot next month; since we shouldn't revert the
 changes that did go to stable, we're left with two main issues here:

  - is it okay to drop them from stable? my personal opinion here is to
 side with Samuli and say yes; on the other hand, since by the looks of
 it, and the status report Zac gave us, we're going to need just one
 extra month before just telling users install lafilefixer and update to
 stable portage 2.1.9.13, I think we can avoid doing any more of those
 changes till then — in stable that is; this includes both non-revbumps
 and stable requests of packages dropping them;
  - what about Rémi's 2b concern? Sincerely I have worked for a long time
 with static linking on my job and I don't see libtool files being so
 excessively necessary; the only problem comes with transitive
 dependencies, but most packages already take care of that; even if you
 do not use pkg-config, you have other means to recover it.

 On the other hand, I propose that if somebody have time on their hands
 (I sincerely don't, unless somebody's going to hire me to, and I'm dead
 serious), lafilefixer could be improved, and quick-stabled together with
 the new portage in case, so that it saves the modified metadata in the
 VDB.

 --
 Diego Elio Pettenò — “Flameeyes”
 http://blog.flameeyes.eu/

 If you 

Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-05 Thread Ciaran McCreesh
On Tue, 05 Oct 2010 04:13:04 +0200
Diego Elio Pettenò flamee...@gmail.com wrote:
 I'm going instead to link my latest blog post on the matter where I
 summarised most of the points. Why a blog post? Because so I have it
 available as reference for the future together with all the others.
 Don't like that? Sorry, I don't care; I'm presenting information, if
 you choose to not even look at it because I serve it via HTTP rather
 than a mailing list, do state so

I believe one of the larger objections to you providing information via
blog posts is that comments with constructive criticism or tricky
questions have a mysterious habit of not showing up there.

 I'll make sure to ignore any of your opinions in the future.

Unfortunately for Gentoo, many of the opinions you routinely ignore
happen to be useful ones.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-05 Thread Enrico Weigelt
* Diego Elio Pettenò flamee...@gmail.com schrieb:

 http://blog.flameeyes.eu/2010/10/04/libtool-archives-and-their-pointless-points

ACK.

IMHO, removing the .la files should be under invididual ebuild
(or eclass) control, and we also should try to get it fixed 
at the source (if possible).

 Also, I would like to ask again that if you're going to argue you never
 know who might use them, you're going to have to actually understand
 _what_ the files are used for, _which_ software uses them, and come up
 with a use case for them, not a vague oh there might be a project that
 use them.

That whole you'll never know who might use them-idea is a bad idea,
IMHO. By that doctrine you can never get rid of old crap. Sometimes
an cut has to be made.

And for Distros, it doesnt make sense to try to support anything imaginable.
Instead there's limited (yet large) set of packages that are supported.
We can track the dependencies and so know who's using some particular
package (inside the distro). So we can actually test if removing la-files
from one invidual package will break anything. Maybe it's even worth
to make an automatic testsuite.

 From my point of view, the only points worth to be raised are Nirbheek's
 (even though I disagree, as I said), Rémi's (which I don't think he
 either considers showstoppers at this point) and those not-yet-spoken
 off by Prefix (they might support architectures where .la files are
 worth something).

Are there any platforms where .la files are really worth anything ?
(in Gentoo's scope) ? And *if* there're some - could there be better
solutions ?

BTW: In general, the idea of having a metadata file per library is
quite nice. (if done well, even better than the pkg-config approach).
But libtool implements this particular bad - it doesnt have a proper
abstraction (actually, libtool is not an abstraction at all, as eg.
unitool does, but just an command line filter doing mysterious things).

*If* someone here really likes the per-library-metadata idea, then
let's start an own project for that (knowing that'll be just reasearch
and not production-grade for quite some time). But that yet goes far
off-scope of distros (until a reasonable amount of packages adopted it).

  - is it okay to drop them from stable? my personal opinion here is to
 side with Samuli and say yes; on the other hand, since by the looks of
 it, and the status report Zac gave us, we're going to need just one
 extra month before just telling users install lafilefixer and update to
 stable portage 2.1.9.13, I think we can avoid doing any more of those
 changes till then ??? in stable that is; this includes both non-revbumps
 and stable requests of packages dropping them;

Admitting I've not fully followed this thread, but IMHO portage changes
aren't needed here - just put the la-skipping/-removal into individual
ebuilds. Portage can provide generic functions for that later, which
then can be used by newer ebuilds, but doesnt need to.

  - what about Rémi's 2b concern? Sincerely I have worked for a long time
 with static linking on my job and I don't see libtool files being so
 excessively necessary; the only problem comes with transitive
 dependencies, but most packages already take care of that; even if you
 do not use pkg-config, you have other means to recover it.

I'm now working in embedded area (where static linking is quite common)
for about 10yrs, and pkg-config has proven quite well here. (packages
that dont provide .pc-descriptor yet, simply have to be fixed to do
so ;-p). Libtool, on the other hand, always had been a nightmare.


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 phone:  +49 36207 519931  email: weig...@metux.de
 mobile: +49 151 27565287  icq:   210169427 skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--



Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-05 Thread David Leverton
On 5 October 2010 23:38, Enrico Weigelt weig...@metux.de wrote:
 And for Distros, it doesnt make sense to try to support anything imaginable.

Not breaking things that already work would be a decent compromise.

 I'm now working in embedded area (where static linking is quite common)
 for about 10yrs, and pkg-config has proven quite well here. (packages
 that dont provide .pc-descriptor yet, simply have to be fixed to do
 so ;-p). Libtool, on the other hand, always had been a nightmare.

What about things that don't use pkg-config?  If you say we don't
support that, modify it to use pkg-config, does that mean you're
willing to make Gentoo incompatible with Linux in general?  (That
question isn't just about .la files, it applies to any change versus
upstream that affects interfaces between components.)

Just to reiterate, I'm not trying to block anything here.  I'm just
asking for a small override so people with use-cases you (in general,
not a specific person) haven't thought of can be happy.  It doesn't
have to be officially supported or anything.  Is that really so
unreasonable?



Re: [gentoo-dev] Re: .la files and their future on Gentoo

2010-10-04 Thread Richard Freeman
On 10/03/2010 09:26 PM, Duncan wrote:
 The problem is that in-tree is a reasonably bounded set of builds, while 
 out-of-tree is unlimited.  Practically speaking, I simply don't see how 
 Gentoo can be concerned with out-of-tree in general.

If any other distro had that attitude Gentoo (and other source-based
distros) would be the only ones that provided packages for GCC, since no
other distro requires a functioning toolchain to install packages.

Libraries don't exist just to run packaged programs - they're also
needed to build new programs.  So, this is a use case that needs to be
considered.  Probably one of the reasons that Gentoo is popular among
developers is that it provides a very complete toolchain and libraries/etc.

That said, supporting this use case should not interfere with more
mainstream use of the distro.  I like the USE flag proposal because it
lets us have our cake and eat it too.  Those who don't need .la files
don't get them except where absolutely essential, and those who need and
are willing to live with tons of them can have it their way.

Gentoo is about choice...

Rich



[gentoo-dev] Re: .la files and their future on Gentoo

2010-10-04 Thread Diego Elio Pettenò
Il giorno sab, 02/10/2010 alle 19.54 +, Jorge Manuel B. S. Vicetto
ha scritto:
 
 With that goal in mind, I'd like to ask anyone with arguments about
 this
 issue to present them as a reply to this thread. 

I'm going instead to link my latest blog post on the matter where I
summarised most of the points. Why a blog post? Because so I have it
available as reference for the future together with all the others.
Don't like that? Sorry, I don't care; I'm presenting information, if you
choose to not even look at it because I serve it via HTTP rather than a
mailing list, do state so; I'll make sure to ignore any of your opinions
in the future.

Now, stop with the less-than-friendly remarks, the content is at

http://blog.flameeyes.eu/2010/10/04/libtool-archives-and-their-pointless-points

Also, I would like to ask again that if you're going to argue you never
know who might use them, you're going to have to actually understand
_what_ the files are used for, _which_ software uses them, and come up
with a use case for them, not a vague oh there might be a project that
use them.

I might disagree with Nirbheek's assessment with the severity of the hit
on users (or rather, on the relative severity of it compared with the
alternative), but his reasoning is at least sound and based on real
concerns. Things like taking in account what isn't in the
tree (without actually having a clue on what .la files are for),
looking for alternative approaches (to do what, exactly?), or fixing
what needs .la files (why? if the package needs its own .la files to be
around and nothing else, just leave it be!) are not concerns that I care
about because they are not based on actual usefulness of .la files but
on vague ideas of either fending off the finding of a solution (I don't
want to know why, sincerely) or the idea that .la files are a binary
situation where you shouldn't have any at all.

From my point of view, the only points worth to be raised are Nirbheek's
(even though I disagree, as I said), Rémi's (which I don't think he
either considers showstoppers at this point) and those not-yet-spoken
off by Prefix (they might support architectures where .la files are
worth something).

Other than that, do we really have a problem here? Nirbheek's point
about stable will become moot next month; since we shouldn't revert the
changes that did go to stable, we're left with two main issues here:

 - is it okay to drop them from stable? my personal opinion here is to
side with Samuli and say yes; on the other hand, since by the looks of
it, and the status report Zac gave us, we're going to need just one
extra month before just telling users install lafilefixer and update to
stable portage 2.1.9.13, I think we can avoid doing any more of those
changes till then — in stable that is; this includes both non-revbumps
and stable requests of packages dropping them;
 - what about Rémi's 2b concern? Sincerely I have worked for a long time
with static linking on my job and I don't see libtool files being so
excessively necessary; the only problem comes with transitive
dependencies, but most packages already take care of that; even if you
do not use pkg-config, you have other means to recover it.

On the other hand, I propose that if somebody have time on their hands
(I sincerely don't, unless somebody's going to hire me to, and I'm dead
serious), lafilefixer could be improved, and quick-stabled together with
the new portage in case, so that it saves the modified metadata in the
VDB.

-- 
Diego Elio Pettenò — “Flameeyes”
http://blog.flameeyes.eu/

If you found a .asc file in this mail and know not what it is,
it's a GnuPG digital signature: http://www.gnupg.org/



signature.asc
Description: This is a digitally signed message part


[gentoo-dev] Re: .la files and their future on Gentoo

2010-10-04 Thread Duncan
Richard Freeman posted on Mon, 04 Oct 2010 11:19:29 -0400 as excerpted:

 On 10/03/2010 09:26 PM, Duncan wrote:
 The problem is that in-tree is a reasonably bounded set of builds,
 while out-of-tree is unlimited.  Practically speaking, I simply don't
 see how Gentoo can be concerned with out-of-tree in general.
 
 If any other distro had that attitude Gentoo (and other source-based
 distros) would be the only ones that provided packages for GCC, since no
 other distro requires a functioning toolchain to install packages.

Interesting viewpoint.  But I disagree that it is so.  Rather, for binary 
distros, while gcc and the rest of the toolchain may not be /required/ for 
user-side maintenance of the distribution itself, they're certainly 
packages that provide a specific set of functionality.  As such, they're 
included in general distributions where such functionality may be desired, 
for much the same reason KDE or LAMP are included -- they are useful 
enough for a wide enough segment of the userbase to justify inclusion.  
OTOH, more specialized distributions may not include them, because they're 
simply not needed for the designated target usage.

In gentoo-speak, binary distributions include toolchain packages not as 
part of @system, but for those who wish to use them in their @world.

If Gentoo were therefore to take a binary distro approach, we'd do split-
packages.  Much as the binary distros have package-x and package-x-dev 
(which I'd guess include the *.la files, BTW), we'd have package-x and 
package-x-la, or some such.

Of course, the gentoo version of that is USE flags, FEATURES, etc.  Which 
means we're in violent agreement! =:^) and brings us back to...

 I like the USE flag proposal because it lets us have our cake and eat it
 too.  Those who don't need .la files don't get them except where
 absolutely essential, and those who need and are willing to live with
 tons of them can have it their way.
 
 Gentoo is about choice...

The key-variable (whether USE flag, FEATURE, or a bit more hidden) based 
trigger does seem the pragmatic solution here.

Flameeyes, yes, I understand your objection to it on technical grounds as 
unnecessary complexity.  And I freely admit I'm not technically astute 
enough (in reality, probably few Gentoo devs are, with certain noted 
exceptions, of course) to debate you on the merits, there.  On the 
technical side, AFAIAC [1] you win by stipulation.

But there's more to life than being technically correct.  A centralized
la-file-stripper implementation seems to make sense in any case, and once 
it's centralized, exposing a control variable for it is little additional 
trouble.  Given the choice between allowing for the control variable in 
ordered to establish the necessary consensus and getting it deployed in 
months, vs either continuing to debate it for years or simply steamrolling 
it thru without that option, whatever the technical merits, I agree with 
rich0, the control variable seems the /clear/ winner, here.

Assuming that's the way it ultimately goes, what remains is to settle on 
the nature of the control variable.  There are merits in something 
slightly hidden, but OTOH, the USE flag idea has merits of its own.  It 
seems to me that the usual solution in similar cases is a USE flag, but 
masked.  So count this as a vote for a masked USE flag. =:^)

---
[1] AFAIAC: As Far as I am concerned:
http://www.onelook.com/cgi-bin/cgiwrap/bware/dofind.cgi?word=AFAIAC

-- 
Duncan - List replies preferred.   No HTML msgs.
Every nonfree program has a lord, a master --
and if you use the program, he is your master.  Richard Stallman




[gentoo-dev] Re: .la files and their future on Gentoo

2010-10-03 Thread Duncan
David Leverton posted on Sun, 03 Oct 2010 16:39:39 +0100 as excerpted:

 Also, not every piece of software that people might want to use is going
 to go into the main tree - people can use Gentoo to develop their own
 software (and might have their own ideas (or their company/project's
 ideas) about what parts of libtool it's appropriate to rely on), use
 packages from overlays, compile other people's software outside the
 package management system, run precompiled binaries, etc.  Again, from
 here I'm sure you can have a big discussion about whether libraries in
 the tree exist only to support applications in the tree, or whether
 they're products (for want of a better word) in their own right.

The problem is that in-tree is a reasonably bounded set of builds, while 
out-of-tree is unlimited.  Practically speaking, I simply don't see how 
Gentoo can be concerned with out-of-tree in general, altho there's 
arguably a case that could be made for drawing the line /somewhat/ wider, 
say including official overlays as well, but even that very quickly 
becomes problematic as you're now expecting every dev with a candidate 
package to be familiar with every overlay it might affect.

No offense intended, and you do sort of make the point yourself with the 
minor issue thing, but arguably, this would be an /appropriate/ use of 
flameeyes' people opposed are simply throwing up illegitimate blockages 
complaint (where the binpkgs point wasn't, because that has long been a 
supported feature of Gentoo's primary PM and while breaking it may indeed 
be necessary, it's a legitimate point to raise).

OTOH, you do rightfully call it a minor point, perhaps one that shouldn't 
be a blocker, but one that should at least be raised.  Raising the point, 
minor and non-block tho it may be, in the discussion of record is a /good/ 
thing.  But I don't see how it's practical to do more than simply 
acknowledge it and say we can't let that block it (... except).

EXCEPT that the centralized controlling variable solution, via a removal 
method in EUTILS or the like, DOES make sense for any of a number of 
reasons, including that (a) centralizing the implementation is a good idea 
anyway, (b) once centralized, the implementation cost of a controlling 
variable is quite low, and (c), that makes it easy enough to control it 
either per-package or globally, using existing environment control 
solutions.

But beyond that, and for sub-package-level control, I simply don't see 
that it's practical.

But luckily, the above seems to fit your request as-is. =:^)  And as for 
sub-package-level, individual maintainers are still free to do what they 
believe is necessary with their packages, anyway.  (And for some packages 
and usages it /is/ arguably necessary.)

-- 
Duncan - List replies preferred.   No HTML msgs.
Every nonfree program has a lord, a master --
and if you use the program, he is your master.  Richard Stallman