diff options
author | Kristi Rifenbark <kristi.rifenbark@gmail.com> | 2017-09-06 16:06:03 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-09-13 18:00:18 +0100 |
commit | 734de503faf1f211e2a367dd7579af0b55b2f57d (patch) | |
tree | 81ec7f0eb59be7ca9d3288255daa6b823ff7df45 /documentation | |
parent | 1d42e21db4d4bb1284e118903e1264b359b4438e (diff) | |
download | poky-734de503faf1f211e2a367dd7579af0b55b2f57d.tar.gz |
ref-manual: Added new section on virtual providers
Fixes [YOCTO #11762]
(From yocto-docs rev: 2633bae48fa08cd3a889d3f205abcc9833b1be2f)
Signed-off-by: Kristi Rifenbark <kristi.rifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/ref-manual/technical-details.xml | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/documentation/ref-manual/technical-details.xml b/documentation/ref-manual/technical-details.xml index 7fc2e184e6..f566ec243a 100644 --- a/documentation/ref-manual/technical-details.xml +++ b/documentation/ref-manual/technical-details.xml | |||
@@ -146,6 +146,63 @@ | |||
146 | </para> | 146 | </para> |
147 | </section> | 147 | </section> |
148 | 148 | ||
149 | <section id='metadata-virtual-providers'> | ||
150 | <title>Metadata (Virtual Providers)</title> | ||
151 | |||
152 | <para> | ||
153 | Prior to the build, if you know that several different recipes | ||
154 | provide the same functionality, you can use a virtual provider | ||
155 | (i.e. <filename>virtual/*</filename>) as a placeholder for the | ||
156 | actual provider. | ||
157 | The actual provider would be determined at build | ||
158 | time. | ||
159 | In this case, you should add <filename>virtual/*</filename> | ||
160 | to <link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>, | ||
161 | rather than listing the specified provider. | ||
162 | You would select the actual provider by setting the | ||
163 | <link linkend='var-PREFERRED_PROVIDER'><filename>PREFERRED_PROVIDER</filename></link> | ||
164 | variable (i.e. <filename>PREFERRED_PROVIDER_virtual/*</filename>) | ||
165 | in the build's configuration file (e.g. | ||
166 | <filename>poky/build/conf/local.conf</filename>). | ||
167 | <note> | ||
168 | Any recipe that PROVIDES a <filename>virtual/*</filename> item | ||
169 | that is ultimately not selected through | ||
170 | <filename>PREFERRED_PROVIDER</filename> does not get built. | ||
171 | Preventing these recipes from building is usually the desired | ||
172 | behavior since this mechanism's purpose is to select between | ||
173 | mutually exclusive alternative providers. | ||
174 | </note> | ||
175 | </para> | ||
176 | |||
177 | <para> | ||
178 | The following lists specific examples of virtual providers: | ||
179 | <itemizedlist> | ||
180 | <listitem><para> | ||
181 | <filename>virtual/mesa</filename>: | ||
182 | Provides <filename>gbm.pc</filename>. | ||
183 | </para></listitem> | ||
184 | <listitem><para> | ||
185 | <filename>virtual/egl</filename>: | ||
186 | Provides <filename>egl.pc</filename> and possibly | ||
187 | <filename>wayland-egl.pc</filename>. | ||
188 | </para></listitem> | ||
189 | <listitem><para> | ||
190 | <filename>virtual/libgl</filename>: | ||
191 | Provides <filename>gl.pc</filename> (i.e. libGL). | ||
192 | </para></listitem> | ||
193 | <listitem><para> | ||
194 | <filename>virtual/libgles1</filename>: | ||
195 | Provides <filename>glesv1_cm.pc</filename> | ||
196 | (i.e. libGLESv1_CM). | ||
197 | </para></listitem> | ||
198 | <listitem><para> | ||
199 | <filename>virtual/libgles2</filename>: | ||
200 | Provides <filename>glesv2.pc</filename> (i.e. libGLESv2). | ||
201 | </para></listitem> | ||
202 | </itemizedlist> | ||
203 | </para> | ||
204 | </section> | ||
205 | |||
149 | <section id='usingpoky-components-classes'> | 206 | <section id='usingpoky-components-classes'> |
150 | <title>Classes</title> | 207 | <title>Classes</title> |
151 | 208 | ||