%global commit 280aac5a0ee09c45b17ec4be0681397f7c34c12e %global shortcommit %(c=%{commit}; echo ${c:0:7}) #global gitdate 20210201 %global pkgname %{?gitdate:xserver}%{!?gitdate:xwayland} %global default_font_path "catalogue:/etc/X11/fontpath.d,built-ins" Summary: Xwayland Name: xorg-x11-server-Xwayland Version: 21.1.1 Release: 3%{?gitdate:.%{gitdate}git%{shortcommit}}%{?dist} URL: http://www.x.org %if 0%{?gitdate} Source0: https://gitlab.freedesktop.org/xorg/%{pkgname}/-/archive/%{commit}/%{pkgname}-%{shortcommit}.tar.gz %else Source0: https://www.x.org/pub/individual/xserver/%{pkgname}-%{version}.tar.xz %endif Patch1: 0001-xwayland-Move-dmabuf-interface-to-common-glamor-code.patch Patch2: 0002-xwayland-move-formats-and-modifiers-functions-to-com.patch Patch3: 0003-xwayland-Add-check_flip-glamor-backend-function.patch Patch4: 0004-xwayland-implement-pixmap_from_buffers-for-the-eglst.patch Patch5: 0005-xwayland-eglstream-fix-X11-rendering-to-flipping-GL-.patch Patch6: 0006-xwayland-eglstream-Check-buffer-creation.patch Patch7: 0007-xwayland-Check-buffer-prior-to-attaching-it.patch Patch8: 0008-glamor-Dump-backtrace-on-GL-error.patch Patch9: 0009-xwayland-glamor-Add-return-status-to-post_damage.patch Patch10: 0010-xwayland-eglstream-Check-framebuffer-status.patch Patch11: 0011-xwayland-eglstream-Small-refactoring.patch Patch12: 0012-xwayland-eglstream-Add-more-error-checking.patch Patch13: 0013-xwayland-eglstream-Dissociate-pending-stream-from-wi.patch Patch14: 0014-xwayland-eglstream-Keep-a-reference-to-the-pixmap.patch Patch15: 0015-xwayland-eglstream-Drop-the-list-of-pending-streams.patch Patch16: 0016-xwayland-eglstream-Do-not-commit-without-surface.patch Patch17: 0017-xwayland-eglstream-Fix-calloc-malloc.patch Patch18: 0018-xwayland-eglstream-Check-eglSwapBuffers.patch Patch19: 0019-xwayland-eglstream-Do-not-always-increment-pixmap-re.patch Patch20: 0020-xwayland-eglstream-Set-ALU-to-GXCopy-for-blitting.patch Patch21: 0021-xwayland-eglstream-allow-commits-to-dma-buf-backed-p.patch Patch22: 0022-xwayland-eglstream-flush-stream-after-eglSwapBuffers.patch Patch23: 0023-xwayland-Add-preferred-GLVND-vendor-to-xwl_screen.patch Patch24: 0024-xwayland-eglstream-Use-nvidia-for-GLVND.patch Patch25: 0025-xwayland-eglstream-Log-when-GL_OES_EGL_image-is-miss.patch Patch26: 0026-glx-don-t-create-implicit-GLXWindow-if-one-already-e.patch Patch27: 0027-glx-Set-ContextTag-for-all-contexts.patch License: MIT Requires: xorg-x11-server-common Requires: libEGL BuildRequires: gcc BuildRequires: git-core BuildRequires: meson BuildRequires: wayland-devel BuildRequires: pkgconfig(wayland-client) >= 1.3.0 BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wayland-eglstream-protocols) BuildRequires: pkgconfig(dmx) BuildRequires: pkgconfig(epoxy) BuildRequires: pkgconfig(fontenc) BuildRequires: pkgconfig(libdrm) >= 2.4.0 BuildRequires: pkgconfig(libssl) BuildRequires: pkgconfig(libtirpc) BuildRequires: pkgconfig(pixman-1) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xau) BuildRequires: pkgconfig(xdmcp) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xfixes) BuildRequires: pkgconfig(xfont2) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xinerama) BuildRequires: pkgconfig(xkbfile) BuildRequires: pkgconfig(xmu) BuildRequires: pkgconfig(xorg-macros) >= 1.17 BuildRequires: pkgconfig(xpm) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(xres) BuildRequires: pkgconfig(xshmfence) >= 1.1 BuildRequires: pkgconfig(xtrans) >= 1.3.2 BuildRequires: pkgconfig(xtst) BuildRequires: pkgconfig(xv) BuildRequires: xorg-x11-proto-devel >= 7.7-10 BuildRequires: mesa-libGL-devel >= 9.2 BuildRequires: mesa-libEGL-devel BuildRequires: mesa-libgbm-devel BuildRequires: audit-libs-devel BuildRequires: libselinux-devel >= 2.0.86-1 # libunwind is Exclusive for the following arches %ifarch aarch64 %{arm} hppa ia64 mips ppc ppc64 %{ix86} x86_64 %if !0%{?rhel} BuildRequires: libunwind-devel %endif %endif BuildRequires: pkgconfig(xcb-aux) BuildRequires: pkgconfig(xcb-image) BuildRequires: pkgconfig(xcb-icccm) BuildRequires: pkgconfig(xcb-keysyms) BuildRequires: pkgconfig(xcb-renderutil) %description Xwayland is an X server for running X clients under Wayland. %package devel Summary: Development package Requires: pkgconfig %description devel The development package provides the developmental files which are necessary for developing Wayland compositors using Xwayland. %prep %autosetup -S git_am -n %{pkgname}-%{?gitdate:%{commit}}%{!?gitdate:%{version}} %build %meson \ -Dxwayland_eglstream=true \ -Ddefault_font_path=%{default_font_path} \ -Dbuilder_string="Build ID: %{name} %{version}-%{release}" \ -Dxkb_output_dir=%{_localstatedir}/lib/xkb \ -Dxcsecurity=true \ -Dglamor=true \ -Ddri3=true %meson_build %install %meson_install # Remove unwanted files/dirs rm $RPM_BUILD_ROOT%{_mandir}/man1/Xserver.1* rm -Rf $RPM_BUILD_ROOT%{_libdir}/xorg rm -Rf $RPM_BUILD_ROOT%{_includedir}/xorg rm -Rf $RPM_BUILD_ROOT%{_datadir}/aclocal rm -Rf $RPM_BUILD_ROOT%{_localstatedir}/lib/xkb %files %{_bindir}/Xwayland %{_mandir}/man1/Xwayland.1* %files devel %{_libdir}/pkgconfig/xwayland.pc %changelog * Mon Jun 14 2021 Olivier Fourdan - 21.1.1-3 - Backport fixes for GLX and EGLstream (#1961981) * Thu Jun 03 2021 Tomas Pelka - 21.1.1-2 - bump release and rebuild to correctly trigger gating * Wed Apr 14 2021 Olivier Fourdan - 21.1.1-1 - xwayland 21.1.1 (CVE-2021-3472 / ZDI-CAN-1259) * Thu Mar 18 2021 Olivier Fourdan - 21.1.0-1 - xwayland 21.1.0 * Thu Mar 4 2021 Olivier Fourdan - 21.0.99.902-1 - xwayland 21.0.99.902 - Remove xdmcp, udev, udev_kms build options - Stop overriding the vendor name, same as xorg-x11-server * Thu Feb 18 2021 Olivier Fourdan - 21.0.99.901-1 - xwayland 21.0.99.901 * Mon Feb 1 2021 Olivier Fourdan - 1.20.99.1-0.1.20210201git5429791 - Initial import (#1912335).