freerdp/freerdp.spec
2019-11-29 21:43:05 +08:00

139 lines
4.9 KiB
RPMSpec

Name: freerdp
Version: 2.0.0
Release: 44.rc3.h4
Epoch: 2
Summary: A Remote Desktop Protocol Implementation
License: ASL 2.0
URL: http://www.freerdp.com
Source0: https://github.com/FreeRDP/FreeRDP/archive/2.0.0-rc3/FreeRDP-2.0.0-rc3.tar.gz
Patch0001: freerdp-aarch64.patch
Patch6000: CVE-2018-8786.patch
Patch6001: CVE-2018-8787.patch
Patch6002: CVE-2018-8788.patch
Patch6003: CVE-2018-8784.patch
Patch6004: CVE-2018-8785.patch
Patch6005: CVE-2018-8789.patch
Patch6006: CVE-2018-1000852.patch
BuildRequires: gcc gcc-c++ alsa-lib-devel cmake >= 2.8 cups-devel gsm-devel libXrandr-devel libXv-devel
BuildRequires: libjpeg-turbo-devel libjpeg-turbo-devel libX11-devel libXcursor-devel libxkbfile-devel
BuildRequires: libXdamage-devel libXext-devel libXi-devel libXinerama-devel libxkbfile-devel pam-devel
BuildRequires: xmlto zlib-devel pkgconfig(dbus-1) pkgconfig(dbus-glib-1) pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(glib-2.0) pkgconfig(gstreamer-base-1.0) pkgconfig(gstreamer-app-1.0)
BuildRequires: pkgconfig(gstreamer-audio-1.0) pkgconfig(gstreamer-fft-1.0) pkgconfig(gstreamer-video-1.0)
BuildRequires: pkgconfig(gstreamer-pbutils-1.0) pkgconfig(libpcsclite) pkgconfig(libpulse)
BuildRequires: pkgconfig(libpulse) pkgconfig(libsystemd) pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(xkbcommon) pkgconfig(openssl) pkgconfig(wayland-client)
Requires: libwinpr = %{?epoch}:%{version}-%{release}
Provides: %{name}-libs = %{?epoch}:%{version}-%{release} xfreerdp = %{version}-%{release}
Provides: %{name}-plugins = %{?epoch}:%{version}-%{release}
Provides: %{name}-server = %{?epoch}:%{version}-%{release}
Obsoletes: %{name}-server < %{?epoch}:%{version}-%{release} %{name}-plugins < 1:1.1.0
Obsoletes: %{name}-libs < %{?epoch}:%{version}-%{release}
%description
FreeRDP is a client implementation of the Remote Desktop Protocol (RDP) that follows Microsoft's
open specifications. This package provides the client applications xfreerdp and wlfreerdp.
%package devel
Summary: Development support for freerdp
Requires: %{name} = %{?epoch}:%{version}-%{release} pkgconfig cmake >= 2.8
%description devel
Development headers and libraries for freerdp-libs.
%package -n libwinpr
Summary: Windows Portable Runtime
Provides: %{name}-libwinpr = %{?epoch}:%{version}-%{release}
Obsoletes: %{name}-libwinpr < %{?epoch}:%{version}-%{release}
%description -n libwinpr
WinPR provides API compatibility for non-Windows applications surroundings.
On Windows, you can use the native API and use it to change the code.
%package -n libwinpr-devel
Summary: Windows Portable Runtime development headers and libraries
Requires: libwinpr = %{?epoch}:%{version}-%{release} pkgconfig cmake >= 2.8
%description -n libwinpr-devel
Development headers and libraries for freerdp-libwinpr.
%package help
Summary: Help documents for freerdp
%description help
Man pages and other related help documents for freerdp.
%prep
%autosetup -p1 -n FreeRDP-2.0.0-rc3
find . -name "*.h" -exec chmod 664 {} \;
find . -name "*.c" -exec chmod 664 {} \;
%build
%cmake %{?_cmake_skip_rpath} \
-DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} -DWITH_ALSA=ON -DWITH_CUPS=ON -DWITH_CHANNELS=ON \
-DBUILTIN_CHANNELS=OFF -DWITH_CLIENT=ON -DWITH_DIRECTFB=OFF -DWITH_FFMPEG=OFF -DWITH_GSM=ON \
-DWITH_GSSAPI=OFF -DWITH_GSTREAMER_1_0=ON -DWITH_GSTREAMER_0_10=OFF \
-DGSTREAMER_1_0_INCLUDE_DIRS=%{_includedir}/gstreamer-1.0 -DWITH_IPP=OFF -DWITH_JPEG=ON \
-DWITH_MANPAGES=ON DWITH_OPENH264=OFF \
-DWITH_OPENSSL=ON -DWITH_PCSC=ON -DWITH_PULSE=ON -DWITH_SERVER=ON -DWITH_SERVER_INTERFACE=ON \
-DWITH_SHADOW_X11=ON -DWITH_SHADOW_MAC=ON -DWITH_WAYLAND=ON -DWITH_X11=ON \
-DWITH_X264=OFF -DWITH_XCURSOR=ON -DWITH_XEXT=ON \
-DWITH_XKBFILE=ON -DWITH_XI=ON -DWITH_X
%make_build
cd winpr/tools/makecert-cli
%make_build
%install
%make_install
%make_install COMPONENT=tools
find %{buildroot} -name "*.a" -delete
%post
/sbin/ldconfig
%postun
/sbin/ldconfig
%post -n libwinpr -p /sbin/ldconfig
%postun -n libwinpr -p /sbin/ldconfig
%files
%license LICENSE
%doc README ChangeLog
%{_libdir}/freerdp2/
%{_bindir}/{winpr-hash,winpr-makecert,wlfreerdp,xfreerdp,freerdp-shadow-cli}
%{_libdir}/{libfreerdp*,libuwac0}.so.*
%files devel
%{_includedir}/{freerdp2,uwac0}
%{_libdir}/cmake/{FreeRDP*,uwac0}
%{_libdir}/{libfreerdp*,libuwac0}.so
%{_libdir}/pkgconfig/{freerdp*,uwac0}.pc
%files -n libwinpr
%{!?_licensedir:%global license %%doc}
%license LICENSE:q!:q
%doc README ChangeLog
%{_libdir}/{libwinpr2.so.*,libwinpr-tools2.so.*}
%files -n libwinpr-devel
%{_libdir}/cmake/WinPR2
%{_includedir}/winpr2
%{_libdir}/{libwinpr2,libwinpr-tools2}.so
%{_libdir}/pkgconfig/{winpr2,winpr-tools2}.pc
%files help
%{_mandir}/*/*
%changelog
* Wed Nov 20 2019 duyeyu <duyeyu@huawei.com> - 0.9.13-44.rc3.h4
- Package init