All of lore.kernel.org
 help / color / mirror / Atom feed
* some trivial(?) questions about packagegroups
@ 2021-03-26 15:45 Robert P. J. Day
  2021-03-26 19:22 ` [OE-core] " Andre McCurdy
  0 siblings, 1 reply; 6+ messages in thread
From: Robert P. J. Day @ 2021-03-26 15:45 UTC (permalink / raw)
  To: OE Core mailing list


  what should be easy questions about packagegroups, inspired by my
running across some puzzling packagegroup recipes in my travels
recently. (i'll start with examples out of oe-core).

  first, as with any other recipe, given a "trivial" packagegroup
like, say, packagegroup-core-eclipse-debug.bb:

  SUMMARY = "Remote debugging tools for Eclipse integration"

  inherit packagegroup

  RDEPENDS_${PN} = "\
    gdbserver \
    tcf-agent \
    openssh-sftp-server \
    "

there is no need to add a "PROVIDES" line since every recipe file
automatically provides its own name. so far, so good.

  if we move up to packagegroup-core-nfs.bb, note how this recipe file
defines two additional packagegroups, and has to add a PROVIDES line
in order to make those new names accessible:

  PROVIDES = "${PACKAGES}"
  PACKAGES = "${PN}-server ${PN}-client"

  SUMMARY_${PN}-client = "NFS client"
  RDEPENDS_${PN}-client = "nfs-utils-client"

  SUMMARY_${PN}-server = "NFS server"
  RDEPENDS_${PN}-server = "\
    nfs-utils \
    nfs-utils-client \
    "

so the question is, must one supply a PROVIDES line for any
packagegroup names above and beyond the one that comes with the recipe
file itself? i ask what seems like a dumb question as i've run across
packagegroup recipe files that define multiple additional
packagegroups, but do not add them to the PROVIDES line. what is that
supposed to represent?

rday

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] some trivial(?) questions about packagegroups
  2021-03-26 15:45 some trivial(?) questions about packagegroups Robert P. J. Day
@ 2021-03-26 19:22 ` Andre McCurdy
  2021-03-27 10:31   ` Robert P. J. Day
  2021-03-29  8:08   ` Robert P. J. Day
  0 siblings, 2 replies; 6+ messages in thread
From: Andre McCurdy @ 2021-03-26 19:22 UTC (permalink / raw)
  To: Robert P. J. Day; +Cc: OE Core mailing list

