diff options
Diffstat (limited to 'user/spice-gtk')
-rw-r--r-- | user/spice-gtk/APKBUILD | 47 | ||||
-rw-r--r-- | user/spice-gtk/fix-dirty-spicy-corruption.patch | 23 | ||||
-rw-r--r-- | user/spice-gtk/macro.patch | 33 |
3 files changed, 80 insertions, 23 deletions
diff --git a/user/spice-gtk/APKBUILD b/user/spice-gtk/APKBUILD index c613828bc..f1fd970a8 100644 --- a/user/spice-gtk/APKBUILD +++ b/user/spice-gtk/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Natanael Copa <ncopa@alpinelinux.org> # Maintainer: Max Rees <maxcrees@me.com> pkgname=spice-gtk -pkgver=0.37 +pkgver=0.42 pkgrel=0 pkgdesc="A GTK+ widget for SPICE clients" url="https://www.spice-space.org/" @@ -12,42 +12,42 @@ license="LGPL-2.1+ AND LGPL-2.0+ AND BSD-3-Clause AND MIT AND GPL-3.0+ AND LGPL- depends="gst-plugins-good" depends_dev="gobject-introspection-dev gtk+3.0-dev" makedepends="$depends_dev acl-dev bash cyrus-sasl-dev eudev-dev - gst-plugins-base-dev gstreamer-dev gstreamer-tools json-glib-dev - libjpeg-turbo-dev libusb-dev libxrandr-dev lz4-dev openssl-dev - opus-dev polkit-dev polkit-dev spice-protocol usbredir-dev - usbutils zlib-dev" + gst-plugins-base-dev gstreamer-dev gstreamer-tools gtk-doc + json-glib-dev libjpeg-turbo-dev + libxrandr-dev lz4-dev meson openssl-dev opus-dev polkit-dev + py3-pyparsing py3-six spice-protocol + zlib-dev" subpackages="$pkgname-dev $pkgname-doc $pkgname-lang spicy spice-glib:glib" -source="https://www.spice-space.org/download/gtk/$pkgname-$pkgver.tar.bz2" +source="https://www.spice-space.org/download/gtk/$pkgname-$pkgver.tar.xz + fix-dirty-spicy-corruption.patch + " build() { # Note: pulseaudio support is disabled because it's deprecated. # Audio is still supported through gstreamer. - ./configure \ - --build=$CBUILD \ - --host=$CHOST \ + # + # USB redirection is disabled until there is reasonable belief + # that it is endian safe. + # https://gitlab.freedesktop.org/spice/spice-gtk/-/issues/120 + meson setup \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ - --with-gtk=3.0 \ - --with-audio=gstreamer \ - --disable-celt051 \ - --disable-werror \ - --enable-lz4 \ - --enable-opus \ - --enable-smartcard=no \ - --enable-usbredir=yes \ - --enable-polkit=yes \ - --enable-pulse=no - make + --localstatedir=/var \ + --buildtype=release \ + -Dusbredir=disabled \ + -Dcoroutine=gthread \ + . output + ninja -C output } check() { - make check + ninja -C output test } package() { - make -j1 DESTDIR="$pkgdir" install + DESTDIR="$pkgdir" ninja -C output install } spicy() { @@ -66,4 +66,5 @@ glib() { "$subpkgdir"/usr/lib/girepository-1.0/ } -sha512sums="a0a20bc6f25337d86e57fe1fc9586c4cc84457fc8c38cdcc5a728990a69018da0fca3ab5aa63349786b5a7508c82b716c94803eefb3495cffb7df4526db2d029 spice-gtk-0.37.tar.bz2" +sha512sums="fd567e35f6d4ebfe6ef004f358dca4c41254336f55f7dd26cf67b62b2acb4866907186bd0526b7cb52b0c24020cdc8809251127498a8d357555bb0c5d3b8f137 spice-gtk-0.42.tar.xz +4da61b94db02f4db400be45933bb6d3d3aa05137dfba78dcbc1757d9709c4252984e12f61f88c953597925e3145f5637fde1e76422513e0d1808b53c61c521c7 fix-dirty-spicy-corruption.patch" diff --git a/user/spice-gtk/fix-dirty-spicy-corruption.patch b/user/spice-gtk/fix-dirty-spicy-corruption.patch new file mode 100644 index 000000000..44397fc67 --- /dev/null +++ b/user/spice-gtk/fix-dirty-spicy-corruption.patch @@ -0,0 +1,23 @@ +diff -ur a/build-aux/git-version-gen b/build-aux/git-version-gen +--- a/build-aux/git-version-gen 2024-12-10 15:40:58.099527209 +0000 ++++ b/build-aux/git-version-gen 2024-12-10 15:44:18.316014690 +0000 +@@ -133,19 +133,6 @@ + + v=`echo "$v" |sed 's/^v//'` + +-# Don't declare a version "dirty" merely because a time stamp has changed. +-git update-index --refresh > /dev/null 2>&1 +- +-dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty= +-case "$dirty" in +- '') ;; +- *) # Append the suffix only if there isn't one already. +- case $v in +- *-dirty) ;; +- *) v="$v-dirty" ;; +- esac ;; +-esac +- + # Omit the trailing newline, so that m4_esyscmd can use the result directly. + echo "$v" | tr -d "$nl" + diff --git a/user/spice-gtk/macro.patch b/user/spice-gtk/macro.patch new file mode 100644 index 000000000..fc0787b93 --- /dev/null +++ b/user/spice-gtk/macro.patch @@ -0,0 +1,33 @@ +From 7363d1a0a640b6992d5967621e37c3376958d708 Mon Sep 17 00:00:00 2001 +From: Frediano Ziglio <fziglio@redhat.com> +Date: Thu, 19 Mar 2020 15:50:45 +0000 +Subject: [PATCH] channel-main: Avoid macro side effects + +In big endian system GUINT32_TO_LE macro uses the parameter +multiple time causing serial to be incremented multiple times +instead of one. +Avoid side effects using a temporary variable. + +Signed-off-by: Frediano Ziglio <fziglio@redhat.com> +Acked-by: Victor Toso <victortoso@redhat.com> +--- + src/channel-main.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/channel-main.c b/src/channel-main.c +index 0a0b9ca..d7669e8 100644 +--- a/src/channel-main.c ++++ b/src/channel-main.c +@@ -1384,7 +1384,8 @@ static void agent_clipboard_grab(SpiceMainChannel *channel, guint selection, + } + + if (test_agent_cap(channel, VD_AGENT_CAP_CLIPBOARD_GRAB_SERIAL)) { +- *(uint32_t *)grab = GUINT32_TO_LE(c->clipboard_serial[selection]++); ++ uint32_t serial = c->clipboard_serial[selection]++; ++ *(uint32_t *)grab = GUINT32_TO_LE(serial); + grab = (void *)grab + sizeof(uint32_t); + } + +-- +2.24.1 + |