Upgrade version to 0.1.6

Upstreamed patches removed from spec file.

Signed-off-by: Chenxi Mao <chenxi.mao@suse.com>
(cherry picked from commit 25b2b6806951de1f1fec09c345ff38c39ab1b08c)
This commit is contained in:
Chenxi Mao 2023-01-28 06:58:21 +08:00 committed by openeuler-sync-bot
parent 5ec7ec7f46
commit 3fd5d9cdc5
8 changed files with 10 additions and 236 deletions

View File

@ -1,74 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Christophe Fergeau <cfergeau@redhat.com>
Date: Wed, 8 Feb 2017 15:23:56 +0100
Subject: [PATCH] Xspice: Use print("") instead of print ""
This allows Xspice to run when using python3 instead of python2
---
scripts/Xspice | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/scripts/Xspice b/scripts/Xspice
index ada99d1..30d10fa 100755
--- a/scripts/Xspice
+++ b/scripts/Xspice
@@ -34,7 +34,7 @@ def which(x):
candidate = os.path.join(p, x)
if os.path.exists(candidate):
return candidate
- print 'Warning: failed to find executable %s' % x
+ print('Warning: failed to find executable %s' % x)
return None
if 'XSPICE_ENABLE_GDB' in os.environ:
@@ -128,10 +128,10 @@ args, xorg_args = parser.parse_known_args(sys.argv[1:])
def agents_new_enough(args):
for f in [args.vdagent_exec, args.vdagentd_exec]:
if not f:
- print 'please specify path to vdagent/vdagentd executables'
+ print('please specify path to vdagent/vdagentd executables')
return False
if not os.path.exists(f):
- print 'error: file not found ', f
+ print('error: file not found ', f)
return False
for f in [args.vdagent_exec, args.vdagentd_exec]:
@@ -169,11 +169,11 @@ def tls_files(args):
# and it isn't supplied spice will still abort, and Xorg with it.
for key, filename in tls_files(args).items():
if not os.path.exists(filename):
- print "missing %s - %s does not exist" % (key, filename)
+ print("missing %s - %s does not exist" % (key, filename))
sys.exit(1)
def error(msg, exit_code=1):
- print "Xspice: %s" % msg
+ print("Xspice: %s" % msg)
sys.exit(exit_code)
if not args.xorg:
@@ -319,7 +319,7 @@ for arg in xorg_args:
if arg.startswith(":"):
display = arg
if not display:
- print "Error: missing display on line (i.e. :3)"
+ print("Error: missing display on line (i.e. :3)")
raise SystemExit
os.environ ['DISPLAY'] = display
@@ -343,7 +343,7 @@ time.sleep(2)
retpid,rc = os.waitpid(xorg.pid, os.WNOHANG)
if retpid != 0:
- print "Error: X server is not running"
+ print("Error: X server is not running")
else:
if args.vdagent_enabled and args.vdagent_launch:
# XXX use systemd --user for this?
@@ -361,4 +361,4 @@ else:
xorg.wait()
except KeyboardInterrupt:
# Catch Ctrl-C as that is the common way of ending this script
- print "Keyboard Interrupt"
+ print("Keyboard Interrupt")

View File

@ -1,26 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Christophe Fergeau <cfergeau@redhat.com>
Date: Wed, 8 Feb 2017 17:07:56 +0100
Subject: [PATCH] Xspice: Fix Python3 str() vs bytes() confusion
With python3, without universal_newlines=True, Popen().stdout.read()
will return a byte array, while find(str) expects to operate on a
string.
I've checked that this still works with python2 as well.
---
scripts/Xspice | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/Xspice b/scripts/Xspice
index 41fd80c..927dcb1 100755
--- a/scripts/Xspice
+++ b/scripts/Xspice
@@ -135,7 +135,7 @@ def agents_new_enough(args):
return False
for f in [args.vdagent_exec, args.vdagentd_exec]:
- if Popen(args=[f, '-h'], stdout=PIPE).stdout.read().find('-S') == -1:
+ if Popen(args=[f, '-h'], stdout=PIPE, universal_newlines=True).stdout.read().find('-S') == -1:
return False
return True

