Update to spice-gtk 0.36 release

switch to meson build-sys

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
Marc-André Lureau 2019-01-17 00:40:38 +04:00
parent e89cacce47
commit db5366a54d
5 changed files with 166 additions and 59 deletions

View File

@ -1,37 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Christophe Fergeau <cfergeau@redhat.com>
Date: Mon, 17 Sep 2018 18:41:05 +0200
Subject: [spice-gtk] display: Trigger wheel scrolling after one 'click'
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The scroll wheel on the mouse will trigger a smooth scroll event with a
delta of +/-1.0. The code added in 2212f05 triggers a scroll when the
delta is strictly greater than 1.0. This means that right after
connecting a client, we won't be triggering a scroll with the first
mouse wheel 'click'.
This commit adjusts the check so that we try to scroll when the delta is
equal or greater than 1.0.
https://bugzilla.redhat.com/show_bug.cgi?id=1627823
Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
Acked-by: Marc-André Lureau <marcandre.lureau@gmail.com>
---
src/spice-widget.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/spice-widget.c b/src/spice-widget.c
index 853c9df6..312c640a 100644
--- a/src/spice-widget.c
+++ b/src/spice-widget.c
@@ -1979,7 +1979,7 @@ static gboolean scroll_event(GtkWidget *widget, GdkEventScroll *scroll)
break;
case GDK_SCROLL_SMOOTH:
d->scroll_delta_y += scroll->delta_y;
- while (ABS(d->scroll_delta_y) > 1) {
+ while (ABS(d->scroll_delta_y) >= 1) {
if (d->scroll_delta_y < 0) {
press_and_release(display, SPICE_MOUSE_BUTTON_UP, button_state);
d->scroll_delta_y += 1;

View File

@ -0,0 +1,73 @@
From ffa4077f696585ab671ae3dcdb1ebfc53705ab91 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
Date: Wed, 16 Jan 2019 16:13:30 +0400
Subject: [PATCH spice-gtk 1/2] meson: improve gtk-doc build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Fix the following warnings:
./spice-gtk-sections.txt:467: warning: No declaration found for SPICE_GTK_CHECK_VERSION.
./spice-gtk-sections.txt:468: warning: No declaration found for SPICE_GTK_MAJOR_VERSION.
./spice-gtk-sections.txt:469: warning: No declaration found for SPICE_GTK_MICRO_VERSION.
./spice-gtk-sections.txt:470: warning: No declaration found for SPICE_GTK_MINOR_VERSION.
- fixxref for glib and gtk (thus requires gtk+ to build doc)
- And other minor simplifications.
After autotools is removed, we should try to use --rebuild-types. For
now I prefer not to touch it :)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
doc/reference/meson.build | 31 +++++++++++++++++++++++++------
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/doc/reference/meson.build b/doc/reference/meson.build
index a121e66..72fcabe 100644
--- a/doc/reference/meson.build
+++ b/doc/reference/meson.build
@@ -38,14 +38,33 @@ ignore_headers = [
spice_gtk_doc_dep = declare_dependency(link_with : [spice_client_gtk_lib, spice_client_glib_lib])
-gnome.gtkdoc('spice-gtk',
- content_files : ['spice-gtk-overrides.txt', 'spice-gtk-overrides.txt'],
+glib_prefix = dependency('glib-2.0').get_pkgconfig_variable('prefix')
+glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
+gtk_prefix = dependency('gtk+-3.0').get_pkgconfig_variable('prefix')
+gtk_docpath = join_paths(gtk_prefix, 'share', 'gtk-doc', 'html')
+docpath = join_paths(spice_gtk_datadir, 'gtk-doc', 'html')
+
+gnome.gtkdoc(meson.project_name(),
dependencies : spice_gtk_doc_dep,
- main_xml : 'spice-gtk-docs.xml',
- gobject_typesfile : files('spice-gtk.types'),
+ main_xml : meson.project_name() + '-docs.xml',
+ gobject_typesfile : meson.project_name() + '.types',
ignore_headers : ignore_headers,
include_directories: spice_gtk_include,
c_args : '-DSPICE_COMPILATION',
install : true,
- scan_args : ['--deprecated-guards="SPICE_DISABLE_DEPRECATED"', '--ignore-decorators="G_GNUC_INTERNAL"'],
- src_dir : join_paths(meson.source_root(), 'src'))
+ scan_args : [
+ '--deprecated-guards="SPICE_DISABLE_DEPRECATED"',
+ '--ignore-decorators="G_GNUC_INTERNAL"'
+ ],
+ src_dir : [
+ join_paths(meson.source_root(), 'src'),
+ join_paths(meson.build_root(), 'src'),
+ ],
+ fixxref_args: [
+ '--html-dir=@0@'.format(docpath),
+ '--extra-dir=@0@'.format(join_paths(glib_docpath, 'glib')),
+ '--extra-dir=@0@'.format(join_paths(glib_docpath, 'gobject')),
+ '--extra-dir=@0@'.format(join_paths(glib_docpath, 'gio')),
+ '--extra-dir=@0@'.format(join_paths(gtk_docpath, 'gtk3')),
+ ],
+ )
--
2.20.1.98.gecbdaf0899

View File

@ -0,0 +1,54 @@
From 9b8c32c9ee422294278934ef48a865de3737661e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
Date: Wed, 16 Jan 2019 17:20:58 +0400
Subject: [PATCH spice-gtk 2/2] meson: fix ninja dist, and building from
tarball
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
meson doesn't handle git-version-gen correctly yet (see
meson#688). Let's set the version manually for now.
And a tag version vX.X will also fail to build, version_info[2]
doesn't exist.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
meson.build | 2 +-
src/meson.build | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/meson.build b/meson.build
index d7062af..70dd318 100644
--- a/meson.build
+++ b/meson.build
@@ -2,7 +2,7 @@
# project definition
#
project('spice-gtk', 'c',
- version : run_command('build-aux/git-version-gen', '${MESON_SOURCE_ROOT}/.tarball-version', check : true).stdout().strip(),
+ version : '0.36',
license : 'LGPLv2.1',
meson_version : '>= 0.49')
diff --git a/src/meson.build b/src/meson.build
index d9614cb..c55db44 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -8,9 +8,9 @@ spice_gtk_include += [include_directories('.')]
version_info = meson.project_version().split('.')
major = '@0@'.format(version_info[0])
minor = '@0@'.format(version_info[1])
-micro = version_info[2].split('-')[0]
-if micro == ''
- micro = '0'
+micro = '0'
+if version_info.length() > 2
+ micro = version_info[2].split('-')[0]
endif
version_data = configuration_data()
version_data.set('SPICE_GTK_MAJOR_VERSION', major)
--
2.20.1.98.gecbdaf0899

View File

@ -1 +1 @@
SHA512 (spice-gtk-0.35.tar.bz2) = f0914a4a9baf892e39dab7d51aa9f5ab4dbb4ef01f09da158b20756f890745837d0a6c8c1f7897844e695be2ed01f3b1d04ada1cacc958b5cfadb0d4bf7c4729
SHA512 (spice-gtk-0.36.tar.bz2) = 2f8fd15e18b902d7ec0bcfae09d189bd26a9eedd72c9e018b201132e454513849821c46746fcb5887ea0ba995d9ff168ee46482ca1d4dbdf7580787a1298e5bf

View File

@ -1,8 +1,8 @@
#define _version_suffix
Name: spice-gtk
Version: 0.35
Release: 3%{?dist}
Version: 0.36
Release: 1%{?dist}
Summary: A GTK+ widget for SPICE clients
Group: System Environment/Libraries
@ -10,14 +10,17 @@ License: LGPLv2+
URL: https://www.spice-space.org/spice-gtk.html
#VCS: git:git://anongit.freedesktop.org/spice/spice-gtk
Source0: https://www.spice-space.org/download/gtk/%{name}-%{version}%{?_version_suffix}.tar.bz2
Patch1: 0001-display-Trigger-wheel-scrolling-after-one-click.patch
Patch0001: 0001-meson-improve-gtk-doc-build.patch
Patch0002: 0002-meson-fix-ninja-dist-and-building-from-tarball.patch
BuildRequires: git-core
BuildRequires: meson
BuildRequires: intltool
BuildRequires: usbredir-devel >= 0.5.2
BuildRequires: libusb1-devel >= 1.0.9
BuildRequires: libusb1-devel >= 1.0.16
BuildRequires: pixman-devel libjpeg-turbo-devel
BuildRequires: celt051-devel pulseaudio-libs-devel opus-devel
BuildRequires: opus-devel
BuildRequires: zlib-devel
BuildRequires: cyrus-sasl-devel
BuildRequires: libcacard-devel
@ -31,14 +34,17 @@ BuildRequires: libsoup-devel >= 2.49.91
BuildRequires: libphodav-devel
BuildRequires: lz4-devel
BuildRequires: gtk3-devel
BuildRequires: spice-protocol >= 0.12.14
BuildRequires: json-glib-devel
BuildRequires: spice-protocol >= 0.12.15
BuildRequires: gstreamer1-devel gstreamer1-plugins-base-devel
BuildRequires: python3-six
BuildRequires: python3-pyparsing
BuildRequires: openssl-devel
Obsoletes: spice-gtk-python < 0.32
Requires: spice-glib%{?_isa} = %{version}-%{release}
BuildRequires: openssl-devel
%description
Client libraries for SPICE desktop servers.
@ -108,22 +114,30 @@ spicy-screenshot is a tool to capture screen-shots of a SPICE desktop.
%build
%configure \
--disable-celt051 \
--enable-gtk-doc \
--enable-webdav \
--with-usb-acl-helper-dir=%{_libexecdir}/spice-gtk-%{_arch}/ \
--enable-lz4 \
--enable-vala \
--disable-werror
make %{?_smp_mflags} V=1
# meson macro has --auto-features=enabled
# gstreamer should be enough, may be deprecated in the future
%global mjpegflag -Dbuiltin-mjpeg=false
# spice-common doesn't use auto feature yet
%global celt051flag -Dcelt051=disabled
# pulse is deprecated upstream
%global pulseflag -Dpulse=disabled
%meson \
%{mjpegflag} \
%{celt051flag} \
%{pulseflag} \
-Dusb-acl-helper-dir=%{_libexecdir}/spice-gtk-%{_arch}/
%meson_build
%check
%meson_test
%install
make install DESTDIR=%{buildroot}
rm -f %{buildroot}%{_libdir}/*.a
rm -f %{buildroot}%{_libdir}/*.la
%meson_install
%find_lang %{name}
@ -176,6 +190,9 @@ rm -f %{buildroot}%{_libdir}/*.la
%{_bindir}/spicy-stats
%changelog
* Wed Jan 16 2019 Marc-André Lureau <marcandre.lureau@redhat.com> - 0.36-1
- v0.36 release
* Wed Sep 19 2018 Christophe Fergeau <cfergeau@redhat.com> - 0.35-3
- Fix scrolling with mousewheel
https://bugzilla.redhat.com/show_bug.cgi?id=1627823