On Fri, Mar 26, 2021 at 8:45 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
>
>   what should be easy questions about packagegroups, inspired by my
> running across some puzzling packagegroup recipes in my travels
> recently. (i'll start with examples out of oe-core).
>
>   first, as with any other recipe, given a "trivial" packagegroup
> like, say, packagegroup-core-eclipse-debug.bb:
>
>   SUMMARY = "Remote debugging tools for Eclipse integration"
>
>   inherit packagegroup
>
>   RDEPENDS_${PN} = "\
>     gdbserver \
>     tcf-agent \
>     openssh-sftp-server \
>     "
>
> there is no need to add a "PROVIDES" line since every recipe file
> automatically provides its own name. so far, so good.
>
>   if we move up to packagegroup-core-nfs.bb, note how this recipe file
> defines two additional packagegroups, and has to add a PROVIDES line
> in order to make those new names accessible:
>
>   PROVIDES = "${PACKAGES}"
>   PACKAGES = "${PN}-server ${PN}-client"
>
>   SUMMARY_${PN}-client = "NFS client"
>   RDEPENDS_${PN}-client = "nfs-utils-client"
>
>   SUMMARY_${PN}-server = "NFS server"
>   RDEPENDS_${PN}-server = "\
>     nfs-utils \
>     nfs-utils-client \
>     "
>
> so the question is, must one supply a PROVIDES line for any
> packagegroup names above and beyond the one that comes with the recipe
> file itself? i ask what seems like a dumb question as i've run across
> packagegroup recipe files that define multiple additional
> packagegroups, but do not add them to the PROVIDES line. what is that
> supposed to represent?

PROVIDES sets up a name which can be used as DEPENDS (ie a build time
dependency) in other recipes. If PROVIDES contains more than one name,
they all just become aliases for each other.

Since packagegroup recipes only define run time dependencies, nothing
should have a build time dependency on a packagegroup recipe... and so
there's no obvious reason to set PROVIDES to anything. Leaving the
default will be fine (although it won't be used for anything).

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] some trivial(?) questions about packagegroups
  2021-03-26 19:22 ` [OE-core] " Andre McCurdy
@ 2021-03-27 10:31   ` Robert P. J. Day
  2021-03-27 19:54     ` Andre McCurdy
  2021-03-29  8:08   ` Robert P. J. Day
  1 sibling, 1 reply; 6+ messages in thread
From: Robert P. J. Day @ 2021-03-27 10:31 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

On Fri, 26 Mar 2021, Andre McCurdy wrote:

> On Fri, Mar 26, 2021 at 8:45 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
> >
> >   what should be easy questions about packagegroups, inspired by my
> > running across some puzzling packagegroup recipes in my travels
> > recently. (i'll start with examples out of oe-core).
> >
> >   first, as with any other recipe, given a "trivial" packagegroup
> > like, say, packagegroup-core-eclipse-debug.bb:
> >
> >   SUMMARY = "Remote debugging tools for Eclipse integration"
> >
> >   inherit packagegroup
> >
> >   RDEPENDS_${PN} = "\
> >     gdbserver \
> >     tcf-agent \
> >     openssh-sftp-server \
> >     "
> >
> > there is no need to add a "PROVIDES" line since every recipe file
> > automatically provides its own name. so far, so good.
> >
> >   if we move up to packagegroup-core-nfs.bb, note how this recipe file
> > defines two additional packagegroups, and has to add a PROVIDES line
> > in order to make those new names accessible:
> >
> >   PROVIDES = "${PACKAGES}"
> >   PACKAGES = "${PN}-server ${PN}-client"
> >
> >   SUMMARY_${PN}-client = "NFS client"
> >   RDEPENDS_${PN}-client = "nfs-utils-client"
> >
> >   SUMMARY_${PN}-server = "NFS server"
> >   RDEPENDS_${PN}-server = "\
> >     nfs-utils \
> >     nfs-utils-client \
> >     "
> >
> > so the question is, must one supply a PROVIDES line for any
> > packagegroup names above and beyond the one that comes with the recipe
> > file itself? i ask what seems like a dumb question as i've run across
> > packagegroup recipe files that define multiple additional
> > packagegroups, but do not add them to the PROVIDES line. what is that
> > supposed to represent?
>
> PROVIDES sets up a name which can be used as DEPENDS (ie a build
> time dependency) in other recipes. If PROVIDES contains more than
> one name, they all just become aliases for each other.
>
> Since packagegroup recipes only define run time dependencies,
> nothing should have a build time dependency on a packagegroup
> recipe... and so there's no obvious reason to set PROVIDES to
> anything. Leaving the default will be fine (although it won't be
> used for anything).

  i could have *sworn* that, once upon a time, i verified (in some
weird way) the necessity for the PROVIDES line in a packagegroup, but
it seems i was mistaken. so if this is the case, then why do a couple
of OE packagegroup recipe files contain such a line?

  packagegroup-base.bb
  ====================

  inherit packagegroup

  PROVIDES = "${PACKAGES}"           <=== ?????
  PACKAGES = ' \
            packagegroup-base \
            packagegroup-base-extended \
            packagegroup-distro-base \
            packagegroup-machine-base \
            ... etc etc ...

surely this is not meant to alias all those distinct packagegroup
definitions.

rday

p.s. see also,
http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] some trivial(?) questions about packagegroups
  2021-03-27 10:31   ` Robert P. J. Day
@ 2021-03-27 19:54     ` Andre McCurdy
  2021-03-27 20:13       ` Robert P. J. Day
  0 siblings, 1 reply; 6+ messages in thread
From: Andre McCurdy @ 2021-03-27 19:54 UTC (permalink / raw)
  To: Robert P. J. Day; +Cc: OE Core mailing list

On Sat, Mar 27, 2021 at 3:31 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
> On Fri, 26 Mar 2021, Andre McCurdy wrote:
> > On Fri, Mar 26, 2021 at 8:45 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
> > >   what should be easy questions about packagegroups, inspired by my
> > > running across some puzzling packagegroup recipes in my travels
> > > recently. (i'll start with examples out of oe-core).
> > >
> > >   first, as with any other recipe, given a "trivial" packagegroup
> > > like, say, packagegroup-core-eclipse-debug.bb:
> > >
> > >   SUMMARY = "Remote debugging tools for Eclipse integration"
> > >
> > >   inherit packagegroup
> > >
> > >   RDEPENDS_${PN} = "\
> > >     gdbserver \
> > >     tcf-agent \
> > >     openssh-sftp-server \
> > >     "
> > >
> > > there is no need to add a "PROVIDES" line since every recipe file
> > > automatically provides its own name. so far, so good.
> > >
> > >   if we move up to packagegroup-core-nfs.bb, note how this recipe file
> > > defines two additional packagegroups, and has to add a PROVIDES line
> > > in order to make those new names accessible:
> > >
> > >   PROVIDES = "${PACKAGES}"
> > >   PACKAGES = "${PN}-server ${PN}-client"
> > >
> > >   SUMMARY_${PN}-client = "NFS client"
> > >   RDEPENDS_${PN}-client = "nfs-utils-client"
> > >
> > >   SUMMARY_${PN}-server = "NFS server"
> > >   RDEPENDS_${PN}-server = "\
> > >     nfs-utils \
> > >     nfs-utils-client \
> > >     "
> > >
> > > so the question is, must one supply a PROVIDES line for any
> > > packagegroup names above and beyond the one that comes with the recipe
> > > file itself? i ask what seems like a dumb question as i've run across
> > > packagegroup recipe files that define multiple additional
> > > packagegroups, but do not add them to the PROVIDES line. what is that
> > > supposed to represent?
> >
> > PROVIDES sets up a name which can be used as DEPENDS (ie a build
> > time dependency) in other recipes. If PROVIDES contains more than
> > one name, they all just become aliases for each other.
> >
> > Since packagegroup recipes only define run time dependencies,
> > nothing should have a build time dependency on a packagegroup
> > recipe... and so there's no obvious reason to set PROVIDES to
> > anything. Leaving the default will be fine (although it won't be
> > used for anything).
>
>   i could have *sworn* that, once upon a time, i verified (in some
> weird way) the necessity for the PROVIDES line in a packagegroup, but
> it seems i was mistaken. so if this is the case, then why do a couple
> of OE packagegroup recipe files contain such a line?
>
>   packagegroup-base.bb
>   ====================
>
>   inherit packagegroup
>
>   PROVIDES = "${PACKAGES}"           <=== ?????

That line dates back to 2007, when packagegroup-base.bb was still
called task-base.bb:

  https://git.openembedded.org/openembedded-core/commit/?id=ba9dd5228c290c96c622fb82964e49ce2511a1e9

Maybe it had some legitimate use back then?

Really the whole "base packagegroups" concept is showing its age. No
one creating a new machine config today ponders on whether or not to
enable the pci, pcmcia, phone, etc machine features.
packagegroup-base.bb contains a lot of useless cruft... the bogus
PROVIDES line is just the tip of the iceberg.

>   PACKAGES = ' \
>             packagegroup-base \
>             packagegroup-base-extended \
>             packagegroup-distro-base \
>             packagegroup-machine-base \
>             ... etc etc ...
>
> surely this is not meant to alias all those distinct packagegroup
> definitions.
>
> rday
>
> p.s. see also,
> http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] some trivial(?) questions about packagegroups
  2021-03-27 19:54     ` Andre McCurdy
@ 2021-03-27 20:13       ` Robert P. J. Day
  0 siblings, 0 replies; 6+ messages in thread
From: Robert P. J. Day @ 2021-03-27 20:13 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

On Sat, 27 Mar 2021, Andre McCurdy wrote:

> On Sat, Mar 27, 2021 at 3:31 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
> > On Fri, 26 Mar 2021, Andre McCurdy wrote:
> > > On Fri, Mar 26, 2021 at 8:45 AM Robert P. J. Day <rpjday@crashcourse.ca> wrote:
> > > >   what should be easy questions about packagegroups, inspired by my
> > > > running across some puzzling packagegroup recipes in my travels
> > > > recently. (i'll start with examples out of oe-core).
> > > >
> > > >   first, as with any other recipe, given a "trivial" packagegroup
> > > > like, say, packagegroup-core-eclipse-debug.bb:
> > > >
> > > >   SUMMARY = "Remote debugging tools for Eclipse integration"
> > > >
> > > >   inherit packagegroup
> > > >
> > > >   RDEPENDS_${PN} = "\
> > > >     gdbserver \
> > > >     tcf-agent \
> > > >     openssh-sftp-server \
> > > >     "
> > > >
> > > > there is no need to add a "PROVIDES" line since every recipe file
> > > > automatically provides its own name. so far, so good.
> > > >
> > > >   if we move up to packagegroup-core-nfs.bb, note how this recipe file
> > > > defines two additional packagegroups, and has to add a PROVIDES line
> > > > in order to make those new names accessible:
> > > >
> > > >   PROVIDES = "${PACKAGES}"
> > > >   PACKAGES = "${PN}-server ${PN}-client"
> > > >
> > > >   SUMMARY_${PN}-client = "NFS client"
> > > >   RDEPENDS_${PN}-client = "nfs-utils-client"
> > > >
> > > >   SUMMARY_${PN}-server = "NFS server"
> > > >   RDEPENDS_${PN}-server = "\
> > > >     nfs-utils \
> > > >     nfs-utils-client \
> > > >     "
> > > >
> > > > so the question is, must one supply a PROVIDES line for any
> > > > packagegroup names above and beyond the one that comes with the recipe
> > > > file itself? i ask what seems like a dumb question as i've run across
> > > > packagegroup recipe files that define multiple additional
> > > > packagegroups, but do not add them to the PROVIDES line. what is that
> > > > supposed to represent?
> > >
> > > PROVIDES sets up a name which can be used as DEPENDS (ie a build
> > > time dependency) in other recipes. If PROVIDES contains more than
> > > one name, they all just become aliases for each other.
> > >
> > > Since packagegroup recipes only define run time dependencies,
> > > nothing should have a build time dependency on a packagegroup
> > > recipe... and so there's no obvious reason to set PROVIDES to
> > > anything. Leaving the default will be fine (although it won't be
> > > used for anything).
> >
> >   i could have *sworn* that, once upon a time, i verified (in some
> > weird way) the necessity for the PROVIDES line in a packagegroup, but
> > it seems i was mistaken. so if this is the case, then why do a couple
> > of OE packagegroup recipe files contain such a line?
> >
> >   packagegroup-base.bb
> >   ====================
> >
> >   inherit packagegroup
> >
> >   PROVIDES = "${PACKAGES}"           <=== ?????
>
> That line dates back to 2007, when packagegroup-base.bb was still
> called task-base.bb:
>
>   https://git.openembedded.org/openembedded-core/commit/?id=ba9dd5228c290c96c622fb82964e49ce2511a1e9
>
> Maybe it had some legitimate use back then?
>
> Really the whole "base packagegroups" concept is showing its age. No
> one creating a new machine config today ponders on whether or not to
> enable the pci, pcmcia, phone, etc machine features.
> packagegroup-base.bb contains a lot of useless cruft... the bogus
> PROVIDES line is just the tip of the iceberg.

  well, unless there are any objections, i'll submit a patch to get
rid of those two useless PROVIDES line (or however many i find). we
can at least start there.

rday

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] some trivial(?) questions about packagegroups
  2021-03-26 19:22 ` [OE-core] " Andre McCurdy
  2021-03-27 10:31   ` Robert P. J. Day
@ 2021-03-29  8:08   ` Robert P. J. Day
  1 sibling, 0 replies; 6+ messages in thread
From: Robert P. J. Day @ 2021-03-29  8:08 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE Core mailing list

On Fri, 26 Mar 2021, Andre McCurdy wrote:

... snip ...

> PROVIDES sets up a name which can be used as DEPENDS (ie a build
> time dependency) in other recipes. If PROVIDES contains more than
> one name, they all just become aliases for each other.
>
> Since packagegroup recipes only define run time dependencies,
> nothing should have a build time dependency on a packagegroup
> recipe... and so there's no obvious reason to set PROVIDES to
> anything. Leaving the default will be fine (although it won't be
> used for anything).

  can someone verify that packagegroup recipe files indeed do not need
a PROVIDES line? if not, i can submit a patch to toss them from
meta-openembedded as well. it seems(?) fairly obvious that those lines
are superfluous, but i've been surprised before.

rday

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-03-29  8:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-26 15:45 some trivial(?) questions about packagegroups Robert P. J. Day
2021-03-26 19:22 ` [OE-core] " Andre McCurdy
2021-03-27 10:31   ` Robert P. J. Day
2021-03-27 19:54     ` Andre McCurdy
2021-03-27 20:13       ` Robert P. J. Day
2021-03-29  8:08   ` Robert P. J. Day

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.