View File

@ -1,26 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Wed, 8 Mar 2017 10:50:56 +1000
Subject: [PATCH] qxl: call provider init
This prevents crashes when multiple QXL devices are configured in a VM.
https://bugzilla.redhat.com/show_bug.cgi?id=1428340
---
src/qxl_drmmode.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/qxl_drmmode.c b/src/qxl_drmmode.c
index 3c288f9..41de92f 100644
--- a/src/qxl_drmmode.c
+++ b/src/qxl_drmmode.c
@@ -937,6 +937,9 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp)
for (i = 0; i < drmmode->mode_res->count_connectors; i++)
drmmode_output_init(pScrn, drmmode, i);
+#if XF86_CRTC_VERSION >= 5
+ xf86ProviderSetup(pScrn, NULL, "qxl");
+#endif
xf86InitialConfiguration(pScrn, TRUE);
return TRUE;

View File

@ -1,100 +0,0 @@
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

Binary file not shown.

BIN
xf86-video-qxl-0.1.6.tar.xz Normal file

Binary file not shown.

View File

@ -1,18 +1,15 @@
%undefine _hardened_build
Name: xorg-x11-drv-qxl
Version: 0.1.5
Release: 15
Version: 0.1.6
Release: 1
Summary: Qxl video driver for the X Window System
License: MIT
URL: http://www.x.org
Source0: http://xorg.freedesktop.org/releases/individual/driver/xf86-video-qxl-%{version}.tar.bz2
Source0: http://xorg.freedesktop.org/releases/individual/driver/xf86-video-qxl-%{version}.tar.xz
Patch0001: 0001-worst-hack-of-all-time-to-qxl-driver.patch
Patch0002: 0002-Xspice-Use-print-instead-of-print.patch
Patch0003: 0004-Xspice-Fix-Python3-str-vs-bytes-confusion.patch
Patch0004: 0005-Xspice-Adjust-shebang-to-explicitly-mention-python3.patch
Patch0005: 0006-qxl-call-provider-init.patch
Patch6000: backport-fix-build-error-with-xserver.patch
Patch0002: 0002-Xspice-Adjust-shebang-to-explicitly-mention-python3.patch
BuildRequires: pkgconfig git-core xorg-x11-server-devel >= 1.1.0-1 spice-protocol >= 0.12.1
BuildRequires: libdrm-devel >= 2.4.46-1 spice-server-devel >= 0.8.0 glib2-devel
BuildRequires: libtool libudev-devel libXfont2-devel libXext-devel
@ -43,17 +40,20 @@ install -Dp -m644 examples/spiceqxl.xorg.conf.example $RPM_BUILD_ROOT%{_sysconfd
%delete_la
%files
%doc COPYING README
%doc COPYING README.md
%(pkg-config xorg-server --variable=moduledir)/drivers/qxl_drv.so
%exclude /usr/share/doc/xf86-video-qxl/spiceqxl.xorg.conf.example
%files -n xorg-x11-server-Xspice
%doc COPYING README.xspice README examples/spiceqxl.xorg.conf.example
%doc COPYING README.xspice README.md examples/spiceqxl.xorg.conf.example
%config(noreplace) %{_sysconfdir}/X11/spiceqxl.xorg.conf
%{_bindir}/Xspice
%(pkg-config xorg-server --variable=moduledir)/drivers/spiceqxl_drv.so
%changelog
* Sat Jan 28 2023 Chenxi Mao <chenxi.mao@suse.com> - 0.1.6-1
- Upgrade to 0.1.6
* Tue Oct 25 2022 wangkerong <wangkerong@h-partners.com> - 0.1.5-15
- rebuild for next release