File spice.spec of Package spice.2695

#
# spec file for package spice
#
# Copyright (c) 2016 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


# Common info
Name:           spice
Version:        0.12.5
Release:        0
Summary:        SPICE client and server library
License:        LGPL-2.1+
Group:          Productivity/Networking/Other
Url:            http://www.spice-space.org/
Source:         http://spice-space.org/download/releases/%{name}-%{version}.tar.bz2
# PATCH-FIX-UPSTREAM spice-Don-t-use-48kHz-for-playback-recording-rates.patch rh#1129961 zaitor@opensuse.org -- Change back to 44100 from 48000. Patch taken from fedora.
Patch0:         spice-Don-t-use-48kHz-for-playback-recording-rates.patch
# PATCH-FIX-UPSTREAM password-length-check.patch boo#931044 cbosdonnat@suse.com -- Don't allow too long passwords
Patch1:         password-length-check.patch
# PATCH-FIX-UPSTREAM cve-2015-3247.patch cbosdonnat@suse.com -- fix cve-2015-3247
Patch2:         cve-2015-3247.patch 
# Fixes for CVE-2015-5260 and CVE-2015-5261
Patch3:         0001-Validate-surface-bounding-box-before-using-it.patch
Patch4:         0001-worker-validate-correctly-surfaces.patch
Patch5:         0002-worker-avoid-double-free-or-double-create-of-surface.patch
Patch6:         0003-Define-a-constant-to-limit-data-from-guest.patch
Patch7:         0004-Fix-some-integer-overflow-causing-large-memory-alloc.patch
Patch8:         0005-Check-properly-surface-to-be-created.patch
Patch9:         0006-Fix-buffer-reading-overflow.patch
Patch10:        0007-Prevent-32-bit-integer-overflow-in-bitmap_consistent.patch
Patch11:        0008-Fix-race-condition-on-red_get_clip_rects.patch
Patch12:        0009-Fix-race-in-red_get_image.patch
Patch13:        0010-Fix-race-condition-in-red_get_string.patch
Patch14:        0011-Fix-integer-overflow-computing-glyph_size-in-red_get.patch
Patch15:        0012-Fix-race-condition-in-red_get_data_chunks_ptr.patch
Patch16:        0013-Prevent-memory-leak-if-red_get_data_chunks_ptr-fails.patch
Patch17:        0014-Prevent-DoS-from-guest-trying-to-allocate-too-much-d.patch
Patch18:        0015-Fix-some-possible-overflows-in-red_get_string-for-32.patch
Patch19:        0016-Make-sure-we-can-read-QXLPathSeg-structures.patch
Patch20:        0017-Avoid-race-condition-copying-segments-in-red_get_pat.patch
Patch21:        0018-Prevent-data_size-to-be-set-independently-from-data.patch
Patch22:        0019-Prevent-leak-if-size-from-red_get_data_chunks-don-t-.patch
Patch23:        CVE-2016-0749-smartcard-add-a-ref-to-item-before-adding-to-pipe.patch
Patch24:        CVE-2016-0749-smartcard-allocate-msg-with-the-expected-size.patch
Patch25:        CVE-2016-2150-create-a-function-to-validate-surface-parameters.patch
Patch26:        CVE-2016-2150-improve-primary-surface-parameter-checks.patch
# Build-time parameters
BuildRequires:  alsa-devel
BuildRequires:  celt051-devel
BuildRequires:  cyrus-sasl-devel
BuildRequires:  gcc-c++
BuildRequires:  libjpeg-devel
BuildRequires:  libopenssl-devel
BuildRequires:  libpixman-1-0-devel >= 0.17.7
BuildRequires:  pkg-config
BuildRequires:  python-pyparsing
BuildRequires:  spice-protocol-devel >= 0.10.1
BuildRequires:  zlib-devel
BuildRequires:  pkgconfig(glib-2.0) >= 2.22
BuildRequires:  pkgconfig(opus)
BuildRequires:  pkgconfig(x11)
BuildRequires:  pkgconfig(xext)
BuildRequires:  pkgconfig(xfixes)
BuildRequires:  pkgconfig(xinerama)
BuildRequires:  pkgconfig(xrandr)
BuildRequires:  pkgconfig(xrender)
# Install-time parameters
Requires:       celt051
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
ExclusiveArch:  %ix86 x86_64

%description
The SPICE package provides the SPICE server library and client.
These components are used to provide access to a remote machine's
display and devices.

%package -n spice-client
Summary:        SPICE client
Group:          Productivity/Networking/Other

%description -n spice-client
The SPICE client provides access to a remote machine's display and devices.

%package -n libspice-server1
Summary:        Library for SPICE-server
Group:          Productivity/Networking/Other

%description -n libspice-server1
Library for SPICE-server
The SPICE server is used to expose a remote machine's display
and devices.

%package -n libspice-server-devel
Summary:        Development files for building SPICE-server
Group:          Development/Languages/C and C++
Requires:       libspice-server1 = %{version}

%description -n libspice-server-devel
Development files for building SPICE-server.
The SPICE server is used to expose a remote machine's display
and devices.

%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1

%build
%configure \
        --disable-static \
        --enable-client \
        --disable-smartcard
 LDFLAGS="-Wl,--as-needed -Wl,--strip-all"
make %{?_smp_mflags}

%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
find %{buildroot} -type f -name "*.la" -delete -print

%post -n libspice-server1 -p /sbin/ldconfig

%postun -n libspice-server1 -p /sbin/ldconfig

%files -n spice-client
%defattr(-,root,root)
%doc AUTHORS COPYING NEWS README
%{_bindir}/spicec

%files -n libspice-server1
%defattr(-,root,root)
%{_libdir}/libspice-server.so.*

%files -n libspice-server-devel
%defattr(-,root,root)
%{_libdir}/pkgconfig/spice-server.pc
%{_includedir}/spice-server/
%{_libdir}/libspice-server.so

%changelog
openSUSE Build Service is sponsored by