955736b5c0
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
377 lines
10 KiB
RPMSpec
377 lines
10 KiB
RPMSpec
# -*- rpm-spec -*-
|
|
|
|
# This spec file assumes you are building for Fedora 26 or newer,
|
|
# or for RHEL 6 or newer. It may need some tweaks for other distros.
|
|
|
|
%global with_gir 0
|
|
%if 0%{?fedora} || 0%{?rhel} >= 7
|
|
%global with_gir 1
|
|
%endif
|
|
|
|
%global with_gtk2 1
|
|
%if 0%{?rhel} >= 8
|
|
%global with_gtk2 0
|
|
%endif
|
|
|
|
%global with_gtk3 0
|
|
%if 0%{?fedora} || 0%{?rhel} >= 7
|
|
%global with_gtk3 1
|
|
%endif
|
|
|
|
%global with_vala 0
|
|
%if 0%{with_gtk3}
|
|
%global with_vala 1
|
|
%endif
|
|
|
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
|
%global tls_priority "@LIBVIRT,SYSTEM"
|
|
%else
|
|
%global tls_priority "NORMAL"
|
|
%endif
|
|
|
|
Summary: A GTK2 widget for VNC clients
|
|
Name: gtk-vnc
|
|
Version: 0.9.0
|
|
Release: 2%{?dist}%{?extra_release}
|
|
License: LGPLv2+
|
|
Source: http://ftp.gnome.org/pub/GNOME/sources/%{name}/0.5/%{name}-%{version}.tar.xz
|
|
Patch1: 0001-fix-crash-when-connection-fails-early.patch
|
|
URL: https://wiki.gnome.org/Projects/gtk-vnc
|
|
Requires: gvnc = %{version}-%{release}
|
|
%if %{with_gtk2}
|
|
BuildRequires: gtk2-devel >= 2.14
|
|
%endif
|
|
%if 0%{?fedora}
|
|
BuildRequires: python3
|
|
%else
|
|
%if 0%{?rhel} > 7
|
|
BuildRequires: python3-devel
|
|
%else
|
|
BuildRequires: python
|
|
%endif
|
|
%endif
|
|
BuildRequires: gnutls-devel libgcrypt-devel cyrus-sasl-devel zlib-devel intltool
|
|
%if %{with_gir}
|
|
BuildRequires: gobject-introspection-devel
|
|
%endif
|
|
%if %{with_gtk3}
|
|
BuildRequires: gtk3-devel
|
|
%endif
|
|
%if %{with_vala}
|
|
BuildRequires: vala-tools
|
|
%endif
|
|
BuildRequires: pulseaudio-libs-devel
|
|
BuildRequires: /usr/bin/pod2man
|
|
|
|
%description
|
|
gtk-vnc is a VNC viewer widget for GTK2. It is built using coroutines
|
|
allowing it to be completely asynchronous while remaining single threaded.
|
|
|
|
%if %{with_gtk2}
|
|
%package devel
|
|
Summary: Development files to build GTK2 applications with gtk-vnc
|
|
Requires: %{name} = %{version}-%{release}
|
|
Requires: pkgconfig
|
|
Requires: gtk2-devel
|
|
|
|
%description devel
|
|
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
|
|
%endif
|
|
|
|
%package -n gvnc
|
|
Summary: A GObject for VNC connections
|
|
|
|
%description -n gvnc
|
|
gvnc is a GObject for managing a VNC connection. It provides all the
|
|
infrastructure required to build a VNC client without having to deal
|
|
with the raw protocol itself.
|
|
|
|
%package -n gvnc-devel
|
|
Summary: Libraries, includes, etc. to compile with the gvnc library
|
|
Requires: gvnc = %{version}-%{release}
|
|
Requires: pkgconfig
|
|
|
|
%description -n gvnc-devel
|
|
gvnc is a GObject for managing a VNC connection. It provides all the
|
|
infrastructure required to build a VNC client without having to deal
|
|
with the raw protocol itself.
|
|
|
|
Libraries, includes, etc. to compile with the gvnc library
|
|
|
|
%package -n gvncpulse
|
|
Summary: A Pulse Audio bridge for VNC connections
|
|
Requires: gvnc = %{version}-%{release}
|
|
|
|
%description -n gvncpulse
|
|
gvncpulse is a bridge to the Pulse Audio system for VNC.
|
|
It allows VNC clients to play back audio on the local
|
|
system
|
|
|
|
%package -n gvncpulse-devel
|
|
Summary: Libraries, includes, etc. to compile with the gvncpulse library
|
|
Requires: gvncpulse = %{version}-%{release}
|
|
Requires: pkgconfig
|
|
|
|
%description -n gvncpulse-devel
|
|
gvncpulse is a bridge to the Pulse Audio system for VNC.
|
|
It allows VNC clients to play back audio on the local
|
|
system
|
|
|
|
Libraries, includes, etc. to compile with the gvnc library
|
|
|
|
%package -n gvnc-tools
|
|
Summary: Command line VNC tools
|
|
Requires: gvnc = %{version}-%{release}
|
|
|
|
%description -n gvnc-tools
|
|
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
|
|
Requires: gvnc = %{version}-%{release}
|
|
|
|
%description -n gtk-vnc2
|
|
gtk-vnc is a VNC viewer widget for GTK3. 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
|
|
Requires: gtk-vnc2 = %{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 -n gtk-vnc-%{version} -c
|
|
cd gtk-vnc-%{version}
|
|
%patch1 -p1
|
|
cd ..
|
|
|
|
%if %{with_gtk3}
|
|
cp -a gtk-vnc-%{version} gtk-vnc2-%{version}
|
|
%endif
|
|
|
|
%build
|
|
%if %{with_gir}
|
|
%define gir_arg --enable-introspection=yes
|
|
%else
|
|
%define gir_arg --enable-introspection=no
|
|
%endif
|
|
|
|
%if %{with_gtk2}
|
|
cd gtk-vnc-%{version}
|
|
%configure --with-gtk=2.0 %{gir_arg} \
|
|
--with-tls-priority=%{tls_priority}
|
|
%__make %{?_smp_mflags} V=1
|
|
chmod -x examples/*.pl examples/*.js examples/*.py
|
|
cd ..
|
|
%endif
|
|
|
|
%if %{with_gtk3}
|
|
cd gtk-vnc2-%{version}
|
|
|
|
%configure --with-gtk=3.0 %{gir_arg} \
|
|
--with-tls-priority=%{tls_priority}
|
|
%__make %{?_smp_mflags} V=1
|
|
chmod -x examples/*.pl examples/*.js examples/*.py
|
|
cd ..
|
|
%endif
|
|
|
|
%install
|
|
rm -fr %{buildroot}
|
|
%if %{with_gtk2}
|
|
cd gtk-vnc-%{version}
|
|
%__make install DESTDIR=%{buildroot}
|
|
cd ..
|
|
%endif
|
|
|
|
%if %{with_gtk3}
|
|
cd gtk-vnc2-%{version}
|
|
%__make install DESTDIR=%{buildroot}
|
|
cd ..
|
|
%endif
|
|
|
|
rm -f %{buildroot}%{_libdir}/*.a
|
|
rm -f %{buildroot}%{_libdir}/*.la
|
|
|
|
%find_lang %{name}
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
%post -n gvnc -p /sbin/ldconfig
|
|
|
|
%postun -n gvnc -p /sbin/ldconfig
|
|
|
|
%post -n gvncpulse -p /sbin/ldconfig
|
|
|
|
%postun -n gvncpulse -p /sbin/ldconfig
|
|
|
|
%if %{with_gtk3}
|
|
%post -n gtk-vnc2 -p /sbin/ldconfig
|
|
|
|
%postun -n gtk-vnc2 -p /sbin/ldconfig
|
|
%endif
|
|
|
|
%if %{with_gtk2}
|
|
%files
|
|
%{_libdir}/libgtk-vnc-1.0.so.*
|
|
%if %{with_gir}
|
|
%{_libdir}/girepository-1.0/GtkVnc-1.0.typelib
|
|
%endif
|
|
|
|
%files devel
|
|
%doc gtk-vnc-%{version}/examples/gvncviewer.c
|
|
%{_libdir}/libgtk-vnc-1.0.so
|
|
%dir %{_includedir}/%{name}-1.0/
|
|
%{_includedir}/%{name}-1.0/*.h
|
|
%{_libdir}/pkgconfig/%{name}-1.0.pc
|
|
%if %{with_gir}
|
|
%{_datadir}/gir-1.0/GtkVnc-1.0.gir
|
|
%endif
|
|
%endif
|
|
|
|
%files -n gvnc -f %{name}.lang
|
|
%{_libdir}/libgvnc-1.0.so.*
|
|
%if %{with_gir}
|
|
%{_libdir}/girepository-1.0/GVnc-1.0.typelib
|
|
%endif
|
|
%if %{with_vala}
|
|
%{_datadir}/vala/vapi/gvnc-1.0.deps
|
|
%{_datadir}/vala/vapi/gvnc-1.0.vapi
|
|
%endif
|
|
|
|
%files -n gvnc-devel
|
|
%{_libdir}/libgvnc-1.0.so
|
|
%dir %{_includedir}/gvnc-1.0/
|
|
%{_includedir}/gvnc-1.0/*.h
|
|
%{_libdir}/pkgconfig/gvnc-1.0.pc
|
|
%if %{with_gir}
|
|
%{_datadir}/gir-1.0/GVnc-1.0.gir
|
|
%endif
|
|
|
|
%files -n gvncpulse -f %{name}.lang
|
|
%{_libdir}/libgvncpulse-1.0.so.*
|
|
%if %{with_gir}
|
|
%{_libdir}/girepository-1.0/GVncPulse-1.0.typelib
|
|
%endif
|
|
%if %{with_vala}
|
|
%{_datadir}/vala/vapi/gvncpulse-1.0.deps
|
|
%{_datadir}/vala/vapi/gvncpulse-1.0.vapi
|
|
%endif
|
|
|
|
%files -n gvncpulse-devel
|
|
%{_libdir}/libgvncpulse-1.0.so
|
|
%dir %{_includedir}/gvncpulse-1.0/
|
|
%{_includedir}/gvncpulse-1.0/*.h
|
|
%{_libdir}/pkgconfig/gvncpulse-1.0.pc
|
|
%if %{with_gir}
|
|
%{_datadir}/gir-1.0/GVncPulse-1.0.gir
|
|
%endif
|
|
|
|
%files -n gvnc-tools
|
|
%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
|
|
%{_libdir}/libgtk-vnc-2.0.so.*
|
|
%if %{with_gir}
|
|
%{_libdir}/girepository-1.0/GtkVnc-2.0.typelib
|
|
%endif
|
|
%if %{with_vala}
|
|
%{_datadir}/vala/vapi/gtk-vnc-2.0.deps
|
|
%{_datadir}/vala/vapi/gtk-vnc-2.0.vapi
|
|
%endif
|
|
|
|
%files -n gtk-vnc2-devel
|
|
%doc gtk-vnc2-%{version}/examples/gvncviewer.c
|
|
%if %{with_gir}
|
|
%doc gtk-vnc2-%{version}/examples/gvncviewer.js
|
|
%doc gtk-vnc2-%{version}/examples/gvncviewer.pl
|
|
%doc gtk-vnc2-%{version}/examples/gvncviewer.py
|
|
%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 Aug 24 2018 Daniel P. Berrangé <berrange@redhat.com> - 0.9.0-2
|
|
- Fix crash if connection fails early (rhbz #1620203)
|
|
|
|
* Fri Aug 17 2018 Daniel P. Berrangé <berrange@redhat.com> - 0.9.0-1
|
|
- Update to 0.9.0 release
|
|
|
|
* Wed Aug 1 2018 Daniel P. Berrangé <berrange@redhat.com> - 0.8.0-1
|
|
- Update to 0.8.0 release
|
|
|
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
|
* Fri Mar 23 2018 Daniel P. Berrangé <berrange@redhat.com> - 0.7.2-1
|
|
- Rebase to 0.7.2 release
|
|
- Disable python2 sub-RPM
|
|
|
|
* Wed Feb 14 2018 Iryna Shcherbina <ishcherb@redhat.com> - 0.7.1-7
|
|
- Update Python 2 dependency declarations to new packaging standards
|
|
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
|
|
|
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-6
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.7.1-5
|
|
- Add Provides for the old name without %%_isa
|
|
|
|
* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.7.1-4
|
|
- Python 2 binary package renamed to python2-gtk-vnc
|
|
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
|
|
|
|
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
|
* Fri May 19 2017 Daniel P. Berrange <berrange@redhat.com> - 0.7.1-1
|
|
- Update to 0.7.1 release
|
|
- Fix incompatibility with libvncserver/x11vnc (rhbz #1421785)
|
|
|
|
* Thu Feb 9 2017 Daniel P. Berrange <berrange@redhat.com> - 0.7.0-1
|
|
- Update to 0.7.0 release
|
|
- CVE-2017-5884 - fix bounds checking for RRE, hextile and
|
|
copyrect encodings
|
|
- CVE-2017-5885 - fix color map index bounds checking
|
|
|
|
* Thu Oct 6 2016 Daniel P. Berrange <berrange@redhat.com> - 0.6.0-1
|
|
- Update to 0.6.0 release
|
|
|
|
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.4-4
|
|
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
|
|
|
|
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.4-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|