summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denys@ti.com>2018-04-11 14:03:19 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-05-04 13:28:04 +0100
commit1b0340b3b888696cb3c0600884686678535a4e5b (patch)
tree9e8b70f1f4a8bcfbe391bb8b2ecda073d584b979 /meta/recipes-graphics
parent8097bf7012a0d97d3b8b48eceb5dc20cc4ae7ca9 (diff)
downloadpoky-1b0340b3b888696cb3c0600884686678535a4e5b.tar.gz
weston: upgrade to 4.0.0
Official announcement: https://lists.freedesktop.org/archives/wayland-devel/2018-April/037768.html Dropped previously backported fix-missing-header.patch and weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch Refresh remaining local patches. Modify 0001-weston-launch-Provide-a-default-version-that-doesn-t.patch with changes to apply against the new code base. Support for libunwind was dropped in bb707dc0fe331c9af112a0552b7aa6fde755dd83: https://cgit.freedesktop.org/wayland/weston/commit/?id=bb707dc0fe331c9af112a0552b7aa6fde755dd83 Extract major version for referring to libweston-4 helper libraries. (From OE-Core rev: 0cc82a9158f58a37865f3ccc56156c987706f735) Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics')
-rw-r--r--meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch44
-rw-r--r--meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch49
-rw-r--r--meta/recipes-graphics/wayland/weston/fix-missing-header.patch30
-rw-r--r--meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch55
-rw-r--r--meta/recipes-graphics/wayland/weston_4.0.0.bb (renamed from meta/recipes-graphics/wayland/weston_3.0.0.bb)20
5 files changed, 56 insertions, 142 deletions
diff --git a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch
index 0671a45044..09ec1559ec 100644
--- a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch
+++ b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch
@@ -1,26 +1,27 @@
1From c22e90365d89346258394833cbcad03ff32b2e27 Mon Sep 17 00:00:00 2001 1From ad1d2161c811cff25d1684c33611f300adb753bc Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 29 May 2015 20:56:00 -0700 3Date: Fri, 29 May 2015 20:56:00 -0700
4Subject: [PATCH weston] make error() portable 4Subject: [PATCH] make error() portable
5 5
6error() is not posix but gnu extension so may not be available on all 6error() is not posix but gnu extension so may not be available on all
7kind of systemsi e.g. musl. 7kind of systemsi e.g. musl.
8 8
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11Upstream-Status: Submitted 9Upstream-Status: Submitted
12 10
13 configure.ac | 2 ++ 11Signed-off-by: Khem Raj <raj.khem@gmail.com>
14 libweston/weston-error.h | 20 ++++++++++++++++++++ 12
15 libweston/weston-launch.c | 2 +- 13---
14 configure.ac | 2 ++
15 libweston/weston-error.h | 20 ++++++++++++++++++++
16 libweston/weston-launch.c | 2 +-
16 3 files changed, 23 insertions(+), 1 deletion(-) 17 3 files changed, 23 insertions(+), 1 deletion(-)
17 create mode 100644 src/weston-error.h 18 create mode 100644 libweston/weston-error.h
18 19
19Index: weston-3.0.0/configure.ac 20diff --git a/configure.ac b/configure.ac
20=================================================================== 21index 7aebbdb..dc9c802 100644
21--- weston-3.0.0.orig/configure.ac 22--- a/configure.ac
22+++ weston-3.0.0/configure.ac 23+++ b/configure.ac
23@@ -103,6 +103,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], 24@@ -109,6 +109,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[],
24 [[#include <time.h>]]) 25 [[#include <time.h>]])
25 AC_CHECK_HEADERS([execinfo.h]) 26 AC_CHECK_HEADERS([execinfo.h])
26 27
@@ -29,10 +30,11 @@ Index: weston-3.0.0/configure.ac
29 AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) 30 AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate])
30 31
31 # check for libdrm as a build-time dependency only 32 # check for libdrm as a build-time dependency only
32Index: weston-3.0.0/libweston/weston-error.h 33diff --git a/libweston/weston-error.h b/libweston/weston-error.h
33=================================================================== 34new file mode 100644
35index 0000000..2089d02
34--- /dev/null 36--- /dev/null
35+++ weston-3.0.0/libweston/weston-error.h 37+++ b/libweston/weston-error.h
36@@ -0,0 +1,20 @@ 38@@ -0,0 +1,20 @@
37+#ifndef _WESTON_ERROR_H 39+#ifndef _WESTON_ERROR_H
38+#define _WESTON_ERROR_H 40+#define _WESTON_ERROR_H
@@ -54,10 +56,10 @@ Index: weston-3.0.0/libweston/weston-error.h
54+ 56+
55+#endif 57+#endif
56+ 58+
57Index: weston-3.0.0/libweston/weston-launch.c 59diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c
58=================================================================== 60index 1adcf21..166bf3b 100644
59--- weston-3.0.0.orig/libweston/weston-launch.c 61--- a/libweston/weston-launch.c
60+++ weston-3.0.0/libweston/weston-launch.c 62+++ b/libweston/weston-launch.c
61@@ -33,7 +33,6 @@ 63@@ -33,7 +33,6 @@
62 #include <poll.h> 64 #include <poll.h>
63 #include <errno.h> 65 #include <errno.h>
@@ -66,7 +68,7 @@ Index: weston-3.0.0/libweston/weston-launch.c
66 #include <getopt.h> 68 #include <getopt.h>
67 69
68 #include <sys/types.h> 70 #include <sys/types.h>
69@@ -60,6 +59,7 @@ 71@@ -59,6 +58,7 @@
70 #endif 72 #endif
71 73
72 #include "weston-launch.h" 74 #include "weston-launch.h"
diff --git a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
index 70b988898c..d648538b89 100644
--- a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
+++ b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
@@ -1,8 +1,7 @@
1From 8ff6ed03ec4079f32e9b34085414e57be4730e04 Mon Sep 17 00:00:00 2001 1From b98b9dbda902225cdd972b5bff6a641c36cc7e90 Mon Sep 17 00:00:00 2001
2From: Tom Hochstein <tom.hochstein@nxp.com> 2From: Tom Hochstein <tom.hochstein@nxp.com>
3Date: Wed, 22 Feb 2017 15:53:30 +0200 3Date: Wed, 22 Feb 2017 15:53:30 +0200
4Subject: [PATCH] weston-launch: Provide a default version that doesn't require 4Subject: [PATCH] weston-launch: Provide a default version that doesn't require PAM
5 PAM
6 5
7weston-launch requires PAM for starting weston as a non-root user. 6weston-launch requires PAM for starting weston as a non-root user.
8 7
@@ -14,16 +13,18 @@ Upstream-Status: Pending
14 13
15Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> 14Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
16Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> 15Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
16Signed-off-by: Denys Dmytriyenko <denys@ti.com>
17
17--- 18---
18 configure.ac | 9 +++++++-- 19 configure.ac | 9 +++++++--
19 libweston/weston-launch.c | 20 ++++++++++++++++++++ 20 libweston/weston-launch.c | 20 ++++++++++++++++++++
20 2 files changed, 27 insertions(+), 2 deletions(-) 21 2 files changed, 27 insertions(+), 2 deletions(-)
21 22
22diff --git a/configure.ac b/configure.ac 23diff --git a/configure.ac b/configure.ac
23index 46cb2c7..bb45f46 100644 24index dc9c802..48cf5cb 100644
24--- a/configure.ac 25--- a/configure.ac
25+++ b/configure.ac 26+++ b/configure.ac
26@@ -435,13 +435,17 @@ AC_ARG_ENABLE(resize-optimization, 27@@ -451,13 +451,17 @@ AC_ARG_ENABLE(resize-optimization,
27 AS_IF([test "x$enable_resize_optimization" = "xyes"], 28 AS_IF([test "x$enable_resize_optimization" = "xyes"],
28 [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])]) 29 [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])])
29 30
@@ -43,7 +44,7 @@ index 46cb2c7..bb45f46 100644
43 fi 44 fi
44 45
45 AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes") 46 AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes")
46@@ -701,6 +705,7 @@ AC_MSG_RESULT([ 47@@ -702,6 +706,7 @@ AC_MSG_RESULT([
47 Enable developer documentation ${enable_devdocs} 48 Enable developer documentation ${enable_devdocs}
48 49
49 weston-launch utility ${enable_weston_launch} 50 weston-launch utility ${enable_weston_launch}
@@ -52,7 +53,7 @@ index 46cb2c7..bb45f46 100644
52 systemd notify support ${enable_systemd_notify} 53 systemd notify support ${enable_systemd_notify}
53 54
54diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c 55diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c
55index 0491896..07e7469 100644 56index 166bf3b..6fb9232 100644
56--- a/libweston/weston-launch.c 57--- a/libweston/weston-launch.c
57+++ b/libweston/weston-launch.c 58+++ b/libweston/weston-launch.c
58@@ -51,7 +51,9 @@ 59@@ -51,7 +51,9 @@
@@ -65,7 +66,7 @@ index 0491896..07e7469 100644
65 66
66 #ifdef HAVE_SYSTEMD_LOGIN 67 #ifdef HAVE_SYSTEMD_LOGIN
67 #include <systemd/sd-login.h> 68 #include <systemd/sd-login.h>
68@@ -93,8 +95,10 @@ drmSetMaster(int drm_fd) 69@@ -101,8 +103,10 @@ drmSetMaster(int drm_fd)
69 #endif 70 #endif
70 71
71 struct weston_launch { 72 struct weston_launch {
@@ -76,7 +77,7 @@ index 0491896..07e7469 100644
76 int tty; 77 int tty;
77 int ttynr; 78 int ttynr;
78 int sock[2]; 79 int sock[2];
79@@ -181,6 +185,7 @@ weston_launch_allowed(struct weston_launch *wl) 80@@ -189,6 +193,7 @@ weston_launch_allowed(struct weston_launch *wl)
80 return false; 81 return false;
81 } 82 }
82 83
@@ -84,7 +85,7 @@ index 0491896..07e7469 100644
84 static int 85 static int
85 pam_conversation_fn(int msg_count, 86 pam_conversation_fn(int msg_count,
86 const struct pam_message **messages, 87 const struct pam_message **messages,
87@@ -221,6 +226,7 @@ setup_pam(struct weston_launch *wl) 88@@ -229,6 +234,7 @@ setup_pam(struct weston_launch *wl)
88 89
89 return 0; 90 return 0;
90 } 91 }
@@ -92,7 +93,7 @@ index 0491896..07e7469 100644
92 93
93 static int 94 static int
94 setup_launcher_socket(struct weston_launch *wl) 95 setup_launcher_socket(struct weston_launch *wl)
95@@ -414,6 +420,7 @@ quit(struct weston_launch *wl, int status) 96@@ -422,6 +428,7 @@ quit(struct weston_launch *wl, int status)
96 close(wl->signalfd); 97 close(wl->signalfd);
97 close(wl->sock[0]); 98 close(wl->sock[0]);
98 99
@@ -100,7 +101,7 @@ index 0491896..07e7469 100644
100 if (wl->new_user) { 101 if (wl->new_user) {
101 err = pam_close_session(wl->ph, 0); 102 err = pam_close_session(wl->ph, 0);
102 if (err) 103 if (err)
103@@ -421,6 +428,7 @@ quit(struct weston_launch *wl, int status) 104@@ -429,6 +436,7 @@ quit(struct weston_launch *wl, int status)
104 err, pam_strerror(wl->ph, err)); 105 err, pam_strerror(wl->ph, err));
105 pam_end(wl->ph, err); 106 pam_end(wl->ph, err);
106 } 107 }
@@ -108,7 +109,7 @@ index 0491896..07e7469 100644
108 109
109 if (ioctl(wl->tty, KDSKBMUTE, 0) && 110 if (ioctl(wl->tty, KDSKBMUTE, 0) &&
110 ioctl(wl->tty, KDSKBMODE, wl->kb_mode)) 111 ioctl(wl->tty, KDSKBMODE, wl->kb_mode))
111@@ -600,6 +608,7 @@ setup_session(struct weston_launch *wl, char **child_argv) 112@@ -608,6 +616,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
112 setenv("HOME", wl->pw->pw_dir, 1); 113 setenv("HOME", wl->pw->pw_dir, 1);
113 setenv("SHELL", wl->pw->pw_shell, 1); 114 setenv("SHELL", wl->pw->pw_shell, 1);
114 115
@@ -116,7 +117,7 @@ index 0491896..07e7469 100644
116 env = pam_getenvlist(wl->ph); 117 env = pam_getenvlist(wl->ph);
117 if (env) { 118 if (env) {
118 for (i = 0; env[i]; ++i) { 119 for (i = 0; env[i]; ++i) {
119@@ -608,6 +617,7 @@ setup_session(struct weston_launch *wl, char **child_argv) 120@@ -616,6 +625,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
120 } 121 }
121 free(env); 122 free(env);
122 } 123 }
@@ -124,17 +125,18 @@ index 0491896..07e7469 100644
124 125
125 /* 126 /*
126 * We open a new session, so it makes sense 127 * We open a new session, so it makes sense
127@@ -675,7 +685,9 @@ static void 128@@ -683,8 +693,10 @@ static void
128 help(const char *name) 129 help(const char *name)
129 { 130 {
130 fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name); 131 fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name);
131+#ifdef HAVE_PAM 132+#ifdef HAVE_PAM
132 fprintf(stderr, " -u, --user Start session as specified username\n"); 133 fprintf(stderr, " -u, --user Start session as specified username,\n"
134 " e.g. -u joe, requires root.\n");
133+#endif 135+#endif
134 fprintf(stderr, " -t, --tty Start session on alternative tty\n"); 136 fprintf(stderr, " -t, --tty Start session on alternative tty,\n"
137 " e.g. -t /dev/tty4, requires -u option.\n");
135 fprintf(stderr, " -v, --verbose Be verbose\n"); 138 fprintf(stderr, " -v, --verbose Be verbose\n");
136 fprintf(stderr, " -h, --help Display this help message\n"); 139@@ -698,7 +710,9 @@ main(int argc, char *argv[])
137@@ -688,7 +700,9 @@ main(int argc, char *argv[])
138 int i, c; 140 int i, c;
139 char *tty = NULL; 141 char *tty = NULL;
140 struct option opts[] = { 142 struct option opts[] = {
@@ -144,8 +146,8 @@ index 0491896..07e7469 100644
144 { "tty", required_argument, NULL, 't' }, 146 { "tty", required_argument, NULL, 't' },
145 { "verbose", no_argument, NULL, 'v' }, 147 { "verbose", no_argument, NULL, 'v' },
146 { "help", no_argument, NULL, 'h' }, 148 { "help", no_argument, NULL, 'h' },
147@@ -700,9 +714,13 @@ main(int argc, char *argv[]) 149@@ -710,9 +724,13 @@ main(int argc, char *argv[])
148 while ((c = getopt_long(argc, argv, "u:t::vh", opts, &i)) != -1) { 150 while ((c = getopt_long(argc, argv, "u:t:vh", opts, &i)) != -1) {
149 switch (c) { 151 switch (c) {
150 case 'u': 152 case 'u':
151+#ifdef HAVE_PAM 153+#ifdef HAVE_PAM
@@ -158,7 +160,7 @@ index 0491896..07e7469 100644
158 break; 160 break;
159 case 't': 161 case 't':
160 tty = optarg; 162 tty = optarg;
161@@ -740,8 +758,10 @@ main(int argc, char *argv[]) 163@@ -753,8 +771,10 @@ main(int argc, char *argv[])
162 if (setup_tty(&wl, tty) < 0) 164 if (setup_tty(&wl, tty) < 0)
163 exit(EXIT_FAILURE); 165 exit(EXIT_FAILURE);
164 166
@@ -169,6 +171,3 @@ index 0491896..07e7469 100644
169 171
170 if (setup_launcher_socket(&wl) < 0) 172 if (setup_launcher_socket(&wl) < 0)
171 exit(EXIT_FAILURE); 173 exit(EXIT_FAILURE);
172--
1732.1.4
174
diff --git a/meta/recipes-graphics/wayland/weston/fix-missing-header.patch b/meta/recipes-graphics/wayland/weston/fix-missing-header.patch
deleted file mode 100644
index 55c0d4fd0f..0000000000
--- a/meta/recipes-graphics/wayland/weston/fix-missing-header.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1On the musl C library, tests/timespec-text.c does not build, with the
2following error:
3
4 In file included from tests/timespec-test.c:36:0:
5 ./shared/timespec-util.h:41:21: warning: ‘struct timespec’ declared
6 inside parameter list will not be visible outside of this definition
7 or declaration
8 timespec_sub(struct timespec *r,
9 ^~~~~~~~
10 [...]
11
12Indeed, struct timespec is defined in time.h, so we must include it.
13
14Upstream-Status: Backport [fa41bdfbc0b962fd73b89f01aab1a5370c9c28eb]
15
16Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
17Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
18
19Index: weston-3.0.0/shared/timespec-util.h
20===================================================================
21--- weston-3.0.0.orig/shared/timespec-util.h
22+++ weston-3.0.0/shared/timespec-util.h
23@@ -28,6 +28,7 @@
24
25 #include <stdint.h>
26 #include <assert.h>
27+#include <time.h>
28
29 #define NSEC_PER_SEC 1000000000
30
diff --git a/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch b/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch
deleted file mode 100644
index b3e1d06f57..0000000000
--- a/meta/recipes-graphics/wayland/weston/weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch
+++ /dev/null
@@ -1,55 +0,0 @@
1Multi-plane sub-sampled textures have partial width/height, e.g.
2YUV420/I420 has a full-size Y plane, followed by a half-width/height U
3plane, and a half-width/height V plane.
4
5zwp_linux_dmabuf_v1 allows clients to pass an explicit pitch for each
6plane, but for wl_shm this must be inferred. gl-renderer was correctly
7accounting for the width and height when subsampling, but the pitch was
8being taken as the pitch for the first plane.
9
10This does not match the requirements for GStreamer's waylandsink, in
11particular, as well as other clients. Fix the SHM upload path to
12correctly set the pitch for each plane, according to subsampling.
13
14Tested with:
15 $ gst-launch-1.0 videotestsrc ! waylandsink
16
17Upstream-Status: Backport [https://patchwork.freedesktop.org/patch/180767/]
18
19Signed-off-by: Daniel Stone <daniels@collabora.com>
20Fixes: fdeefe42418 ("gl-renderer: add support of WL_SHM_FORMAT_YUV420")
21Reported-by: Fabien Lahoudere <fabien.lahoudere@collabora.co.uk>
22Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103063
23
24---
25 libweston/gl-renderer.c | 4 ++--
26 1 file changed, 2 insertions(+), 2 deletions(-)
27
28diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c
29index 244ce309..40bf0bb6 100644
30--- a/libweston/gl-renderer.c
31+++ b/libweston/gl-renderer.c
32@@ -1445,14 +1445,13 @@ gl_renderer_flush_damage(struct weston_surface *surface)
33 goto done;
34 }
35
36- glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch);
37-
38 if (gs->needs_full_upload) {
39 glPixelStorei(GL_UNPACK_SKIP_PIXELS_EXT, 0);
40 glPixelStorei(GL_UNPACK_SKIP_ROWS_EXT, 0);
41 wl_shm_buffer_begin_access(buffer->shm_buffer);
42 for (j = 0; j < gs->num_textures; j++) {
43 glBindTexture(GL_TEXTURE_2D, gs->textures[j]);
44+ glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch / gs->hsub[j]);
45 glTexImage2D(GL_TEXTURE_2D, 0,
46 gs->gl_format[j],
47 gs->pitch / gs->hsub[j],
48@@ -1477,6 +1476,7 @@ gl_renderer_flush_damage(struct weston_surface *surface)
49 glPixelStorei(GL_UNPACK_SKIP_ROWS_EXT, r.y1);
50 for (j = 0; j < gs->num_textures; j++) {
51 glBindTexture(GL_TEXTURE_2D, gs->textures[j]);
52+ glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT, gs->pitch / gs->hsub[j]);
53 glTexSubImage2D(GL_TEXTURE_2D, 0,
54 r.x1 / gs->hsub[j],
55 r.y1 / gs->vsub[j],
diff --git a/meta/recipes-graphics/wayland/weston_3.0.0.bb b/meta/recipes-graphics/wayland/weston_4.0.0.bb
index ad0cdc2b0f..7dfca7fc63 100644
--- a/meta/recipes-graphics/wayland/weston_3.0.0.bb
+++ b/meta/recipes-graphics/wayland/weston_4.0.0.bb
@@ -11,11 +11,9 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
11 file://0001-make-error-portable.patch \ 11 file://0001-make-error-portable.patch \
12 file://xwayland.weston-start \ 12 file://xwayland.weston-start \
13 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ 13 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
14 file://weston-gl-renderer-Set-pitch-correctly-for-subsampled-textures.patch \
15 file://fix-missing-header.patch \
16" 14"
17SRC_URI[md5sum] = "9c42a4c51a1b9f35d040fa9d45ada36d" 15SRC_URI[md5sum] = "33709aa4d5916f89643fca0fc0064b39"
18SRC_URI[sha256sum] = "cde1d55e8dd70c3cbb3d1ec72f60e60000041579caa1d6a262bd9c35e93723a5" 16SRC_URI[sha256sum] = "a0fc0ae7ef83dfbed12abfe9b8096a24a7dd00705e86fa0db1e619ded18b4b58"
19 17
20inherit autotools pkgconfig useradd distro_features_check 18inherit autotools pkgconfig useradd distro_features_check
21# depends on virtual/egl 19# depends on virtual/egl
@@ -24,6 +22,8 @@ REQUIRED_DISTRO_FEATURES = "opengl"
24DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" 22DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg"
25DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" 23DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native"
26 24
25WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}"
26
27EXTRA_OECONF = "--enable-setuid-install \ 27EXTRA_OECONF = "--enable-setuid-install \
28 --disable-rdp-compositor \ 28 --disable-rdp-compositor \
29 " 29 "
@@ -62,8 +62,6 @@ PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo"
62PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms" 62PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms"
63# Weston with webp support 63# Weston with webp support
64PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp" 64PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp"
65# Weston with unwinding support
66PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind"
67# Weston with systemd-login support 65# Weston with systemd-login support
68PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus" 66PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus"
69# Weston with Xwayland support (requires X11 and Wayland) 67# Weston with Xwayland support (requires X11 and Wayland)
@@ -77,7 +75,7 @@ PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam"
77 75
78do_install_append() { 76do_install_append() {
79 # Weston doesn't need the .la files to load modules, so wipe them 77 # Weston doesn't need the .la files to load modules, so wipe them
80 rm -f ${D}/${libdir}/libweston-3/*.la 78 rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la
81 79
82 # If X11, ship a desktop file to launch it 80 # If X11, ship a desktop file to launch it
83 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then 81 if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then
@@ -94,16 +92,16 @@ do_install_append() {
94} 92}
95 93
96PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ 94PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \
97 libweston-3 ${PN}-examples" 95 libweston-${WESTON_MAJOR_VERSION} ${PN}-examples"
98 96
99FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}" 97FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}"
100 98
101FILES_libweston-3 = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-3/*.so" 99FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so"
102SUMMARY_libweston-3 = "Helper library for implementing 'wayland window managers'." 100SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'."
103 101
104FILES_${PN}-examples = "${bindir}/*" 102FILES_${PN}-examples = "${bindir}/*"
105 103
106FILES_${PN}-xwayland = "${libdir}/libweston-3/xwayland.so" 104FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so"
107RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" 105RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland"
108 106
109RDEPENDS_${PN} += "xkeyboard-config" 107RDEPENDS_${PN} += "xkeyboard-config"