Hello community, here is the log from the commit of package spice-gtk for openSUSE:Factory checked in at 2012-09-11 09:20:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/spice-gtk (Old) and /work/SRC/openSUSE:Factory/.spice-gtk.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spice-gtk", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/spice-gtk/spice-gtk.changes 2012-08-15 11:20:49.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.spice-gtk.new/spice-gtk.changes 2012-09-11 09:20:05.000000000 +0200 @@ -1,0 +2,19 @@ +Fri Sep 7 20:37:48 UTC 2012 - vu...@opensuse.org + +- Remove spice-protocol-devel Provides/Obsoletes from + spice-gtk-devel: this was a mistake in the 0.12.101 tarball, and + the real spice-protocol tarball is still wanted. See + http://lists.freedesktop.org/archives/spice-devel/2012-August/010343.html + +------------------------------------------------------------------- +Tue Sep 4 10:54:48 UTC 2012 - dims...@opensuse.org + +- Update to version 0.13: + + Add support for USB device redirection on Windows. + + Add monitors config support (multiple monitors in same display) + + Inhibit automount on GNOME desktop, to ease USB redirectio. + + Better video support (reduce some glitches). + + Misc migration fixes. + + Various bug fixes and improvements. + +------------------------------------------------------------------- Old: ---- spice-gtk-0.12.101.tar.bz2 New: ---- spice-gtk-0.13.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ spice-gtk.spec ++++++ --- /var/tmp/diff_new_pack.kOjOWV/_old 2012-09-11 09:20:09.000000000 +0200 +++ /var/tmp/diff_new_pack.kOjOWV/_new 2012-09-11 09:20:09.000000000 +0200 @@ -18,7 +18,7 @@ Name: spice-gtk -Version: 0.12.101 +Version: 0.13 Release: 0 # FIXME: /usr/bin/spice-client-glib-usb-acl-helper should be installed u+s, see bnc#744251. Summary: Gtk client and libraries for SPICE remote desktop servers @@ -128,9 +128,6 @@ Requires: typelib-1_0-SpiceClientGlib-2_0 = %{version} Requires: typelib-1_0-SpiceClientGtk-2_0 = %{version} Requires: typelib-1_0-SpiceClientGtk-3_0 = %{version} -# Spice-protocol used to be a separate package, which got merged. -Provides: spice-protocol-devel = %{version} -Obsoletes: spice-protocol-devel < %{version} %description devel A Gtk client and libraries for SPICE remote desktop servers, (Linux and Windows) @@ -251,7 +248,6 @@ %{_includedir}/spice-client-gtk-3.0/ %{_includedir}/spice-client-gtk-2.0/ %{_includedir}/spice-controller/ -%{_includedir}//spice-1/ %{_libdir}/libspice-client-glib-2.0.so %{_libdir}/libspice-client-gtk-3.0.so %{_libdir}/libspice-client-gtk-2.0.so @@ -265,6 +261,5 @@ %{_libdir}/pkgconfig/spice-client-gtk-3.0.pc %{_libdir}/pkgconfig/spice-client-gtk-2.0.pc %{_libdir}/pkgconfig/spice-controller.pc -%{_datadir}/pkgconfig/spice-protocol.pc %changelog ++++++ spice-gtk-0.12.101.tar.bz2 -> spice-gtk-0.13.tar.bz2 ++++++ ++++ 1869 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/.tarball-version new/spice-gtk-0.13/.tarball-version --- old/spice-gtk-0.12.101/.tarball-version 2012-07-17 18:11:07.000000000 +0200 +++ new/spice-gtk-0.13/.tarball-version 2012-08-28 18:33:02.000000000 +0200 @@ -1 +1 @@ -0.12.101 +0.13 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/.version new/spice-gtk-0.13/.version --- old/spice-gtk-0.12.101/.version 2012-07-17 18:09:11.000000000 +0200 +++ new/spice-gtk-0.13/.version 2012-08-28 18:12:46.000000000 +0200 @@ -1 +1 @@ -0.12.101 +0.13-dirty diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/ChangeLog new/spice-gtk-0.13/ChangeLog --- old/spice-gtk-0.12.101/ChangeLog 2012-07-17 18:11:07.000000000 +0200 +++ new/spice-gtk-0.13/ChangeLog 2012-08-28 18:33:02.000000000 +0200 @@ -1,3 +1,133 @@ +2012-08-28 Marc-André Lureau <marcandre.lur...@redhat.com> + + Release v0.13 + +2012-08-26 Dunrong Huang <riegama...@gmail.com> + + spicy: connect from cli only if hostname and port are provided + This patch will fix following error: + $ spicy --spice-debug + ...... + (spicy:21981): GSpice-DEBUG: spice-session.c:1618 new main channel, switching + (spicy:21981): GSpice-DEBUG: spice-gtk-session.c:811 Changing main channel from (nil) to 0x8534b0 + (spicy:21981): GSpice-DEBUG: spicy.c:1587 new channel (#0) + (spicy:21981): GSpice-DEBUG: spicy.c:1590 new main channel + (spicy:21981): GSpice-DEBUG: spice-channel.c:2255 Open coroutine starting 0x8534b0 + (spicy:21981): GSpice-DEBUG: spice-channel.c:2098 Started background coroutine 0x853538 for main-1:0 + (spicy:21981): GSpice-DEBUG: spice-channel.c:2122 connection failed, trying with TLS port + (spicy:21981): GSpice-DEBUG: spice-channel.c:2126 Connect error + GSpice-Message: main channel: failed to connect + ...... + + When user starts spicy without any command-line arguments, spicy + should not attempt to connected to server automatically because + hostname or port are unknown at the moment. + + What this patch changes is to show the dialog window instead of + connecting to server automatically if no hostname or port are found. + +2012-08-10 Christophe Fergeau <cferg...@redhat.com> + + Check --spice-disable-effects parameter validity + When --spice-disable-effects is used, error out unless this is + the name of one of the effects we can disable. + + Fixes rhbz#818848 + + Check --spice-color-depth parameter validity + When --spice-color-depth is used, error out unless the color depth + is 16 or 32. + + Fixes rhbz#818847 + +2012-08-09 Marc-André Lureau <marcandre.lur...@redhat.com> + + Update spice-common + +2012-08-08 Christophe Fergeau <cferg...@redhat.com> + + build: make spice-controller.pc installation conditional + It shouldn't be installed when controller support is disabled. + + build: generate sym-file + When -Wl,--version-script is not available, we fallback to using + libtool --export-symbols feature, but the needed sym-file is missing + from git. This commit adds generation of the sym-file to the + update-map-file Makefile target, and adds a sym-file to git. + The linker on OSX Lion doesn't like to have non-existing symbols + specified in the symbol files it's given, so the symbols need to + be split in glib symbols and gtk symbols. + +2012-08-07 Christophe Fergeau <cferg...@redhat.com> + + build: add --enable-smartcard=auto support + Currently, when running configure with no arguments, smartcard + support is enabled by default, and configure will fail if it cannot + find libcacard. This commit adds a --enable-smartcard=auto mode to + configure which will use automatically enable smartcard support if + libcacard is available, but it will be silently disabled if libcacard + is not available. Passing --enable-smartcard will fail if libcacard + is not available. Passing --disable-smartcard will always disable + smartcard support and will not test for libcacard availability. + + build: make controller build optional + Apart from the Vala bindings, this is the only part of spice-gtk + which requires Vala to be built from git. Since it's only useful + when spice-gtk is used in conjunction with an oVirt browser plugin, + letting people disabling it will not necessarily cause issues. + +2012-08-05 Matthias Clasen <mcla...@redhat.com> + + Don't use GDK_THREADS_ENTER/LEAVE + These macros have been deprecated. The quick fix for now is to just use the + functions gdk_threads_enter/leave instead. They are deprecated as well, but + deprecated functions don't cause the build to fail (unless you use -Werror). + +2012-07-30 Hans de Goede <hdego...@redhat.com> + + Remove "usbredirhost: " prefix from usbredirhost error messages + libusbredirhost prefixes all its messages with "usbredirhhost: ", which + is useful when logging to stderr, but not so much when showing the error + to the user in an error dialog, so remove the "usbredirhost: " prefix + when we store the message in a GError. + +2012-07-28 Hans de Goede <hdego...@redhat.com> + + channel-display: Set monitors_max to 1 on init + This fixes remote-viewer with the new multi monitor support not working + when connecting to a spice-server without the new multi-monitor support. + + Before this fix remote-viewer would hit the following g_return_if_fail: + (remote-viewer:24787): remote-viewer-CRITICAL **: + virt_viewer_session_spice_display_monitors: + assertion `monitors->len <= monitors_max' failed + + spice-widget: release mouse grab on keyboard-grab-inhibit + The purpose of the keyboard-grab-inihbit mechanism is to allow other apps + to grab the input while the spice-widget has the focus, mainly when we're + going to invoke policykit for usb-redirection, as that the policy-kit + agent may want to grab the input. + + Before this patch we were only inhibitting the keyboard grab, which works fine + for vms which are in client mouse mode, but is not enough for vms which are + in server mouse mode. + + This patch also releases the mouse grab on keyboard-grab-inhibit, fixing + the policykit dialog not showing (and thus usb redir not working) when + running with server mouse mode. Note that this makes the inhibit-keyboard-grab + name of the property no longer really cover what it does, but allas it is + part of our ABI... + +2012-07-18 Marc-André Lureau <marcandre.lur...@redhat.com> + + Run-time check monitor per display count <= 256 + Limit range of monitors, to avoid potential crashes lead by invalid + received MonitorConfig values (could be misconfigured or misbehaving + guest) + + This is a a client-side implementation limitation. Eventually, the + range could be inscreased (or unlimited == 0) in the future... + 2012-07-16 Marc-André Lureau <marcandre.lur...@redhat.com> Enable the display early when the widget is created diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/Makefile.am new/spice-gtk-0.13/Makefile.am --- old/spice-gtk-0.12.101/Makefile.am 2012-06-08 15:34:04.000000000 +0200 +++ new/spice-gtk-0.13/Makefile.am 2012-08-13 14:57:32.000000000 +0200 @@ -13,9 +13,12 @@ pkgconfig_DATA = \ spice-client-glib-2.0.pc \ spice-client-gtk-$(SPICE_GTK_API_VERSION).pc \ - spice-controller.pc \ $(NULL) +if WITH_CONTROLLER +pkgconfig_DATA += spice-controller.pc +endif + INTLTOOL_FILES = \ intltool-extract.in \ intltool-merge.in \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/NEWS new/spice-gtk-0.13/NEWS --- old/spice-gtk-0.12.101/NEWS 2012-06-08 15:34:04.000000000 +0200 +++ new/spice-gtk-0.13/NEWS 2012-08-28 18:30:27.000000000 +0200 @@ -1,3 +1,15 @@ +v0.13 +===== + +- ABI break! SONAME has been bumped, all programs and libraries + linking to spice-gtk need to be recompiled against this version +- Add support for USB device redirection on Windows +- Add monitors config support (multiple monitors in same display) +- Inhibit automount on GNOME desktop, to ease USB redirection +- Better video support (reduce some glitches) +- Misc migration fixes +- Various bug fixes and improvements + v0.12 ===== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/configure.ac new/spice-gtk-0.13/configure.ac --- old/spice-gtk-0.12.101/configure.ac 2012-07-11 13:17:49.000000000 +0200 +++ new/spice-gtk-0.13/configure.ac 2012-08-28 17:43:59.000000000 +0200 @@ -321,17 +321,21 @@ AC_ARG_ENABLE([smartcard], AS_HELP_STRING([--enable-smartcard=@<:@yes/no@:>@], - [Enable smartcard support @<:@default=yes@:>@]), + [Enable smartcard support @<:@default=auto@:>@]), [], - [enable_smartcard="yes"]) + [enable_smartcard="auto"]) -if test "x$enable_smartcard" = "xno"; then - AM_CONDITIONAL(WITH_SMARTCARD, false) -else - PKG_CHECK_MODULES(SMARTCARD, libcacard >= 0.1.2) - AC_DEFINE(USE_SMARTCARD, [1], [Define if supporting smartcard proxying]) - AM_CONDITIONAL(WITH_SMARTCARD, true) +have_smartcard=no +if test "x$enable_smartcard" != "xno"; then + PKG_CHECK_MODULES(SMARTCARD, libcacard >= 0.1.2, [have_smartcard=yes], [have_smartcard=no]) + if test "x$enable_smartcard" != "xauto" && test "x$have_smartcard" = "xno"; then + AC_MSG_ERROR("Smartcard support requested but libcacard could not be found") + fi + if test "x$have_smartcard" = "xyes"; then + AC_DEFINE(USE_SMARTCARD, [1], [Define if supporting smartcard proxying]) + fi fi +AM_CONDITIONAL([WITH_SMARTCARD], [test "x$have_smartcard" = "xyes"]) AC_ARG_ENABLE([usbredir], AS_HELP_STRING([--enable-usbredir=@<:@auto/yes/no@:>@], @@ -513,6 +517,13 @@ GOBJECT_INTROSPECTION_CHECK([0.6.7]) AM_CONDITIONAL([G_IR_SCANNER_SYMBOL_PREFIX], [test "x$has_symbol_prefix" = "xyes"]) +AC_ARG_ENABLE([controller], + AS_HELP_STRING([--enable-controller], [Enable controller build @<:@default=yes@:>@]), + [], + enable_controller="yes") + +AM_CONDITIONAL(WITH_CONTROLLER, [test "x$enable_controller" != "xno"]) + AC_ARG_ENABLE([vala], AS_HELP_STRING([--enable-vala], [Check for vala requirements @<:@default=no@:>@]), [], @@ -649,7 +660,7 @@ Audio: ${with_audio} Target: ${red_target} SASL support: ${enable_sasl} - Smartcard support: ${enable_smartcard} + Smartcard support: ${have_smartcard} USB redirection support: ${have_usbredir} Gtk: $GTK_API_VERSION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/data/spicy.nsis new/spice-gtk-0.13/data/spicy.nsis --- old/spice-gtk-0.12.101/data/spicy.nsis 2012-07-17 18:05:10.000000000 +0200 +++ new/spice-gtk-0.13/data/spicy.nsis 2012-08-28 18:20:31.000000000 +0200 @@ -9,11 +9,11 @@ # # makensis spicy.nsis # -# which will generate the output file 'spicy-0.12.101.exe' which is a Windows +# which will generate the output file 'spicy-0.13.exe' which is a Windows # installer containing your program. Name "spicy" -OutFile "spicy-0.12.101.exe" +OutFile "spicy-0.13.exe" InstallDir "c:\spicy" InstallDirRegKey HKLM SOFTWARE\spicy "Install_Dir" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/doc/reference/html/SpiceDisplayChannel.html new/spice-gtk-0.13/doc/reference/html/SpiceDisplayChannel.html --- old/spice-gtk-0.12.101/doc/reference/html/SpiceDisplayChannel.html 2012-07-17 18:11:06.000000000 +0200 +++ new/spice-gtk-0.13/doc/reference/html/SpiceDisplayChannel.html 2012-08-28 18:33:01.000000000 +0200 @@ -177,7 +177,7 @@ May change during client lifetime, for instance guest may reboot or dynamically adjust this. </p> -<p>Allowed values: [1,32767]</p> +<p>Allowed values: [1,256]</p> <p>Default value: 1</p> <p class="since">Since 0.13</p> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/doc/reference/html/ch01.html new/spice-gtk-0.13/doc/reference/html/ch01.html --- old/spice-gtk-0.12.101/doc/reference/html/ch01.html 2012-07-17 18:11:06.000000000 +0200 +++ new/spice-gtk-0.13/doc/reference/html/ch01.html 2012-08-28 18:33:01.000000000 +0200 @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="id562740"></a>Object Hierarchy</h2></div></div></div> +<a name="id358145"></a>Object Hierarchy</h2></div></div></div> <pre class="screen"> GObject <a class="link" href="SpiceAudio.html" title="Spice Audio">SpiceAudio</a> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/doc/reference/html/ch02.html new/spice-gtk-0.13/doc/reference/html/ch02.html --- old/spice-gtk-0.12.101/doc/reference/html/ch02.html 2012-07-17 18:11:06.000000000 +0200 +++ new/spice-gtk-0.13/doc/reference/html/ch02.html 2012-08-28 18:33:01.000000000 +0200 @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="id562109"></a>Session and Channels Objects, from spice-client-glib</h2></div></div></div> +<a name="id357514"></a>Session and Channels Objects, from spice-client-glib</h2></div></div></div> <div class="toc"><dl> <dt> <span class="refentrytitle"><a href="SpiceSession.html">Spice Session</a></span><span class="refpurpose"> — handles connection details, and active channels</span> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/doc/reference/html/ch03.html new/spice-gtk-0.13/doc/reference/html/ch03.html --- old/spice-gtk-0.12.101/doc/reference/html/ch03.html 2012-07-17 18:11:06.000000000 +0200 +++ new/spice-gtk-0.13/doc/reference/html/ch03.html 2012-08-28 18:33:01.000000000 +0200 @@ -21,7 +21,7 @@ </tr></table> <div class="chapter"> <div class="titlepage"><div><div><h2 class="title"> -<a name="id560808"></a>GTK Widget, from spice-client-gtk</h2></div></div></div> +<a name="id356213"></a>GTK Widget, from spice-client-gtk</h2></div></div></div> <div class="toc"><dl> <dt> <span class="refentrytitle"><a href="SpiceGtkSession.html">Spice GTK Session</a></span><span class="refpurpose"> — handles GTK connection details</span> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/Makefile.am new/spice-gtk-0.13/gtk/Makefile.am --- old/spice-gtk-0.12.101/gtk/Makefile.am 2012-07-11 13:17:10.000000000 +0200 +++ new/spice-gtk-0.13/gtk/Makefile.am 2012-08-26 00:00:00.000000000 +0200 @@ -1,6 +1,10 @@ NULL = -SUBDIRS = controller +SUBDIRS = + +if WITH_CONTROLLER +SUBDIRS += controller +endif # Avoid need for perl(Text::CSV) by end users KEYMAPS = \ @@ -51,9 +55,11 @@ endif if HAVE_LD_VERSION_SCRIPT -VERSION_LDFLAGS = -Wl,--version-script=${srcdir}/map-file +GLIB_VERSION_LDFLAGS = -Wl,--version-script=${srcdir}/map-file +GTK_VERSION_LD_FLAGS = $(GLIB_VERSION_LDFLAGS) else -VERSION_LDFLAGS = -export-symbols ${srcdir}/sym-file +GLIB_VERSION_LDFLAGS = -export-symbols ${srcdir}/spice-glib-sym-file +GTK_VERSION_LDFLAGS = -export-symbols ${srcdir}/spice-gtk-sym-file endif KEYMAP_GEN = $(srcdir)/keymap-gen.pl @@ -95,7 +101,7 @@ SPICE_GTK_LDFLAGS_COMMON = \ -version-info 4:0:0 \ -no-undefined \ - $(VERSION_LDFLAGS) \ + $(GTK_VERSION_LDFLAGS) \ $(NULL) SPICE_GTK_LIBADD_COMMON = \ @@ -165,7 +171,7 @@ libspice_client_glib_2_0_la_LDFLAGS = \ -version-info 8:0:0 \ -no-undefined \ - $(VERSION_LDFLAGS) \ + $(GLIB_VERSION_LDFLAGS) \ $(NULL) libspice_client_glib_2_0_la_LIBADD = \ @@ -633,12 +639,16 @@ CLEANFILES += $(gir_DATA) $(typelibs_DATA) endif -update-map-file: +update-symbol-files: ( echo "SPICEGTK_1 {" ; \ echo "global:" ; \ ctags -f - --c-kinds=p $(libspice_client_gtkinclude_HEADERS) $(nodist_libspice_client_gtkinclude_HEADERS) $(libspice_client_glibinclude_HEADERS) $(nodist_libspice_client_glibinclude_HEADERS) | awk '/^spice_/ { print $$1 ";" }' | sort ; \ echo "local:" ; \ echo "*;" ; \ echo "};" ) > $(srcdir)/map-file + ( ctags -f - --c-kinds=p $(libspice_client_glibinclude_HEADERS) $(nodist_libspice_client_glibinclude_HEADERS) | awk '/^spice_/ { print $$1 }' | sort ; \ + ) > $(srcdir)/spice-glib-sym-file + ( ctags -f - --c-kinds=p $(libspice_client_gtkinclude_HEADERS) $(nodist_libspice_client_gtkinclude_HEADERS) | awk '/^spice_/ { print $$1 }' | sort ; \ + ) > $(srcdir)/spice-gtk-sym-file -include $(top_srcdir)/git.mk diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/channel-display.c new/spice-gtk-0.13/gtk/channel-display.c --- old/spice-gtk-0.12.101/gtk/channel-display.c 2012-07-16 17:46:41.000000000 +0200 +++ new/spice-gtk-0.13/gtk/channel-display.c 2012-08-13 14:57:32.000000000 +0200 @@ -59,6 +59,8 @@ #define SPICE_DISPLAY_CHANNEL_GET_PRIVATE(obj) \ (G_TYPE_INSTANCE_GET_PRIVATE((obj), SPICE_TYPE_DISPLAY_CHANNEL, SpiceDisplayChannelPrivate)) +#define MONITORS_MAX 256 + struct _SpiceDisplayChannelPrivate { Ring surfaces; display_cache *images; @@ -275,7 +277,7 @@ g_param_spec_uint("monitors-max", "Max display monitors", "The current maximum number of monitors", - 1, G_MAXINT16, 1, + 1, MONITORS_MAX, 1, G_PARAM_READABLE | G_PARAM_STATIC_STRINGS)); @@ -694,6 +696,7 @@ #if defined(WIN32) c->dc = create_compatible_dc(); #endif + c->monitors_max = 1; spice_display_channel_reset_capabilities(SPICE_CHANNEL(channel)); } @@ -1493,6 +1496,8 @@ free(surface); } +#define CLAMP_CHECK(x, low, high) (((x) > (high)) ? TRUE : (((x) < (low)) ? TRUE : FALSE)) + /* coroutine context */ static void display_handle_monitors_config(SpiceChannel *channel, SpiceMsgIn *in) { @@ -1506,6 +1511,16 @@ SPICE_DEBUG("monitors config: n: %d/%d", config->count, config->max_allowed); c->monitors_max = config->max_allowed; + if (CLAMP_CHECK(c->monitors_max, 1, MONITORS_MAX)) { + g_warning("MonitorConfig max_allowed is not within permitted range, clamping"); + c->monitors_max = CLAMP(c->monitors_max, 1, MONITORS_MAX); + } + + if (CLAMP_CHECK(config->count, 1, c->monitors_max)) { + g_warning("MonitorConfig count is not within permitted range, clamping"); + config->count = CLAMP(config->count, 1, c->monitors_max); + } + c->monitors = g_array_set_size(c->monitors, config->count); for (i = 0; i < config->count; i++) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/channel-usbredir.c new/spice-gtk-0.13/gtk/channel-usbredir.c --- old/spice-gtk-0.12.101/gtk/channel-usbredir.c 2012-07-10 20:26:02.000000000 +0200 +++ new/spice-gtk-0.13/gtk/channel-usbredir.c 2012-08-13 14:57:32.000000000 +0200 @@ -448,8 +448,13 @@ if (priv->catch_error && level == usbredirparser_error) { SPICE_DEBUG("%s", msg); - g_set_error_literal(priv->catch_error, SPICE_CLIENT_ERROR, - SPICE_CLIENT_ERROR_FAILED, msg); + /* Remove "usbredirhost: " prefix from usbredirhost messages */ + if (strncmp(msg, "usbredirhost: ", 14) == 0) + g_set_error_literal(priv->catch_error, SPICE_CLIENT_ERROR, + SPICE_CLIENT_ERROR_FAILED, msg + 14); + else + g_set_error_literal(priv->catch_error, SPICE_CLIENT_ERROR, + SPICE_CLIENT_ERROR_FAILED, msg); return; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/controller/controller.c new/spice-gtk-0.13/gtk/controller/controller.c --- old/spice-gtk-0.12.101/gtk/controller/controller.c 2012-07-17 18:09:32.000000000 +0200 +++ new/spice-gtk-0.13/gtk/controller/controller.c 2012-08-28 18:13:21.000000000 +0200 @@ -1,4 +1,4 @@ -/* controller.c generated by valac 0.16.0, the Vala compiler +/* controller.c generated by valac 0.17.4.28-e309-dirty, the Vala compiler * generated from controller.vala, do not modify */ /* Copyright (C) 2011 Red Hat, Inc.*/ @@ -1855,7 +1855,7 @@ static void spice_ctrl_controller_finalize (GObject* obj) { SpiceCtrlController * self; - self = SPICE_CTRL_CONTROLLER (obj); + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SPICE_CTRL_TYPE_CONTROLLER, SpiceCtrlController); _g_free0 (self->priv->_host); _g_free0 (self->priv->_password); _g_free0 (self->priv->_tls_ciphers); @@ -1888,7 +1888,7 @@ static void _vala_spice_ctrl_controller_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { SpiceCtrlController * self; - self = SPICE_CTRL_CONTROLLER (object); + self = G_TYPE_CHECK_INSTANCE_CAST (object, SPICE_CTRL_TYPE_CONTROLLER, SpiceCtrlController); switch (property_id) { case SPICE_CTRL_CONTROLLER_HOST: g_value_set_string (value, spice_ctrl_controller_get_host (self)); @@ -1968,7 +1968,7 @@ static void _vala_spice_ctrl_controller_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { SpiceCtrlController * self; - self = SPICE_CTRL_CONTROLLER (object); + self = G_TYPE_CHECK_INSTANCE_CAST (object, SPICE_CTRL_TYPE_CONTROLLER, SpiceCtrlController); switch (property_id) { case SPICE_CTRL_CONTROLLER_HOST: spice_ctrl_controller_set_host (self, g_value_get_string (value)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/controller/foreign-menu.c new/spice-gtk-0.13/gtk/controller/foreign-menu.c --- old/spice-gtk-0.12.101/gtk/controller/foreign-menu.c 2012-07-17 18:09:32.000000000 +0200 +++ new/spice-gtk-0.13/gtk/controller/foreign-menu.c 2012-08-28 18:13:21.000000000 +0200 @@ -1,4 +1,4 @@ -/* foreign-menu.c generated by valac 0.16.0, the Vala compiler +/* foreign-menu.c generated by valac 0.17.4.28-e309-dirty, the Vala compiler * generated from foreign-menu.vala, do not modify */ /* Copyright (C) 2012 Red Hat, Inc.*/ @@ -960,7 +960,7 @@ _data_->_tmp30__length1 = _data_->title_length1; _data_->_tmp31_ = _data_->title_size; _data_->_state_ = 3; - g_input_stream_read_async (_data_->_tmp29_, _data_->_tmp30_ + 0, (gsize) (_data_->_tmp31_ - 0), G_PRIORITY_DEFAULT, NULL, spice_ctrl_foreign_menu_handle_client_ready, _data_); + g_input_stream_read_async (_data_->_tmp29_, (void*) (_data_->_tmp30_ + 0), (gsize) (_data_->_tmp31_ - 0), G_PRIORITY_DEFAULT, NULL, spice_ctrl_foreign_menu_handle_client_ready, _data_); return FALSE; _state_3: g_input_stream_read_finish (_data_->_tmp29_, _data_->_res_, &_data_->_inner_error_); @@ -1347,7 +1347,7 @@ static void spice_ctrl_foreign_menu_finalize (GObject* obj) { SpiceCtrlForeignMenu * self; - self = SPICE_CTRL_FOREIGN_MENU (obj); + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SPICE_CTRL_TYPE_FOREIGN_MENU, SpiceCtrlForeignMenu); _g_object_unref0 (self->priv->_menu); _g_free0 (self->priv->_title); __g_list_free__g_object_unref0_0 (self->priv->clients); @@ -1369,7 +1369,7 @@ static void _vala_spice_ctrl_foreign_menu_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { SpiceCtrlForeignMenu * self; - self = SPICE_CTRL_FOREIGN_MENU (object); + self = G_TYPE_CHECK_INSTANCE_CAST (object, SPICE_CTRL_TYPE_FOREIGN_MENU, SpiceCtrlForeignMenu); switch (property_id) { case SPICE_CTRL_FOREIGN_MENU_MENU: g_value_set_object (value, spice_ctrl_foreign_menu_get_menu (self)); @@ -1386,7 +1386,7 @@ static void _vala_spice_ctrl_foreign_menu_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { SpiceCtrlForeignMenu * self; - self = SPICE_CTRL_FOREIGN_MENU (object); + self = G_TYPE_CHECK_INSTANCE_CAST (object, SPICE_CTRL_TYPE_FOREIGN_MENU, SpiceCtrlForeignMenu); switch (property_id) { case SPICE_CTRL_FOREIGN_MENU_MENU: spice_ctrl_foreign_menu_set_menu (self, g_value_get_object (value)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/controller/menu.c new/spice-gtk-0.13/gtk/controller/menu.c --- old/spice-gtk-0.12.101/gtk/controller/menu.c 2012-07-17 18:09:32.000000000 +0200 +++ new/spice-gtk-0.13/gtk/controller/menu.c 2012-08-28 18:13:21.000000000 +0200 @@ -1,4 +1,4 @@ -/* menu.c generated by valac 0.16.0, the Vala compiler +/* menu.c generated by valac 0.17.4.28-e309-dirty, the Vala compiler * generated from menu.vala, do not modify */ /* Copyright (C) 2011 Red Hat, Inc.*/ @@ -385,7 +385,7 @@ static void spice_ctrl_menu_item_finalize (GObject* obj) { SpiceCtrlMenuItem * self; - self = SPICE_CTRL_MENU_ITEM (obj); + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SPICE_CTRL_TYPE_MENU_ITEM, SpiceCtrlMenuItem); _g_object_unref0 (self->submenu); _g_free0 (self->text); _g_free0 (self->accel); @@ -682,7 +682,7 @@ static void spice_ctrl_menu_finalize (GObject* obj) { SpiceCtrlMenu * self; - self = SPICE_CTRL_MENU (obj); + self = G_TYPE_CHECK_INSTANCE_CAST (obj, SPICE_CTRL_TYPE_MENU, SpiceCtrlMenu); __g_list_free__g_object_unref0_0 (self->items); G_OBJECT_CLASS (spice_ctrl_menu_parent_class)->finalize (obj); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/controller/spice-controller.h new/spice-gtk-0.13/gtk/controller/spice-controller.h --- old/spice-gtk-0.12.101/gtk/controller/spice-controller.h 2012-07-17 18:09:32.000000000 +0200 +++ new/spice-gtk-0.13/gtk/controller/spice-controller.h 2012-08-28 18:13:21.000000000 +0200 @@ -1,4 +1,4 @@ -/* spice-controller.h generated by valac 0.16.0, the Vala compiler, do not modify */ +/* spice-controller.h generated by valac 0.17.4.28-e309-dirty, the Vala compiler, do not modify */ #ifndef __SPICE_CONTROLLER_H__ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/controller/util.c new/spice-gtk-0.13/gtk/controller/util.c --- old/spice-gtk-0.12.101/gtk/controller/util.c 2012-07-17 18:09:32.000000000 +0200 +++ new/spice-gtk-0.13/gtk/controller/util.c 2012-08-28 18:13:21.000000000 +0200 @@ -1,4 +1,4 @@ -/* util.c generated by valac 0.16.0, the Vala compiler +/* util.c generated by valac 0.17.4.28-e309-dirty, the Vala compiler * generated from util.vala, do not modify */ /* Copyright (C) 2012 Red Hat, Inc.*/ @@ -168,7 +168,7 @@ _data_->_tmp5_ = _data_->i; _data_->_tmp6_ = _data_->length; _data_->_state_ = 1; - g_input_stream_read_async (_data_->_tmp3_, _data_->_tmp4_ + _data_->_tmp5_, (gsize) (_data_->_tmp6_ - _data_->_tmp5_), G_PRIORITY_DEFAULT, NULL, spice_ctrl_input_stream_read_ready, _data_); + g_input_stream_read_async (_data_->_tmp3_, (void*) (_data_->_tmp4_ + _data_->_tmp5_), (gsize) (_data_->_tmp6_ - _data_->_tmp5_), G_PRIORITY_DEFAULT, NULL, spice_ctrl_input_stream_read_ready, _data_); return FALSE; _state_1: _data_->_tmp7_ = 0L; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/spice-gtk-session.c new/spice-gtk-0.13/gtk/spice-gtk-session.c --- old/spice-gtk-0.12.101/gtk/spice-gtk-session.c 2012-07-09 00:32:19.000000000 +0200 +++ new/spice-gtk-0.13/gtk/spice-gtk-session.c 2012-08-13 14:57:32.000000000 +0200 @@ -619,9 +619,9 @@ /* apparently, this is needed to avoid dead-lock, from gtk_dialog_run */ - GDK_THREADS_LEAVE(); + gdk_threads_leave(); g_main_loop_run(ri.loop); - GDK_THREADS_ENTER(); + gdk_threads_enter(); g_main_loop_unref(ri.loop); ri.loop = NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/spice-option.c new/spice-gtk-0.13/gtk/spice-option.c --- old/spice-gtk-0.12.101/gtk/spice-option.c 2012-06-08 15:34:04.000000000 +0200 +++ new/spice-gtk-0.13/gtk/spice-option.c 2012-08-13 14:57:32.000000000 +0200 @@ -52,6 +52,56 @@ return TRUE; } +static gboolean parse_color_depth(const gchar *option_name, const gchar *value, + gpointer data, GError **error) +{ + unsigned long parsed_depth; + char *end; + + if (option_name == NULL) { + g_set_error(error, G_OPTION_ERROR, G_OPTION_ERROR_FAILED, _("missing color depth, must be 16 or 32")); + return FALSE; + } + + parsed_depth = strtoul(value, &end, 0); + if (*end != '\0') + goto error; + + if ((parsed_depth != 16) && (parsed_depth != 32)) + goto error; + + color_depth = parsed_depth; + + return TRUE; + +error: + g_set_error(error, G_OPTION_ERROR, G_OPTION_ERROR_FAILED, _("invalid color depth (%s), must be 16 or 32"), value); + return FALSE; +} + +static gboolean parse_disable_effects(const gchar *option_name, const gchar *value, + gpointer data, GError **error) +{ + + if ((g_strcmp0(value, "wallpaper") != 0) + && (g_strcmp0(value, "font-smooth") != 0) + && (g_strcmp0(value, "animation") != 0) + && (g_strcmp0(value, "all") != 0)) { + /* Translators: do not translate 'wallpaper', 'font-smooth', + * 'animation', 'all' as the user must use these values with the + * --spice-disable-effects command line option + */ + g_set_error(error, G_OPTION_ERROR, G_OPTION_ERROR_FAILED, + _("invalid effect name (%s), must be 'wallpaper', 'font-smooth', 'animation' or 'all'"), value); + return FALSE; + } + + disable_effects = g_strdup(value); + + return TRUE; +} + + /** * spice_get_option_group: * @@ -63,9 +113,9 @@ GOptionGroup* spice_get_option_group(void) { const GOptionEntry entries[] = { - { "spice-disable-effects", '\0', 0, G_OPTION_ARG_STRING, &disable_effects, + { "spice-disable-effects", '\0', 0, G_OPTION_ARG_CALLBACK, parse_disable_effects, N_("Disable guest display effects"), N_("<wallpaper,font-smooth,animation,all>") }, - { "spice-color-depth", '\0', 0, G_OPTION_ARG_INT, &color_depth, + { "spice-color-depth", '\0', 0, G_OPTION_ARG_CALLBACK, parse_color_depth, N_("Guest display color depth"), N_("<16,32>") }, { "spice-ca-file", '\0', 0, G_OPTION_ARG_FILENAME, &ca_file, N_("Truststore file for secure connections"), N_("<file>") }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/spice-widget.c new/spice-gtk-0.13/gtk/spice-widget.c --- old/spice-gtk-0.12.101/gtk/spice-widget.c 2012-07-16 17:46:41.000000000 +0200 +++ new/spice-gtk-0.13/gtk/spice-widget.c 2012-08-21 11:15:01.000000000 +0200 @@ -372,6 +372,7 @@ g_object_get(d->session, "inhibit-keyboard-grab", &d->keyboard_grab_inhibit, NULL); update_keyboard_grab(display); + update_mouse_grab(display); } static void spice_display_dispose(GObject *obj) @@ -844,7 +845,9 @@ { SpiceDisplayPrivate *d = SPICE_DISPLAY_GET_PRIVATE(display); - if (d->mouse_grab_enable && !d->disable_inputs) + if (d->mouse_grab_enable && + !d->keyboard_grab_inhibit && + !d->disable_inputs) try_mouse_grab(display); else try_mouse_ungrab(display); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/gtk/spicy.c new/spice-gtk-0.13/gtk/spicy.c --- old/spice-gtk-0.12.101/gtk/spicy.c 2012-07-16 17:46:41.000000000 +0200 +++ new/spice-gtk-0.13/gtk/spicy.c 2012-08-26 00:13:22.000000000 +0200 @@ -1804,6 +1804,7 @@ GOptionContext *context; spice_connection *conn; gchar *conf_file, *conf; + char *host = NULL, *port = NULL, *tls_port = NULL; #if !GLIB_CHECK_VERSION(2,31,18) g_thread_init(NULL); @@ -1869,8 +1870,25 @@ conn = connection_new(); spice_set_session_option(conn->session); spice_cmdline_session_setup(conn->session); - connection_connect(conn); + g_object_get(conn->session, + "host", &host, + "port", &port, + "tls-port", &tls_port, + NULL); + /* If user doesn't provide hostname and port, show the dialog window + instead of connecting to server automatically */ + if (host == NULL || (port == NULL && tls_port == NULL)) { + int ret = connect_dialog(conn->session); + if (ret != 0) { + exit(0); + } + } + g_free(host); + g_free(port); + g_free(tls_port); + + connection_connect(conn); if (connections > 0) g_main_loop_run(mainloop); g_main_loop_unref(mainloop); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/m4/intltool.m4 new/spice-gtk-0.13/m4/intltool.m4 --- old/spice-gtk-0.12.101/m4/intltool.m4 1970-01-01 01:00:00.000000000 +0100 +++ new/spice-gtk-0.13/m4/intltool.m4 2012-08-22 11:00:52.000000000 +0200 @@ -0,0 +1,237 @@ +## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*- +## Copyright (C) 2001 Eazel, Inc. +## Author: Maciej Stachowiak <m...@noisehavoc.org> +## Kenneth Christiansen <kenn...@gnu.org> +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +## +## As a special exception to the GNU General Public License, if you +## distribute this file as part of a program that contains a +## configuration script generated by Autoconf, you may include it under +## the same distribution terms that you use for the rest of that program. + +dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml]) +# serial 42 IT_PROG_INTLTOOL +AC_DEFUN([IT_PROG_INTLTOOL], [ +AC_PREREQ([2.50])dnl +AC_REQUIRE([AM_NLS])dnl + +case "$am__api_version" in + 1.[01234]) + AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool]) + ;; + *) + ;; +esac + +INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` +INTLTOOL_APPLIED_VERSION=`intltool-update --version | head -1 | cut -d" " -f3` +INTLTOOL_APPLIED_VERSION_AS_INT=`echo $INTLTOOL_APPLIED_VERSION | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'` +if test -n "$1"; then + AC_MSG_CHECKING([for intltool >= $1]) + AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found]) + test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" || + AC_MSG_ERROR([Your intltool is too old. You need intltool $1 or later.]) +fi + +AC_PATH_PROG(INTLTOOL_UPDATE, [intltool-update]) +AC_PATH_PROG(INTLTOOL_MERGE, [intltool-merge]) +AC_PATH_PROG(INTLTOOL_EXTRACT, [intltool-extract]) +if test -z "$INTLTOOL_UPDATE" -o -z "$INTLTOOL_MERGE" -o -z "$INTLTOOL_EXTRACT"; then + AC_MSG_ERROR([The intltool scripts were not found. Please install intltool.]) +fi + +if test -z "$AM_DEFAULT_VERBOSITY"; then + AM_DEFAULT_VERBOSITY=1 +fi +AC_SUBST([AM_DEFAULT_VERBOSITY]) + +INTLTOOL_V_MERGE='$(INTLTOOL__v_MERGE_$(V))' +INTLTOOL__v_MERGE_='$(INTLTOOL__v_MERGE_$(AM_DEFAULT_VERBOSITY))' +INTLTOOL__v_MERGE_0='@echo " ITMRG " [$]@;' +AC_SUBST(INTLTOOL_V_MERGE) +AC_SUBST(INTLTOOL__v_MERGE_) +AC_SUBST(INTLTOOL__v_MERGE_0) + +INTLTOOL_V_MERGE_OPTIONS='$(intltool__v_merge_options_$(V))' +intltool__v_merge_options_='$(intltool__v_merge_options_$(AM_DEFAULT_VERBOSITY))' +intltool__v_merge_options_0='-q' +AC_SUBST(INTLTOOL_V_MERGE_OPTIONS) +AC_SUBST(intltool__v_merge_options_) +AC_SUBST(intltool__v_merge_options_0) + + INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -p $(top_srcdir)/po $< [$]@' + INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' +if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< [$]@' +else + INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.[$][$]RANDOM && mkdir [$][$]_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u [$][$]_it_tmp_dir $< [$]@ && rmdir [$][$]_it_tmp_dir' +fi + INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + INTLTOOL_POLICY_RULE='%.policy: %.policy.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' + +_IT_SUBST(INTLTOOL_DESKTOP_RULE) +_IT_SUBST(INTLTOOL_DIRECTORY_RULE) +_IT_SUBST(INTLTOOL_KEYS_RULE) +_IT_SUBST(INTLTOOL_PROP_RULE) +_IT_SUBST(INTLTOOL_OAF_RULE) +_IT_SUBST(INTLTOOL_PONG_RULE) +_IT_SUBST(INTLTOOL_SERVER_RULE) +_IT_SUBST(INTLTOOL_SHEET_RULE) +_IT_SUBST(INTLTOOL_SOUNDLIST_RULE) +_IT_SUBST(INTLTOOL_UI_RULE) +_IT_SUBST(INTLTOOL_XAM_RULE) +_IT_SUBST(INTLTOOL_KBD_RULE) +_IT_SUBST(INTLTOOL_XML_RULE) +_IT_SUBST(INTLTOOL_XML_NOMERGE_RULE) +_IT_SUBST(INTLTOOL_CAVES_RULE) +_IT_SUBST(INTLTOOL_SCHEMAS_RULE) +_IT_SUBST(INTLTOOL_THEME_RULE) +_IT_SUBST(INTLTOOL_SERVICE_RULE) +_IT_SUBST(INTLTOOL_POLICY_RULE) + +# Check the gettext tools to make sure they are GNU +AC_PATH_PROG(XGETTEXT, xgettext) +AC_PATH_PROG(MSGMERGE, msgmerge) +AC_PATH_PROG(MSGFMT, msgfmt) +AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) +if test -z "$XGETTEXT" -o -z "$MSGMERGE" -o -z "$MSGFMT"; then + AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) +fi +xgversion="`$XGETTEXT --version|grep '(GNU ' 2> /dev/null`" +mmversion="`$MSGMERGE --version|grep '(GNU ' 2> /dev/null`" +mfversion="`$MSGFMT --version|grep '(GNU ' 2> /dev/null`" +if test -z "$xgversion" -o -z "$mmversion" -o -z "$mfversion"; then + AC_MSG_ERROR([GNU gettext tools not found; required for intltool]) +fi + +AC_PATH_PROG(INTLTOOL_PERL, perl) +if test -z "$INTLTOOL_PERL"; then + AC_MSG_ERROR([perl not found]) +fi +AC_MSG_CHECKING([for perl >= 5.8.1]) +$INTLTOOL_PERL -e "use 5.8.1;" > /dev/null 2>&1 +if test $? -ne 0; then + AC_MSG_ERROR([perl 5.8.1 is required for intltool]) +else + IT_PERL_VERSION=`$INTLTOOL_PERL -e "printf '%vd', $^V"` + AC_MSG_RESULT([$IT_PERL_VERSION]) +fi +if test "x$2" != "xno-xml"; then + AC_MSG_CHECKING([for XML::Parser]) + if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then + AC_MSG_RESULT([ok]) + else + AC_MSG_ERROR([XML::Parser perl module is required for intltool]) + fi +fi + +# Substitute ALL_LINGUAS so we can use it in po/Makefile +AC_SUBST(ALL_LINGUAS) + +# Set DATADIRNAME correctly if it is not set yet +# (copied from glib-gettext.m4) +if test -z "$DATADIRNAME"; then + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], + [[extern int _nl_msg_cat_cntr; + return _nl_msg_cat_cntr]])], + [DATADIRNAME=share], + [case $host in + *-*-solaris*) + dnl On Solaris, if bind_textdomain_codeset is in libc, + dnl GNU format message catalog is always supported, + dnl since both are added to the libc all together. + dnl Hence, we'd like to go with DATADIRNAME=share + dnl in this case. + AC_CHECK_FUNC(bind_textdomain_codeset, + [DATADIRNAME=share], [DATADIRNAME=lib]) + ;; + *) + [DATADIRNAME=lib] + ;; + esac]) +fi +AC_SUBST(DATADIRNAME) + +IT_PO_SUBDIR([po]) + +]) + + +# IT_PO_SUBDIR(DIRNAME) +# --------------------- +# All po subdirs have to be declared with this macro; the subdir "po" is +# declared by IT_PROG_INTLTOOL. +# +AC_DEFUN([IT_PO_SUBDIR], +[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS. +dnl +dnl The following CONFIG_COMMANDS should be executed at the very end +dnl of config.status. +AC_CONFIG_COMMANDS_PRE([ + AC_CONFIG_COMMANDS([$1/stamp-it], [ + if [ ! grep "^# INTLTOOL_MAKEFILE$" "$1/Makefile.in" > /dev/null ]; then + AC_MSG_ERROR([$1/Makefile.in.in was not created by intltoolize.]) + fi + rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp" + >"$1/stamp-it.tmp" + [sed '/^#/d + s/^[[].*] *// + /^[ ]*$/d + '"s|^| $ac_top_srcdir/|" \ + "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES" + ] + [sed '/^POTFILES =/,/[^\\]$/ { + /^POTFILES =/!d + r $1/POTFILES + } + ' "$1/Makefile.in" >"$1/Makefile"] + rm -f "$1/Makefile.tmp" + mv "$1/stamp-it.tmp" "$1/stamp-it" + ]) +])dnl +]) + +# _IT_SUBST(VARIABLE) +# ------------------- +# Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST +# +AC_DEFUN([_IT_SUBST], +[ +AC_SUBST([$1]) +m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) +] +) + +# deprecated macros +AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL]) +# A hint is needed for aclocal from Automake <= 1.9.4: +# AC_DEFUN([AC_PROG_INTLTOOL], ...) + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/spice-gtk-0.12.101/spice-common/Makefile.am new/spice-gtk-0.13/spice-common/Makefile.am --- old/spice-gtk-0.12.101/spice-common/Makefile.am 2012-07-16 17:45:48.000000000 +0200 +++ new/spice-gtk-0.13/spice-common/Makefile.am 2012-08-09 12:49:25.000000000 +0200 @@ -1,7 +1,8 @@ NULL = ACLOCAL_AMFLAGS = -I m4 -SUBDIRS = python_modules common spice-protocol +SUBDIRS = python_modules common +DIST_SUBDIRS = spice-protocol $(SUBDIRS) EXTRA_DIST = \ spice_codegen.py \ -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org