diff --git a/.gitignore b/.gitignore index df0861c..29f5898 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ .build*.log *.rpm -gtk-vnc-0.4.1.tar.bz2 +/gtk-vnc-0.4.2.tar.bz2 diff --git a/gtk-vnc-0.4.1-close-buffer.patch b/gtk-vnc-0.4.1-close-buffer.patch deleted file mode 100644 index 8b5205f..0000000 --- a/gtk-vnc-0.4.1-close-buffer.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -rup gtk-vnc-0.4.1.orig/src/vncconnection.c gtk-vnc-0.4.1.new/src/vncconnection.c ---- gtk-vnc-0.4.1.orig/src/vncconnection.c 2010-07-14 11:28:15.000000000 +0100 -+++ gtk-vnc-0.4.1.new/src/vncconnection.c 2010-08-06 10:12:27.621989062 +0100 -@@ -4191,7 +4191,12 @@ static void vnc_connection_close(VncConn - priv->name = NULL; - } - -- g_free (priv->xmit_buffer); -+ if (priv->xmit_buffer) { -+ g_free(priv->xmit_buffer); -+ priv->xmit_buffer = NULL; -+ priv->xmit_buffer_size = 0; -+ priv->xmit_buffer_capacity = 0; -+ } - - if (priv->cred_username) { - g_free(priv->cred_username); -Only in gtk-vnc-0.4.1.new/src: vncconnection.c~ diff --git a/gtk-vnc.spec b/gtk-vnc.spec index 4452fe6..5939a1e 100644 --- a/gtk-vnc.spec +++ b/gtk-vnc.spec @@ -10,14 +10,18 @@ %define with_gir 1 %endif -Summary: A GTK widget for VNC clients +%define with_gtk3 0 +%if 0%{fedora} >= 15 +%define with_gtk3 1 +%endif + +Summary: A GTK2 widget for VNC clients Name: gtk-vnc -Version: 0.4.1 -Release: 9%{?dist} +Version: 0.4.2 +Release: 1%{?dist}%{?extra_release} License: LGPLv2+ Group: Development/Libraries Source: http://ftp.gnome.org/pub/GNOME/sources/%{name}/0.4/%{name}-%{version}.tar.bz2 -Patch1: %{name}-%{version}-close-buffer.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) URL: http://live.gnome.org/gtk-vnc BuildRequires: gtk2-devel >= 2.14 @@ -32,6 +36,7 @@ BuildRequires: gobject-introspection-devel BuildRequires: gir-repository-devel %endif %endif +BuildRequires: perl(Text::CSV) %if %{with_plugin} %if 0%{?fedora} > 8 BuildRequires: xulrunner-devel @@ -39,20 +44,23 @@ BuildRequires: xulrunner-devel BuildRequires: firefox-devel %endif %endif +%if %{with_gtk3} +BuildRequires: gtk3-devel +%endif %description -gtk-vnc is a VNC viewer widget for GTK. It is built using coroutines +gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines allowing it to be completely asynchronous while remaining single threaded. %package devel -Summary: Libraries, includes, etc. to compile with the gtk-vnc library +Summary: Development files to build GTK2 applications with gtk-vnc Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig -Requires: gtk2-devel gnutls-devel +Requires: gtk2-devel %description devel -gtk-vnc is a VNC viewer widget for GTK. It is built using coroutines +gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines allowing it to be completely asynchronous while remaining single threaded. Libraries, includes, etc. to compile with the gtk-vnc library @@ -63,7 +71,7 @@ Group: Development/Libraries Requires: %{name} = %{version} %description python -gtk-vnc is a VNC viewer widget for GTK. It is built using coroutines +gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines allowing it to be completely asynchronous while remaining single threaded. A module allowing use of the GTK-VNC widget from python @@ -75,7 +83,7 @@ Group: Development/Libraries Requires: %{name} = %{version} %description plugin -gtk-vnc is a VNC viewer widget for GTK. It is built using coroutines +gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines allowing it to be completely asynchronous while remaining single threaded. This package provides a web browser plugin for Mozilla compatible @@ -112,9 +120,34 @@ Provides useful command line utilities for interacting with VNC servers. Includes the gvnccapture program for capturing screenshots of a VNC desktop +%if %{with_gtk3} +%package -n gtk-vnc2 +Summary: A GTK3 widget for VNC clients +Group: Applications/Internet + +%description -n gtk-vnc2 +gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines +allowing it to be completely asynchronous while remaining single threaded. + +%package -n gtk-vnc2-devel +Summary: Development files to build GTK3 applications with gtk-vnc +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: pkgconfig +Requires: gtk3-devel + +%description -n gtk-vnc2-devel +gtk-vnc is a VNC viewer widget for GTK3. It is built using coroutines +allowing it to be completely asynchronous while remaining single threaded. + +Libraries, includes, etc. to compile with the gtk-vnc library +%endif + %prep -%setup -q -%patch1 -p1 +%setup -q -n gtk-vnc-%{version} -c +%if %{with_gtk3} +cp -a gtk-vnc-%{version} gtk-vnc2-%{version} +%endif %build %if %{with_gir} @@ -129,14 +162,30 @@ screenshots of a VNC desktop %define plugin_arg --enable-plugin=no %endif -%configure %{plugin_arg} %{gir_arg} +cd gtk-vnc-%{version} +%configure --with-gtk=2.0 %{plugin_arg} %{gir_arg} %__make %{?_smp_mflags} V=1 -# Stop RPM picking up a dep on gjs -chmod a-x examples/gvncviewer.js +cd .. + +%if %{with_gtk3} +cd gtk-vnc2-%{version} +%configure --with-gtk=3.0 %{gir_arg} +%__make %{?_smp_mflags} V=1 +cd .. +%endif %install rm -fr %{buildroot} +cd gtk-vnc-%{version} %__make install DESTDIR=%{buildroot} +cd .. + +%if %{with_gtk3} +cd gtk-vnc2-%{version} +%__make install DESTDIR=%{buildroot} +cd .. +%endif + rm -f %{buildroot}%{_libdir}/*.a rm -f %{buildroot}%{_libdir}/*.la rm -f %{buildroot}%{_libdir}/python*/site-packages/*.a @@ -145,6 +194,7 @@ rm -f %{buildroot}%{_libdir}/python*/site-packages/*.la rm -f %{buildroot}%{_libdir}/mozilla/plugins/%{name}-plugin.a rm -f %{buildroot}%{_libdir}/mozilla/plugins/%{name}-plugin.la %endif + %find_lang %{name} %clean @@ -154,9 +204,8 @@ rm -fr %{buildroot} %postun -p /sbin/ldconfig -%files -f %{name}.lang +%files %defattr(-, root, root) -%doc AUTHORS ChangeLog ChangeLog-old NEWS README COPYING.LIB %{_libdir}/libgtk-vnc-1.0.so.* %if %{with_gir} %{_libdir}/girepository-1.0/GtkVnc-1.0.typelib @@ -164,9 +213,9 @@ rm -fr %{buildroot} %files devel %defattr(-, root, root) -%doc examples/gvncviewer.c +%doc gtk-vnc-%{version}/examples/gvncviewer.c %if %{with_gir} -%doc examples/gvncviewer.js +%doc gtk-vnc-%{version}/examples/gvncviewer.js %endif %{_libdir}/libgtk-vnc-1.0.so %dir %{_includedir}/%{name}-1.0/ @@ -178,7 +227,7 @@ rm -fr %{buildroot} %files python %defattr(-, root, root) -%doc examples/gvncviewer.py +%doc gtk-vnc-%{version}/examples/gvncviewer.py %{_libdir}/python*/site-packages/gtkvnc.so %if %{with_plugin} @@ -187,7 +236,7 @@ rm -fr %{buildroot} %{_libdir}/mozilla/plugins/%{name}-plugin.so %endif -%files -n gvnc +%files -n gvnc -f %{name}.lang %defattr(-, root, root) %{_libdir}/libgvnc-1.0.so.* %if %{with_gir} @@ -206,11 +255,44 @@ rm -fr %{buildroot} %files -n gvnc-tools %defattr(-, root, root) -%doc AUTHORS ChangeLog NEWS README COPYING.LIB +%doc gtk-vnc-%{version}/AUTHORS +%doc gtk-vnc-%{version}/ChangeLog +%doc gtk-vnc-%{version}/ChangeLog-old +%doc gtk-vnc-%{version}/NEWS +%doc gtk-vnc-%{version}/README +%doc gtk-vnc-%{version}/COPYING.LIB %{_bindir}/gvnccapture %{_mandir}/man1/gvnccapture.1* +%if %{with_gtk3} +%files -n gtk-vnc2 +%defattr(-, root, root) +%{_libdir}/libgtk-vnc-2.0.so.* +%if %{with_gir} +%{_libdir}/girepository-1.0/GtkVnc-2.0.typelib +%endif + +%files -n gtk-vnc2-devel +%defattr(-, root, root) +%doc gtk-vnc2-%{version}/examples/gvncviewer.c +%if %{with_gir} +%doc gtk-vnc2-%{version}/examples/gvncviewer.js +%endif +%{_libdir}/libgtk-vnc-2.0.so +%dir %{_includedir}/%{name}-2.0/ +%{_includedir}/%{name}-2.0/*.h +%{_libdir}/pkgconfig/%{name}-2.0.pc +%if %{with_gir} +%{_datadir}/gir-1.0/GtkVnc-2.0.gir +%endif +%endif + + %changelog +* Fri Nov 5 2010 Daniel P. Berrange - 0.4.2-1 +- Update to 0.4.2 release. +- Enable experimental GTK3 build + * Mon Oct 18 2010 Colin Walters - 0.4.1-9 - Rebuild to use old pygobject2-python2 API again: https://bugzilla.redhat.com/show_bug.cgi?id=638457 diff --git a/sources b/sources index 4bdeea3..56ddd53 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -61033a0b0130e1e04a8bc2546567ed8c gtk-vnc-0.4.1.tar.bz2 +68fdeb71844c49d5d5ab4f32cbc8bddb gtk-vnc-0.4.2.tar.bz2