From 734de503faf1f211e2a367dd7579af0b55b2f57d Mon Sep 17 00:00:00 2001 From: Kristi Rifenbark Date: Wed, 6 Sep 2017 16:06:03 -0700 Subject: [PATCH] ref-manual: Added new section on virtual providers Fixes [YOCTO #11762] (From yocto-docs rev: 2633bae48fa08cd3a889d3f205abcc9833b1be2f) Signed-off-by: Kristi Rifenbark Signed-off-by: Richard Purdie --- .../ref-manual/technical-details.xml | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/documentation/ref-manual/technical-details.xml b/documentation/ref-manual/technical-details.xml index 7fc2e184e6a..f566ec243a1 100644 --- a/documentation/ref-manual/technical-details.xml +++ b/documentation/ref-manual/technical-details.xml @@ -146,6 +146,63 @@ +
+ Metadata (Virtual Providers) + + + Prior to the build, if you know that several different recipes + provide the same functionality, you can use a virtual provider + (i.e. virtual/*) as a placeholder for the + actual provider. + The actual provider would be determined at build + time. + In this case, you should add virtual/* + to DEPENDS, + rather than listing the specified provider. + You would select the actual provider by setting the + PREFERRED_PROVIDER + variable (i.e. PREFERRED_PROVIDER_virtual/*) + in the build's configuration file (e.g. + poky/build/conf/local.conf). + + Any recipe that PROVIDES a virtual/* item + that is ultimately not selected through + PREFERRED_PROVIDER does not get built. + Preventing these recipes from building is usually the desired + behavior since this mechanism's purpose is to select between + mutually exclusive alternative providers. + + + + + The following lists specific examples of virtual providers: + + + virtual/mesa: + Provides gbm.pc. + + + virtual/egl: + Provides egl.pc and possibly + wayland-egl.pc. + + + virtual/libgl: + Provides gl.pc (i.e. libGL). + + + virtual/libgles1: + Provides glesv1_cm.pc + (i.e. libGLESv1_CM). + + + virtual/libgles2: + Provides glesv2.pc (i.e. libGLESv2). + + + +
+
Classes -- 2.47.3