[mingw-spice-gtk] Initial import

Marc-André Lureau elmarco at fedoraproject.org
Thu May 10 15:15:11 UTC 2012


commit 47e647b4c3a7d72bc8101cfcc1e7a39fbccddaf0
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date:   Thu May 10 17:14:58 2012 +0200

    Initial import

 .gitignore                       |    1 +
 0001-Fix-parsing-URI-query.patch |   50 +++++++
 mingw-spice-gtk.spec             |  276 ++++++++++++++++++++++++++++++++++++++
 sources                          |    1 +
 4 files changed, 328 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..0891737 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/spice-gtk-0.12.tar.bz2
diff --git a/0001-Fix-parsing-URI-query.patch b/0001-Fix-parsing-URI-query.patch
new file mode 100644
index 0000000..55f6794
--- /dev/null
+++ b/0001-Fix-parsing-URI-query.patch
@@ -0,0 +1,50 @@
+From da0071300e1191f26757b4cf5146418c8b1db997 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau at redhat.com>
+Date: Wed, 2 May 2012 14:01:16 +0200
+Subject: [PATCH spice-gtk] Fix parsing URI query
+
+Do not depend on uninitialized "len" variable to set the query string.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=818169
+---
+ gtk/spice-session.c |    8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/gtk/spice-session.c b/gtk/spice-session.c
+index 959e099..b3c66ce 100644
+--- a/gtk/spice-session.c
++++ b/gtk/spice-session.c
+@@ -249,7 +249,6 @@ static int spice_uri_parse(SpiceSession *session, const char *original_uri)
+     gchar key[32], value[128];
+     gchar *host = NULL, *port = NULL, *tls_port = NULL, *uri = NULL, *password = NULL;
+     gchar **target_key;
+-    int len;
+     gchar *path = NULL;
+     gchar *authority = NULL;
+     gchar *query = NULL;
+@@ -277,12 +276,10 @@ static int spice_uri_parse(SpiceSession *session, const char *original_uri)
+ 
+     if (path) {
+         size_t prefix = strcspn(path, URI_QUERY_START);
+-        if (len)
+-            query = path + prefix;
++        query = path + prefix;
+     } else {
+         size_t prefix = strcspn(authority, URI_QUERY_START);
+-        if (len)
+-            query = authority + prefix;
++        query = authority + prefix;
+     }
+ 
+     if (query && query[0]) {
+@@ -320,6 +317,7 @@ static int spice_uri_parse(SpiceSession *session, const char *original_uri)
+     }
+ 
+     while (query && query[0] != '\0') {
++        int len;
+         if (sscanf(query, "%31[-a-zA-Z0-9]=%127[^;&]%n", key, value, &len) != 2) {
+             g_warning("Failed to parse URI query '%s'", query);
+             goto fail;
+-- 
+1.7.10
+
diff --git a/mingw-spice-gtk.spec b/mingw-spice-gtk.spec
new file mode 100644
index 0000000..da611a8
--- /dev/null
+++ b/mingw-spice-gtk.spec
@@ -0,0 +1,276 @@
+%{?mingw_package_header}
+
+Name:           mingw-spice-gtk
+Version:        0.12
+Release:        1%{?dist}
+Summary:        A GTK+ widget for SPICE clients
+
+License:        LGPLv2+
+URL:            http://spice-space.org/page/Spice-Gtk
+Source0:        http://www.spice-space.org/download/gtk/spice-gtk-%{version}%{?_version_suffix}.tar.bz2
+Patch1:         0001-Fix-parsing-URI-query.patch
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+BuildArch: noarch
+
+BuildRequires: mingw32-filesystem >= 95
+BuildRequires: mingw64-filesystem >= 95
+BuildRequires: mingw32-gcc
+BuildRequires: mingw64-gcc
+BuildRequires: mingw32-binutils
+BuildRequires: mingw64-binutils
+BuildRequires: glib2-devel
+
+BuildRequires: mingw32-gtk2 >= 2.14
+BuildRequires: mingw64-gtk2 >= 2.14
+BuildRequires: mingw32-gtk3 >= 2.91.3
+BuildRequires: mingw64-gtk3 >= 2.91.3
+BuildRequires: mingw32-pixman
+BuildRequires: mingw64-pixman
+BuildRequires: mingw32-openssl
+BuildRequires: mingw64-openssl
+BuildRequires: mingw32-libjpeg-turbo
+BuildRequires: mingw64-libjpeg-turbo
+BuildRequires: mingw32-celt051
+BuildRequires: mingw64-celt051
+BuildRequires: mingw32-zlib
+BuildRequires: mingw64-zlib
+BuildRequires: mingw32-gstreamer
+BuildRequires: mingw64-gstreamer
+BuildRequires: mingw32-gstreamer-plugins-base
+BuildRequires: mingw64-gstreamer-plugins-base
+
+# Hack because of bz #613466
+BuildRequires: intltool
+BuildRequires: libtool
+
+%description
+Client libraries for SPICE desktop servers.
+
+
+# Mingw32
+%package -n mingw32-spice-gtk
+Summary: %{summary}
+Requires: mingw32-spice-glib = %{version}-%{release}
+Requires: mingw32-gtk2
+Requires: pkgconfig
+
+%description -n mingw32-spice-gtk
+Gtk+2 client libraries for SPICE desktop servers.
+
+%package -n mingw32-spice-gtk3
+Summary: %{summary}
+Requires: mingw32-spice-glib = %{version}-%{release}
+Requires: mingw32-gtk3
+Requires: pkgconfig
+
+%description -n mingw32-spice-gtk3
+Gtk+3 client libraries for SPICE desktop servers.
+
+%package -n mingw32-spice-glib
+Summary: GLib-based library to connect to SPICE servers
+Requires: pkgconfig
+Requires: mingw32-glib2
+Requires: mingw32-spice-protocol
+
+%description -n mingw32-spice-glib
+A SPICE client library using GLib2.
+
+%package -n mingw32-spice-gtk-static
+Summary: %{summary}
+Requires: mingw32-spice-gtk = %{version}-%{release}
+
+%description -n mingw32-spice-gtk-static
+Gtk+ client static libraries for SPICE desktop servers.
+
+# Mingw64
+%package -n mingw64-spice-gtk
+Summary: %{summary}
+Requires: mingw64-spice-glib = %{version}-%{release}
+Requires: mingw64-gtk2
+Requires: pkgconfig
+
+%description -n mingw64-spice-gtk
+Gtk+2 client libraries for SPICE desktop servers.
+
+%package -n mingw64-spice-gtk3
+Summary: %{summary}
+Requires: mingw64-spice-glib = %{version}-%{release}
+Requires: mingw64-gtk3
+Requires: pkgconfig
+
+%description -n mingw64-spice-gtk3
+Gtk+3 client libraries for SPICE desktop servers.
+
+%package -n mingw64-spice-glib
+Summary: GLib-based library to connect to SPICE servers
+Requires: pkgconfig
+Requires: mingw64-glib2
+Requires: mingw64-spice-protocol
+
+%description -n mingw64-spice-glib
+A SPICE client library using GLib2.
+
+%package -n mingw64-spice-gtk-static
+Summary: %{summary}
+Requires: mingw64-spice-gtk = %{version}-%{release}
+
+%description -n mingw64-spice-gtk-static
+Gtk+ client static libraries for SPICE desktop servers.
+
+%{?mingw_debug_package}
+
+
+%prep
+%setup -q -n spice-gtk-%{version}%{?_version_suffix} -c
+pushd spice-gtk-%{version}%{?_version_suffix}
+%patch1 -p1
+popd
+
+if [ -n '%{?_version_suffix}' ]; then
+  mv spice-gtk-%{version}%{?_version_suffix} spice-gtk-%{version}
+fi
+
+cp -a spice-gtk-%{version} spice-gtk3-%{version}
+
+%build
+pushd spice-gtk-%{version}
+%mingw_configure                                \
+    --without-sasl                              \
+    --with-audio=gstreamer                      \
+    --with-coroutine=winfiber                   \
+    --disable-smartcard                         \
+    --without-python                            \
+    --disable-usbredir                          \
+    --disable-gtk-doc                           \
+    --disable-werror                            \
+    --enable-static                             \
+    --enable-shared                             \
+    --with-gtk=2.0
+
+%mingw_make %{?_smp_mflags} V=1
+popd
+
+pushd spice-gtk3-%{version}
+%mingw_configure                                \
+    --without-sasl                              \
+    --with-audio=gstreamer                      \
+    --with-coroutine=winfiber                   \
+    --disable-smartcard                         \
+    --without-python                            \
+    --disable-usbredir                          \
+    --disable-gtk-doc                           \
+    --disable-werror                            \
+    --enable-static                             \
+    --enable-shared                             \
+    --with-gtk=3.0
+
+%mingw_make %{?_smp_mflags} V=1
+popd
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+pushd spice-gtk-%{version}
+%mingw_make install "DESTDIR=$RPM_BUILD_ROOT"
+popd
+
+pushd spice-gtk3-%{version}
+%mingw_make install "DESTDIR=$RPM_BUILD_ROOT"
+popd
+
+# Libtool files don't need to be bundled
+find $RPM_BUILD_ROOT -name "*.la" -delete
+
+%mingw_find_lang spice-gtk
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+# Mingw32
+%files -n mingw32-spice-glib -f spice-gtk.lang
+%defattr(-,root,root)
+%doc spice-gtk-%{version}/AUTHORS
+%doc spice-gtk-%{version}/ChangeLog
+%doc spice-gtk-%{version}/COPYING
+%doc spice-gtk-%{version}/README
+%doc spice-gtk-%{version}/NEWS
+%{mingw32_bindir}/libspice-client-glib-2.0-1.dll
+%{mingw32_bindir}/libspice-controller-0.dll
+%{mingw32_bindir}/snappy.exe
+%{mingw32_bindir}/spicy-stats.exe
+%{mingw32_libdir}/libspice-client-glib-2.0.dll.a
+%{mingw32_libdir}/libspice-controller.dll.a
+%{mingw32_libdir}/pkgconfig/spice-client-glib-2.0.pc
+%{mingw32_libdir}/pkgconfig/spice-controller.pc
+%{mingw32_includedir}/spice-client-glib-2.0
+%{mingw32_includedir}/spice-controller
+%{mingw32_datadir}/vala/vapi
+
+%files -n mingw32-spice-gtk
+%defattr(-,root,root)
+%{mingw32_bindir}/libspice-client-gtk-2.0-1.dll
+%{mingw32_libdir}/libspice-client-gtk-2.0.dll.a
+%{mingw32_libdir}/pkgconfig/spice-client-gtk-2.0.pc
+%{mingw32_includedir}/spice-client-gtk-2.0
+
+%files -n mingw32-spice-gtk3
+%defattr(-,root,root)
+%{mingw32_bindir}/libspice-client-gtk-3.0-1.dll
+%{mingw32_bindir}/spicy.exe
+%{mingw32_libdir}/libspice-client-gtk-3.0.dll.a
+%{mingw32_libdir}/pkgconfig/spice-client-gtk-3.0.pc
+%{mingw32_includedir}/spice-client-gtk-3.0
+
+%files -n mingw32-spice-gtk-static
+%defattr(-,root,root)
+%{mingw32_libdir}/libspice-client-glib-2.0.a
+%{mingw32_libdir}/libspice-controller.a
+%{mingw32_libdir}/libspice-client-gtk-2.0.a
+%{mingw32_libdir}/libspice-client-gtk-3.0.a
+
+# Mingw64
+%files -n mingw64-spice-glib -f spice-gtk.lang
+%defattr(-,root,root)
+%doc spice-gtk-%{version}/AUTHORS
+%doc spice-gtk-%{version}/ChangeLog
+%doc spice-gtk-%{version}/COPYING
+%doc spice-gtk-%{version}/README
+%doc spice-gtk-%{version}/NEWS
+%{mingw64_bindir}/libspice-client-glib-2.0-1.dll
+%{mingw64_bindir}/libspice-controller-0.dll
+%{mingw64_bindir}/snappy.exe
+%{mingw64_bindir}/spicy-stats.exe
+%{mingw64_libdir}/libspice-client-glib-2.0.dll.a
+%{mingw64_libdir}/libspice-controller.dll.a
+%{mingw64_libdir}/pkgconfig/spice-client-glib-2.0.pc
+%{mingw64_libdir}/pkgconfig/spice-controller.pc
+%{mingw64_includedir}/spice-client-glib-2.0
+%{mingw64_includedir}/spice-controller
+%{mingw64_datadir}/vala/vapi
+
+%files -n mingw64-spice-gtk
+%defattr(-,root,root)
+%{mingw64_bindir}/libspice-client-gtk-2.0-1.dll
+%{mingw64_libdir}/libspice-client-gtk-2.0.dll.a
+%{mingw64_libdir}/pkgconfig/spice-client-gtk-2.0.pc
+%{mingw64_includedir}/spice-client-gtk-2.0
+
+%files -n mingw64-spice-gtk3
+%defattr(-,root,root)
+%{mingw64_bindir}/libspice-client-gtk-3.0-1.dll
+%{mingw64_bindir}/spicy.exe
+%{mingw64_libdir}/libspice-client-gtk-3.0.dll.a
+%{mingw64_libdir}/pkgconfig/spice-client-gtk-3.0.pc
+%{mingw64_includedir}/spice-client-gtk-3.0
+
+%files -n mingw64-spice-gtk-static
+%defattr(-,root,root)
+%{mingw64_libdir}/libspice-client-glib-2.0.a
+%{mingw64_libdir}/libspice-controller.a
+%{mingw64_libdir}/libspice-client-gtk-2.0.a
+%{mingw64_libdir}/libspice-client-gtk-3.0.a
+
+%changelog
+* Wed May  2 2012 Marc-André Lureau <marcandre.lureau at redhat.com> - 0.12-1
+- Initial mingw64 packaging
diff --git a/sources b/sources
index e69de29..5040933 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+2fec0ba391447b5b4d9242455c55b2a3  spice-gtk-0.12.tar.bz2


More information about the scm-commits mailing list