Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1235890

Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using

From Simon Josefsson <simon@josefsson.org>
Newsgroups linux.debian.bugs.dist, linux.debian.policy
Subject Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using
Date 2025-03-03 12:10 +0100
Message-ID <KmbQl-3hOO-7@gated-at.bofh.it> (permalink)
References (5 earlier) <Kc3U5-e4wk-5@gated-at.bofh.it> <IuGI1-7dex-1@gated-at.bofh.it> <KmbQl-3hOO-9@gated-at.bofh.it> <IuGI1-7dex-1@gated-at.bofh.it> <KmbQl-3hOO-9@gated-at.bofh.it>
Organization linux.* mail to news gateway

Cross-posted to 2 groups.

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Maytham Alsudany <maytham@debian.org> writes:

> Hi Simon,
>
> On Mon, 2025-02-03 at 13:32 +0100, Simon Josefsson wrote:
> [...]
>> Maybe adding an example for embedded static C object code like this
>> would help clarify the intention.
>
> Would adding the following after the first paragraph be sufficient in 
> your view?
>
>   Note that you do not need to list source packages recursively. For example, 
>   consider the following situation: A package named "foo" declares 
>   Static-Built-Using on "bar". "bar" declares Static-Built-Using on "baz". As 
>   long as "foo" does not directly incorporate the contents of the "baz" package 
>   during its build, then "foo" must not list "baz" in its Static-Built-Using 
>   field.

That would be an improvement, thank you!

Thanks also for agreeing that this is the reasonable interpretation for
this situation, I wasn't 100% certain on that.

I believe the phrase

   "does not directly incorporate the contents"

still leaves room for ambiguity though.  Certaintly to some way of
reading "foo" WILL incorporate the particular bits coming from "baz"
directly, since those bits are provided identically within the "bar"
package.

Can we find some better articulation of the concept?

If package "bar" has "Static-Built-Using: baz", and could even have a
"Depends: baz" so that "baz" is actually installed when "bar" is
installed, I believe what we want is that a package "foo" that
Build-Depends on "bar" and statically uses files from "bar" to have
"Static-Build-Using: bar" when it refers ONLY to files in "bar".  If
"foo" also refers to and uses files provided by "baz" then it MUST also
have "Static-Build-Using: bar, baz".

I think the property we care about for distinguishing the recursive case
is more about the exposed interface (normally filenames) rather than the
actual content of the files.  The content WILL be included recursively,
that's the point of statically linking.  But mirroring that in
Static-Built-Using is not useful, as it will chain back to include all
compiler versions used to build them (and potentially the compilers that
built those, etc).  So we only mirror the filename interfaces needed.

I hope someone else can find better terminology and description of the
desired behaviour.

I'm also find with using your improved explanation as-is, and leave my
comment describing this detail in the bug tracker for future word
tweaks, in case there is ever any real problem due to this ambiguity.

/Simon

Back to linux.debian.bugs.dist | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using Simon Josefsson <simon@josefsson.org> - 2025-02-03 13:40 +0100
  Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using Maytham Alsudany <maytham@debian.org> - 2025-03-02 06:30 +0100
  Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using Simon Josefsson <simon@josefsson.org> - 2025-03-03 12:10 +0100
    Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using Maytham Alsudany <maytham@debian.org> - 2025-03-15 03:30 +0100
      Bug#1069256: debian-policy: clarify requirement for use of Static-Built-Using Matthias Geiger <werdahias@riseup.net> - 2025-03-30 15:50 +0200

csiph-web