package/weston: bump to 1.3.0

Needs three patches from upstream, plus a custom patch to disable tests.
Drop old patches, all applied upstream or no longer needed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Yann E. MORIN 2013-10-14 23:26:36 +02:00 committed by Peter Korsgaard
parent 2e80b7072a
commit dda59a65a0
8 changed files with 171 additions and 97 deletions

View File

@ -0,0 +1,77 @@
commit 4a74d5a4a45423752105f865a8310ce878b1790a
Author: Kristian Høgsberg <krh@bitplanet.net>
Date: Wed Oct 9 11:19:11 2013 -0700
launcher: Don't leak tty file descriptor on error
---
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff --git a/src/launcher-util.c b/src/launcher-util.c
index d90271f..8ab61f1 100644
--- a/src/launcher-util.c
+++ b/src/launcher-util.c
@@ -275,7 +275,7 @@ setup_tty(struct weston_launcher *launcher, int tty)
weston_log("%s not a vt\n", tty_device);
weston_log("if running weston from ssh, "
"use --tty to specify a tty\n");
- return -1;
+ goto err_close;
}
ret = ioctl(launcher->tty, KDGETMODE, &kd_mode);
@@ -286,7 +286,7 @@ setup_tty(struct weston_launcher *launcher, int tty)
if (kd_mode != KD_TEXT) {
weston_log("%s is already in graphics mode, "
"is another display server running?\n", tty_device);
- return -1;
+ goto err_close;
}
ret = ioctl(launcher->tty, VT_ACTIVATE, minor(buf.st_rdev));
@@ -297,19 +297,19 @@ setup_tty(struct weston_launcher *launcher, int tty)
if (ioctl(launcher->tty, KDGKBMODE, &launcher->kb_mode)) {
weston_log("failed to read keyboard mode: %m\n");
- return -1;
+ goto err_close;
}
if (ioctl(launcher->tty, KDSKBMUTE, 1) &&
ioctl(launcher->tty, KDSKBMODE, K_OFF)) {
weston_log("failed to set K_OFF keyboard mode: %m\n");
- return -1;
+ goto err_close;
}
ret = ioctl(launcher->tty, KDSETMODE, KD_GRAPHICS);
if (ret) {
weston_log("failed to set KD_GRAPHICS mode on tty: %m\n");
- return -1;
+ goto err_close;
}
mode.mode = VT_PROCESS;
@@ -317,16 +317,20 @@ setup_tty(struct weston_launcher *launcher, int tty)
mode.acqsig = SIGUSR1;
if (ioctl(launcher->tty, VT_SETMODE, &mode) < 0) {
weston_log("failed to take control of vt handling\n");
- return -1;
+ goto err_close;
}
loop = wl_display_get_event_loop(launcher->compositor->wl_display);
launcher->vt_source =
wl_event_loop_add_signal(loop, SIGUSR1, vt_handler, launcher);
if (!launcher->vt_source)
- return -1;
+ goto err_close;
return 0;
+
+ err_close:
+ close(launcher->tty);
+ return -1;
}
int

View File

@ -1,47 +0,0 @@
From b8a831387a37f09ea5479eeb1d435a26680299c6 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Fri, 19 Apr 2013 06:19:05 +0200
Subject: [PATCH] Pull DRM dependent code only when the DRM compositor is
enabled
The <xf86drm.h> header and the drm*() functions may not be available
at all when the DRM compositor is not enabled, so they should not be
used. Fixes build failures when building the fbdev compositor on
systems where DRM is not available.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
src/launcher-util.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/launcher-util.c b/src/launcher-util.c
index 9196e4f..d2fb160 100644
--- a/src/launcher-util.c
+++ b/src/launcher-util.c
@@ -31,7 +31,9 @@
#include <sys/uio.h>
#include <fcntl.h>
+#ifdef BUILD_DRM_COMPOSITOR
#include <xf86drm.h>
+#endif
#include "compositor.h"
#include "launcher-util.h"
@@ -103,6 +105,7 @@ weston_launcher_open(struct weston_compositor *compositor,
return data->fd;
}
+#ifdef BUILD_DRM_COMPOSITOR
int
weston_launcher_drm_set_master(struct weston_compositor *compositor,
int drm_fd, char master)
@@ -157,4 +160,4 @@ weston_launcher_drm_set_master(struct weston_compositor *compositor,
return ret;
}
-
+#endif
--
1.7.9.5

View File

