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

The purpose of marking a package Multi-Arch: foreign



On Fri, Jan 14, 2022 at 4:42 PM Tong Sun wrote:
>
> On Thu, Jan 13, 2022 at 4:09 PM Debian Bug Tracking System
> <owner@bugs.debian.org> wrote:
> >
> > Your message dated Thu, 13 Jan 2022 21:07:44 +0000
> > with message-id <E1n87Jw-000Iud-Bn@fasolo.debian.org>
> > and subject line Bug#980990: fixed in golang-github-danverbraganza-varcaser 0.0~git20190207.e3fb03e-2
> > has caused the Debian Bug report #980990,
> > regarding mark golang-github-danverbraganza-varcaser-dev Multi-Arch: foreign
> > to be marked as done.
> >
> > This means that you claim that the problem has been dealt with.
> > If this is not the case it is now your responsibility to reopen the
> > Bug report if necessary, and/or fix the problem forthwith.
>
> Hi Helmut,
>
> Sorry for replying late, but it finally got fixed now.
>
> One thing I don't understand about marking a package Multi-Arch:
> foreign -- what would the impact be, e.g., would I be seeing anything
> different in its build,
> https://buildd.debian.org/status/package.php?p=golang-github-danverbraganza-varcaser,
> etc?
>
> Can you explain a bit please? thx!

Hi,

I have a question regarding marking
golang-github-danverbraganza-varcaser-dev Multi-Arch: foreign
what's the purpose of it?

I did find an explanation from https://wiki.debian.org/Multiarch/HOWTO:

> If a package is marked 'Multi-Arch: foreign', then it can satisfy dependencies of a package of a different architecture (e.g 'debhelper:amd64' will satisfy a dependency on debhelper for any-architecture package).

Yet, I'm unable to digest that -- e.g., why an amd64 architecture
needs dependencies of a package from amd64?

Helmut's explanation was:

> easygen cannot be cross built from source, because its dependency on
golang-github-danverbraganza-varcaser-dev is not satisfiable.
In general, Architecture: all packages can never satisfy cross
Build-Depends unless marked Multi-Arch: foreign or annotated :native.

I guess I don't understand the concept and implication of Debian's
cross built, as I see that easygen is being cross built without
'Multi-Arch: foreign', yet golang-github-danverbraganza-varcaser-dev
is not, despite having the 'Multi-Arch: foreign' .

https://buildd.debian.org/status/package.php?p=easygen vs.
https://buildd.debian.org/status/package.php?p=golang-github-danverbraganza-varcaser

Please help.


Reply to: