# # spec file for package freerdp-nightly # # Copyright (c) 2015 Bernhard Miklautz # # Bugs and comments https://github.com/FreeRDP/FreeRDP/issues %define INSTALL_PREFIX /usr/ # do not add provides for libs provided by this package # or it could possibly mess with system provided packages # which depend on freerdp libs %global __provides_exclude_from ^%{INSTALL_PREFIX}.*$ # do not require our own libs %global __requires_exclude ^(libfreerdp.*|libwinpr).*$ Name: freerdp Version: 3.0.0 Release: 1%{?dist} Epoch: 3 License: ASL 2.0 Summary: Free implementation of the Remote Desktop Protocol (RDP) Url: http://www.freerdp.com Group: Productivity/Networking/Other Source0: https://github.com/FreeRDP/FreeRDP/files/12684201/freerdp-%{version}-beta4.tar.gz #Source1: source_version BuildRequires: gcc-c++ BuildRequires: cmake >= 2.8.12 BuildRequires: libxkbfile-devel BuildRequires: libX11-devel BuildRequires: libXrandr-devel BuildRequires: libXi-devel BuildRequires: libXrender-devel BuildRequires: libXext-devel BuildRequires: libXinerama-devel BuildRequires: libXfixes-devel BuildRequires: libXcursor-devel BuildRequires: libXv-devel BuildRequires: libXdamage-devel BuildRequires: libXtst-devel BuildRequires: cups-devel BuildRequires: cairo-devel BuildRequires: pcsc-lite-devel BuildRequires: uuid-devel BuildRequires: libxml2-devel BuildRequires: zlib-devel BuildRequires: krb5-devel BuildRequires: cjson-devel BuildRequires: libasan BuildRequires: fuse3-devel BuildRequires: SDL2_ttf-devel BuildRequires: webkit2gtk3-devel # (Open)Suse %if %{defined suse_version} BuildRequires: libSDL2-devel BuildRequires: docbook-xsl-stylesheets BuildRequires: libxslt-tools BuildRequires: pkg-config BuildRequires: libopenssl-devel BuildRequires: alsa-devel BuildRequires: libpulse-devel BuildRequires: libusb-1_0-devel BuildRequires: libudev-devel BuildRequires: dbus-1-glib-devel BuildRequires: wayland-devel BuildRequires: libjpeg-devel BuildRequires: libavutil-devel BuildRequires: libavcodec-devel BuildRequires: libswresample-devel %endif # fedora 21+ %if 0%{?fedora} >= 21 || 0%{?rhel} >= 7 BuildRequires: SDL2-devel BuildRequires: docbook-style-xsl BuildRequires: libxslt BuildRequires: pkgconfig BuildRequires: openssl-devel BuildRequires: alsa-lib-devel BuildRequires: pulseaudio-libs-devel BuildRequires: libusbx-devel BuildRequires: systemd-devel BuildRequires: dbus-glib-devel BuildRequires: libjpeg-turbo-devel %endif %if 0%{?fedora} >= 33 BuildRequires: wayland-devel %endif %if 0%{?fedora} >= 36 || 0%{?rhel} >= 9 BuildRequires: ffmpeg-free-devel BuildRequires: wayland-devel %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: xfreerdp = %{?epoch}:%{version}-%{release} Provides: pkgconfig(freerdp3) = %{?epoch}:%{version}-%{release} Obsoletes: freerdp < 3:3.00.0 Obsoletes: xfreerdp < 3:3.00.0 Requires: %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release} Requires: %{name}-libwinpr%{?_isa} = %{?epoch}:%{version}-%{release} Requires: %{name}-librdtk%{?_isa} = %{?epoch}:%{version}-%{release} %description FreeRDP is a open and free implementation of the Remote Desktop Protocol (RDP). This package provides nightly master builds of all components. %package libs Summary: Core libraries implementing the RDP protocol Requires: %{name}-libwinpr%{?_isa} = %{?epoch}:%{version}-%{release} Requires: %{name}-librdtk%{?_isa} = %{?epoch}:%{version}-%{release} Obsoletes: %{name}-plugins < 3:3.00.0 Obsoletes: %{name}-libs < 3:3.00.0 Provides: %{name}-plugins = %{?epoch}:%{version}-%{release} %description libs libfreerdp-core can be embedded in applications. libfreerdp-channels and libfreerdp-kbd might be convenient to use in X applications together with libfreerdp-core. libfreerdp-core can be extended with plugins handling RDP channels. %package devel Summary: Development files for %{name} Group: Development/Libraries/C and C++ Requires: %{name} = %{?epoch}:%{version}-%{release} %description devel This package contains development files necessary for developing applications based on freerdp and winpr. %package libwinpr Summary: Windows Portable Runtime Provides: %{name}-libwinpr = %{?epoch}:%{version}-%{release} Provides: pkgconfig(winpr3) = %{?epoch}:%{version}-%{release} Obsoletes: %{name}-libwinpr < 3:3.00.0 %description libwinpr WinPR provides API compatibility for applications targeting non-Windows environments. When on Windows, the original native API is being used instead of the equivalent WinPR implementation, without having to modify the code using it. %package libwinpr-devel Summary: Windows Portable Runtime development files Requires: libwinpr%{?_isa} = %{?epoch}:%{version}-%{release} Requires: pkgconfig Requires: cmake >= 2.8 %description libwinpr-devel The %{name}-libwinpr-devel package contains libraries and header files for developing applications that use %{name}-libwinpr. %package librdtk Summary: Windows Portable Runtime Provides: %{name}-librdtk = %{?epoch}:%{version}-%{release} Provides: librdtk0 = %{?epoch}:%{version}-%{release} librdtk0.so.0()(64bit) Provides: librdtk0.so.0()(64bit) = %{?epoch}:%{version}-%{release} Obsoletes: %{name}-librdtk < 3:3.00.0 %description librdtk Librdtk new addition to freerdp %package librdtk-devel Summary: Windows Portable Runtime development files Requires: librdtk%{?_isa} = %{?epoch}:%{version}-%{release} Requires: pkgconfig Requires: cmake >= 2.8 %description librdtk-devel The %{name}-librdtk-devel package contains libraries and header files for developing applications that use %{name}-librdtk. %package proxy Summary: Proxy files for %{name} Provides: %{name}-proxy = %{?epoch}:%{version}-%{release} Requires: %{name} = %{?epoch}:%{version}-%{release} Requires: %{name}-proxy-libs = %{?epoch}:%{version}-%{release} %description proxy This package contains proxy files necessary for hooking/filtering certain events/messages. %package proxy-libs Summary: Proxy library files for %{name} Provides: %{name}-proxy-libs = %{?epoch}:%{version}-%{release} %description proxy-libs This package contains proxy library files necessary for hooking/filtering certain events/messages. %package proxy-devel Summary: Proxy lib files for %{name} Requires: %{name}-proxy = %{?epoch}:%{version}-%{release} %description proxy-devel This package contains proxy development files necessary for hooking/filtering certain events/messages. %prep #%setup -q %autosetup -p1 -n freerdp-%{version}-beta4 #cd %{_topdir}/BUILD #cp %{_topdir}/SOURCES/source_version freerdp-%{version}/.source_version # Rpmlint fixes find . -name "*.h" -exec chmod 664 {} \; find . -name "*.c" -exec chmod 664 {} \; %build %cmake %{?_cmake_skip_rpath} \ -DCMAKE_SKIP_RPATH=FALSE \ -DCMAKE_SKIP_INSTALL_RPATH=FALSE \ -DWITH_FREERDP_DEPRECATED_COMMANDLINE=ON \ -DWITH_PULSE=ON \ -DWITH_CHANNELS=ON \ -DWITH_CUPS=ON \ -DWITH_PCSC=ON \ -DWITH_JPEG=ON \ -DWITH_PKCS11=OFF \ %if 0%{?fedora} >= 36 || 0%{?rhel} >= 9 || 0%{?suse_version} -DWITH_FFMPEG=ON \ -DWITH_DSP_FFMPEG=ON \ %endif %if 0%{?fedora} < 21 || 0%{?rhel} < 8 -DWITH_WAYLAND=OFF \ %endif -DWITH_KRB5=ON \ -DCHANNEL_URBDRC=ON \ -DCHANNEL_URBDRC_CLIENT=ON \ -DWITH_SERVER=ON \ -DWITH_CAIRO=ON \ -DBUILD_TESTING=OFF \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_INSTALL_PREFIX=%{INSTALL_PREFIX} \ %if %{defined suse_version} -DCMAKE_NO_BUILTIN_CHRPATH=ON \ %else -DWITH_SANITIZE_ADDRESS=ON \ %endif -DCMAKE_INSTALL_LIBDIR=%{_lib} %if 0%{?fedora} > 32 || 0%{?rhel} >= 9 %cmake_build %else make %{?_smp_mflags} %endif %install find %buildroot -type f \( -name '*.so' -o -name '*.so.*' \) -exec chmod 755 {} + %if %{defined suse_version} %cmake_install %endif %if %{defined fedora} || %{defined rhel} %if 0%{?fedora} > 32 || 0%{?rhel} >= 9 %cmake_install %else rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT %endif %endif find %{buildroot} -name "*.a" -delete export NO_BRP_CHECK_RPATH true %files %defattr(-,root,root) %{_bindir}/freerdp-shadow-cli %{_bindir}/sdl-freerdp %{_bindir}/sfreerdp %{_bindir}/sfreerdp-server %{_bindir}/winpr-hash %{_bindir}/winpr-makecert %{_bindir}/xfreerdp %{_mandir}/man1/* %files libs %defattr(-,root,root) #%license LICENSE #%doc README.md ChangeLog %{_libdir}/libfreerdp-shadow-subsystem3.so.* %{_libdir}/libfreerdp-shadow3.so.* %{_libdir}/libfreerdp-server3.so.* %{_libdir}/libfreerdp-client3.so.* %{_libdir}/libfreerdp3.so.* %{_mandir}/man7/wlog.* %files devel %defattr(-,root,root) %{_libdir}/libfreerdp-shadow-subsystem3.so %{_libdir}/libfreerdp-shadow3.so %{_libdir}/libfreerdp-server3.so %{_libdir}/libfreerdp-client3.so %{_libdir}/libfreerdp3.so %{_includedir}/freerdp3/* %{_libdir}/pkgconfig/freerdp-shadow3.pc %{_libdir}/pkgconfig/freerdp-server3.pc %{_libdir}/pkgconfig/freerdp-client3.pc %{_libdir}/pkgconfig/freerdp3.pc %{_libdir}/cmake/FreeRDP-Shadow3/* %{_libdir}/cmake/FreeRDP-Server3/* %{_libdir}/cmake/FreeRDP-Client3/* %{_libdir}/cmake/FreeRDP3/* %files libwinpr #%license LICENSE #%doc README.md ChangeLog %{_libdir}/libwinpr3.so.* %{_libdir}/libwinpr-tools3.so.* %files libwinpr-devel %{_includedir}/winpr3/* %{_libdir}/pkgconfig/winpr* %{_libdir}/cmake/WinPR3/* %{_libdir}/libwinpr3.so %{_libdir}/libwinpr-tools3.so %files librdtk %defattr(-,root,root) #%license LICENSE #%doc README.md ChangeLog %{_libdir}/librdtk0.so.* %files librdtk-devel %{_includedir}/rdtk0/* %{_libdir}/pkgconfig/rdtk0.pc %{_libdir}/cmake/rdtk0/* %{_libdir}/librdtk0.so %files proxy %defattr(-,root,root) %{_bindir}/freerdp-proxy %files proxy-libs %defattr(-,root,root) %{_libdir}/freerdp3/proxy/* %{_libdir}/libfreerdp-server-proxy3.so.* %files proxy-devel %defattr(-,root,root) %{_libdir}/pkgconfig/freerdp-server-proxy3.pc %{_libdir}/cmake/FreeRDP-Proxy3/* %{_libdir}/libfreerdp-server-proxy3.so %{_bindir}/freerdp-proxy %{_libdir}/libfreerdp-server-proxy3.so %{_libdir}/freerdp3/proxy/*.so %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %changelog * Wed Feb 7 2018 FreeRDP Team - 2.0.0-0 - Update version information and support for OpenSuse 42.1 * Tue Feb 03 2015 FreeRDP Team - 1.2.1-0 - Update version information * Fri Jan 23 2015 Bernhard Miklautz - 1.2.0-0 - Initial version