Public bug reported:

## TL;DR ##

cross-toolchain-base-ports 38ubuntu1 builds dependencies to
libnss-nis-<arch>-cross at version 2.32-0ubuntu2cross1, but misses to
build those packages themselve.
Most likely, but not surely yet, due to the split of libnss-nisplus from glibc.

## Detail ##

Hi,
I was first seeing this in a qemu build hanging as dependency wait which worked
a day before.
=> https://launchpad.net/ubuntu/+source/qemu/1:5.0-5ubuntu8/+build/19940985
But the build fails at
  Missing build dependencies: libnsl-dev-alpha-cross


At first it seemed the Problem came with new glibc:
 libc6.1-dev-alpha-cross | 2.31-0ubuntu9cross1   | groovy/universe          | 
all
 libc6.1-dev-alpha-cross | 2.32-0ubuntu2cross1   | groovy-proposed/universe | 
all

Dependency tree - 2.31-0ubuntu9cross1 (worked)
libc6.1-dev-alpha-cross
 \- libc6.1-alpha-cross
 \- linux-libc-dev-alpha-cross

Dependency tree - 2.32-0ubuntu2cross1 (fails)
libc6.1-dev-alpha-cross
 \- libc6.1-alpha-cross
 \- linux-libc-dev-alpha-cross

In essence we use gcc-s390x-linux-gnu,gcc-alpha-linux-gnu,
gcc-powerpc64-linux-gnu,gcc-sparc64-linux-gnu,gcc-hppa-linux-gnu,
gcc-riscv64-linux-gnu for different ROM builds and
libc6.1-dev-alpha-cross for a corner case.
They will pull in their respective cross builds packages:
E.g.: gcc-s390x-linux-gnu
       \- gcc-10-s390x-linux-gnu
          \- libgcc-10-dev-s390x-cross
          \- libc6-dev-s390x-cross

It is not just libnsl-dev-alpha-cross, all such dependencies now explode:
Here from build logs:
The following packages have unmet dependencies:
 libc6-hppa-cross : Depends: libnss-nis-hppa-cross but it is not installable
                    Depends: libnss-nisplus-hppa-cross but it is not installable
 libc6-ppc64-cross : Depends: libnss-nis-ppc64-cross but it is not installable
                     Depends: libnss-nisplus-ppc64-cross but it is not 
installable
 libc6-riscv64-cross : Depends: libnss-nis-riscv64-cross but it is not 
installable
                       Depends: libnss-nisplus-riscv64-cross but it is not 
installable
 libc6-s390x-cross : Depends: libnss-nis-s390x-cross but it is not installable
                     Depends: libnss-nisplus-s390x-cross but it is not 
installable
 libc6-sparc64-cross : Depends: libnss-nis-sparc64-cross but it is not 
installable
                       Depends: libnss-nisplus-sparc64-cross but it is not 
installable
 libc6.1-alpha-cross : Depends: libnss-nis-alpha-cross but it is not installable
                       Depends: libnss-nisplus-alpha-cross but it is not 
installable
 libc6.1-dev-alpha-cross : Depends: rpcsvc-proto-alpha-cross but it is not 
installable
                           Depends: libtirpc-dev-alpha-cross but it is not 
installable
                           Depends: libnsl-dev-alpha-cross but it is not 
installable

This is reproducible as easy as going into groovy proposed (e.g. container)
$ apt install gcc-alpha-linux-gnu
...
The following packages have unmet dependencies:
 libc6.1-alpha-cross : Depends: libnss-nis-alpha-cross but it is not installable
                       Depends: libnss-nisplus-alpha-cross but it is not 
installable
E: Unable to correct problems, you have held broken packages.

This repeats for all arches cross toolchains as outlined above.

The dependency is new in the new version of the packages:

I wondered if I might look the wrong way, but then on IRC I saw:
  [09:25] <vorlon> doko: hmm so, Broken libc6-dev-i386-cross:amd64
  Depends on rpcsvc-proto-i386-cross:amd64
Which is part of the same scope.

Also clearly the new version is what adds the bad dependencies:

# apt-cache show libc6-riscv64-cross | grep -e ^Vers -e ^Dep
Version: 2.32-0ubuntu2cross1
Depends: libnss-nis-riscv64-cross, libnss-nisplus-riscv64-cross
Version: 2.31-0ubuntu9cross1

That is out of src cross-toolchain-base-ports:
  cross-toolchain-base-ports | 36ubuntu4   | groovy/universe          | source
  cross-toolchain-base-ports | 38ubuntu1   | groovy-proposed/universe | source

Which seems to generate versions along glibc as the packages are then
versioned like: "2.32-0ubuntu2cross1"

I would assume that this is cross-toolchain-base-ports not yet considering
src:libnss-nisplus which is new in groovy and states:
Description-en: NSS module for using NIS+ as a naming service
 This package provides a Name Service Switch that allows your NIS+ server
 act as a name service. This means providing user account information,
 group id's, host information, aliases, netgroups, and basically anything
 else that you would normally get from /etc flat files.
 .
 This module was formerly part of glibc, but is now standalone to be able
 to link against TI-RPC for IPv6 support.

So maybe that needs to be considered somehow within cross-toolchain-
base-ports?

P.S. also adding glibc and gcc-10 bug tasks, but mostly for tracking as
those are tightly coupled

** Affects: cross-toolchain-base-ports (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: gcc-10 (Ubuntu)
     Importance: Undecided
         Status: Incomplete

** Affects: glibc (Ubuntu)
     Importance: Undecided
         Status: Incomplete


** Tags: update-excuse

** Also affects: gcc-10 (Ubuntu)
   Importance: Undecided
       Status: New

** Also affects: glibc (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: gcc-10 (Ubuntu)
       Status: New => Incomplete

** Changed in: glibc (Ubuntu)
       Status: New => Incomplete

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1895632

Title:
  builds for libc 2.32 break all cross toolchains - missing libnss-
  nis-<arch>-cross

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cross-toolchain-base-ports/+bug/1895632/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to