summaryrefslogtreecommitdiffstats
path: root/docs/manual/adding-packages-virtual.txt
diff options
context:
space:
mode:
authorYann E. MORIN <yann.morin.1998@free.fr>2014-04-05 17:21:46 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2014-04-05 19:21:00 +0200
commite92e0fd347f4657d0ce4fa8d089a7332093cf51a (patch)
tree7300dbf699eaff1eb471c83832a266717896488c /docs/manual/adding-packages-virtual.txt
parent74398244120177f2c5aa0aa1bdeb4046e82e1584 (diff)
downloadbuildroot-e92e0fd347f4657d0ce4fa8d089a7332093cf51a.tar.gz
buildroot-e92e0fd347f4657d0ce4fa8d089a7332093cf51a.zip
manual: update the virtual package section with the new infrastructure
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Eric Le Bihan <eric.le.bihan.dev@free.fr> Cc: Samuel Martin <s.martin49@gmail.com> Reviewed-by: Samuel Martin <s.martin49@gmail.com> Acked-by: Eric Le Bihan <eric.le.bihan.dev@free.fr> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'docs/manual/adding-packages-virtual.txt')
-rw-r--r--docs/manual/adding-packages-virtual.txt26
1 files changed, 10 insertions, 16 deletions
diff --git a/docs/manual/adding-packages-virtual.txt b/docs/manual/adding-packages-virtual.txt
index 76f57949df..e8820a09ab 100644
--- a/docs/manual/adding-packages-virtual.txt
+++ b/docs/manual/adding-packages-virtual.txt
@@ -1,10 +1,10 @@
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-[[virtual-package-tutorial]]
+Infrastructure for virtual packages
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Virtual package tutorial
-~~~~~~~~~~~~~~~~~~~~~~~~
+[[virtual-package-tutorial]]
In Buildroot, a virtual package is a package whose functionalities are
provided by one or more packages, referred to as 'providers'. The virtual
@@ -16,6 +16,9 @@ The implementation of this API is different for the 'Allwinner Tech Sunxi' and
the 'Texas Instruments OMAP35xx' plaftorms. So +libgles+ will be a virtual
package and +sunxi-mali+ and +ti-gfx+ will be the providers.
++virtual-package+ tutorial
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
In the following example, we will explain how to add a new virtual package
('something-virtual') and a provider for it ('some-provider').
@@ -42,7 +45,7 @@ providers.
Virtual package's +*.mk+ file
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The Makefile +package/something-virtual/something-virtual.mk+ should contain:
+The +.mk+ for the virtual package should just evaluate the +virtual-package+ macro:
---------------------------
01: ################################################################################
@@ -51,20 +54,11 @@ The Makefile +package/something-virtual/something-virtual.mk+ should contain:
04: #
05: ################################################################################
06:
-07: SOMETHING_VIRTUAL_SOURCE =
-08: SOMETHING_VIRTUAL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL))
-09:
-10: ifeq ($(BR2_PACKAGE_HAS_SOMETHING_VIRTUAL),y)
-11: ifeq ($(SOMETHING_VIRTUAL_DEPENDENCIES),)
-12: $(error No something-virtual implementation selected. Configuration error.)
-13: endif
-14: endif
-15:
-16: $(eval $(generic-package))
+07: $(eval $(virtual-package))
---------------------------
-The Makefile is quite small as it will only check if a provider for the
-virtual package has been selected.
+The ability to have target and host packages is also available, with the
++host-virtual-package+ macro.
Provider's +Config.in+ file
^^^^^^^^^^^^^^^^^^^^^^^^^^^
OpenPOWER on IntegriCloud