* [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan
@ 2017-02-28 9:26 Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 1/6] wayland: Upgrade 1.12.0 -> 1.13.0 Jussi Kukkonen
` (5 more replies)
0 siblings, 6 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
Several small changes since V1:
* vulkan: Added a file to LIC_FILES_CHECKSUM
* vulkan: Added upstream-status to patch
* vkcube: Fixed version to 0.1
* weston: Fixed the packaging bug I introduced (weston-xwayland
package should only be created if the feature is on. Note that
dropping PACKAGE_BEFORE_PN is fine: contents stay the same)
Original V1 cover letter follows:
These patches are in one set because the vulkan bits need both new
weston and mesa, but please treat them as 3 groups for merge decision:
** Wayland, Weston upgrade:
Fairly standard upgrades. Weston now has a library package.
** Mesa upgrade:
This is a resend of an earlier patch: it is labeled a development
release (I expect 17.0.1 in about a week but no guarantees of course).
Only change since previous send is the xvmcsoftpipe removal.
We will be fine with mesa 13 as well (it's only 4 months old) but I'm
resending this as 17 seems good to me _and_ it enables the next 3
patches...
** Vulkan (3 last patches):
I'm not sure how much interest for vulkan in oe-core there is but now
that it's possible, here are my patches for that (obviously only the
mesa one really needs to be in oe-core). Some notes:
- xf86-video-intel has dri3 disabled at runtime by default so
vulkan won't run out of the box on X based images
- Building the radeon driver needs llvm 3.9: I did not try to enable
- vkcube build requires the intel driver at the moment. I believe this
is fixable for someone familiar with vulkan
There's no vulkan distro feature yet so some assembly is required:
# vulkan test settings for local.conf:
PACKAGECONFIG_append_pn-mesa = "vulkan dri3"
IMAGE_INSTALL_append = "vkcube vulkan-bin mesa-vulkan-drivers"
XSERVER_remove = "xf86-video-intel" # only if using X
Now 'vkcube' and 'vulkaninfo' should provide entertainment.
Cheers,
Jussi
The following changes since commit 3c83b56309ab419f8cda72c0711479f60f61439a:
bitbake: fetch2/svn: change 'rsh' parameter to 'ssh' (2017-02-23 12:50:17 -0800)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib jku/vulkan
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=jku/vulkan
Jussi Kukkonen (6):
wayland: Upgrade 1.12.0 -> 1.13.0
weston: Upgrade 1.11.1 -> 2.0.0, separate libweston
mesa: Upgrade 13.0.4 -> 17.0.0
mesa: Enable vulkan driver for intel
vulkan: Add recipe for Vulkan common loader
vkcube: Add recipe for minimal vulkan demo
.../mesa/{mesa-gl_13.0.4.bb => mesa-gl_17.0.0.bb} | 0
meta/recipes-graphics/mesa/mesa.inc | 20 ++--
.../mesa/{mesa_13.0.4.bb => mesa_17.0.0.bb} | 7 +-
.../vkcube/0001-Install-the-vkcube-binary.patch | 38 +++++++
meta/recipes-graphics/vulkan/vkcube_git.bb | 18 ++++
.../vulkan/demos-Don-t-build-tri-or-cube.patch | 106 +++++++++++++++++++
meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb | 33 ++++++
.../{wayland_1.12.0.bb => wayland_1.13.0.bb} | 4 +-
...-configuration-option-for-no-input-device.patch | 112 ---------------------
...1-configure.ac-Fix-wayland-protocols-path.patch | 2 +-
.../wayland/weston/0001-make-error-portable.patch | 12 +--
.../0001-shared-include-stdint.h-for-int32_t.patch | 23 -----
...ch-Provide-a-default-version-that-doesn-t.patch | 52 ++++++----
.../wayland/{weston_1.11.1.bb => weston_2.0.0.bb} | 21 ++--
14 files changed, 256 insertions(+), 192 deletions(-)
rename meta/recipes-graphics/mesa/{mesa-gl_13.0.4.bb => mesa-gl_17.0.0.bb} (100%)
rename meta/recipes-graphics/mesa/{mesa_13.0.4.bb => mesa_17.0.0.bb} (74%)
create mode 100644 meta/recipes-graphics/vulkan/vkcube/0001-Install-the-vkcube-binary.patch
create mode 100644 meta/recipes-graphics/vulkan/vkcube_git.bb
create mode 100644 meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
create mode 100644 meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
rename meta/recipes-graphics/wayland/{wayland_1.12.0.bb => wayland_1.13.0.bb} (92%)
delete mode 100644 meta/recipes-graphics/wayland/weston/0001-Add-configuration-option-for-no-input-device.patch
delete mode 100644 meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch
rename meta/recipes-graphics/wayland/{weston_1.11.1.bb => weston_2.0.0.bb} (88%)
--
2.1.4
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2 1/6] wayland: Upgrade 1.12.0 -> 1.13.0
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 2/6] weston: Upgrade 1.11.1 -> 2.0.0, separate libweston Jussi Kukkonen
` (4 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
.../recipes-graphics/wayland/{wayland_1.12.0.bb => wayland_1.13.0.bb} | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
rename meta/recipes-graphics/wayland/{wayland_1.12.0.bb => wayland_1.13.0.bb} (92%)
diff --git a/meta/recipes-graphics/wayland/wayland_1.12.0.bb b/meta/recipes-graphics/wayland/wayland_1.13.0.bb
similarity index 92%
rename from meta/recipes-graphics/wayland/wayland_1.12.0.bb
rename to meta/recipes-graphics/wayland/wayland_1.13.0.bb
index 026227a..b9396b6 100644
--- a/meta/recipes-graphics/wayland/wayland_1.12.0.bb
+++ b/meta/recipes-graphics/wayland/wayland_1.13.0.bb
@@ -14,8 +14,8 @@ DEPENDS = "expat libxml2 libffi wayland-native"
SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
"
-SRC_URI[md5sum] = "ee615e2d1e205eec48b02f069327eb96"
-SRC_URI[sha256sum] = "d6b4135cba0188abcb7275513c72dede751d6194f6edc5b82183a3ba8b821ab1"
+SRC_URI[md5sum] = "cae152ed956da6de53f9727bc1c45039"
+SRC_URI[sha256sum] = "69b052c031a61e89af7cc8780893d0da1e301492352aa449dee9345043e6fe51"
inherit autotools pkgconfig
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v2 2/6] weston: Upgrade 1.11.1 -> 2.0.0, separate libweston
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 1/6] wayland: Upgrade 1.12.0 -> 1.13.0 Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 3/6] mesa: Upgrade 13.0.4 -> 17.0.0 Jussi Kukkonen
` (3 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
* Drop two patches that are upstream. Rebase other patches.
* Separate libweston into its own package, modify the recipe
as needed because files have changed location.
* Remove "--disable-rpi-compositor": the backend does not exist
anymore.
Libweston is already at version 2 and is likely to have new major
versions. The versions should be parallel installable (but weston
itself will not be).
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
...-configuration-option-for-no-input-device.patch | 112 ---------------------
...1-configure.ac-Fix-wayland-protocols-path.patch | 2 +-
.../wayland/weston/0001-make-error-portable.patch | 12 +--
.../0001-shared-include-stdint.h-for-int32_t.patch | 23 -----
...ch-Provide-a-default-version-that-doesn-t.patch | 52 ++++++----
.../wayland/{weston_1.11.1.bb => weston_2.0.0.bb} | 21 ++--
6 files changed, 48 insertions(+), 174 deletions(-)
delete mode 100644 meta/recipes-graphics/wayland/weston/0001-Add-configuration-option-for-no-input-device.patch
delete mode 100644 meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch
rename meta/recipes-graphics/wayland/{weston_1.11.1.bb => weston_2.0.0.bb} (88%)
diff --git a/meta/recipes-graphics/wayland/weston/0001-Add-configuration-option-for-no-input-device.patch b/meta/recipes-graphics/wayland/weston/0001-Add-configuration-option-for-no-input-device.patch
deleted file mode 100644
index c45f3ad..0000000
--- a/meta/recipes-graphics/wayland/weston/0001-Add-configuration-option-for-no-input-device.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From 75b7197f4e072a4e2de124ddbe93b85cffb1c0f8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org>
-Date: Fri, 21 Oct 2016 14:03:13 -0500
-Subject: [PATCH] Add configuration option for no input device.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-As it has been discussed in the past [1], running Weston
-without any input device at launch might be beneficial for
-some use cases.
-
-Certainly, it's best for the vast majority of users (and
-the project) to require an input device to be present, as
-to avoid frustration and hassle, but for those brave souls
-that so prefer, this patch lets them run without any input
-device at all.
-
-This introduces a simple configuration in weston.ini:
- [core]
- require-input=true
-
-True is the default, so no behavioral change is introduced.
-
-[1] https://lists.freedesktop.org/archives/wayland-devel/2015-November/025193.html
-
-Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Reviewed-by: Daniel Stone <daniels@collabora.com>
-
-Upstream-Status: backport from
-https://cgit.freedesktop.org/wayland/weston/commit/?id=75b7197f
----
- man/weston.ini.man | 5 +++++
- src/compositor.h | 3 +++
- src/libinput-seat.c | 6 ++++++
- src/main.c | 5 +++++
- weston.ini.in | 1 +
- 5 files changed, 20 insertions(+)
-
---- a/src/main.c
-+++ b/src/main.c
-@@ -1298,6 +1298,7 @@ int main(int argc, char *argv[])
- struct wl_client *primary_client;
- struct wl_listener primary_client_destroyed;
- struct weston_seat *seat;
-+ int require_input;
-
- const struct weston_option core_options[] = {
- { WESTON_OPTION_STRING, "backend", 'B', &backend },
-@@ -1373,6 +1374,10 @@ int main(int argc, char *argv[])
- if (weston_compositor_init_config(ec, config) < 0)
- goto out;
-
-+ weston_config_section_get_bool(section, "require-input",
-+ &require_input, true);
-+ ec->require_input = require_input;
-+
- if (load_backend(ec, backend, &argc, argv, config) < 0) {
- weston_log("fatal: failed to create compositor backend\n");
- goto out;
---- a/src/compositor.h
-+++ b/src/compositor.h
-@@ -803,6 +803,9 @@ struct weston_compositor {
-
- void *user_data;
- void (*exit)(struct weston_compositor *c);
-+
-+ /* Whether to let the compositor run without any input device. */
-+ bool require_input;
- };
-
- struct weston_buffer {
---- a/src/libinput-seat.c
-+++ b/src/libinput-seat.c
-@@ -255,6 +255,12 @@ udev_input_enable(struct udev_input *inp
- devices_found = 1;
- }
-
-+ if (devices_found == 0 && !c->require_input) {
-+ weston_log("warning: no input devices found, but none required "
-+ "as per configuration.\n");
-+ return 0;
-+ }
-+
- if (devices_found == 0) {
- weston_log(
- "warning: no input devices on entering Weston. "
---- a/man/weston.ini.man
-+++ b/man/weston.ini.man
-@@ -169,6 +169,11 @@ time, the one specified in the command-l
- hand, if none of these sets the value, default idle timeout will be
- set to 300 seconds.
- .RS
-+.PP
-+.RE
-+.TP 7
-+.BI "require-input=" true
-+require an input device for launch
-
- .SH "LIBINPUT SECTION"
- The
---- a/weston.ini.in
-+++ b/weston.ini.in
-@@ -2,6 +2,7 @@
- #modules=xwayland.so,cms-colord.so
- #shell=desktop-shell.so
- #gbm-format=xrgb2101010
-+#require-input=true
-
- [shell]
- background-image=/usr/share/backgrounds/gnome/Aqua.jpg
diff --git a/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch b/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch
index edd3b91..5f4d79c 100644
--- a/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch
+++ b/meta/recipes-graphics/wayland/weston/0001-configure.ac-Fix-wayland-protocols-path.patch
@@ -21,7 +21,7 @@ Upstream-Status: Inappropriate [embedded specific]
@@ -187,7 +187,7 @@ PKG_CHECK_MODULES(LIBINPUT_BACKEND, [lib
PKG_CHECK_MODULES(COMPOSITOR, [$COMPOSITOR_MODULES])
- PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.2],
+ PKG_CHECK_MODULES(WAYLAND_PROTOCOLS, [wayland-protocols >= 1.7],
- [ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`])
+ [ac_wayland_protocols_pkgdatadir=${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`])
AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir)
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 f7b5284..e2213ac 100644
--- a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch
+++ b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch
@@ -10,9 +10,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Submitted
- configure.ac | 2 ++
- src/weston-error.h | 20 ++++++++++++++++++++
- src/weston-launch.c | 2 +-
+ configure.ac | 2 ++
+ libweston/weston-error.h | 20 ++++++++++++++++++++
+ libweston/weston-launch.c | 2 +-
3 files changed, 23 insertions(+), 1 deletion(-)
create mode 100644 src/weston-error.h
@@ -28,7 +28,7 @@ Upstream-Status: Submitted
COMPOSITOR_MODULES="wayland-server >= $WAYLAND_PREREQ_VERSION pixman-1 >= 0.25.2"
--- /dev/null
-+++ b/src/weston-error.h
++++ b/libweston/weston-error.h
@@ -0,0 +1,20 @@
+#ifndef _WESTON_ERROR_H
+#define _WESTON_ERROR_H
@@ -50,8 +50,8 @@ Upstream-Status: Submitted
+
+#endif
+
---- a/src/weston-launch.c
-+++ b/src/weston-launch.c
+--- a/libweston/weston-launch.c
++++ b/libweston/weston-launch.c
@@ -33,7 +33,6 @@
#include <poll.h>
#include <errno.h>
diff --git a/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch b/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch
deleted file mode 100644
index ee66c20..0000000
--- a/meta/recipes-graphics/wayland/weston/0001-shared-include-stdint.h-for-int32_t.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From ba02b8abe4e2afac2bfbf2559972d5059d75a041 Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Date: Sat, 16 Jul 2016 22:50:19 +0300
-Subject: [PATCH weston] shared: include stdint.h for int32_t
-
-This fixes build on musl.
-
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Upstream-Status: Submitted
----
- shared/xalloc.h | 1 +
- 1 file changed, 1 insertion(+)
-
---- a/shared/xalloc.h
-+++ b/shared/xalloc.h
-@@ -30,6 +30,7 @@
- extern "C" {
- #endif
-
-+#include <stdint.h>
- #include <stdlib.h>
- #include <string.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 d684b1c..70b9888 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,6 +1,6 @@
-From d02226b3d5872b184c1d50c7f4706ac9467ffb81 Mon Sep 17 00:00:00 2001
+From 8ff6ed03ec4079f32e9b34085414e57be4730e04 Mon Sep 17 00:00:00 2001
From: Tom Hochstein <tom.hochstein@nxp.com>
-Date: Fri, 15 Jul 2016 11:00:15 +0300
+Date: Wed, 22 Feb 2017 15:53:30 +0200
Subject: [PATCH] weston-launch: Provide a default version that doesn't require
PAM
@@ -13,14 +13,17 @@ without non-root-user support.
Upstream-Status: Pending
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
- configure.ac | 9 +++++++--
- src/weston-launch.c | 20 ++++++++++++++++++++
+ configure.ac | 9 +++++++--
+ libweston/weston-launch.c | 20 ++++++++++++++++++++
2 files changed, 27 insertions(+), 2 deletions(-)
+diff --git a/configure.ac b/configure.ac
+index 46cb2c7..bb45f46 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -416,13 +416,17 @@ AC_ARG_ENABLE(resize-optimization,
+@@ -435,13 +435,17 @@ AC_ARG_ENABLE(resize-optimization,
AS_IF([test "x$enable_resize_optimization" = "xyes"],
[AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])])
@@ -28,11 +31,11 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
+ AS_HELP_STRING([--with-pam], [Use PAM]),
+ [use_pam=$withval], [use_pam=yes])
AC_ARG_ENABLE(weston-launch, [ --enable-weston-launch],, enable_weston_launch=yes)
- AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch == xyes)
--if test x$enable_weston_launch == xyes; then
+ AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch = xyes)
+-if test x$enable_weston_launch = xyes; then
+if test x$enable_weston_launch = xyes -a x$use_pam = xyes; then
WESTON_SEARCH_LIBS([PAM], [pam], [pam_open_session], [have_pam=yes], [have_pam=no])
- if test x$have_pam == xno; then
+ if test x$have_pam = xno; then
- AC_ERROR([weston-launch requires pam])
+ AC_ERROR([PAM support is explicitly requested, but libpam couldn't be found])
fi
@@ -40,7 +43,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
fi
AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes")
-@@ -673,6 +677,7 @@ AC_MSG_RESULT([
+@@ -701,6 +705,7 @@ AC_MSG_RESULT([
Enable developer documentation ${enable_devdocs}
weston-launch utility ${enable_weston_launch}
@@ -48,8 +51,10 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
systemd-login support ${have_systemd_login}
systemd notify support ${enable_systemd_notify}
---- a/src/weston-launch.c
-+++ b/src/weston-launch.c
+diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c
+index 0491896..07e7469 100644
+--- a/libweston/weston-launch.c
++++ b/libweston/weston-launch.c
@@ -51,7 +51,9 @@
#include <pwd.h>
@@ -71,7 +76,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
int tty;
int ttynr;
int sock[2];
-@@ -181,6 +185,7 @@ weston_launch_allowed(struct weston_laun
+@@ -181,6 +185,7 @@ weston_launch_allowed(struct weston_launch *wl)
return false;
}
@@ -87,7 +92,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
static int
setup_launcher_socket(struct weston_launch *wl)
-@@ -414,6 +420,7 @@ quit(struct weston_launch *wl, int statu
+@@ -414,6 +420,7 @@ quit(struct weston_launch *wl, int status)
close(wl->signalfd);
close(wl->sock[0]);
@@ -95,7 +100,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
if (wl->new_user) {
err = pam_close_session(wl->ph, 0);
if (err)
-@@ -421,6 +428,7 @@ quit(struct weston_launch *wl, int statu
+@@ -421,6 +428,7 @@ quit(struct weston_launch *wl, int status)
err, pam_strerror(wl->ph, err));
pam_end(wl->ph, err);
}
@@ -103,7 +108,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
if (ioctl(wl->tty, KDSKBMUTE, 0) &&
ioctl(wl->tty, KDSKBMODE, wl->kb_mode))
-@@ -600,6 +608,7 @@ setup_session(struct weston_launch *wl)
+@@ -600,6 +608,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
setenv("HOME", wl->pw->pw_dir, 1);
setenv("SHELL", wl->pw->pw_shell, 1);
@@ -111,15 +116,15 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
env = pam_getenvlist(wl->ph);
if (env) {
for (i = 0; env[i]; ++i) {
-@@ -608,6 +617,7 @@ setup_session(struct weston_launch *wl)
+@@ -608,6 +617,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
}
free(env);
}
+#endif
- }
- static void
-@@ -665,7 +675,9 @@ static void
+ /*
+ * We open a new session, so it makes sense
+@@ -675,7 +685,9 @@ static void
help(const char *name)
{
fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name);
@@ -129,7 +134,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
fprintf(stderr, " -t, --tty Start session on alternative tty\n");
fprintf(stderr, " -v, --verbose Be verbose\n");
fprintf(stderr, " -h, --help Display this help message\n");
-@@ -678,7 +690,9 @@ main(int argc, char *argv[])
+@@ -688,7 +700,9 @@ main(int argc, char *argv[])
int i, c;
char *tty = NULL;
struct option opts[] = {
@@ -139,7 +144,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
{ "tty", required_argument, NULL, 't' },
{ "verbose", no_argument, NULL, 'v' },
{ "help", no_argument, NULL, 'h' },
-@@ -690,9 +704,13 @@ main(int argc, char *argv[])
+@@ -700,9 +714,13 @@ main(int argc, char *argv[])
while ((c = getopt_long(argc, argv, "u:t::vh", opts, &i)) != -1) {
switch (c) {
case 'u':
@@ -153,7 +158,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
break;
case 't':
tty = optarg;
-@@ -732,8 +750,10 @@ main(int argc, char *argv[])
+@@ -740,8 +758,10 @@ main(int argc, char *argv[])
if (setup_tty(&wl, tty) < 0)
exit(EXIT_FAILURE);
@@ -164,3 +169,6 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
if (setup_launcher_socket(&wl) < 0)
exit(EXIT_FAILURE);
+--
+2.1.4
+
diff --git a/meta/recipes-graphics/wayland/weston_1.11.1.bb b/meta/recipes-graphics/wayland/weston_2.0.0.bb
similarity index 88%
rename from meta/recipes-graphics/wayland/weston_1.11.1.bb
rename to meta/recipes-graphics/wayland/weston_2.0.0.bb
index cdfac70..ba487db 100644
--- a/meta/recipes-graphics/wayland/weston_1.11.1.bb
+++ b/meta/recipes-graphics/wayland/weston_2.0.0.bb
@@ -3,20 +3,18 @@ DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"
HOMEPAGE = "http://wayland.freedesktop.org"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \
- file://src/compositor.c;endline=26;md5=e342df749174a8ee11065583157c7a38"
+ file://libweston/compositor.c;endline=26;md5=e342df749174a8ee11065583157c7a38"
SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://weston.png \
file://weston.desktop \
file://0001-make-error-portable.patch \
file://0001-configure.ac-Fix-wayland-protocols-path.patch \
- file://0001-shared-include-stdint.h-for-int32_t.patch \
file://xwayland.weston-start \
file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
- file://0001-Add-configuration-option-for-no-input-device.patch \
"
-SRC_URI[md5sum] = "c5fdc02ab67d33c0fca8f72d341facdf"
-SRC_URI[sha256sum] = "548973496a5c8613d6690f9120f21066946a544df65ce4fe0ef153a8dc0bf6de"
+SRC_URI[md5sum] = "15f38945942bf2a91fe2687145fb4c7d"
+SRC_URI[sha256sum] = "b4e446ac27f118196f1609dab89bb3cb3e81652d981414ad860e733b355365d8"
inherit autotools pkgconfig useradd distro_features_check
# depends on virtual/egl
@@ -26,7 +24,6 @@ DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg"
DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native"
EXTRA_OECONF = "--enable-setuid-install \
- --disable-rpi-compositor \
--disable-rdp-compositor \
WAYLAND_PROTOCOLS_SYSROOT_DIR=${RECIPE_SYSROOT} \
"
@@ -82,7 +79,7 @@ PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam"
do_install_append() {
# Weston doesn't need the .la files to load modules, so wipe them
- rm -f ${D}/${libdir}/weston/*.la
+ rm -f ${D}/${libdir}/libweston-2/*.la
# If X11, ship a desktop file to launch it
if [ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" = "x11" ]; then
@@ -98,13 +95,17 @@ do_install_append() {
fi
}
-PACKAGE_BEFORE_PN += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)}"
-PACKAGES += "${PN}-examples"
+PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \
+ libweston-2 ${PN}-examples"
FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}"
+
+FILES_libweston-2 = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-2/*.so"
+SUMMARY_libweston-2 = "Helper library for implementing 'wayland window managers'."
+
FILES_${PN}-examples = "${bindir}/*"
-FILES_${PN}-xwayland = "${libdir}/${BPN}/xwayland.so"
+FILES_${PN}-xwayland = "${libdir}/libweston-2/xwayland.so"
RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland"
RDEPENDS_${PN} += "xkeyboard-config"
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v2 3/6] mesa: Upgrade 13.0.4 -> 17.0.0
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 1/6] wayland: Upgrade 1.12.0 -> 1.13.0 Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 2/6] weston: Upgrade 1.11.1 -> 2.0.0, separate libweston Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 4/6] mesa: Enable vulkan driver for intel Jussi Kukkonen
` (2 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
17.0.0 is considered a development release: 17.0.1 is expected to be
the first stable in this series. Typically the .1 release comes about
two weeks after .0.
* New feature release with lots of changes
* Versioning change (17 as in 2017, no longer relates to GL bumps)
* OpenGL 4.5 support on Haswell
* mesa now implements its own sha1 instead of having 5
configurable sha-providers
* Remove libxvmcsoftpipe packaging, the library hasn't
existed since 2013
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
.../mesa/{mesa-gl_13.0.4.bb => mesa-gl_17.0.0.bb} | 0
meta/recipes-graphics/mesa/mesa.inc | 11 +----------
meta/recipes-graphics/mesa/{mesa_13.0.4.bb => mesa_17.0.0.bb} | 7 +++----
3 files changed, 4 insertions(+), 14 deletions(-)
rename meta/recipes-graphics/mesa/{mesa-gl_13.0.4.bb => mesa-gl_17.0.0.bb} (100%)
rename meta/recipes-graphics/mesa/{mesa_13.0.4.bb => mesa_17.0.0.bb} (74%)
diff --git a/meta/recipes-graphics/mesa/mesa-gl_13.0.4.bb b/meta/recipes-graphics/mesa/mesa-gl_17.0.0.bb
similarity index 100%
rename from meta/recipes-graphics/mesa/mesa-gl_13.0.4.bb
rename to meta/recipes-graphics/mesa/mesa-gl_17.0.0.bb
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 5d882b1..f982dd4 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -24,7 +24,7 @@ REQUIRED_DISTRO_FEATURES = "opengl"
EXTRA_OECONF = "--enable-shared-glapi"
-PACKAGECONFIG ??= "gbm egl gles dri ${MESA_CRYPTO} \
+PACKAGECONFIG ??= "gbm egl gles dri \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}\
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}\
"
@@ -67,12 +67,6 @@ PACKAGECONFIG[xa] = "--enable-xa, --disable-xa"
OSMESA = "${@bb.utils.contains('PACKAGECONFIG', 'gallium', 'gallium-osmesa', 'osmesa', d)}"
PACKAGECONFIG[osmesa] = "--enable-${OSMESA},--disable-${OSMESA}"
-# Mesa requires one of the following crypto implementation, pick one of them
-MESA_CRYPTO ??= "openssl"
-PACKAGECONFIG[openssl] = "--with-sha1=libcrypto,,openssl"
-PACKAGECONFIG[nettle] = "--with-sha1=libnettle,,nettle"
-PACKAGECONFIG[gcrypt] = "--with-sha1=libgcrypt,,libgcrypt"
-
# llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2)
FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer"
@@ -94,7 +88,6 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \
libgles2-mesa libgles2-mesa-dev \
libgles3-mesa libgles3-mesa-dev \
libwayland-egl libwayland-egl-dev \
- libxvmcsoftpipe libxvmcsoftpipe-dev \
libxatracker libxatracker-dev \
mesa-megadriver \
"
@@ -178,7 +171,6 @@ FILES_libgl-mesa = "${libdir}/libGL.so.*"
FILES_libglapi = "${libdir}/libglapi.so.*"
FILES_libosmesa = "${libdir}/libOSMesa.so.*"
FILES_libwayland-egl = "${libdir}/libwayland-egl.so.*"
-FILES_libxvmcsoftpipe = "${libdir}/libXvMCsoftpipe.so.*"
FILES_libxatracker = "${libdir}/libxatracker.so.*"
FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc"
@@ -191,7 +183,6 @@ FILES_libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/p
FILES_libgles3-mesa-dev = "${includedir}/GLES3"
FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/GL/osmesa.h ${libdir}/pkgconfig/osmesa.pc"
FILES_libwayland-egl-dev = "${libdir}/pkgconfig/wayland-egl.pc ${libdir}/libwayland-egl.*"
-FILES_libxvmcsoftpipe-dev = "${libdir}/libXvMCsoftpipe.so ${libdir}/libXvMCsoftpipe.la"
FILES_libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
${includedir}/xa_tracker.h ${includedir}/xa_composite.h ${includedir}/xa_context.h \
${libdir}/pkgconfig/xatracker.pc"
diff --git a/meta/recipes-graphics/mesa/mesa_13.0.4.bb b/meta/recipes-graphics/mesa/mesa_17.0.0.bb
similarity index 74%
rename from meta/recipes-graphics/mesa/mesa_13.0.4.bb
rename to meta/recipes-graphics/mesa/mesa_17.0.0.bb
index 1416c9f..6576e3c 100644
--- a/meta/recipes-graphics/mesa/mesa_13.0.4.bb
+++ b/meta/recipes-graphics/mesa/mesa_17.0.0.bb
@@ -1,13 +1,12 @@
require ${BPN}.inc
-SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/mesa-${PV}.tar.xz \
+SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/mesa-${PV}.tar.xz \
file://replace_glibc_check_with_linux.patch \
file://disable-asm-on-non-gcc.patch \
file://0001-Use-wayland-scanner-in-the-path.patch \
"
-
-SRC_URI[md5sum] = "d088a921e935218833a8071cb672a574"
-SRC_URI[sha256sum] = "a95d7ce8f7bd5f88585e4be3144a341236d8c0fc91f6feaec59bb8ba3120e726"
+SRC_URI[md5sum] = "932e4171a86b14940c06812356486155"
+SRC_URI[sha256sum] = "39db3d59700159add7f977307d12a7dfe016363e760ad82280ac4168ea668481"
#because we cannot rely on the fact that all apps will use pkgconfig,
#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v2 4/6] mesa: Enable vulkan driver for intel
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
` (2 preceding siblings ...)
2017-02-28 9:26 ` [PATCH v2 3/6] mesa: Upgrade 13.0.4 -> 17.0.0 Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 6/6] vkcube: Add recipe for minimal vulkan demo Jussi Kukkonen
5 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
PACKAGECONFIG "vulkan" enables building libvulkan_intel.so.
The radeon driver can be added to recipe as well but it requires
llvm so recent that I couldn't test it.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
meta/recipes-graphics/mesa/mesa.inc | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index f982dd4..54bc362 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -42,6 +42,10 @@ DRIDRIVERS_append_x86-64 = ",radeon,r200,nouveau,i965,i915"
PACKAGECONFIG[dri] = "--enable-dri --with-dri-drivers=${DRIDRIVERS}, --disable-dri, dri2proto libdrm"
PACKAGECONFIG[dri3] = "--enable-dri3, --disable-dri3, dri3proto presentproto libxshmfence"
+# Vulkan drivers need dri3 enabled
+# radeon could be enabled as well but requires gallium-llvm with llvm >= 3.9
+PACKAGECONFIG[vulkan] = "--with-vulkan-drivers=intel, --without-vulkan-drivers"
+
PACKAGECONFIG[gles] = "--enable-gles1 --enable-gles2, --disable-gles1 --disable-gles2"
EGL_PLATFORMS = "drm"
@@ -89,7 +93,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \
libgles3-mesa libgles3-mesa-dev \
libwayland-egl libwayland-egl-dev \
libxatracker libxatracker-dev \
- mesa-megadriver \
+ mesa-megadriver mesa-vulkan-drivers \
"
do_install_append () {
@@ -163,6 +167,7 @@ PACKAGES_DYNAMIC += "^mesa-driver-.*"
FILES_${PN} += "${sysconfdir}/drirc"
FILES_mesa-megadriver = "${libdir}/dri/*"
+FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan"
FILES_libegl-mesa = "${libdir}/libEGL.so.*"
FILES_libgbm = "${libdir}/libgbm.so.*"
FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*"
@@ -173,7 +178,7 @@ FILES_libosmesa = "${libdir}/libOSMesa.so.*"
FILES_libwayland-egl = "${libdir}/libwayland-egl.so.*"
FILES_libxatracker = "${libdir}/libxatracker.so.*"
-FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc"
+FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan"
FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
FILES_libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
` (3 preceding siblings ...)
2017-02-28 9:26 ` [PATCH v2 4/6] mesa: Enable vulkan driver for intel Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
2017-03-07 14:05 ` Burton, Ross
` (2 more replies)
2017-02-28 9:26 ` [PATCH v2 6/6] vkcube: Add recipe for minimal vulkan demo Jussi Kukkonen
5 siblings, 3 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
Add a recipe for vulkan loader library and the vulkaninfo binary.
Vulkan can be built to support X11 or wayland or both. There is
currently no support for building tests, validation layers or even
the demos as that would require a bunch of otherwise unnecessary
dependencies.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
.../vulkan/demos-Don-t-build-tri-or-cube.patch | 106 +++++++++++++++++++++
meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb | 33 +++++++
2 files changed, 139 insertions(+)
create mode 100644 meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
create mode 100644 meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
diff --git a/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch b/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
new file mode 100644
index 0000000..3cf241d
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
@@ -0,0 +1,106 @@
+commit f63cbe944107b5cd8f150ceaaec43b26099d5688
+Author: Adam Jackson <ajax@redhat.com>
+Date: Tue Feb 16 10:05:25 2016 -0500
+
+ demos: Don't build tri or cube
+
+ There are more interesting demos, all we really want here is vulkaninfo.
+ This helps because we don't need to pre-build glslang/llvm/lunarglass
+ just to get the loader and layers.
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
+--- a/demos/CMakeLists.txt
++++ b/demos/CMakeLists.txt
+@@ -61,46 +61,6 @@
+ else()
+ endif()
+
+-if(WIN32)
+- # For Windows, since 32-bit and 64-bit items can co-exist, we build each in its own build directory.
+- # 32-bit target data goes in build32, and 64-bit target data goes into build. So, include/link the
+- # appropriate data at build time.
+- if (CMAKE_CL_64)
+- set (BUILDTGT_DIR build)
+- else ()
+- set (BUILDTGT_DIR build32)
+- endif()
+-
+- # Use static MSVCRT libraries
+- foreach(configuration in CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_RELWITHDEBINFO
+- CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELWITHDEBINFO)
+- if(${configuration} MATCHES "/MD")
+- string(REGEX REPLACE "/MD" "/MT" ${configuration} "${${configuration}}")
+- endif()
+- endforeach()
+-
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
+- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
+- )
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
+- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
+- )
+- file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
+- file(COPY vulkaninfo.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
+-else()
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
+- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
+- )
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
+- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
+- )
+- endif()
+-endif()
+
+ if(WIN32)
+ include_directories (
+@@ -114,43 +74,6 @@
+ add_executable(${API_LOWERCASE}info vulkaninfo.c)
+ target_link_libraries(${API_LOWERCASE}info ${LIBRARIES})
+
+-if(NOT WIN32)
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_executable(cube cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cube ${LIBRARIES})
+- endif()
+-else()
+- if (CMAKE_CL_64)
+- set (LIB_DIR "Win64")
+- else()
+- set (LIB_DIR "Win32")
+- endif()
+-
+- add_executable(cube WIN32 cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cube ${LIBRARIES})
+-endif()
+-
+-if(NOT WIN32)
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_executable(cubepp cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cubepp ${LIBRARIES})
+- endif()
+-else()
+- if (CMAKE_CL_64)
+- set (LIB_DIR "Win64")
+- else()
+- set (LIB_DIR "Win32")
+- endif()
+-
+- add_executable(cubepp WIN32 cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cubepp ${LIBRARIES})
+-endif()
+-
+-if ((${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}))
+- if ((DEMOS_WSI_SELECTION STREQUAL "XCB") OR (DEMOS_WSI_SELECTION STREQUAL "WAYLAND") OR WIN32 OR (CMAKE_SYSTEM_NAME STREQUAL "Android"))
+- add_subdirectory(smoke)
+- endif()
+-endif()
+
+ if(UNIX)
+ install(TARGETS ${API_LOWERCASE}info DESTINATION ${CMAKE_INSTALL_BINDIR})
diff --git a/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb b/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
new file mode 100644
index 0000000..a542dc4
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
@@ -0,0 +1,33 @@
+SUMMARY = "3D graphics and compute API common loader"
+DESCRIPTION = "Vulkan is a new generation graphics and compute API \
+that provides efficient access to modern GPUs. These packages \
+provide only the common vendor-agnostic library loader, headers and \
+the vulkaninfo utility."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=99c647ca3d4f6a4b9d8628f757aad156 \
+ file://loader/loader.c;endline=25;md5=a87cd5442291c23d1fce4eece4cfde9d"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git;branch=sdk-1.0.39 \
+ file://demos-Don-t-build-tri-or-cube.patch \
+"
+SRCREV = "9c21ed0fb275589c3af6118aec9ef4f1d1544dc1"
+
+S = "${WORKDIR}/git"
+
+
+inherit cmake python3native lib_package distro_features_check
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+
+EXTRA_OECMAKE = "-DBUILD_WSI_MIR_SUPPORT=OFF \
+ -DBUILD_LAYERS=OFF \
+ -DBUILD_TESTS=OFF"
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
+PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON -DDEMOS_WSI_SELECTION=XCB, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF -DDEMOS_WSI_SELECTION=WAYLAND, libxcb libx11 libxrandr"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v2 6/6] vkcube: Add recipe for minimal vulkan demo
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
` (4 preceding siblings ...)
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
@ 2017-02-28 9:26 ` Jussi Kukkonen
5 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-02-28 9:26 UTC (permalink / raw)
To: openembedded-core
It currently requires libvulkan_intel.so (mesa intel vulkan driver),
meaning that mesa needs to be built with "vulkan" PACKAGECONFIG.
Also, currently vkcube is only buildable with both X and wayland
support without other options.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
.../vkcube/0001-Install-the-vkcube-binary.patch | 38 ++++++++++++++++++++++
meta/recipes-graphics/vulkan/vkcube_git.bb | 18 ++++++++++
2 files changed, 56 insertions(+)
create mode 100644 meta/recipes-graphics/vulkan/vkcube/0001-Install-the-vkcube-binary.patch
create mode 100644 meta/recipes-graphics/vulkan/vkcube_git.bb
diff --git a/meta/recipes-graphics/vulkan/vkcube/0001-Install-the-vkcube-binary.patch b/meta/recipes-graphics/vulkan/vkcube/0001-Install-the-vkcube-binary.patch
new file mode 100644
index 0000000..012ee52
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vkcube/0001-Install-the-vkcube-binary.patch
@@ -0,0 +1,38 @@
+From 18d1d30a6c7ad73b25751152cc4dda89e9cf77dd Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Sat, 25 Feb 2017 18:27:54 +0200
+Subject: [PATCH] Install binary, never clean generated files
+
+We don't have the tools to regenerate the spv.h files, don't
+clean them.
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+---
+ Makefile.am | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 78724bb..e208152 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -11,7 +11,7 @@ CFLAGS = -std=c11 \
+
+ CXXFLAGS = -std=c++11 $(common_CFLAGS)
+
+-noinst_PROGRAMS = vkcube
++bin_PROGRAMS = vkcube
+
+ BUILT_SOURCES = \
+ vkcube.vert.spv.h \
+@@ -30,7 +30,5 @@ vkcube_SOURCES = \
+ esTransform.c \
+ esUtil.h
+
+-CLEANFILES = $(BUILT_SOURCES)
+-
+ vkcube_CFLAGS = $(CFLAGS) $(MINIGBM_CPPFLAGS) $(LIBDRM_CFLAGS) $(WAYLAND_CFLAGS) $(LIBPNG_CFLAGS)
+ vkcube_LDADD = $(MINIGBM_LDFLAGS) $(MESA_LDFLAGS) $(LIBDRM_LIBS) $(WAYLAND_LIBS) $(LIBPNG_LIBS) -lgbm -lm -lvulkan -lxcb
+--
+2.11.0
+
diff --git a/meta/recipes-graphics/vulkan/vkcube_git.bb b/meta/recipes-graphics/vulkan/vkcube_git.bb
new file mode 100644
index 0000000..88ade83
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vkcube_git.bb
@@ -0,0 +1,18 @@
+SUMMARY = "A simple Vulkan demo"
+HOMEPAGE = "https://github.com/krh/vkcube"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://main.c;endline=24;md5=9eb35fa5573e696e3f59ec043ad2b5bc"
+
+PV = "0.1+git${SRCPV}"
+
+SRC_URI = "git://github.com/krh/vkcube.git \
+ file://0001-Install-the-vkcube-binary.patch"
+SRCREV = "80c0d047c257f486d054f28b0b381abef3327069"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig distro_features_check
+REQUIRED_DISTRO_FEATURES = "x11 wayland"
+
+DEPENDS = "libpng libxcb wayland mesa libdrm vulkan"
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
@ 2017-03-07 14:05 ` Burton, Ross
2017-03-08 9:23 ` Richard Purdie
2017-03-08 13:21 ` [PATCH v3 " Jussi Kukkonen
2 siblings, 0 replies; 10+ messages in thread
From: Burton, Ross @ 2017-03-07 14:05 UTC (permalink / raw)
To: Jussi Kukkonen; +Cc: OE-core
[-- Attachment #1: Type: text/plain, Size: 638 bytes --]
On 28 February 2017 at 09:26, Jussi Kukkonen <jussi.kukkonen@intel.com>
wrote:
>
> Add a recipe for vulkan loader library and the vulkaninfo binary.
>
> Vulkan can be built to support X11 or wayland or both. There is
> currently no support for building tests, validation layers or even
> the demos as that would require a bunch of otherwise unnecessary
> dependencies.
Under musl, this doesn't link:
| ../loader/libvulkan.so.1.0.39: undefined reference to `__secure_getenv'
| collect2: error: ld returned 1 exit status
| demos/CMakeFiles/vulkaninfo.dir/build.make:99: recipe for target
'demos/vulkaninfo' failed
Ross
[-- Attachment #2: Type: text/html, Size: 791 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
2017-03-07 14:05 ` Burton, Ross
@ 2017-03-08 9:23 ` Richard Purdie
2017-03-08 13:21 ` [PATCH v3 " Jussi Kukkonen
2 siblings, 0 replies; 10+ messages in thread
From: Richard Purdie @ 2017-03-08 9:23 UTC (permalink / raw)
To: Jussi Kukkonen, openembedded-core
On Tue, 2017-02-28 at 11:26 +0200, Jussi Kukkonen wrote:
> Add a recipe for vulkan loader library and the vulkaninfo binary.
>
> Vulkan can be built to support X11 or wayland or both. There is
> currently no support for building tests, validation layers or even
> the demos as that would require a bunch of otherwise unnecessary
> dependencies.
>
> Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
> ---
> .../vulkan/demos-Don-t-build-tri-or-cube.patch | 106
> +++++++++++++++++++++
> meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb | 33 +++++++
> 2 files changed, 139 insertions(+)
> create mode 100644 meta/recipes-graphics/vulkan/vulkan/demos-Don-t-
> build-tri-or-cube.patch
> create mode 100644 meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
This doesn't seem to like musl:
https://autobuilder.yocto.io/builders/nightly-musl/builds/184/steps/BuildImages/logs/stdio
Cheers,
Richard
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 5/6] vulkan: Add recipe for Vulkan common loader
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
2017-03-07 14:05 ` Burton, Ross
2017-03-08 9:23 ` Richard Purdie
@ 2017-03-08 13:21 ` Jussi Kukkonen
2 siblings, 0 replies; 10+ messages in thread
From: Jussi Kukkonen @ 2017-03-08 13:21 UTC (permalink / raw)
To: openembedded-core
Add a recipe for vulkan loader library and the vulkaninfo binary.
Vulkan can be built to support X11 or wayland or both. There is
currently no support for building tests, validation layers or even
the demos as that would require a bunch of otherwise unnecessary
dependencies.
Fix the build on musl by defaulting to getenv() if secure_getenv()
is not available.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
---
Changes since v2:
* Add patch to fix build on musl
I'm sending only this one changed patch but I've fixed the branch (and
rebased to current master, just the 3 vulkan-related patches left):
git://git.yoctoproject.org/poky-contrib jku/vulkan
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=jku/vulkan
meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb | 34 +++++++
3 files changed, 174 insertions(+)
create mode 100644 meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch
create mode 100644 meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
create mode 100644 meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
diff --git a/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch b/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch
new file mode 100644
index 0000000..694922c
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan/0001-Use-getenv-if-secure_getenv-does-not-exist.patch
@@ -0,0 +1,34 @@
+From 20525add1df8e1fb13fef90ac068f982def8b958 Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Wed, 8 Mar 2017 13:23:58 +0200
+Subject: [PATCH] Use getenv() if secure_getenv() does not exist
+
+musl does not implement secure version: default to getenv() in that
+case.
+
+https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/1538
+
+Upstream-Status: Pending
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+---
+ loader/loader.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/loader/loader.c b/loader/loader.c
+index 24758f4..bff79c1 100644
+--- a/loader/loader.c
++++ b/loader/loader.c
+@@ -54,6 +54,10 @@
+ #endif
+ #endif
+
++#if !defined(__secure_getenv)
++#define __secure_getenv getenv
++#endif
++
+ struct loader_struct loader = {0};
+ // TLS for instance for alloc/free callbacks
+ THREAD_LOCAL_DECL struct loader_instance *tls_instance;
+--
+2.1.4
+
diff --git a/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch b/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
new file mode 100644
index 0000000..3cf241d
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan/demos-Don-t-build-tri-or-cube.patch
@@ -0,0 +1,106 @@
+commit f63cbe944107b5cd8f150ceaaec43b26099d5688
+Author: Adam Jackson <ajax@redhat.com>
+Date: Tue Feb 16 10:05:25 2016 -0500
+
+ demos: Don't build tri or cube
+
+ There are more interesting demos, all we really want here is vulkaninfo.
+ This helps because we don't need to pre-build glslang/llvm/lunarglass
+ just to get the loader and layers.
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+
+--- a/demos/CMakeLists.txt
++++ b/demos/CMakeLists.txt
+@@ -61,46 +61,6 @@
+ else()
+ endif()
+
+-if(WIN32)
+- # For Windows, since 32-bit and 64-bit items can co-exist, we build each in its own build directory.
+- # 32-bit target data goes in build32, and 64-bit target data goes into build. So, include/link the
+- # appropriate data at build time.
+- if (CMAKE_CL_64)
+- set (BUILDTGT_DIR build)
+- else ()
+- set (BUILDTGT_DIR build32)
+- endif()
+-
+- # Use static MSVCRT libraries
+- foreach(configuration in CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_RELWITHDEBINFO
+- CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_RELWITHDEBINFO)
+- if(${configuration} MATCHES "/MD")
+- string(REGEX REPLACE "/MD" "/MT" ${configuration} "${${configuration}}")
+- endif()
+- endforeach()
+-
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
+- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
+- )
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o ${CMAKE_BINARY_DIR}/demos/cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
+- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
+- )
+- file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
+- file(COPY vulkaninfo.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos)
+-else()
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-vert.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-vert.spv ${PROJECT_SOURCE_DIR}/demos/cube.vert
+- DEPENDS cube.vert ${GLSLANG_VALIDATOR}
+- )
+- add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/demos/cube-frag.spv
+- COMMAND ${GLSLANG_VALIDATOR} -s -V -o cube-frag.spv ${PROJECT_SOURCE_DIR}/demos/cube.frag
+- DEPENDS cube.frag ${GLSLANG_VALIDATOR}
+- )
+- endif()
+-endif()
+
+ if(WIN32)
+ include_directories (
+@@ -114,43 +74,6 @@
+ add_executable(${API_LOWERCASE}info vulkaninfo.c)
+ target_link_libraries(${API_LOWERCASE}info ${LIBRARIES})
+
+-if(NOT WIN32)
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_executable(cube cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cube ${LIBRARIES})
+- endif()
+-else()
+- if (CMAKE_CL_64)
+- set (LIB_DIR "Win64")
+- else()
+- set (LIB_DIR "Win32")
+- endif()
+-
+- add_executable(cube WIN32 cube.c ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cube ${LIBRARIES})
+-endif()
+-
+-if(NOT WIN32)
+- if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR})
+- add_executable(cubepp cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cubepp ${LIBRARIES})
+- endif()
+-else()
+- if (CMAKE_CL_64)
+- set (LIB_DIR "Win64")
+- else()
+- set (LIB_DIR "Win32")
+- endif()
+-
+- add_executable(cubepp WIN32 cube.cpp ${CMAKE_BINARY_DIR}/demos/cube-vert.spv ${CMAKE_BINARY_DIR}/demos/cube-frag.spv)
+- target_link_libraries(cubepp ${LIBRARIES})
+-endif()
+-
+-if ((${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}))
+- if ((DEMOS_WSI_SELECTION STREQUAL "XCB") OR (DEMOS_WSI_SELECTION STREQUAL "WAYLAND") OR WIN32 OR (CMAKE_SYSTEM_NAME STREQUAL "Android"))
+- add_subdirectory(smoke)
+- endif()
+-endif()
+
+ if(UNIX)
+ install(TARGETS ${API_LOWERCASE}info DESTINATION ${CMAKE_INSTALL_BINDIR})
diff --git a/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb b/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
new file mode 100644
index 0000000..45d1c49
--- /dev/null
+++ b/meta/recipes-graphics/vulkan/vulkan_1.0.39.1.bb
@@ -0,0 +1,34 @@
+SUMMARY = "3D graphics and compute API common loader"
+DESCRIPTION = "Vulkan is a new generation graphics and compute API \
+that provides efficient access to modern GPUs. These packages \
+provide only the common vendor-agnostic library loader, headers and \
+the vulkaninfo utility."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=99c647ca3d4f6a4b9d8628f757aad156 \
+ file://loader/loader.c;endline=25;md5=a87cd5442291c23d1fce4eece4cfde9d"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers.git;branch=sdk-1.0.39 \
+ file://demos-Don-t-build-tri-or-cube.patch \
+ file://0001-Use-getenv-if-secure_getenv-does-not-exist.patch \
+"
+SRCREV = "9c21ed0fb275589c3af6118aec9ef4f1d1544dc1"
+
+S = "${WORKDIR}/git"
+
+
+inherit cmake python3native lib_package distro_features_check
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+
+EXTRA_OECMAKE = "-DBUILD_WSI_MIR_SUPPORT=OFF \
+ -DBUILD_LAYERS=OFF \
+ -DBUILD_TESTS=OFF"
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '' ,d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '' ,d)}"
+PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON -DDEMOS_WSI_SELECTION=XCB, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF -DDEMOS_WSI_SELECTION=WAYLAND, libxcb libx11 libxrandr"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
--
2.1.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
end of thread, other threads:[~2017-03-08 13:21 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-28 9:26 [PATCH v2 0/6] wayland, mesa upgrades + bonus vulkan Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 1/6] wayland: Upgrade 1.12.0 -> 1.13.0 Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 2/6] weston: Upgrade 1.11.1 -> 2.0.0, separate libweston Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 3/6] mesa: Upgrade 13.0.4 -> 17.0.0 Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 4/6] mesa: Enable vulkan driver for intel Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 5/6] vulkan: Add recipe for Vulkan common loader Jussi Kukkonen
2017-03-07 14:05 ` Burton, Ross
2017-03-08 9:23 ` Richard Purdie
2017-03-08 13:21 ` [PATCH v3 " Jussi Kukkonen
2017-02-28 9:26 ` [PATCH v2 6/6] vkcube: Add recipe for minimal vulkan demo Jussi Kukkonen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox