[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC: use of shlib bump for libc dependency on new multiarch directories?

On Wed, Feb 23, 2011 at 11:15:02PM +0100, Philipp Kern wrote:
> On Wed, Feb 23, 2011 at 01:52:35PM -0800, Steve Langasek wrote:
> > [1] i486 is an arbitrary name that happens to correspond to the base
> > instruction set that was in use on Debian at the time multiarch was first
> > formulated, but it doesn't match the current base instruction set on Debian
> > (i586) or Ubuntu (i686), doesn't match the directory configured in the
> > current eglibc package on Ubuntu (/lib/i686-linux-gnu), and is going to look
> > weird to other distributions when we try to talk to them about this since
> > they've also long since moved to i686 as their base compatibility.

> Sorry to skip multiarch[1], but I need to comment on this one.  Isn't the
> base instruction set still i486?  I still haven't found any practical
> example of a change of ISA between i486 and i586.  For all means they seem
> to be equivalent, with i686 being the next break.  The only exception that
> might be is that 486 can actually lack FPUs, while Pentiums don't.  But
> for all practically relevant cases I'd assume that they don't, and I'd be
> surprised if we'd cater for that.

Ah, I don't know the details; I take this as gospel from the GCC maintainers
that There Are Differences.  Perhaps the differences are only optimization
rather than compatibility; but regardless, given that most distros use
i586-linux-gnu or i686-linux-gnu as their toolchain triplet, i486-linux-gnu
is an odd bird to propose to standardize on.

> Out of curiosity: Where will optimized libraries be placed?

Multiarch can be combined transparently with hwcaps; so you can have
/lib/i386-linux-gnu/i686/cmov/, /lib/alpha-linux-gnu/ev67/, etc.  Multiarch
also does not require that the libraries installed to the base directory are
backwards-compatible with anything that you don't care about, so it's fine
to have i686 libraries directly in /lib/i386-linux-gnu on a distro whose
baseline is i686, while they're in a hwcap directory for another distro.

> [1] As you said pre-depends are messy but the safe bet.  It would be best if
>     we could somehow ensure that libc6 is upgraded first and that everything
>     needed for the unpack is still there at that point (i.e. some liberal
>     use of pre-depends somewhere in just the base set instead of everywhere).

Ok.  I think that's certainly going to be more manageable than trying to add
pre-depends to everything, anyway.  Any concerns about bumping the
dependency for all libraries via dpkg-shlibdeps?

Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature

Reply to: