docs/manual: document the new FOO_PROVIDES variable

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Yann E. MORIN 2014-05-15 19:37:04 +02:00 committed by Peter Korsgaard
parent 91169d3346
commit f53571e57f
2 changed files with 15 additions and 3 deletions

View File

@ -304,6 +304,9 @@ information is (assuming the package name is +libfoo+) :
a similar way, +HOST_LIBFOO_DEPENDENCIES+ lists the dependencies for
the current host package.
* +LIBFOO_PROVIDES+ lists all the virtual packages +libfoo+ is an
implementation of. See xref:virtual-package-tutorial[].
* +LIBFOO_INSTALL_STAGING+ can be set to +YES+ or +NO+ (default). If
set to +YES+, then the commands in the +LIBFOO_INSTALL_STAGING_CMDS+
variables are executed to install the package into the staging

View File

@ -39,7 +39,7 @@ In this file, we declare two options, +BR2_PACKAGE_HAS_SOMETHING_VIRTUAL+ and
+BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL+, whose values will be used by the
providers.
==== Virtual package's +*.mk+ file
==== Virtual package's +.mk+ file
The +.mk+ for the virtual package should just evaluate the +virtual-package+ macro:
@ -59,8 +59,7 @@ The ability to have target and host packages is also available, with the
==== Provider's +Config.in+ file
When adding a package as a provider, only the +Config.in+ file requires some
modifications. The +*.mk+ file should follow the Buildroot infrastructure with
no change at all.
modifications.
The +Config.in+ file of the package 'some-provider', which provides the
functionalities of 'something-virtual', should contain:
@ -84,6 +83,16 @@ On line 3, we select +BR2_PACKAGE_HAS_SOMETHING_VIRTUAL+, and on line 11, we
set the value of +BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL+ to the name of the
provider, but only if it is selected.
==== Provider's +.mk+ file
The +.mk+ file should also declare an additional variable
+SOME_PROVIDER_PROVIDES+ to contain the names of all the virtual
packages it is an implementation of:
---------------------------
01: SOME_PROVIDER_PROVIDES = something-virtual
---------------------------
Of course, do not forget to add the proper build and runtime dependencies for
this package!