mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] Runtime dependencies generation
@ 2011-11-16 20:20 Benoît BURNICHON
  2011-11-17  5:07 ` Robert Schwebel
  0 siblings, 1 reply; 4+ messages in thread
From: Benoît BURNICHON @ 2011-11-16 20:20 UTC (permalink / raw)
  To: ptxdist

Hi all,

I have a package which I know depends on some options

This package is not compiled and just need to be installed (it contains only scripts)
In the KConfig file, I set up lines like:

        depends on BUSYBOX
        depends on COREUTILS_OD       || BUSYBOX_HEXDUMP
        depends on COREUTILS_READLINK || BUSYBOX_READLINK
        depends on COREUTILS_SORT     || BUSYBOX_SORT
        depends on COREUTILS_STAT     || (BUSYBOX_STAT && BUSYBOX_FEATURE_STAT_FORMAT)
        depends on DIFFUTILS_DIFF     || BUSYBOX_DIFF

Everything is fine for package generation. But, when I asks ipkg to tell me on what depends my package with:

$ ipkg whatdepends mypackage

I end up with no dependencies

I know that there are no compilation dependencies, but how can I tell ptxdist that the depends line should contain a specific runtime package dependency. Also, when such a dependency is enforced, one could set up a specific rule for the version needed (in my case, I'd like to add 'busybox > 1.17.1-4')

I would like to be able to install the package on the target without manually verifying that all the required packages are on it. Instead, I want to perform an 'ipkg update', 'ipkg upgrade', then 'ipkg install mypackage'.

Has anyone already faced this need?

Ben



________________________________

Ce courriel et toutes les pièces jointes sont confidentiels et peuvent être couverts par un privilège ou une protection légale. Il est établi à l’attention exclusive de ses destinataires. Toute utilisation de ce courriel non conforme à sa destination, toute diffusion ou toute publication, totale ou partielle, est interdite, sauf autorisation expresse préalable.
This email and any attachment are confidential and may be legally privileged or otherwise protected from disclosure. It is intended only for the stated addressee(s) and access to it by any other person(s) is unauthorized. Any use, dissemination or disclosure not in accordance with its purpose, either in whole or in part, is prohibited without our prior formal approval.
-- 
ptxdist mailing list
ptxdist@pengutronix.de

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

* Re: [ptxdist] Runtime dependencies generation
  2011-11-16 20:20 [ptxdist] Runtime dependencies generation Benoît BURNICHON
@ 2011-11-17  5:07 ` Robert Schwebel
  2011-11-17 10:34   ` Benoît BURNICHON
  0 siblings, 1 reply; 4+ messages in thread
From: Robert Schwebel @ 2011-11-17  5:07 UTC (permalink / raw)
  To: ptxdist

On Wed, Nov 16, 2011 at 08:20:12PM +0000, Benoît BURNICHON wrote:
> This package is not compiled and just need to be installed (it contains only scripts)
> In the KConfig file, I set up lines like:
> 
>         depends on BUSYBOX
>         depends on COREUTILS_OD       || BUSYBOX_HEXDUMP
>         depends on COREUTILS_READLINK || BUSYBOX_READLINK
>         depends on COREUTILS_SORT     || BUSYBOX_SORT
>         depends on COREUTILS_STAT     || (BUSYBOX_STAT && BUSYBOX_FEATURE_STAT_FORMAT)
>         depends on DIFFUTILS_DIFF     || BUSYBOX_DIFF

Please specify the dependencies with "select" from the "label" of the
dependend packet. Example:

config YOURPACKAGE

	select BUSYBOX
	select COREUTILS
	select DIFFUTILS

The other dependencies can still be "depends". PTXdist generates the
dependencies from the select statements that correspond to the labels.

However, note that ptxdist only knows about "dependencies", not about
runtime vs. compile time dependencies. But for your case it shouldn't be
a problem. What does currently not work is to specify a compile time
dependency (i.e. to a library that consists only of a static lib or a
C++ header file) but no related runtime dependency. You can still have
an empty packet for the static lib, but it can't be avoided.

rsc
-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

-- 
ptxdist mailing list
ptxdist@pengutronix.de

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

* Re: [ptxdist] Runtime dependencies generation
  2011-11-17  5:07 ` Robert Schwebel
@ 2011-11-17 10:34   ` Benoît BURNICHON
  2011-11-20 12:49     ` Michael Olbrich
  0 siblings, 1 reply; 4+ messages in thread
From: Benoît BURNICHON @ 2011-11-17 10:34 UTC (permalink / raw)
  To: ptxdist

Thanks a lot, it was exactly what I needed to know.

Btw, a very small hack to have barebox-XXX.ipk package selected (which in my case contains bareboxenv utility for target)

In menu, although barebox bootloader is selected, it is not seen by the Kconfig:
/home/bburnichon/workspace/ptxdist-2011.01.0/rules/mypackage.in:5:warning: 'select' used by config symbol 'MYPACKAGE' refers to undefined symbol 'BAREBOX'

Rules/barebox.in:
------8<---------8<---------8<---------8<---------8<---------8<---------8<---------8<---------
## SECTION=shell_and_console

