update wayland
authorRonan Le Martret <ronan@fridu.net>
Wed, 31 Dec 2014 08:49:52 +0000 (09:49 +0100)
committerRonan Le Martret <ronan@fridu.net>
Wed, 7 Jan 2015 10:22:07 +0000 (11:22 +0100)
Change-Id: Ib5cb42729a0ab1c7ea0ac26c960bac6c9a82239a
Signed-off-by: Ronan Le Martret <ronan@fridu.net>
meta-tizen-adaptation/meta/recipes-graphics/wayland/mtdev_1.1.5.bb [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland_1.6.0.bb [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston-init/init
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/disable-wayland-scanner-pkg-check.patch [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-lcms-explicitly-configurable.patch [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-libwebp-explicitly-configurable.patch [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.desktop [new file with mode: 0644]
meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.png [new file with mode: 0644]

diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/mtdev_1.1.5.bb b/meta-tizen-adaptation/meta/recipes-graphics/wayland/mtdev_1.1.5.bb
new file mode 100644 (file)
index 0000000..ccd0ebb
--- /dev/null
@@ -0,0 +1,18 @@
+SUMMARY = "Multitouch Protocol Translation Library"
+
+DESCRIPTION = "mtdev is a library which transforms all variants of kernel \
+multitouch events to the slotted type B protocol. The events put into mtdev may \
+be from any MT device, specifically type A without contact tracking, type A with \
+contact tracking, or type B with contact tracking"
+
+HOMEPAGE = "http://bitmath.org/code/mtdev/"
+SECTION = "libs"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ea6bd0268bb0fcd6b27698616ceee5d6"
+
+SRC_URI = "http://bitmath.org/code/${BPN}/${BP}.tar.bz2"
+SRC_URI[md5sum] = "52c9610b6002f71d1642dc1a1cca5ec1"
+SRC_URI[sha256sum] = "6677d5708a7948840de734d8b4675d5980d4561171c5a8e89e54adf7a13eba7f"
+
+inherit autotools pkgconfig
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch b/meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland/disable-macro-checks-not-used-for-scanner.patch
new file mode 100644 (file)
index 0000000..cd8bc55
--- /dev/null
@@ -0,0 +1,50 @@
+disable macro checks not used for scanner
+
+We only build wayland-native for the scanner, so disable the bits we don't
+actually need. This avoid build issue on older distro such as Centos 5.x:
+| error: 'O_CLOEXEC' undeclared (first use in this function)
+| error: sys/timerfd.h: No such file or directory
+| error: 'CLOCK_MONOTONIC' undeclared (first use in this function)
+| error: 'TFD_CLOEXEC' undeclared (first use in this function)
+| error: 'SFD_CLOEXEC' undeclared (first use in this function)
+
+Upstream-Status: Pending
+
+Signed-off-by: Ting Liu <b28495@freescale.com>
+---
+ configure.ac | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
++++ b/configure.ac
+@@ -41,16 +41,16 @@ AC_SUBST(GCC_CFLAGS)
+ AC_CHECK_FUNCS([accept4 mkostemp posix_fallocate])
+-AC_CHECK_DECL(SFD_CLOEXEC,[],
+-            [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland")],
+-            [[#include <sys/signalfd.h>]])
+-AC_CHECK_DECL(TFD_CLOEXEC,[],
+-            [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland")],
+-            [[#include <sys/timerfd.h>]])
+-AC_CHECK_DECL(CLOCK_MONOTONIC,[],
+-            [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland")],
+-            [[#include <time.h>]])
+-AC_CHECK_HEADERS([execinfo.h])
++##AC_CHECK_DECL(SFD_CLOEXEC,[],
++#           [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile wayland")],
++#           [[#include <sys/signalfd.h>]])
++#AC_CHECK_DECL(TFD_CLOEXEC,[],
++#           [AC_MSG_ERROR("TFD_CLOEXEC is needed to compile wayland")],
++#           [[#include <sys/timerfd.h>]])
++#AC_CHECK_DECL(CLOCK_MONOTONIC,[],
++#           [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile wayland")],
++#           [[#include <time.h>]])
++#AC_CHECK_HEADERS([execinfo.h])
+ AC_ARG_ENABLE([scanner],
+               [AC_HELP_STRING([--disable-scanner],
+-- 
+1.8.3.2
+
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland_1.6.0.bb b/meta-tizen-adaptation/meta/recipes-graphics/wayland/wayland_1.6.0.bb
new file mode 100644 (file)
index 0000000..cf3c094
--- /dev/null
@@ -0,0 +1,41 @@
+SUMMARY = "Wayland, a protocol between a compositor and clients"
+DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \
+as well as a C library implementation of that protocol. The compositor can be \
+a standalone display server running on Linux kernel modesetting and evdev \
+input devices, an X application, or a wayland client itself. The clients can \
+be traditional applications, X servers (rootless or fullscreen) or other \
+display servers."
+HOMEPAGE = "http://wayland.freedesktop.org"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=1d4476a7d98dd5691c53d4d43a510c72 \
+                    file://src/wayland-server.c;endline=21;md5=079ae21dbf98ada52ec23744851b0a5c"
+
+SRC_URI = "http://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
+SRC_URI[md5sum] = "d34c141c975084e4fb668e77b38f840e"
+SRC_URI[sha256sum] = "a7d5102dcf53d08c059d24bc62de491d7cd482070abeb6737a20d0d86ba6fc7f"
+SRC_URI_append_class-native = " \
+    file://disable-macro-checks-not-used-for-scanner.patch \
+    "
+EXTRA_OECONF_class-native = "--disable-documentation --enable-scanner"
+
+inherit autotools pkgconfig
+
+# We need wayland-native for the wayland-scanner utility
+BBCLASSEXTEND = "native"
+
+DEPENDS_class-native = "expat-native libffi-native"
+DEPENDS = "expat libffi wayland-native"
+
+EXTRA_OECONF = "--disable-documentation --disable-scanner"
+
+# Wayland installs a M4 macro for other projects to use, which uses the target
+# pkg-config to find files.  Replace pkg-config with pkg-config-native.
+do_install_append_class-native() {
+  sed -e 's,PKG_CHECK_MODULES(.*),,g' \
+      -e 's,$PKG_CONFIG,pkg-config-native,g' \
+      -i ${D}/${datadir}/aclocal/wayland-scanner.m4
+}
+
+sysroot_stage_all_append_class-target () {
+       cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/
+}
index 35bb48e..8e662e0 100644 (file)
@@ -33,7 +33,7 @@ case "$1" in
                 mkdir --parents $XDG_RUNTIME_DIR
                 chmod 0700 $XDG_RUNTIME_DIR
         fi
-        export SHELL=/bin/sh
+
         openvt -s weston
   ;;
 
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/disable-wayland-scanner-pkg-check.patch b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/disable-wayland-scanner-pkg-check.patch
new file mode 100644 (file)
index 0000000..062da5c
--- /dev/null
@@ -0,0 +1,13 @@
+Index: weston-1.5.0/configure.ac
+===================================================================
+--- weston-1.5.0.orig/configure.ac
++++ weston-1.5.0/configure.ac
+@@ -503,7 +503,7 @@ if test x$wayland_scanner = x; then
+       AC_MSG_ERROR([wayland-scanner is needed to compile weston])
+ fi
+-PKG_CHECK_MODULES(WAYLAND_SCANNER, wayland-scanner)
++#PKG_CHECK_MODULES(WAYLAND_SCANNER, wayland-scanner)
+ AC_CONFIG_FILES([Makefile src/version.h src/weston.pc])
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-lcms-explicitly-configurable.patch b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-lcms-explicitly-configurable.patch
new file mode 100644 (file)
index 0000000..35e6d6f
--- /dev/null
@@ -0,0 +1,43 @@
+weston-1.5.0/configure.ac: make lcms explicitly configurable
+
+The lcms package is outside of openembedded-core, so make it
+explicitly configurable. Make it deterministic, so that if lcms
+dependencies are missing, autoconf throws a fatal error. Follow
+upstream style to make it more likely to be merged.
+
+Upstream-Status: Pending
+
+Index: weston-1.5.0/configure.ac
+===================================================================
+--- weston-1.5.0.orig/configure.ac
++++ weston-1.5.0/configure.ac
+@@ -491,12 +491,24 @@ AC_ARG_ENABLE(demo-clients-install,
+                            enable_demo_clients_install=no)
+ AM_CONDITIONAL(INSTALL_DEMO_CLIENTS, [test "x$enable_demo_clients_install" = "xyes"])
+-PKG_CHECK_MODULES(LCMS, lcms2,
+-                  [have_lcms=yes], [have_lcms=no])
+-if test "x$have_lcms" = xyes; then
+-       AC_DEFINE(HAVE_LCMS, 1, [Have lcms support])
++AC_ARG_ENABLE(lcms,
++              AS_HELP_STRING([--disable-lcms],
++                             [Disable lcms support]),,
++              enable_lcms=auto)
++AM_CONDITIONAL(HAVE_LCMS, [test "x$enable_lcms" = xyes])
++if test "x$enable_lcms" != "xno"; then
++        PKG_CHECK_MODULES(LCMS, 
++                         lcms2,
++                         [have_lcms=yes],
++                         [have_lcms=no])
++        if test "x$have_lcms" = "xno" -a "x$enable_lcms" = "xyes"; then
++          AC_MSG_ERROR([lcms support explicitly requested, but lcms couldn't be found])
++        fi
++        if test "x$have_lcms" = "xyes"; then
++                enable_lcms=yes
++                AC_DEFINE(HAVE_LCMS, 1, [Have lcms support])
++        fi
+ fi
+-AM_CONDITIONAL(HAVE_LCMS, [test "x$have_lcms" = xyes])
+ AC_PATH_PROG([wayland_scanner], [wayland-scanner])
+ if test x$wayland_scanner = x; then
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-libwebp-explicitly-configurable.patch b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/make-libwebp-explicitly-configurable.patch
new file mode 100644 (file)
index 0000000..ad07d4f
--- /dev/null
@@ -0,0 +1,37 @@
+
+The libwebp package is outside of openembedded-core, so make it
+explicitly configurable. Make it deterministic, so that if libwebp 
+dependencies are missing, autoconf throws a fatal error.
+
+Upstream-Status: Pending
+
+Index: weston-1.5.0/configure.ac
+===================================================================
+--- weston-1.5.0.orig/configure.ac
++++ weston-1.5.0/configure.ac
+@@ -268,9 +268,22 @@ fi
+ PKG_CHECK_MODULES(PIXMAN, [pixman-1])
+ PKG_CHECK_MODULES(PNG, [libpng])
+-PKG_CHECK_MODULES(WEBP, [libwebp], [have_webp=yes], [have_webp=no])
+-AS_IF([test "x$have_webp" = "xyes"],
+-      [AC_DEFINE([HAVE_WEBP], [1], [Have webp])])
++AC_ARG_ENABLE(webp,
++              AS_HELP_STRING([--disable-webp],
++                             [Disable libwebp support]),,
++              enable_webp=auto)
++AM_CONDITIONAL(HAVE_WEBP, [test "x$enable_webp" = xyes])
++AS_IF([test "x$enable_webp" != "xno"],
++    PKG_CHECK_MODULES(WEBP,
++                     [libwebp],
++                     [have_webp=yes],
++                     [have_webp=no])
++    AS_IF([test "x$have_webp" = "xno" -a "x$enable_webp" = "xyes"],
++        AC_MSG_ERROR([libwebp support explicitly request, but lipwebp could not be found]))
++    AS_IF([test "x$have_webp" = "xyes"],
++        [enable_webp=yes]
++        [AC_DEFINE([HAVE_WEBP], [1], [Have webp])])
++)
+ AC_ARG_ENABLE(vaapi-recorder, [  --enable-vaapi-recorder],,
+             enable_vaapi_recorder=auto)
diff --git a/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.desktop b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.desktop
new file mode 100644 (file)
index 0000000..1086ae8
--- /dev/null
@@ -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-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.png b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.png
new file mode 100644 (file)
index 0000000..ea8b7e0
Binary files /dev/null and b/meta-tizen-adaptation/meta/recipes-graphics/wayland/weston/weston.png differ