@ -0,0 +1,45 @@
commit 0b12db5f519a347ce0e1d5262e0cb2e9e2cc6990
Author: Tomeu Vizoso <tomeu@tomeuvizoso.net>
Date: Wed Oct 9 11:30:57 2013 +0200
launcher: Wrap drmGetMagic and drmAuthMagic so we can build without libdrm
---
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff --git a/src/launcher-util.c b/src/launcher-util.c
index 6b6a5f3..35a5698 100644
--- a/src/launcher-util.c
+++ b/src/launcher-util.c
@@ -80,9 +80,19 @@ drm_set_master(int drm_fd)
return drmSetMaster(drm_fd);
return -EBADF;
}
+static int
+drm_check_master(int drm_fd)
+{
+ drm_magic_t magic;
+ if (drm_fd != -1)
+ return drmGetMagic(drm_fd, &magic) != 0 ||
+ drmAuthMagic(drm_fd, magic) != 0;
+ return 0;
+}
#else
static int drm_drop_master(int drm_fd) {return 0;}
static int drm_set_master(int drm_fd) {return 0;}
+static int drm_check_master(int drm_fd) {return 1;}
#endif
int
@@ -110,10 +120,8 @@ weston_launcher_open(struct weston_launcher *launcher,
}
if (major(s.st_rdev) == DRM_MAJOR) {
- drm_magic_t magic;
launcher->drm_fd = fd;
- if (drmGetMagic(fd, &magic) != 0 ||
- drmAuthMagic(fd, magic) != 0) {
+ if (!drm_check_master(fd)) {
weston_log("drm fd not master\n");
close(fd);
return -1;

View File

@ -0,0 +1,29 @@
commit 9acd374822022793b09427d67ea4033915343dd8
Author: Kristian Høgsberg <krh@bitplanet.net>
Date: Fri Oct 11 15:25:42 2013 -0700
fbdev: Fix compilation without EGL
We have to duplicate #defines and typedefs for the EGL types and constants
we use in gl-renderer.h so we can compile the fbdev backend without EGL.
https://bugs.freedesktop.org/show_bug.cgi?id=70392
---
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
To be noted: the bug referenced above was opened by me,
and quickly fixed during an IRC session. Nice! :-)
diff --git a/src/gl-renderer.h b/src/gl-renderer.h
index 4919a1e..d16ade2 100644
--- a/src/gl-renderer.h
+++ b/src/gl-renderer.h
@@ -56,6 +56,7 @@ typedef void *EGLDisplay;
typedef void *EGLSurface;
typedef intptr_t EGLNativeDisplayType;
typedef intptr_t EGLNativeWindowType;
+#define EGL_DEFAULT_DISPLAY NULL
static const EGLint gl_renderer_opaque_attribs[];
static const EGLint gl_renderer_alpha_attribs[];

View File

@ -1,26 +0,0 @@
commit 9f43cb48aac9d27aa49fe955104f5cfd204703ed
Author: Quentin Glidic <sardemff7+git@sardemff7.net>
Date: Sat Aug 24 20:36:10 2013 +0200
autotools: Fix AC_PATH_PROG call
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff --git a/configure.ac b/configure.ac
index 0129157..43e5e5c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -424,8 +424,10 @@ if test "x$have_lcms" = xyes; then
fi
AM_CONDITIONAL(HAVE_LCMS, [test "x$have_lcms" = xyes])
-AC_PATH_PROG([wayland_scanner], [wayland-scanner],
- [AC_MSG_ERROR("wayland-scanner is needed to compile weston")])
+AC_PATH_PROG([wayland_scanner], [wayland-scanner])
+if test x$wayland_scanner = x; then
+ AC_MSG_ERROR([wayland-scanner is needed to compile weston])
+fi
AC_CONFIG_FILES([Makefile
shared/Makefile

View File

@ -1,22 +0,0 @@
commit 7b8e970ad1f1ef96db23b379a41edeb40ef1e8b6
Author: Adrian Negreanu <adrian.m.negreanu@intel.com>
Date: Thu Sep 26 19:31:32 2013 +0300
compositor-fbdev: drop dependency on libdrm
Signed-off-by: Adrian Negreanu <adrian.m.negreanu@intel.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff --git a/configure.ac b/configure.ac
index 7c2da44..a43bf5b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -190,7 +190,7 @@ AM_CONDITIONAL([ENABLE_FBDEV_COMPOSITOR],
[test x$enable_fbdev_compositor = xyes])
AS_IF([test x$enable_fbdev_compositor = xyes], [
AC_DEFINE([BUILD_FBDEV_COMPOSITOR], [1], [Build the fbdev compositor])
- PKG_CHECK_MODULES([FBDEV_COMPOSITOR], [libudev >= 136 mtdev >= 1.1.0 libdrm >= 2.4.30])
+ PKG_CHECK_MODULES([FBDEV_COMPOSITOR], [libudev >= 136 mtdev >= 1.1.0])
])
AC_ARG_ENABLE([rdp-compositor], [ --enable-rdp-compositor],,

View File

@ -0,0 +1,18 @@
Makefile: do not build tests
Tests are broken if no EGL support is available.
Reported-by: Peter Korsgaard <jacmet@uclibc.org>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff -durN weston-1.3.0.orig/Makefile.am weston-1.3.0/Makefile.am
--- weston-1.3.0.orig/Makefile.am 2013-08-20 20:15:19.000000000 +0200
+++ weston-1.3.0/Makefile.am 2013-10-14 23:08:12.016392097 +0200
@@ -2,7 +2,7 @@
wcap_subdir = wcap
endif
-SUBDIRS = shared src clients data protocol tests $(wcap_subdir) man
+SUBDIRS = shared src clients data protocol $(wcap_subdir) man
DISTCHECK_CONFIGURE_FLAGS = --disable-setuid-install

View File

@ -4,7 +4,7 @@
#
################################################################################
WESTON_VERSION = 1.2.2
WESTON_VERSION = 1.3.0
WESTON_SITE = http://wayland.freedesktop.org/releases/
WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz
WESTON_LICENSE = MIT
@ -13,7 +13,7 @@ WESTON_LICENSE_FILES = COPYING
WESTON_DEPENDENCIES = host-pkgconf wayland libxkbcommon pixman libpng \
jpeg mtdev udev cairo
# We touch configure.ac with one of our patches
# We're touching Makefile.am
WESTON_AUTORECONF = YES
WESTON_CONF_OPT = \