summaryrefslogtreecommitdiffstats
path: root/documentation/overview-manual
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/overview-manual')
-rw-r--r--documentation/overview-manual/overview-concepts.xml135
1 files changed, 135 insertions, 0 deletions
diff --git a/documentation/overview-manual/overview-concepts.xml b/documentation/overview-manual/overview-concepts.xml
index 74ce7fd52f..a7d6d2f6fb 100644
--- a/documentation/overview-manual/overview-concepts.xml
+++ b/documentation/overview-manual/overview-concepts.xml
@@ -1325,6 +1325,141 @@
1325 </para> 1325 </para>
1326 </section> 1326 </section>
1327 1327
1328 <section id="wayland">
1329 <title>Wayland</title>
1330
1331 <para>
1332 <ulink url='http://en.wikipedia.org/wiki/Wayland_(display_server_protocol)'>Wayland</ulink>
1333 is a computer display server protocol that
1334 provides a method for compositing window managers to communicate
1335 directly with applications and video hardware and expects them to
1336 communicate with input hardware using other libraries.
1337 Using Wayland with supporting targets can result in better control
1338 over graphics frame rendering than an application might otherwise
1339 achieve.
1340 </para>
1341
1342 <para>
1343 The Yocto Project provides the Wayland protocol libraries and the
1344 reference
1345 <ulink url='http://en.wikipedia.org/wiki/Wayland_(display_server_protocol)#Weston'>Weston</ulink>
1346 compositor as part of its release.
1347 This section describes what you need to do to implement Wayland and
1348 use the compositor when building an image for a supporting target.
1349 </para>
1350
1351 <section id="wayland-support">
1352 <title>Support</title>
1353
1354 <para>
1355 The Wayland protocol libraries and the reference Weston
1356 compositor ship as integrated packages in the
1357 <filename>meta</filename> layer of the
1358 <ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>.
1359 Specifically, you can find the recipes that build both Wayland
1360 and Weston at
1361 <filename>meta/recipes-graphics/wayland</filename>.
1362 </para>
1363
1364 <para>
1365 You can build both the Wayland and Weston packages for use only
1366 with targets that accept the
1367 <ulink url='https://en.wikipedia.org/wiki/Mesa_(computer_graphics)'>Mesa 3D and Direct Rendering Infrastructure</ulink>,
1368 which is also known as Mesa DRI.
1369 This implies that you cannot build and use the packages if your
1370 target uses, for example, the
1371 <trademark class='registered'>Intel</trademark> Embedded Media
1372 and Graphics Driver
1373 (<trademark class='registered'>Intel</trademark> EMGD) that
1374 overrides Mesa DRI.
1375 <note>
1376 Due to lack of EGL support, Weston 1.0.3 will not run
1377 directly on the emulated QEMU hardware.
1378 However, this version of Weston will run under X emulation
1379 without issues.
1380 </note>
1381 </para>
1382 </section>
1383
1384 <section id="enabling-wayland-in-an-image">
1385 <title>Enabling Wayland in an Image</title>
1386
1387 <para>
1388 To enable Wayland, you need to enable it to be built and enable
1389 it to be included in the image.
1390 </para>
1391
1392 <section id="enable-building">
1393 <title>Building</title>
1394
1395 <para>
1396 To cause Mesa to build the <filename>wayland-egl</filename>
1397 platform and Weston to build Wayland with Kernel Mode
1398 Setting
1399 (<ulink url='https://wiki.archlinux.org/index.php/Kernel_Mode_Setting'>KMS</ulink>)
1400 support, include the "wayland" flag in the
1401 <ulink url="&YOCTO_DOCS_REF_URL;#var-DISTRO_FEATURES"><filename>DISTRO_FEATURES</filename></ulink>
1402 statement in your <filename>local.conf</filename> file:
1403 <literallayout class='monospaced'>
1404 DISTRO_FEATURES_append = " wayland"
1405 </literallayout>
1406 <note>
1407 If X11 has been enabled elsewhere, Weston will build
1408 Wayland with X11 support
1409 </note>
1410 </para>
1411 </section>
1412
1413 <section id="enable-installation-in-an-image">
1414 <title>Installing</title>
1415
1416 <para>
1417 To install the Wayland feature into an image, you must
1418 include the following
1419 <ulink url='&YOCTO_DOCS_REF_URL;#var-CORE_IMAGE_EXTRA_INSTALL'><filename>CORE_IMAGE_EXTRA_INSTALL</filename></ulink>
1420 statement in your <filename>local.conf</filename> file:
1421 <literallayout class='monospaced'>
1422 CORE_IMAGE_EXTRA_INSTALL += "wayland weston"
1423 </literallayout>
1424 </para>
1425 </section>
1426 </section>
1427
1428 <section id="running-weston">
1429 <title>Running Weston</title>
1430
1431 <para>
1432 To run Weston inside X11, enabling it as described earlier and
1433 building a Sato image is sufficient.
1434 If you are running your image under Sato, a Weston Launcher
1435 appears in the "Utility" category.
1436 </para>
1437
1438 <para>
1439 Alternatively, you can run Weston through the command-line
1440 interpretor (CLI), which is better suited for development work.
1441 To run Weston under the CLI, you need to do the following after
1442 your image is built:
1443 <orderedlist>
1444 <listitem><para>
1445 Run these commands to export
1446 <filename>XDG_RUNTIME_DIR</filename>:
1447 <literallayout class='monospaced'>
1448 mkdir -p /tmp/$USER-weston
1449 chmod 0700 /tmp/$USER-weston
1450 export XDG_RUNTIME_DIR=/tmp/$USER-weston
1451 </literallayout>
1452 </para></listitem>
1453 <listitem><para>
1454 Launch Weston in the shell:
1455 <literallayout class='monospaced'>
1456 weston
1457 </literallayout></para></listitem>
1458 </orderedlist>
1459 </para>
1460 </section>
1461 </section>
1462
1328 <section id='x32'> 1463 <section id='x32'>
1329 <title>x32 psABI</title> 1464 <title>x32 psABI</title>
1330 1465