diff options
author | Scott Rifenbark <srifenbark@gmail.com> | 2018-05-14 14:33:45 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-05-24 17:16:34 +0100 |
commit | 88c6050ad28229231965017b64de40b086e6b4d1 (patch) | |
tree | c1994306c27fd5e344eea136fef99127d4d593b1 /documentation/dev-manual | |
parent | c72b126bc0dc8377998988905b4311a10f0d3a8b (diff) | |
download | poky-88c6050ad28229231965017b64de40b086e6b4d1.tar.gz |
overview-manual, dev-manual: Moved Wayland and Weston
The Wayland and Weston topic moved from the overview-manual to
the dev-manual. The topic was really a "how-to" topic and not
a concepts topic.
(From yocto-docs rev: b0f20a67c99590c48d595f4e572339bb5b6b83b3)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual')
-rw-r--r-- | documentation/dev-manual/dev-manual-common-tasks.xml | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 5f7b66e411..11eb274965 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml | |||
@@ -13871,6 +13871,136 @@ Some notes from Cal: | |||
13871 | </para> | 13871 | </para> |
13872 | </section> | 13872 | </section> |
13873 | </section> | 13873 | </section> |
13874 | |||
13875 | <section id="dev-using-wayland-and-weston"> | ||
13876 | <title>Using Wayland and Weston</title> | ||
13877 | |||
13878 | <para> | ||
13879 | <ulink url='http://en.wikipedia.org/wiki/Wayland_(display_server_protocol)'>Wayland</ulink> | ||
13880 | is a computer display server protocol that | ||
13881 | provides a method for compositing window managers to communicate | ||
13882 | directly with applications and video hardware and expects them to | ||
13883 | communicate with input hardware using other libraries. | ||
13884 | Using Wayland with supporting targets can result in better control | ||
13885 | over graphics frame rendering than an application might otherwise | ||
13886 | achieve. | ||
13887 | </para> | ||
13888 | |||
13889 | <para> | ||
13890 | The Yocto Project provides the Wayland protocol libraries and the | ||
13891 | reference | ||
13892 | <ulink url='http://en.wikipedia.org/wiki/Wayland_(display_server_protocol)#Weston'>Weston</ulink> | ||
13893 | compositor as part of its release. | ||
13894 | You can find the integrated packages in the | ||
13895 | <filename>meta</filename> layer of the | ||
13896 | <ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>. | ||
13897 | Specifically, you can find the recipes that build both Wayland | ||
13898 | and Weston at <filename>meta/recipes-graphics/wayland</filename>. | ||
13899 | </para> | ||
13900 | |||
13901 | <para> | ||
13902 | You can build both the Wayland and Weston packages for use only | ||
13903 | with targets that accept the | ||
13904 | <ulink url='https://en.wikipedia.org/wiki/Mesa_(computer_graphics)'>Mesa 3D and Direct Rendering Infrastructure</ulink>, | ||
13905 | which is also known as Mesa DRI. | ||
13906 | This implies that you cannot build and use the packages if your | ||
13907 | target uses, for example, the | ||
13908 | <trademark class='registered'>Intel</trademark> Embedded Media | ||
13909 | and Graphics Driver | ||
13910 | (<trademark class='registered'>Intel</trademark> EMGD) that | ||
13911 | overrides Mesa DRI. | ||
13912 | <note> | ||
13913 | Due to lack of EGL support, Weston 1.0.3 will not run | ||
13914 | directly on the emulated QEMU hardware. | ||
13915 | However, this version of Weston will run under X emulation | ||
13916 | without issues. | ||
13917 | </note> | ||
13918 | </para> | ||
13919 | |||
13920 | <para> | ||
13921 | This section describes what you need to do to implement Wayland and | ||
13922 | use the Weston compositor when building an image for a supporting | ||
13923 | target. | ||
13924 | </para> | ||
13925 | |||
13926 | <section id="enabling-wayland-in-an-image"> | ||
13927 | <title>Enabling Wayland in an Image</title> | ||
13928 | |||
13929 | <para> | ||
13930 | To enable Wayland, you need to enable it to be built and enable | ||
13931 | it to be included (installed) in the image. | ||
13932 | </para> | ||
13933 | |||
13934 | <section id="enable-building"> | ||
13935 | <title>Building</title> | ||
13936 | |||
13937 | <para> | ||
13938 | To cause Mesa to build the <filename>wayland-egl</filename> | ||
13939 | platform and Weston to build Wayland with Kernel Mode | ||
13940 | Setting | ||
13941 | (<ulink url='https://wiki.archlinux.org/index.php/Kernel_Mode_Setting'>KMS</ulink>) | ||
13942 | support, include the "wayland" flag in the | ||
13943 | <ulink url="&YOCTO_DOCS_REF_URL;#var-DISTRO_FEATURES"><filename>DISTRO_FEATURES</filename></ulink> | ||
13944 | statement in your <filename>local.conf</filename> file: | ||
13945 | <literallayout class='monospaced'> | ||
13946 | DISTRO_FEATURES_append = " wayland" | ||
13947 | </literallayout> | ||
13948 | <note> | ||
13949 | If X11 has been enabled elsewhere, Weston will build | ||
13950 | Wayland with X11 support | ||
13951 | </note> | ||
13952 | </para> | ||
13953 | </section> | ||
13954 | |||
13955 | <section id="enable-installation-in-an-image"> | ||
13956 | <title>Installing</title> | ||
13957 | |||
13958 | <para> | ||
13959 | To install the Wayland feature into an image, you must | ||
13960 | include the following | ||
13961 | <ulink url='&YOCTO_DOCS_REF_URL;#var-CORE_IMAGE_EXTRA_INSTALL'><filename>CORE_IMAGE_EXTRA_INSTALL</filename></ulink> | ||
13962 | statement in your <filename>local.conf</filename> file: | ||
13963 | <literallayout class='monospaced'> | ||
13964 | CORE_IMAGE_EXTRA_INSTALL += "wayland weston" | ||
13965 | </literallayout> | ||
13966 | </para> | ||
13967 | </section> | ||
13968 | </section> | ||
13969 | |||
13970 | <section id="running-weston"> | ||
13971 | <title>Running Weston</title> | ||
13972 | |||
13973 | <para> | ||
13974 | To run Weston inside X11, enabling it as described earlier and | ||
13975 | building a Sato image is sufficient. | ||
13976 | If you are running your image under Sato, a Weston Launcher | ||
13977 | appears in the "Utility" category. | ||
13978 | </para> | ||
13979 | |||
13980 | <para> | ||
13981 | Alternatively, you can run Weston through the command-line | ||
13982 | interpretor (CLI), which is better suited for development work. | ||
13983 | To run Weston under the CLI, you need to do the following after | ||
13984 | your image is built: | ||
13985 | <orderedlist> | ||
13986 | <listitem><para> | ||
13987 | Run these commands to export | ||
13988 | <filename>XDG_RUNTIME_DIR</filename>: | ||
13989 | <literallayout class='monospaced'> | ||
13990 | mkdir -p /tmp/$USER-weston | ||
13991 | chmod 0700 /tmp/$USER-weston | ||
13992 | export XDG_RUNTIME_DIR=/tmp/$USER-weston | ||
13993 | </literallayout> | ||
13994 | </para></listitem> | ||
13995 | <listitem><para> | ||
13996 | Launch Weston in the shell: | ||
13997 | <literallayout class='monospaced'> | ||
13998 | weston | ||
13999 | </literallayout></para></listitem> | ||
14000 | </orderedlist> | ||
14001 | </para> | ||
14002 | </section> | ||
14003 | </section> | ||
13874 | </chapter> | 14004 | </chapter> |
13875 | 14005 | ||
13876 | <!-- | 14006 | <!-- |