Blame SPECS/freerdp.spec

51757b
%global gittag 2.0.0-rc4
51757b
51757b
# Can be rebuilt with FFmpeg/H264 support enabled by passing "--with=ffmpeg",
51757b
# "--with=x264" or "--with=openh264" to mock/rpmbuild; or by globally setting
51757b
# these variables:
51757b
51757b
#global _with_ffmpeg 1
51757b
#global _with_x264 1
51757b
#global _with_openh264 1
51757b
51757b
# Momentarily disable GSS support
51757b
# https://github.com/FreeRDP/FreeRDP/issues/4348
51757b
#global _with_gss 1
51757b
51757b
# Disable server support in RHEL
51757b
# https://bugzilla.redhat.com/show_bug.cgi?id=1639165
51757b
%{!?rhel:%global _with_server 1}
51757b
51757b
Name:           freerdp
51757b
Version:        2.0.0
51757b
Release:        46.rc4%{?dist}
51757b
Epoch:          2
51757b
Summary:        Free implementation of the Remote Desktop Protocol (RDP)
51757b
License:        ASL 2.0
51757b
URL:            http://www.freerdp.com/
51757b
51757b
Source0:        https://github.com/FreeRDP/FreeRDP/archive/%{gittag}/FreeRDP-%{gittag}.tar.gz
51757b
51757b
BuildRequires:  gcc
51757b
BuildRequires:  gcc-c++
51757b
BuildRequires:  alsa-lib-devel
51757b
BuildRequires:  cmake >= 2.8
51757b
BuildRequires:  cups-devel
51757b
BuildRequires:  gsm-devel
51757b
BuildRequires:  libjpeg-turbo-devel
51757b
BuildRequires:  libX11-devel
51757b
BuildRequires:  libXcursor-devel
51757b
BuildRequires:  libXdamage-devel
51757b
BuildRequires:  libXext-devel
51757b
BuildRequires:  libXi-devel
51757b
BuildRequires:  libXinerama-devel
51757b
BuildRequires:  libxkbfile-devel
51757b
BuildRequires:  libXrandr-devel
51757b
%{?_with_server:BuildRequires:  libXtst-devel}
51757b
BuildRequires:  libXv-devel
51757b
%{?_with_openh264:BuildRequires:  openh264-devel}
51757b
%{?_with_x264:BuildRequires:  x264-devel}
51757b
%{?_with_server:BuildRequires:  pam-devel}
51757b
BuildRequires:  xmlto
51757b
BuildRequires:  zlib-devel
51757b
BuildRequires:  multilib-rpm-config
51757b
51757b
BuildRequires:  pkgconfig(dbus-1)
51757b
BuildRequires:  pkgconfig(dbus-glib-1)
51757b
BuildRequires:  pkgconfig(glib-2.0)
51757b
BuildRequires:  pkgconfig(gstreamer-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-base-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-app-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-audio-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-fft-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-pbutils-1.0)
51757b
BuildRequires:  pkgconfig(gstreamer-video-1.0)
51757b
%{?_with_gss:BuildRequires:  pkgconfig(krb5) >= 1.13}
51757b
BuildRequires:  pkgconfig(libpcsclite)
51757b
BuildRequires:  pkgconfig(libpulse)
51757b
BuildRequires:  pkgconfig(libsystemd)
51757b
BuildRequires:  pkgconfig(openssl)
51757b
BuildRequires:  pkgconfig(wayland-client)
51757b
BuildRequires:  pkgconfig(wayland-scanner)
51757b
BuildRequires:  pkgconfig(xkbcommon)
51757b
51757b
%{?_with_ffmpeg:
51757b
BuildRequires:  pkgconfig(libavcodec) >= 57.48.101
51757b
BuildRequires:  pkgconfig(libavutil)
51757b
}
51757b
51757b
Provides:       xfreerdp = %{version}-%{release}
51757b
Requires:       %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
Requires:       libwinpr%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
51757b
%description
51757b
The xfreerdp & wlfreerdp Remote Desktop Protocol (RDP) clients from the FreeRDP
51757b
project.
51757b
51757b
xfreerdp & wlfreerdp can connect to RDP servers such as Microsoft Windows
51757b
machines, xrdp and VirtualBox.
51757b
51757b
%package        libs
51757b
Summary:        Core libraries implementing the RDP protocol
51757b
Requires:       libwinpr%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
Obsoletes:      %{name}-plugins < 1:1.1.0
51757b
Provides:       %{name}-plugins = %{?epoch}:%{version}-%{release}
51757b
%description    libs
51757b
libfreerdp-core can be embedded in applications.
51757b
51757b
libfreerdp-channels and libfreerdp-kbd might be convenient to use in X
51757b
applications together with libfreerdp-core.
51757b
51757b
libfreerdp-core can be extended with plugins handling RDP channels.
51757b
51757b
%package        devel
51757b
Summary:        Development files for %{name}
51757b
Requires:       %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
Requires:       pkgconfig
51757b
Requires:       cmake >= 2.8
51757b
51757b
%description    devel
51757b
The %{name}-devel package contains libraries and header files for developing
51757b
applications that use %{name}-libs.
51757b
51757b
%{?_with_server:
51757b
%package        server
51757b
Summary:        Server support for %{name}
51757b
Requires:       libwinpr%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
Requires:       %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
51757b
%description    server
51757b
The %{name}-server package contains servers which can export a desktop via
51757b
the RDP protocol.
51757b
}
51757b
51757b
%package -n     libwinpr
51757b
Summary:        Windows Portable Runtime
51757b
Provides:       %{name}-libwinpr = %{?epoch}:%{version}-%{release}
51757b
Obsoletes:      %{name}-libwinpr < %{?epoch}:%{version}-%{release}
51757b
51757b
%description -n libwinpr
51757b
WinPR provides API compatibility for applications targeting non-Windows
51757b
environments. When on Windows, the original native API is being used instead of
51757b
the equivalent WinPR implementation, without having to modify the code using it.
51757b
51757b
%package -n     libwinpr-devel
51757b
Summary:        Windows Portable Runtime development files
51757b
Requires:       libwinpr%{?_isa} = %{?epoch}:%{version}-%{release}
51757b
Requires:       pkgconfig
51757b
Requires:       cmake >= 2.8
51757b
51757b
%description -n libwinpr-devel
51757b
The %{name}-libwinpr-devel package contains libraries and header files for
51757b
developing applications that use %{name}-libwinpr.
51757b
51757b
%prep
51757b
%autosetup -p1 -n FreeRDP-%{gittag}
51757b
51757b
# Rpmlint fixes
51757b
find . -name "*.h" -exec chmod 664 {} \;
51757b
find . -name "*.c" -exec chmod 664 {} \;
51757b
51757b
%build
51757b
%cmake %{?_cmake_skip_rpath} \
51757b
    -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \
