2 # - what is libpcsc-winpr? (-DWITH_PCSC_WINPR)
3 # - fix DirectFB client build (orphaned code)
6 %bcond_without alsa # ALSA sound support
7 %bcond_without cups # CUPS printing support
8 %bcond_with directfb # DirectFB client
9 %bcond_without ffmpeg # FFmpeg audio/video decoding support
10 %bcond_without gsm # GSM audio codec
11 %bcond_without gstreamer # GStreamer sound support
12 %bcond_with openh264 # OpenH264 for H.264 codec [only if ffmpeg disabled]
13 %bcond_without pcsc # SmartCard support via PCSC-lite library
14 %bcond_without pulseaudio # Pulseaudio sound support
15 %bcond_without systemd # systemd journal support
16 %bcond_without wayland # Wayland client
17 %bcond_without x11 # X11 client
18 %bcond_with x264 # X264 for H.264 codec [only if ffmpeg and openh264 disabled]
19 %bcond_with sse2 # SSE2 and higher instructions (SSE2 unconditionally in libfreerdp/codec/nsc_sse2.c; elsewhere >=SSE2 runtime detected)
21 %ifarch %{x8664} pentium4
24 Summary: Remote Desktop Protocol client
25 Summary(pl.UTF-8): Klient protokołu RDP
29 %define gitref 06d47530b6501ce09f649814f5023c3dd88ce5a0
31 Release: 0.%{snap}.%{rel}
33 Group: Applications/Communications
34 Source0: https://github.com/FreeRDP/FreeRDP/archive/%{gitref}/freerdp-%{version}-%{snap}.tar.gz
35 # Source0-md5: 9c6e629a7d6c628c8864f747ebd2a193
36 Patch0: freerdp-DirectFB-include.patch
37 Patch1: freerdp-opt.patch
38 Patch2: freerdp-gsm.patch
39 URL: http://www.freerdp.com/
40 %{?with_directfb:BuildRequires: DirectFB-devel}
41 %{?with_alsa:BuildRequires: alsa-lib-devel}
42 BuildRequires: cmake >= 2.8
43 %{?with_cups:BuildRequires: cups-devel}
44 BuildRequires: desktop-file-utils
45 # libavcodec >= 53.25.0, libavutil
46 %{?with_ffmpeg:BuildRequires: ffmpeg-devel >= 0.8}
47 %{?with_gstreamer:BuildRequires: gstreamer-devel >= 1.0.5}
48 %{?with_gstreamer:BuildRequires: gstreamer-plugins-base-devel >= 1.0.5}
49 %{?with_gsm:BuildRequires: libgsm-devel}
50 BuildRequires: libjpeg-devel
51 %{?with_x264:BuildRequires: libx264-devel}
52 %{?with_openh264:BuildRequires: openh264-devel}
53 BuildRequires: openssl-devel
54 %{?with_pcsc:BuildRequires: pcsc-lite-devel}
55 BuildRequires: pkgconfig
56 %{?with_pulseaudio:BuildRequires: pulseaudio-devel}
57 %{?with_systemd:BuildRequires: systemd-devel >= 1:209}
58 %{?with_wayland:BuildRequires: wayland-devel}
61 BuildRequires: xorg-lib-libX11-devel
62 BuildRequires: xorg-lib-libXcursor-devel
63 BuildRequires: xorg-lib-libXdamage-devel
64 BuildRequires: xorg-lib-libXext-devel
65 BuildRequires: xorg-lib-libXfixes-devel
66 BuildRequires: xorg-lib-libXinerama-devel
67 BuildRequires: xorg-lib-libXtst-devel
68 BuildRequires: xorg-lib-libXv-devel
69 BuildRequires: xorg-lib-libxkbfile
71 BuildRequires: zlib-devel
72 Requires: %{name}-libs = %{version}-%{release}
73 Requires: hicolor-icon-theme
74 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76 # Usage: -DWITH_<option>=%{cmake_on_off <bcond_name>}
77 %define cmake_on_off() %{expand:%%{?with_%{1}:ON}%%{!?with_%{1}:OFF}}
80 FreeRDP is Remote Desktop Protocol (RDP) client.
82 xfreerdp can connect to RDP servers such as Microsoft Windows
83 machines, xrdp and VirtualBox.
85 %description -l pl.UTF-8
86 xfreerdp to klient protokołu RDP (Remote Desktop Protocol) z projektu
89 xfreerdp może łączyć się z serwerami RDP, takimi jak maszyny z
90 Microsoft Windows, xrdp oraz VirtualBox.
93 Summary: DirectFB based Remote Desktop Protocol klient
94 Summary(pl.UTF-8): Klient protokołu RDP oparty na DirectFB
95 Group: Applications/Communications
96 Requires: %{name} = %{version}-%{release}
97 Obsoletes: freerdp-dfb < 2
100 DirectFB based Remote Desktop Protocol klient.
102 dfreerdp can connect to RDP servers such as Microsoft Windows
103 machines, xrdp and VirtualBox.
105 %description dfb -l pl.UTF-8
106 Klient protokołu RDP oparty na DirectFB.
108 dfreerdp może łączyć się z serwerami RDP, takimi jak maszyny z
109 Microsoft Windows, xrdp oraz VirtualBox.
112 Summary: Wayland based Remote Desktop Protocol klient
113 Summary(pl.UTF-8): Klient protokołu RDP oparty na Wayland
114 Group: Applications/Communications
115 Requires: %{name} = %{version}-%{release}
118 Wayland based Remote Desktop Protocol klient.
120 wlfreerdp can connect to RDP servers such as Microsoft Windows
121 machines, xrdp and VirtualBox.
123 %description wayland -l pl.UTF-8
124 Klient protokołu RDP oparty na Wayland.
126 wlfreerdp może łączyć się z serwerami RDP, takimi jak maszyny z
127 Microsoft Windows, xrdp oraz VirtualBox.
130 Summary: X11 based Remote Desktop Protocol klient
131 Summary(pl.UTF-8): Klient protokołu RDP oparty na X11
132 Group: Applications/Communications
133 Requires: %{name} = %{version}-%{release}
134 Provides: xfreerdp = %{version}-%{release}
135 Obsoletes: freerdp < 2
138 X11 based Remote Desktop Protocol klient.
140 xfreerdp can connect to RDP servers such as Microsoft Windows
141 machines, xrdp and VirtualBox.
143 %description x11 -l pl.UTF-8
144 Klient protokołu RDP oparty na X11.
146 xfreerdp może łączyć się z serwerami RDP, takimi jak maszyny z
147 Microsoft Windows, xrdp oraz VirtualBox.
150 Summary: Core libraries implementing the RDP protocol
151 Summary(pl.UTF-8): Główne biblioteki implementujące protokół RDP
155 Core libraries implementing the RDP protocol.
157 %description libs -l pl.UTF-8
158 Główne biblioteki implementujące protokół RDP.
161 Summary: Development files for FreeRDP 2 libraries
162 Summary(pl.UTF-8): Pliki programistyczne bibliotek FreeRDP 2
163 Group: Development/Libraries
164 Requires: %{name}-libs = %{version}-%{release}
167 This package contains the header files for developing applications
168 that use FreeRDP 2 libraries.
170 %description devel -l pl.UTF-8
171 Ten pakiet zawiera pliki nagłówkowe do tworzenia aplikacji
172 wykorzystujących biblioteki FreeRDP 2.
175 %setup -q -n FreeRDP-%{gitref}
180 cat << EOF > xfreerdp.desktop
185 Comment=Connect to RDP server and display remote desktop
186 Comment[pl]=Połączenie z serwerem RDP i wyświetlanie zdalnego pulpitu
188 Exec=%{_bindir}/xfreerdp
190 Categories=Network;RemoteAccess;
197 -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \
198 -DWITH_ALSA=%{cmake_on_off alsa} \
200 -DWITH_CUPS=%{cmake_on_off cups} \
201 -DWITH_DIRECTFB=%{cmake_on_off directfb} \
202 -DWITH_FFMPEG=%{cmake_on_off ffmpeg} \
203 -DWITH_GSM=%{cmake_on_off gsm} \
204 -DWITH_GSTREAMER_1_0=%{cmake_on_off gstreamer} \
205 -DWITH_LIBSYSTEMD=%{cmake_on_off systemd} \
206 -DWITH_OPENH264=%{cmake_on_off openh264} \
208 -DWITH_PCSC=%{cmake_on_off pcsc} \
209 -DWITH_PULSE=%{cmake_on_off pulseaudio} \
211 -DWITH_SSE2=%{cmake_on_off sse2} \
212 -DWITH_WAYLAND=%{cmake_on_off wayland} \
213 -DWITH_X11=%{cmake_on_off x11} \
214 -DWITH_X264=%{cmake_on_off x264} \
224 rm -rf $RPM_BUILD_ROOT
226 %{__make} -C build install \
227 INSTALL="install -p" \
228 DESTDIR=$RPM_BUILD_ROOT
230 desktop-file-install --dir=$RPM_BUILD_ROOT%{_desktopdir} xfreerdp.desktop
231 install -p -D resources/FreeRDP_Icon_256px.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/256x256/apps/%{name}.png
234 rm -rf $RPM_BUILD_ROOT
237 %update_icon_cache hicolor
240 %update_icon_cache hicolor
242 %post libs -p /sbin/ldconfig
243 %postun libs -p /sbin/ldconfig
246 %defattr(644,root,root,755)
247 %attr(755,root,root) %{_bindir}/freerdp-shadow-cli
248 %attr(755,root,root) %{_bindir}/winpr-hash
249 %attr(755,root,root) %{_bindir}/winpr-makecert
250 %{_iconsdir}/hicolor/256x256/apps/freerdp2.png
254 %defattr(644,root,root,755)
255 %doc doc/README.directfb
256 %attr(755,root,root) %{_bindir}/dfreerdp
261 %defattr(644,root,root,755)
262 %attr(755,root,root) %{_bindir}/wlfreerdp
267 %defattr(644,root,root,755)
268 %attr(755,root,root) %{_bindir}/xfreerdp
269 %{_desktopdir}/xfreerdp.desktop
270 %{_mandir}/man1/xfreerdp.1*
274 %defattr(644,root,root,755)
275 %doc ChangeLog README
276 %attr(755,root,root) %{_libdir}/libfreerdp-client.so.*.*.*
277 %attr(755,root,root) %ghost %{_libdir}/libfreerdp-client.so.2
278 %attr(755,root,root) %{_libdir}/libfreerdp-server.so.*.*.*
279 %attr(755,root,root) %ghost %{_libdir}/libfreerdp-server.so.2
280 %attr(755,root,root) %{_libdir}/libfreerdp-shadow.so.*.*.*
281 %attr(755,root,root) %ghost %{_libdir}/libfreerdp-shadow.so.2
282 %attr(755,root,root) %{_libdir}/libfreerdp-shadow-subsystem.so.*.*.*
283 %attr(755,root,root) %ghost %{_libdir}/libfreerdp-shadow-subsystem.so.2
284 %attr(755,root,root) %{_libdir}/libfreerdp.so.*.*.*
285 %attr(755,root,root) %ghost %{_libdir}/libfreerdp.so.2
286 %attr(755,root,root) %{_libdir}/libuwac.so.*.*.*
287 %attr(755,root,root) %ghost %{_libdir}/libuwac.so.0
288 %attr(755,root,root) %{_libdir}/libwinpr.so.*.*.*
289 %attr(755,root,root) %ghost %{_libdir}/libwinpr.so.2
290 %attr(755,root,root) %{_libdir}/libwinpr-tools.so.*.*.*
291 %attr(755,root,root) %ghost %{_libdir}/libwinpr-tools.so.2
294 %defattr(644,root,root,755)
295 %attr(755,root,root) %{_libdir}/libfreerdp-client.so
296 %attr(755,root,root) %{_libdir}/libfreerdp-server.so
297 %attr(755,root,root) %{_libdir}/libfreerdp-shadow.so
298 %attr(755,root,root) %{_libdir}/libfreerdp-shadow-subsystem.so
299 %attr(755,root,root) %{_libdir}/libfreerdp.so
300 %attr(755,root,root) %{_libdir}/libuwac.so
301 %attr(755,root,root) %{_libdir}/libwinpr.so
302 %attr(755,root,root) %{_libdir}/libwinpr-tools.so
303 %{_includedir}/freerdp2
305 %{_includedir}/winpr2
306 %{_pkgconfigdir}/freerdp-client2.pc
307 %{_pkgconfigdir}/freerdp-server2.pc
308 %{_pkgconfigdir}/freerdp-shadow2.pc
309 %{_pkgconfigdir}/freerdp2.pc
310 %{_pkgconfigdir}/uwac0.pc
311 %{_pkgconfigdir}/winpr-tools2.pc
312 %{_pkgconfigdir}/winpr2.pc
313 %{_libdir}/cmake/FreeRDP-Client2
314 %{_libdir}/cmake/FreeRDP-Server2
315 %{_libdir}/cmake/FreeRDP-Shadow2
316 %{_libdir}/cmake/FreeRDP2
317 %{_libdir}/cmake/WinPR2
318 %{_libdir}/cmake/uwac0