[arch-commits] Commit in xf86-video-qxl/repos (3 files)

Andreas Radke andyrtr at gemini.archlinux.org
Sun Nov 7 17:05:35 UTC 2021


    Date: Sunday, November 7, 2021 @ 17:05:35
  Author: andyrtr
Revision: 1038663

archrelease: copy trunk to community-staging-x86_64

Added:
  xf86-video-qxl/repos/community-staging-x86_64/
  xf86-video-qxl/repos/community-staging-x86_64/PKGBUILD
    (from rev 1038662, xf86-video-qxl/trunk/PKGBUILD)
  xf86-video-qxl/repos/community-staging-x86_64/buildfix.diff
    (from rev 1038662, xf86-video-qxl/trunk/buildfix.diff)

---------------+
 PKGBUILD      |   63 ++++++++++++++++++++++++++++++++++
 buildfix.diff |  101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 164 insertions(+)

Copied: xf86-video-qxl/repos/community-staging-x86_64/PKGBUILD (from rev 1038662, xf86-video-qxl/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2021-11-07 17:05:35 UTC (rev 1038663)
@@ -0,0 +1,63 @@
+# Maintainer: Giancarlo Razzolini <grazzolini at archlinux.org>
+# Contributor: Christian Hesse <mail at eworm.de>
+# Contributor: Yonathan Dossow
+# Contributor: Ansgar Taflinski <ataflinski at uni-koblenz.de>
+
+pkgname=xf86-video-qxl
+# https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl/-/commits/master
+_commit=52c421c650f8813665b31890df691b31fabc366a # master 2020-02-05
+pkgver=0.1.5.r16.g52c421c
+pkgrel=2
+pkgdesc='Xorg X11 qxl video driver'
+arch=('x86_64')
+url='https://www.x.org'
+license=('MIT')
+groups=('xorg-drivers')
+depends=('spice' 'systemd-libs' 'libxfont2')
+optdepends=('python: for Xspice')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=25.2' 'spice-protocol'
+	'xorgproto' 'git' 'libcacard')
+conflicts=('xf86-video-qxl-git' 'X-ABI-VIDEODRV_VERSION<25' 'X-ABI-VIDEODRV_VERSION>=26')
+validpgpkeys=('94A9F75661F77A6168649B23A9D8C21429AC6C82')
+source=(#"https://xorg.freedesktop.org/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2"{,.sig}
+        "git+https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl#commit=$_commit"
+        buildfix.diff
+)
+sha256sums=('SKIP'
+            'a5e4292d3a6bc9641a8d4ec4d9eb92094ee3d20581c590051e878c8829b9a035')
+
+pkgver() {
+	cd $pkgname
+	git describe --tags | sed 's/^xf86-video-qxl-//;s/\([^-]*-g\)/r\1/;s/-/./g'
+}
+
+prepare() {
+	cd "${srcdir}/${pkgname}" #-${pkgver}"
+	# https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl/-/merge_requests/6?commit_id=4b083ede3c4a827a84295ff223e34ee3c2e581b2&view=inline
+	patch -Np1 -i ../buildfix.diff
+}
+
+build() {
+	cd "${srcdir}/${pkgname}" #-${pkgver}"
+
+        # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
+        # With them, module fail to load with undefined symbol.
+        # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
+        export CFLAGS=${CFLAGS/-fno-plt}
+        export CXXFLAGS=${CXXFLAGS/-fno-plt}
+        export LDFLAGS=${LDFLAGS/,-z,now}
+
+	autoreconf -fi
+	./configure \
+		--enable-xspice \
+		--prefix=/usr
+	make
+}
+
+package() {
+	cd "${srcdir}/${pkgname}" #-${pkgver}"
+
+	make DESTDIR="${pkgdir}/" install
+
+	install -v -D -m0755 scripts/Xspice "${pkgdir}"/usr/bin/Xspice
+}

Copied: xf86-video-qxl/repos/community-staging-x86_64/buildfix.diff (from rev 1038662, xf86-video-qxl/trunk/buildfix.diff)
===================================================================
--- community-staging-x86_64/buildfix.diff	                        (rev 0)
+++ community-staging-x86_64/buildfix.diff	2021-11-07 17:05:35 UTC (rev 1038663)
@@ -0,0 +1,101 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor at gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor at gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
+



More information about the arch-commits mailing list