51757b
    -DWITH_ALSA=ON \
51757b
    -DWITH_CUPS=ON \
51757b
    -DWITH_CHANNELS=ON -DBUILTIN_CHANNELS=OFF \
51757b
    -DWITH_CLIENT=ON \
51757b
    -DWITH_DIRECTFB=OFF \
51757b
    -DWITH_FFMPEG=%{?_with_ffmpeg:ON}%{?!_with_ffmpeg:OFF} \
51757b
    -DWITH_GSM=ON \
51757b
    -DWITH_GSSAPI=%{?_with_gss:ON}%{?!_with_gss:OFF} \
51757b
    -DWITH_GSTREAMER_1_0=ON -DWITH_GSTREAMER_0_10=OFF \
51757b
    -DGSTREAMER_1_0_INCLUDE_DIRS=%{_includedir}/gstreamer-1.0 \
51757b
    -DWITH_IPP=OFF \
51757b
    -DWITH_JPEG=ON \
51757b
    -DWITH_MANPAGES=ON \
51757b
    -DWITH_OPENH264=%{?_with_openh264:ON}%{?!_with_openh264:OFF} \
51757b
    -DWITH_OPENSSL=ON \
51757b
    -DWITH_PCSC=ON \
51757b
    -DWITH_PULSE=ON \
51757b
    -DWITH_SERVER=%{?_with_server:ON}%{?!_with_server:OFF} \
51757b
    -DWITH_SERVER_INTERFACE=%{?_with_server:ON}%{?!_with_server:OFF} \
51757b
    -DWITH_SHADOW_X11=%{?_with_server:ON}%{?!_with_server:OFF} \
51757b
    -DWITH_SHADOW_MAC=%{?_with_server:ON}%{?!_with_server:OFF} \
51757b
    -DWITH_WAYLAND=ON \
51757b
    -DWITH_X11=ON \
51757b
    -DWITH_X264=%{?_with_x264:ON}%{?!_with_x264:OFF} \
51757b
    -DWITH_XCURSOR=ON \
51757b
    -DWITH_XEXT=ON \
51757b
    -DWITH_XKBFILE=ON \
51757b
    -DWITH_XI=ON \
51757b
    -DWITH_XINERAMA=ON \
51757b
    -DWITH_XRENDER=ON \
51757b
    -DWITH_XTEST=%{?_with_server:ON}%{?!_with_server:OFF} \
51757b
    -DWITH_XV=ON \
51757b
    -DWITH_ZLIB=ON \
51757b
%ifarch x86_64
51757b
    -DWITH_SSE2=ON \