+config BAREBOX
+        tristate
+
config BAREBOX_TARGET_BAREBOXENV
        prompt "Install target bareboxenv"
+        select BAREBOX
        tristate
        help
          To be able to modify barebox's settings at Linux's runtime enable
          this item. It will install the 'bareboxenv' tool to /sbin
------8<---------8<---------8<---------8<---------8<---------8<---------8<---------8<---------

Ben

> -----Original Message-----
> From: ptxdist-bounces@pengutronix.de [mailto:ptxdist-
> bounces@pengutronix.de] On Behalf Of Robert Schwebel
> Sent: Thursday, November 17, 2011 6:08 AM
> To: ptxdist@pengutronix.de
> Subject: Re: [ptxdist] Runtime dependencies generation
>
> On Wed, Nov 16, 2011 at 08:20:12PM +0000, Benoît BURNICHON wrote:
> > This package is not compiled and just need to be installed (it
> > contains only scripts) In the KConfig file, I set up lines like:
> >
> >         depends on BUSYBOX
> >         depends on COREUTILS_OD       || BUSYBOX_HEXDUMP
> >         depends on COREUTILS_READLINK || BUSYBOX_READLINK
> >         depends on COREUTILS_SORT     || BUSYBOX_SORT
> >         depends on COREUTILS_STAT     || (BUSYBOX_STAT &&
> BUSYBOX_FEATURE_STAT_FORMAT)
> >         depends on DIFFUTILS_DIFF     || BUSYBOX_DIFF
>
> Please specify the dependencies with "select" from the "label" of the
> dependend packet. Example:
>
> config YOURPACKAGE
>
>       select BUSYBOX
>       select COREUTILS
>       select DIFFUTILS
>
> The other dependencies can still be "depends". PTXdist generates the
> dependencies from the select statements that correspond to the labels.
>
> However, note that ptxdist only knows about "dependencies", not about
> runtime vs. compile time dependencies. But for your case it shouldn't be a
> problem. What does currently not work is to specify a compile time
> dependency (i.e. to a library that consists only of a static lib or a
> C++ header file) but no related runtime dependency. You can still have
> an empty packet for the static lib, but it can't be avoided.
>
> rsc
> --
> Pengutronix e.K.                           |                             |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
>
> --
> ptxdist mailing list
> ptxdist@pengutronix.de

________________________________

Ce courriel et toutes les pièces jointes sont confidentiels et peuvent être couverts par un privilège ou une protection légale. Il est établi à l’attention exclusive de ses destinataires. Toute utilisation de ce courriel non conforme à sa destination, toute diffusion ou toute publication, totale ou partielle, est interdite, sauf autorisation expresse préalable.
This email and any attachment are confidential and may be legally privileged or otherwise protected from disclosure. It is intended only for the stated addressee(s) and access to it by any other person(s) is unauthorized. Any use, dissemination or disclosure not in accordance with its purpose, either in whole or in part, is prohibited without our prior formal approval.
-- 
ptxdist mailing list
ptxdist@pengutronix.de

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

* Re: [ptxdist] Runtime dependencies generation
  2011-11-17 10:34   ` Benoît BURNICHON
@ 2011-11-20 12:49     ` Michael Olbrich
  0 siblings, 0 replies; 4+ messages in thread
From: Michael Olbrich @ 2011-11-20 12:49 UTC (permalink / raw)
  To: ptxdist

On Thu, Nov 17, 2011 at 10:34:59AM +0000, Benoît BURNICHON wrote:
> Thanks a lot, it was exactly what I needed to know.
> 
> Btw, a very small hack to have barebox-XXX.ipk package selected (which in my case contains bareboxenv utility for target)
> 
> In menu, although barebox bootloader is selected, it is not seen by the Kconfig:
> /home/bburnichon/workspace/ptxdist-2011.01.0/rules/mypackage.in:5:warning: 'select' used by config symbol 'MYPACKAGE' refers to undefined symbol 'BAREBOX'

BAREBOX is defined in platforms/barebox.in, so it's part of platformconfig,
not ptxconfig. Kconfig only sees the options for either platformconfig or
ptxconfig.

Michael

> Rules/barebox.in:
> ------8<---------8<---------8<---------8<---------8<---------8<---------8<---------8<---------
> ## SECTION=shell_and_console
> 
> +config BAREBOX
> +        tristate
> +
> config BAREBOX_TARGET_BAREBOXENV
>         prompt "Install target bareboxenv"
> +        select BAREBOX
>         tristate
>         help
>           To be able to modify barebox's settings at Linux's runtime enable
>           this item. It will install the 'bareboxenv' tool to /sbin
> ------8<---------8<---------8<---------8<---------8<---------8<---------8<---------8<---------
-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

-- 
ptxdist mailing list
ptxdist@pengutronix.de

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

end of thread, other threads:[~2011-11-20 12:49 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-16 20:20 [ptxdist] Runtime dependencies generation Benoît BURNICHON
2011-11-17  5:07 ` Robert Schwebel
2011-11-17 10:34   ` Benoît BURNICHON
2011-11-20 12:49     ` Michael Olbrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox