summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2018-05-14 14:33:45 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-05-24 17:16:34 +0100
commit88c6050ad28229231965017b64de40b086e6b4d1 (patch)
treec1994306c27fd5e344eea136fef99127d4d593b1 /documentation/dev-manual
parentc72b126bc0dc8377998988905b4311a10f0d3a8b (diff)
downloadpoky-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.xml130
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<!--