51757b
%else
51757b
    -DWITH_SSE2=OFF \
51757b
%endif
51757b
%ifarch armv7hl
51757b
    -DARM_FP_ABI=hard \
51757b
    -DWITH_NEON=OFF \
51757b
%endif
51757b
%ifarch armv7hnl
51757b
    -DARM_FP_ABI=hard \
51757b
    -DWITH_NEON=ON \
51757b
%endif
51757b
%ifarch armv5tel armv6l armv7l
51757b
    -DARM_FP_ABI=soft \
51757b
    -DWITH_NEON=OFF \
51757b
%endif
51757b
    .
51757b
51757b
make %{?_smp_mflags}
51757b
51757b
pushd winpr/tools/makecert-cli
51757b
make %{?_smp_mflags}
51757b
popd
51757b
51757b
%install
51757b
%make_install
51757b
%make_install COMPONENT=tools
51757b
51757b
find %{buildroot} -name "*.a" -delete
51757b
51757b
%multilib_fix_c_header --file %{_includedir}/freerdp2/freerdp/build-config.h
51757b
51757b
%post libs -p /sbin/ldconfig
51757b
51757b
%postun libs -p /sbin/ldconfig
51757b
51757b
%post -n libwinpr -p /sbin/ldconfig
51757b
51757b
%postun -n libwinpr -p /sbin/ldconfig
51757b
51757b
%files
51757b
%{_bindir}/winpr-hash
51757b
%{_bindir}/winpr-makecert
51757b
%{_bindir}/wlfreerdp
51757b
%{_bindir}/xfreerdp
51757b
%{_mandir}/man1/winpr-hash.1.*
51757b
%{_mandir}/man1/winpr-makecert.1.*
51757b
%{_mandir}/man1/wlfreerdp.1.*
51757b
%{_mandir}/man1/xfreerdp.1.*
51757b
51757b
%files libs
51757b
%license LICENSE
51757b
%doc README ChangeLog
51757b
%{_libdir}/freerdp2/
51757b
%{_libdir}/libfreerdp-client2.so.*
51757b
%{?_with_server:
51757b
%{_libdir}/libfreerdp-server2.so.*
51757b
%{_libdir}/libfreerdp-shadow2.so.*
51757b
%{_libdir}/libfreerdp-shadow-subsystem2.so.*
51757b
}
51757b
%{_libdir}/libfreerdp2.so.*
51757b
%{_libdir}/libuwac0.so.*
51757b
%{_mandir}/man7/wlog.*
51757b
51757b
%files devel
51757b
%{_includedir}/freerdp2
51757b
%{_includedir}/uwac0
51757b
%{_libdir}/cmake/FreeRDP2
51757b
%{_libdir}/cmake/FreeRDP-Client2
51757b
%{?_with_server:
51757b
%{_libdir}/cmake/FreeRDP-Server2
51757b
%{_libdir}/cmake/FreeRDP-Shadow2
51757b
}
51757b
%{_libdir}/cmake/uwac0
51757b
%{_libdir}/libfreerdp-client2.so
51757b
%{?_with_server:
51757b
%{_libdir}/libfreerdp-server2.so
51757b
%{_libdir}/libfreerdp-shadow2.so
51757b
%{_libdir}/libfreerdp-shadow-subsystem2.so
51757b
}
51757b
%{_libdir}/libfreerdp2.so
51757b
%{_libdir}/libuwac0.so
51757b
%{_libdir}/pkgconfig/freerdp2.pc
51757b
%{_libdir}/pkgconfig/freerdp-client2.pc
51757b
%{?_with_server:
51757b
%{_libdir}/pkgconfig/freerdp-server2.pc
51757b
%{_libdir}/pkgconfig/freerdp-shadow2.pc
51757b
}
51757b
%{_libdir}/pkgconfig/uwac0.pc
51757b
51757b
%{?_with_server:
51757b
%files server
51757b
%{_bindir}/freerdp-shadow-cli
51757b
%{_mandir}/man1/freerdp-shadow-cli.1.*
51757b
}
51757b
51757b
%files -n libwinpr
51757b
%{!?_licensedir:%global license %%doc}
51757b
%license LICENSE
51757b
%doc README ChangeLog
51757b
%{_libdir}/libwinpr2.so.*
51757b
%{_libdir}/libwinpr-tools2.so.*
51757b
51757b
%files -n libwinpr-devel
51757b
%{_libdir}/cmake/WinPR2
51757b
%{_includedir}/winpr2
51757b
%{_libdir}/libwinpr2.so
51757b
%{_libdir}/libwinpr-tools2.so
51757b
%{_libdir}/pkgconfig/winpr2.pc
51757b
%{_libdir}/pkgconfig/winpr-tools2.pc
51757b
51757b
%changelog
51757b
* Wed Nov 28 2018 Ondrej Holy <oholy@redhat.com> - 2:2.0.0-46.rc4
51757b
- Update to 2.0.0-rc4 (#1624340)
51757b
51757b
* Mon Oct 15 2018 Ondrej Holy <oholy@redhat.com> - 2:2.0.0-45.rc3
51757b
- Disable server support in RHEL (#1639165)
51757b
51757b
* Wed Oct 10 2018 Ondrej Holy <oholy@redhat.com> - 2:2.0.0-44.rc3
51757b
- Fix packaging issues found by rpmdiff (#1637487)
51757b
51757b
* Tue Sep 25 2018 Ondrej Holy <oholy@redhat.com> - 2:2.0.0-43.rc3
51757b
- Fix important defects found by covscan (#1602500)
51757b
51757b
* Thu Sep 06 2018 Ondrej Holy <oholy@redhat.com> - 2:2.0.0-42.rc3
51757b
- Update to 2.0.0-rc3 (#1624340)
51757b
51757b
* Mon Apr 09 2018 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-41.20180405gita9ecd6a
51757b
- Update to latest snapshot.
51757b
51757b
* Wed Mar 21 2018 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-40.20180320gitde83f4d
51757b
- Add PAM support (fixes freerdp-shadow-cli). Thanks Paolo Zeppegno.
51757b
- Update to latest snapshot.
51757b
51757b
* Thu Mar 15 2018 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-39.20180314gitf8baeb7
51757b
- Update to latest snapshot.
51757b
- Fixes connection to RDP servers with the latest Microsoft patches:
51757b
  https://github.com/FreeRDP/FreeRDP/issues/4449
51757b
51757b
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.0.0-38.20180115git8f52c7e
51757b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
51757b
51757b
* Thu Jan 18 2018 Karsten Hopp <karsten@redhat.com> - 2.0.0-37git}
51757b
- use versioned build requirement on pkgconfig(openssl) to prevent using
51757b
  compat-openssl10-devel instead of openssl-devel
51757b
51757b
* Tue Jan 16 2018 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-36.20180115git8f52c7e
51757b
- Update to latest snapshot.
51757b
- Make GSS support optional and disable it for now (#1534094 and FreeRDP #4348,
51757b
  #1435, #4363).
51757b
51757b
* Wed Dec 20 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-35.20171220gitbfe8359
51757b
- Update to latest snapshot post 2.0.0rc1.
51757b
51757b
* Mon Sep 11 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-34.20170831git3b83526
51757b
- Update to latest snapshot.
51757b
- Trim changelog.
51757b
51757b
* Mon Aug 07 2017 Björn Esser <besser82@fedoraproject.org> - 2:2.0.0-33.20170724gitf8c9f43
51757b
- Rebuilt for AutoReq cmake-filesystem
51757b
51757b
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.0.0-32.20170724gitf8c9f43
51757b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
51757b
51757b
* Thu Jul 27 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-31.20170724gitf8c9f43
51757b
- Update to latest snapshot, Talos security fixes.
51757b
51757b
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.0.0-30.20170710gitf580bea
51757b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
51757b
51757b
* Wed Jul 12 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-29.20170710gitf580bea
51757b
- Update to latest snapshot.
51757b
51757b
* Mon Jun 26 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-28.20170623git9904c32
51757b
- Update to latest snapshot.
51757b
51757b
* Mon May 15 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-27.20170512gitb1df835
51757b
- Update to latest snapshot.
51757b
51757b
* Thu Apr 20 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-26.20170419gitbfcf8e7
51757b
- Update to latest 2.0 snapshot.
51757b
51757b
* Thu Apr 13 2017 Orion Poplawski <orion@cora.nwra.com> - 2:2.0.0-25.20170317git8c68761
51757b
- Install tools via make install
51757b
51757b
* Wed Mar 22 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-24.20170317git8c68761
51757b
- Update to latest snapshot.
51757b
51757b
* Mon Mar 06 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-23.20170302git210de68
51757b
- Remove shared libxfreerdp-client shared library.
51757b
51757b
* Thu Mar 02 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-22.20170302git210de68
51757b
- Move libxfreerdp-client shared object into devel subpackage.
51757b
51757b
* Thu Mar 02 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-21.20170302git210de68
51757b
- Update to latest snapshot.
51757b
- Update build requirements, tune build options.
51757b
51757b
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2:2.0.0-20.20161228git90877f5
51757b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
51757b
51757b
* Mon Jan 09 2017 Simone Caronni <negativo17@gmail.com> - 2:2.0.0-19.20161228git90877f5
51757b
- Update to latest snapshot.