xserver-xorg: Upgrade 1.18.4 -> 1.19.0
* xserver depends on xfont2 now. * xwayland support requires wayland-scanner: Add patch to find wayland-scanner and protocol files while cross-compiling. * patch MONOTONIC_CLOCK check so it works when cross-compiling (otherwise we always end with no monotonic clock and xwayland compile fails) * Add vardepsexclude for MACHINE to ensure consistent hashes (RB) (From OE-Core rev: f9c2b4284fafaa8998bbd2a6f443b0b7b98dafaa) Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
14d5f46095
commit
1207d6d32e
|
@ -27,7 +27,7 @@ inherit distro_features_check
|
|||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86vidmodeproto compositeproto recordproto resourceproto videoproto scrnsaverproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto presentproto"
|
||||
LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess"
|
||||
LIB_DEPS = "pixman libxfont2 xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess"
|
||||
DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} font-util"
|
||||
|
||||
# Split out some modules and extensions from the main package
|
||||
|
@ -117,7 +117,9 @@ EXTRA_OECONF += "--with-fop=no \
|
|||
--sysconfdir=/etc/X11 \
|
||||
--localstatedir=/var \
|
||||
--with-xkb-output=/var/lib/xkb \
|
||||
WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE} \
|
||||
"
|
||||
EXTRA_OECONF[vardepsexclude] = "MACHINE"
|
||||
|
||||
PACKAGECONFIG ??= "dri2 udev ${XORG_CRYPTO} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri glx', '', d)} \
|
||||
|
@ -138,7 +140,7 @@ PACKAGECONFIG[xmlto] = "--with-xmlto, --without-xmlto, xmlto-native docbook-xml-
|
|||
PACKAGECONFIG[systemd-logind] = "--enable-systemd-logind=yes,--enable-systemd-logind=no,dbus,"
|
||||
PACKAGECONFIG[systemd] = "--with-systemd-daemon,--without-systemd-daemon,systemd"
|
||||
PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,xineramaproto"
|
||||
PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,wayland libepoxy"
|
||||
PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,wayland wayland-native wayland-protocols libepoxy"
|
||||
|
||||
# Xorg requires a SHA1 implementation, pick one
|
||||
XORG_CRYPTO ??= "openssl"
|
||||
|
|
|
@ -0,0 +1,61 @@
|
|||
Discover monotonic clock using compile-time check
|
||||
|
||||
monotonic clock check does not work when cross-compiling.
|
||||
|
||||
Upstream-Status: Denied [Does not work on OpenBSD]
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
|
||||
|
||||
|
||||
Original patch follows:
|
||||
|
||||
When xorg-xserver is being cross-compiled, there is currently no way
|
||||
for us to detect whether the monotonic clock is available on the
|
||||
target system, because we aren't able to run a test program on the host
|
||||
system. Currently, in this situation, we default to not use the
|
||||
monotonic clock. One problem with this situation is that the user will
|
||||
be treated as idle when the date is updated.
|
||||
|
||||
To fix this situation, we now use a compile-time check to detect whether the
|
||||
monotonic clock is available. This check can run just fine when we are
|
||||
cross-compiling.
|
||||
|
||||
Signed-off-by: David James <davidjames at google.com>
|
||||
---
|
||||
configure.ac | 17 +++++++----------
|
||||
1 file changed, 7 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f7ab48c..26e85cd 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1048,19 +1048,16 @@ if ! test "x$have_clock_gettime" = xno; then
|
||||
CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L"
|
||||
fi
|
||||
|
||||
- AC_RUN_IFELSE([AC_LANG_SOURCE([
|
||||
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
||||
#include <time.h>
|
||||
-
|
||||
-int main(int argc, char *argv[[]]) {
|
||||
- struct timespec tp;
|
||||
-
|
||||
- if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
|
||||
+#include <unistd.h>
|
||||
+int main() {
|
||||
+#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC))
|
||||
+ #error No monotonic clock
|
||||
+#endif
|
||||
return 0;
|
||||
- else
|
||||
- return 1;
|
||||
}
|
||||
- ])], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
|
||||
- [MONOTONIC_CLOCK="cross compiling"])
|
||||
+]])],[MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no])
|
||||
|
||||
LIBS="$LIBS_SAVE"
|
||||
CPPFLAGS="$CPPFLAGS_SAVE"
|
||||
--
|
||||
2.1.4
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
From 963428f914c42270d3312d4f0c0840565521534e Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Wed, 16 Nov 2016 00:41:51 +0200
|
||||
Subject: [PATCH 2/2] configure.ac: Fix wayland-scanner and protocols locations
|
||||
|
||||
We want to use the wayland-scanner in path (native sysroot)
|
||||
instead of using pkg-config which gives us target paths.
|
||||
|
||||
The protocols paths on the other hand need to be prefixed with the
|
||||
(allarch) sysroot because, again, pkg-config gives us target paths.
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
---
|
||||
configure.ac | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 58f1567..383a7df 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2525,11 +2525,9 @@ if test "x$XWAYLAND" = xyes; then
|
||||
AC_MSG_ERROR([Xwayland requires CLOCK_MONOTONIC support.])
|
||||
fi
|
||||
|
||||
- WAYLAND_PREFIX=`$PKG_CONFIG --variable=prefix wayland-client`
|
||||
- AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner],,
|
||||
- [${WAYLAND_PREFIX}/bin$PATH_SEPARATOR$PATH])
|
||||
+ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
|
||||
|
||||
- AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, `$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)
|
||||
+ AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, ${WAYLAND_PROTOCOLS_SYSROOT_DIR}`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`)
|
||||
fi
|
||||
|
||||
|
||||
--
|
||||
2.1.4
|
||||
|
|
@ -1,8 +1,11 @@
|
|||
require xserver-xorg.inc
|
||||
|
||||
SRC_URI += "file://musl-arm-inb-outb.patch"
|
||||
SRC_URI[md5sum] = "d4842dfe3bd9a9d062f2fa1df9104a46"
|
||||
SRC_URI[sha256sum] = "278459b2c31d61a15655d95a72fb79930c480a6bb8cf9226e48a07df8b1d31c8"
|
||||
SRC_URI += "file://musl-arm-inb-outb.patch \
|
||||
file://0001-configure.ac-Fix-check-for-CLOCK_MONOTONIC.patch \
|
||||
file://0002-configure.ac-Fix-wayland-scanner-and-protocols-locat.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "6a4d01e4e5047ab8f556960424ba1fa9"
|
||||
SRC_URI[sha256sum] = "149a708b50befc2d5a40b98d45ddd2ebe0beec018e6d0c663c43bad6210e4da3"
|
||||
|
||||
# These extensions are now integrated into the server, so declare the migration
|
||||
# path for in-place upgrades.
|
Loading…
Reference in New Issue