aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2012-12-05 12:07:51 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-01-18 13:00:37 +0000
commit94fcb80121b64974ff57b76275addaa684c559cf (patch)
treec2e25ad8e63a43a0d3fb4b645dc4653d55601475
parent0e56ecdd78212e7743e71c5d6a42ceb65c182786 (diff)
downloadopenembedded-core-contrib-94fcb80121b64974ff57b76275addaa684c559cf.tar.gz
weston: add reference Wayland compositor
This is the reference Wayland compositor. If the "wayland" DISTRO_FEATURE is present the KMS and Wayland (nested) compositors are enabled. If the "x11" DISTRO_FEATURE is present the X11 compositor is enabled, and a launcher installed. This also ships a basic Wayland terminal. Based on work by Alexandru Damian <alexandru.damian@intel.com>, Daniel Stone <daniel@fooishbar.org>, and Damien Lespiau <damien.lespiau@intel.com>. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/recipes-graphics/wayland/weston/weston.desktop9
-rw-r--r--meta/recipes-graphics/wayland/weston/weston.pngbin0 -> 2383 bytes
-rw-r--r--meta/recipes-graphics/wayland/weston_1.0.3.bb52
3 files changed, 61 insertions, 0 deletions
diff --git a/meta/recipes-graphics/wayland/weston/weston.desktop b/meta/recipes-graphics/wayland/weston/weston.desktop
new file mode 100644
index 00000000000..1086ae8bf65
--- /dev/null
+++ b/meta/recipes-graphics/wayland/weston/weston.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=Application
+Name=Weston
+Comment=Wayland Compostitor
+Exec=weston
+Icon=weston
+Terminal=false
+Categories=Utility;
diff --git a/meta/recipes-graphics/wayland/weston/weston.png b/meta/recipes-graphics/wayland/weston/weston.png
new file mode 100644
index 00000000000..ea8b7e0e233
--- /dev/null
+++ b/meta/recipes-graphics/wayland/weston/weston.png
Binary files differ
diff --git a/meta/recipes-graphics/wayland/weston_1.0.3.bb b/meta/recipes-graphics/wayland/weston_1.0.3.bb
new file mode 100644
index 00000000000..d192fb25d82
--- /dev/null
+++ b/meta/recipes-graphics/wayland/weston_1.0.3.bb
@@ -0,0 +1,52 @@
+SUMMARY = "Weston, a Wayland compositor"
+DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"
+HOMEPAGE = "http://wayland.freedesktop.org"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=275efac2559a224527bd4fd593d38466 \
+ file://src/compositor.c;endline=23;md5=aa98a8db03480fe7d500d0b1f4b8850c"
+
+SRC_URI = "http://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
+ file://weston.png \
+ file://weston.desktop"
+SRC_URI[md5sum] = "f82ac2e013e6b6a6303ac4ba7b64c7f2"
+SRC_URI[sha256sum] = "3136a7d2f654ea3e946d4217f7e25321248ad2921f1f4e2504dda58968e04853"
+
+inherit autotools pkgconfig
+
+DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 mtdev jpeg"
+DEPENDS += "wayland mesa-dri virtual/egl"
+
+EXTRA_OECONF = "--disable-android-compositor --enable-setuid-install"
+EXTRA_OECONF += "--disable-tablet-shell --disable-xwayland"
+EXTRA_OECONF += "--enable-simple-clients --enable-clients --disable-simple-egl-clients"
+
+PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'kms wayland', '', d)} \
+ ${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
+ ${@base_contains('DISTRO_FEATURES', 'opengles2', 'gles', '', d)} \
+ "
+# Weston on KMS
+PACKAGECONFIG[kms] = "--enable-drm-compositor --enable-weston-launch,--disable-drm-compositor --disable-weston-launch,drm udev mesa-dri libpam"
+# Weston on Wayland (nested Weston)
+PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,mesa-dri"
+# Weston on X11
+PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo"
+
+PACKAGECONFIG[gles] = "--with-cairo-glesv2,,virtual/libgles2"
+
+do_install_append() {
+ # Weston doesn't need the .la files to load modules, so wipe them
+ rm -f ${D}/${libdir}/weston/*.la
+
+ for feature in ${DISTRO_FEATURES}; do
+ # If X11, ship a desktop file to launch it
+ if [ "$feature" = "x11" ]; then
+ install -d ${D}${datadir}/applications
+ install ${WORKDIR}/weston.desktop ${D}${datadir}/applications
+
+ install -d ${D}${datadir}/icons/hicolor/48x48/apps
+ install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps
+ fi
+ done
+}
+
+FILES_${PN} += "${datadir}/applications ${datadir}/icons"