kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #86984
[Bug 750585] Re: [FFe] support for making linux-libc-dev coinstallable under multiarch
There is one task here in this ticket still marked as open. Anything
left to be done?
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-ti-omap4 in Ubuntu.
https://bugs.launchpad.net/bugs/750585
Title:
[FFe] support for making linux-libc-dev coinstallable under multiarch
Status in “armel-cross-toolchain-base” package in Ubuntu:
Fix Released
Status in “bash-completion” package in Ubuntu:
Triaged
Status in “eglibc” package in Ubuntu:
Fix Released
Status in “gcc-defaults” package in Ubuntu:
Fix Released
Status in “klibc” package in Ubuntu:
Fix Released
Status in “linux” package in Ubuntu:
Fix Released
Status in “linux-ti-omap4” package in Ubuntu:
Invalid
Status in “newlib” package in Ubuntu:
Fix Released
Status in “armel-cross-toolchain-base” source package in Natty:
Fix Released
Status in “bash-completion” source package in Natty:
Won't Fix
Status in “eglibc” source package in Natty:
Fix Released
Status in “gcc-defaults” source package in Natty:
Fix Released
Status in “klibc” source package in Natty:
Fix Released
Status in “linux” source package in Natty:
Fix Released
Status in “linux-ti-omap4” source package in Natty:
Fix Released
Status in “newlib” source package in Natty:
Fix Released
Status in “armel-cross-toolchain-base” source package in Oneiric:
Invalid
Status in “bash-completion” source package in Oneiric:
Won't Fix
Status in “eglibc” source package in Oneiric:
Fix Released
Status in “gcc-defaults” source package in Oneiric:
Fix Released
Status in “klibc” source package in Oneiric:
Fix Released
Status in “linux” source package in Oneiric:
Fix Released
Status in “linux-ti-omap4” source package in Oneiric:
Fix Released
Status in “newlib” source package in Oneiric:
Fix Released
Bug description:
FFe justification: now that multiarch support for runtime libraries in
the base system is available in the archive, the next step in this
process is multiarch coinstallability of -dev packages. Although most
of the remaining work on multiarch -dev can and will take place in ppa
for natty given where we are in the release cycle, any -dev package
tree has at its root linux-libc-dev which is built from the 'linux'
source package - the package which is updated more frequently than any
other by SRU. Rather than trying to keep up with SRUs, or
artificially inflating the version of a linux-libc-dev-only package
build in ppa, it would be welcome if a multiarch-ready linux-libc-dev
could be included in the archive for natty.
Risks: anything that looks directly in /usr/include/asm for headers
will have problems with this change; anything that uses the system
include path from the compiler will not. My best efforts at examining
the archive for this issue (see below for details) have turned up only
four packages in main and universe that are affected: three C library
implementations, and bash-completion. Updating these packages in
concert is manageable (patch for eglibc is ready, patches for the
others are in preparation), but there's always some risk that the text
search on package sources has missed something, and there wouldn't be
room for another full archive rebuild before release to catch other
breakage.
Details:
In order to have coinstallable multiarch -dev packages of any sort, linux-libc-dev first needs to be coinstallable since libc-dev depends on it. This seems to be straightforward to achieve; only the asm directory needs to be moved to the multiarch directory path, all the other header files appear to be (sensibly) architecture-neutral and can be shared between architectures.
The compiler will find /usr/include/<triplet>/asm for the
corresponding architecture with no problems; I've done a number of
test builds that work just fine this way. The only trouble is with
software that walks the filesystem looking for asm/<foo>.h includes
instead of trusting the compiler to resolve them. It's unlikely that
software should need to do this since the asm headers should as a rule
not be directly included from userspace anyway, but the chances are
not zero. I didn't expect nearly as many packages to break as did by
the move to /usr/lib/<triplet>, either, so it seems my faith in the
sanity of upstream build systems is generally misplaced. And I don't
think we have time to discover any resulting issues with another
archive test rebuild and fix the resulting packages before the natty
release.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/armel-cross-toolchain-base/+bug/750585/+subscriptions