xf86-video-qxl: rebuild against xorg and add patch
This commit is contained in:
parent
5ff9cd03bb
commit
0972ac8b07
2 changed files with 102 additions and 2 deletions
100
srcpkgs/xf86-video-qxl/patches/buildfix.patch
Normal file
100
srcpkgs/xf86-video-qxl/patches/buildfix.patch
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
|
||||||
|
<zboszor@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@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
|
|
@ -1,11 +1,11 @@
|
||||||
# Template file for 'xf86-video-qxl'
|
# Template file for 'xf86-video-qxl'
|
||||||
pkgname=xf86-video-qxl
|
pkgname=xf86-video-qxl
|
||||||
version=0.1.5
|
version=0.1.5
|
||||||
revision=2
|
revision=3
|
||||||
build_style=gnu-configure
|
build_style=gnu-configure
|
||||||
hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
|
hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
|
||||||
makedepends="xorg-server-devel spice-protocol xorgproto"
|
makedepends="xorg-server-devel spice-protocol xorgproto"
|
||||||
depends="virtual?xserver-abi-video-24_1"
|
depends="virtual?xserver-abi-video-25_1"
|
||||||
short_desc="Xorg QXL video driver"
|
short_desc="Xorg QXL video driver"
|
||||||
maintainer="Andrew Benson <abenson+void@gmail.com>"
|
maintainer="Andrew Benson <abenson+void@gmail.com>"
|
||||||
license="MIT"
|
license="MIT"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue