On Thu, Dec 05, 2024 at 08:38:35AM +0100, Helmut Grohne wrote:
> This is the stage I am concerned about. You claim that it would not
> matter whether the package is all or any, but my experience is
> otherwise. With the exception of linux, the cross bootstrap tooling does
> not build any Arch:all packages at all. Adding that support has not been
> trivial and the way it is implemented still is violating internal
> principles making its code fragile. In particular, for each combination
> of package name and architecture, there would only be one binary package
> - with the exception of linux where the would now be two (the unpatched
> one from the archive and the patched one). I'd have to somehow remove
> linux-libc-dev from an unstable amd64 mirror.

So this tooling does
- patch the source,
- _not_ change the version,
- build non-all?

This sounds broken, as it already relies on those packages producing
compatible all/non-all packages from two different sources.  Yes, in
practice this will work.

To make the double package problem easier, just change the version with
a sufficiently high epoch?

> Instead, the question becomes how we can make that patching easy and the
> disagreement becomes whether Arch:all makes that sufficiently easy. Even
> though I cite building Arch:all as difficult in the bootstrap context,
> the more pressing issue from my side is the inability to tell whether a
> rebuild is needed by looking at package relations. Dealing with
> unsatisfiable dependencies is something, I've developed ways to deal
> with. Dealing with wrongly satisfied dependencies is a totally different
> thing to me. As it stands, linux currently is the only package involved
> in architecture cross bootstrap that produces false positives in
> dependency satisfiability tests used for scheduling builds.

What kind of information can this dependency satisfiability test use?

Something like this?

| Provides:
|   linux-libc-dev-supports (= amd64-0),
|   linux-libc-dev-supports (= arm64-0),
|   linux-libc-dev-supports-multiarch (= aarch64-linux-gnu-0),
|   linux-libc-dev-supports-multiarch (= x86-64-linux-gnu-0),

Bastian

-- 
Vulcans worship peace above all.
                -- McCoy, "Return to Tomorrow", stardate 4768.3

Reply via email to