%bcond_with xf86bigfont # XF86BigFont extension
%bcond_with xselinux # SELinux extension
%bcond_without dmx # DMX DDX (Xdmx server)
-%bcond_without wayland # Wayland DDX (Xwayland server)
+%bcond_with wayland # Wayland DDX (Xwayland server) [newer version in xorg-xserver-Xwayland.spec]
+%bcond_without xnest # Xnest DDX (Xnest server)
+%bcond_without xvfb # Xvfb DDX (Xvfb server)
+%bcond_without xephyr # kdrive Xephyr server
+%bcond_with eglstream # XWayland eglstream support
%bcond_without glamor # glamor dix module
%bcond_without systemtap # systemtap/dtrace probes
%bcond_without libunwind # use libunwind for backtracing
# ABI versions, see hw/xfree86/common/xf86Module.h
%define xorg_xserver_server_ansic_abi 0.4
%define xorg_xserver_server_extension_abi 10.0
-%define xorg_xserver_server_font_abi 0.6
-%define xorg_xserver_server_videodrv_abi 23.0
+%define xorg_xserver_server_videodrv_abi 24.1
%define xorg_xserver_server_xinput_abi 24.1
%define pixman_ver 0.30.0
Summary: X.org server
Summary(pl.UTF-8): Serwer X.org
Name: xorg-xserver-server
-Version: 1.19.5
-Release: 1
+Version: 1.20.11
+Release: 4
License: MIT
Group: X11/Servers
-Source0: http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
-# Source0-md5: 4ac6feeae6790436ce9de879ca9a3bf8
+Source0: https://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
+# Source0-md5: a22ccd74a5eee721cad6805e489c7144
Source1: 10-quirks.conf
Source2: xserver.pamd
Source10: %{name}-Xvfb.init
Patch4: %{name}-builtin-SHA1.patch
Patch6: 110_nvidia_slowdow_fix.patch
-URL: http://xorg.freedesktop.org/
-BuildRequires: Mesa-libGL-devel >= 7.8.1
-%{?with_dri2:BuildRequires: Mesa-libGL-devel >= 9.2.0}
-%{?with_glamor:BuildRequires: Mesa-libgbm-devel >= 10.2.0}
+Patch7: platform_probe_crash.patch
+URL: https://xorg.freedesktop.org/
+BuildRequires: Mesa-dri-devel >= 7.8.1
+%{?with_dri2:BuildRequires: Mesa-dri-devel >= 9.2.0}
+%{?with_glamor:BuildRequires: Mesa-libgbm-devel >= 17.1.0}
+BuildRequires: OpenGL-devel >= 3.0
# for glx headers
-BuildRequires: OpenGL-GLX-devel
+BuildRequires: OpenGL-GLX-devel >= 1.3
%{?with_xselinux:BuildRequires: audit-libs-devel}
BuildRequires: autoconf >= 2.60
BuildRequires: automake
%if %{with hal} || %{with dbus}
BuildRequires: dbus-devel >= 1.0
%endif
+%{?with_eglstream:BuildRequires: egl-wayland-devel >= 1.0.2}
%{?with_hal:BuildRequires: hal-devel}
-BuildRequires: libdrm-devel >= 2.4.46
-%if %{with glamor} || %{with wayland}
-BuildRequires: libepoxy-devel
+BuildRequires: libdrm-devel >= 2.4.89
+%if %{with glamor}
+BuildRequires: libepoxy-devel >= 1.5.4
%endif
%{?with_xselinux:BuildRequires: libselinux-devel >= 2.0.86}
+BuildRequires: libtirpc-devel
BuildRequires: libtool >= 2:2.2
%{?with_libunwind:BuildRequires: libunwind-devel}
-BuildRequires: libxcb-devel >= 1.6
+BuildRequires: libxcb-devel >= 1.9.3
BuildRequires: pam-devel
BuildRequires: perl-base
BuildRequires: pixman-devel >= %{pixman_ver}
BuildRequires: pkgconfig >= 1:0.19
+BuildRequires: pkgconfig(gl) >= 1.2
%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
-BuildRequires: systemd-devel >= 209
+BuildRequires: systemd-devel >= 1:209
BuildRequires: udev-devel >= 1:143
# wayland-client
%{?with_wayland:BuildRequires: wayland-devel >= 1.3.0}
-%{?with_wayland:BuildRequires: wayland-protocols >= 1.1}
+%{?with_wayland:BuildRequires: wayland-protocols >= 1.10}
BuildRequires: xcb-util-devel
BuildRequires: xcb-util-image-devel
BuildRequires: xcb-util-keysyms-devel
BuildRequires: xorg-proto-damageproto-devel >= 1.1
%{?with_dmx:BuildRequires: xorg-proto-dmxproto-devel >= 2.2.99.1}
%{?with_dri2:BuildRequires: xorg-proto-dri2proto-devel >= 2.8}
-BuildRequires: xorg-proto-dri3proto-devel >= 1.0
+BuildRequires: xorg-proto-dri3proto-devel >= 1.2
BuildRequires: xorg-proto-fixesproto-devel >= 5.0
BuildRequires: xorg-proto-fontcacheproto-devel
BuildRequires: xorg-proto-fontsproto-devel >= 2.1.3
BuildRequires: xorg-proto-glproto-devel >= 1.4.17
BuildRequires: xorg-proto-inputproto-devel >= 2.3
BuildRequires: xorg-proto-kbproto-devel >= 1.0.3
-BuildRequires: xorg-proto-presentproto-devel >= 1.0
+BuildRequires: xorg-proto-presentproto-devel >= 1.1
BuildRequires: xorg-proto-printproto-devel
-BuildRequires: xorg-proto-randrproto-devel >= 1.5.0
+BuildRequires: xorg-proto-randrproto-devel >= 1.6.0
%{?with_record:BuildRequires: xorg-proto-recordproto-devel >= 1.13.99.1}
BuildRequires: xorg-proto-renderproto-devel >= 0.11
BuildRequires: xorg-proto-resourceproto-devel >= 1.2.0
BuildRequires: xorg-proto-xproto-devel >= 7.0.31
BuildRequires: xorg-sgml-doctools >= 1.8
BuildRequires: xorg-util-util-macros >= 1.14
-#BR: tslib (for KDRIVE only)
-Requires(triggerpostun): sed >= 4.0
-%{?with_glamor:Requires: Mesa-libgbm >= 10.2.0}
-Requires: libdrm >= 2.4.46
+%{?with_glamor:Requires: Mesa-libgbm >= 17.1.0}
+Requires: libdrm >= 2.4.89
+%{?with_glamor:Requires: libepoxy >= 1.5.4}
Requires: pixman >= %{pixman_ver}
+Requires: sed >= 4.0
Requires: udev-libs >= 1:143
Requires: xkeyboard-config
# for rgb.txt
Requires: xorg-lib-libXfont2 >= 2.0.0
Requires: xorg-lib-libpciaccess >= 0.12.901
Requires: xorg-lib-libxshmfence >= 1.1
+# for protocol.txt
+Requires: xorg-xserver-common = %{version}-%{release}
+Suggests: %{name}-tools = %{version}-%{release}
Suggests: dbus-x11 >= 1.0
%{?with_hal:Suggests: hal}
Suggests: udev-acl >= 1:143
Provides: xorg-xserver-module(dri)
Provides: xorg-xserver-server(ansic-abi) = %{xorg_xserver_server_ansic_abi}
Provides: xorg-xserver-server(extension-abi) = %{xorg_xserver_server_extension_abi}
-Provides: xorg-xserver-server(font-abi) = %{xorg_xserver_server_font_abi}
Provides: xorg-xserver-server(videodrv-abi) = %{xorg_xserver_server_videodrv_abi}
Provides: xorg-xserver-server(xinput-abi) = %{xorg_xserver_server_xinput_abi}
Obsoletes: X11-Xserver < 1:7.0.0
Obsoletes: XFree86-Xserver < 1:7.0.0
Obsoletes: XFree86-modules < 1:7.0.0
Obsoletes: XFree86-setup < 1:7.0.0
-Obsoletes: Xserver
-%{?with_glamor:Obsoletes: glamor}
-Obsoletes: xorg-xserver-libdri
-Obsoletes: xorg-xserver-server-xorgcfg
-Obsoletes: xorg-driver-video-modesetting
+Obsoletes: Xserver < 7.0
+%{?with_glamor:Obsoletes: glamor < 0.6.1}
+Obsoletes: xorg-xserver-libdri < 1.12.99
+Obsoletes: xorg-xserver-server-xorgcfg < 1.5.99
+Obsoletes: xorg-driver-video-modesetting < 0.9.1
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%define tirpc_cflags $(pkg-config --cflags libtirpc)
+%define tirpc_libs $(pkg-config --libs libtirpc)
+
%description
Xorg server is a generally used X server which uses display hardware.
It requires proper driver for your display hardware.
Serwer Xorg to podstawowy serwer X wyświetlający obraz na karcie
graficznej. Do działania wymaga odpowiedniego sterownika.
+%package tools
+Summary: Tools to calculate modelines for X.org server
+Summary(pl.UTF-8): Narzędzia do liczenia opisów trybów graficznych (modeline) dla serwera X.org
+Group: X11/Applications
+Conflicts: xorg-xserver-server < 1.20.11-4
+
+%description tools
+Tools to calculate modelines for X.org server (using Coordinated Video
+Timing or Generalized Timing Formula).
+
+%description tools -l pl.UTF-8
+Narzędzia do liczenia opisów trybów graficznych (modeline) dla serwera
+X.org (przy użyciu algorytmów Coordinated Video Timing lub
+Generalizaed Timing Formula).
+
+%package devel
+Summary: Header files for X.org server
+Summary(pl.UTF-8): Pliki nagłówkowe dla serwera X.org
+Group: X11/Development/Libraries
+Requires: Mesa-dri-devel >= 7.8.0
+Requires: libdrm-devel >= 2.4.89
+Requires: pixman-devel >= %{pixman_ver}
+Requires: xorg-lib-libXfont2-devel >= 2.0.0
+Requires: xorg-lib-libpciaccess-devel >= 0.12.901
+Requires: xorg-lib-libxkbfile-devel
+%{?with_dri2:Requires: xorg-proto-dri2proto-devel >= 2.8}
+%{?with_dri3:Requires: xorg-proto-dri3proto-devel >= 1.0}
+Requires: xorg-proto-dri3proto-devel >= 1.0
+Requires: xorg-proto-fontsproto-devel >= 2.1.3
+Requires: xorg-proto-glproto-devel >= 1.4.17
+Requires: xorg-proto-inputproto-devel >= 2.3
+Requires: xorg-proto-kbproto-devel >= 1.0.3
+Requires: xorg-proto-presentproto-devel >= 1.1
+Requires: xorg-proto-randrproto-devel >= 1.6.0
+Requires: xorg-proto-renderproto-devel >= 0.11
+Requires: xorg-proto-resourceproto-devel >= 1.2.0
+Requires: xorg-proto-scrnsaverproto-devel >= 1.1
+Requires: xorg-proto-videoproto-devel
+Requires: xorg-proto-xextproto-devel >= 1:7.3.0
+Requires: xorg-proto-xf86driproto-devel >= 2.1.0
+Requires: xorg-proto-xineramaproto-devel
+Requires: xorg-proto-xproto-devel >= 7.0.31
+Obsoletes: X11-Xserver-devel < 1:7.0.0
+Obsoletes: XFree86-Xserver-devel < 1:7.0.0
+%{?with_glamor:Obsoletes: glamor-devel < 0.6.1}
+
+%description devel
+Header files for X.org server.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe dla serwera X.org.
+
+%package source
+Summary: X.org server source code
+Summary(pl.UTF-8): Pliki źródłowe dla serwera X.org
+Group: X11/Development/Libraries
+
+%description source
+X.org server source code.
+
+%description source -l pl.UTF-8
+Pliki źródłowe dla serwera X.org.
+
+%package -n xorg-xserver-libglx
+Summary: GLX extension library for X.org server
+Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
+Group: X11/Servers
+Requires: %{name} = %{version}-%{release}
+Requires: OpenGL >= 1.2
+# Mesa version glapi tables in glx/ dir come from
+Provides: xorg-xserver-libglx(glapi) = 7.1.0
+Provides: xorg-xserver-module(glx)
+Obsoletes: X11-OpenGL-core < 1:7.0.0
+Obsoletes: XFree86-OpenGL-core < 1:7.0.0
+
+%description -n xorg-xserver-libglx
+GLX extension library for X.org server.
+
+%description -n xorg-xserver-libglx -l pl.UTF-8
+Biblioteka rozszerzenia GLX dla serwera X.org.
+
%package -n xorg-xserver-Xdmx
Summary: Xdmx - distributed multi-head X server
Summary(pl.UTF-8): Xdmx - rozproszony, wielomonitorowy serwer X
%description -n xorg-xserver-Xdmx -l pl.UTF-8
Xdmx - rozproszony, wielomonitorowy serwer X.
+%package -n xorg-xserver-Xephyr
+Summary: Xephyr - nested X server
+Summary(pl.UTF-8): Xephyr - zagnieżdżony serwer X
+Group: X11/Servers
+Requires: OpenGL >= 3.0
+%{?with_glamor:Requires: libepoxy >= 1.5.4}
+Requires: libxcb >= 1.9.3
+Requires: pixman >= %{pixman_ver}
+Requires: xorg-lib-libXfont2 >= 2.0.0
+
+%description -n xorg-xserver-Xephyr
+Xephyr is a kdrive server that outputs to a window on a pre-existing
+'host' X display. Think Xnest but with support for modern extensions
+like composite, damage and randr.
+
+Unlike Xnest which is an X proxy, i.e. limited to the capabilities of
+the host X server, Xephyr is a real X server which uses the host X
+server window as "framebuffer" via fast SHM XImages.
+
+It also has support for 'visually' debugging what the server is
+painting.
+
+%description -n xorg-xserver-Xephyr -l pl.UTF-8
+Xephyr jest serwerem opartym na kdrive wyświetlającym w oknie na
+istniejącym ekranie X. Można o nim myśleć jako o Xnest ze wsparciem do
+wspólczesnych rozszerzeń jak composite, damage i randr.
+
%package -n xorg-xserver-Xnest
Summary: Xnest - nested X server
Summary(pl.UTF-8): Xnest - zagnieżdżony serwer X
Requires: xorg-lib-libXfont2 >= 2.0.0
Obsoletes: X11-Xnest < 1:7.0.0
Obsoletes: XFree86-Xnest < 1:7.0.0
-Obsoletes: Xserver-Xnest
+Obsoletes: Xserver-Xnest < 7.0
%description -n xorg-xserver-Xnest
Xnest is an X Window System server which runs in an X window. Xnest is
для Xnest в той час, як Xnest керує вікнами та графічними запитами для
своїх власних клієнтів.
-%package -n xorg-xserver-Xephyr
-Summary: Xephyr - nested X server
-Summary(pl.UTF-8): Xephyr - zagnieżdżony serwer X
-Group: X11/Servers
-Requires: Mesa-libGL >= 7.1.0
-Requires: libxcb >= 1.6
-Requires: pixman >= %{pixman_ver}
-Requires: xorg-lib-libXfont2 >= 2.0.0
-
-%description -n xorg-xserver-Xephyr
-Xephyr is a kdrive server that outputs to a window on a pre-existing
-'host' X display. Think Xnest but with support for modern extensions
-like composite, damage and randr.
-
-Unlike Xnest which is an X proxy, i.e. limited to the capabilities of
-the host X server, Xephyr is a real X server which uses the host X
-server window as "framebuffer" via fast SHM XImages.
-
-It also has support for 'visually' debugging what the server is
-painting.
-
-%description -n xorg-xserver-Xephyr -l pl.UTF-8
-Xephyr jest serwerem opartym na kdrive wyświetlającym w oknie na
-istniejącym ekranie X. Można o nim myśleć jako o Xnest ze wsparciem do
-wspólczesnych rozszerzeń jak composite, damage i randr.
-
-%package -n xorg-xserver-Xfbdev
-Summary: Xfbdev - Linux framebuffer device X server
-Summary(pl.UTF-8): Xfbdev - serwer X dla framebuffera
-Group: X11/Servers
-Requires: pixman >= %{pixman_ver}
-Requires: xorg-lib-libXfont2 >= 2.0.0
-
-%description -n xorg-xserver-Xfbdev
-Xfbdev is a Linux framebuffer device X server based on the kdrive X
-server.
-
-%description -n xorg-xserver-Xfbdev -l pl.UTF-8
-Xfbdev jest serwerem X dla framebuffera opartym na kdrive.
-
%package -n xorg-xserver-Xvfb
Summary: Xvfb - virtual framebuffer X server
Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
Group: X11/Servers
-Requires: Mesa-libGL >= 7.1.0
+Requires: OpenGL >= 1.2.1
Requires: mktemp
Requires: pixman >= %{pixman_ver}
Requires: util-linux
Summary: Init scripts for Xvfb
Summary(pl.UTF-8): Skrypty startowe dla Xvfb
Group: X11/Servers
-Requires: xorg-xserver-Xvfb
+Requires: xorg-xserver-Xvfb = %{version}-%{release}
%description -n xorg-xserver-Xvfb-init
This package contains init scripts for Xvfb and registers Xvfb as
Summary: Xwayland - X server integrated into a Wayland window system
Summary(pl.UTF-8): Xwayland - serwer X integrowalny w Wayland
Group: X11/Servers
+%{?with_eglstream:Requires: egl-wayland >= 1.0.2}
+%{?with_glamor:Requires: libepoxy >= 1.5.4}
Requires: pixman >= %{pixman_ver}
Requires: xorg-lib-libX11 >= 1.6
Requires: xorg-lib-libXext >= 1.0.99.4
Requires: xorg-lib-libXfont2 >= 2.0.0
Requires: xorg-lib-libXi >= 1.2.99.1
+# for protocol.txt
+Requires: xorg-xserver-common = %{version}-%{release}
%description -n xorg-xserver-Xwayland
Xwayland - server integrated into a Wayland window system.
%description -n xorg-xserver-Xwayland -l pl.UTF-8
Xwayland - serwer X integrowalny w Wayland.
-%package devel
-Summary: Header files for X.org server
-Summary(pl.UTF-8): Pliki nagłówkowe dla serwera X.org
-Group: X11/Development/Libraries
-Requires: Mesa-libGL-devel >= 7.8.0
-Requires: libdrm-devel >= 2.4.46
-Requires: pixman-devel >= %{pixman_ver}
-Requires: xorg-lib-libXfont2-devel >= 2.0.0
-Requires: xorg-lib-libpciaccess-devel >= 0.12.901
-Requires: xorg-lib-libxkbfile-devel
-%{?with_dri2:Requires: xorg-proto-dri2proto-devel >= 2.8}
-%{?with_dri3:Requires: xorg-proto-dri3proto-devel >= 1.0}
-Requires: xorg-proto-dri3proto-devel >= 1.0
-Requires: xorg-proto-fontsproto-devel >= 2.1.3
-Requires: xorg-proto-glproto-devel >= 1.4.17
-Requires: xorg-proto-inputproto-devel >= 2.3
-Requires: xorg-proto-kbproto-devel >= 1.0.3
-Requires: xorg-proto-presentproto-devel >= 1.0
-Requires: xorg-proto-randrproto-devel >= 1.5.0
-Requires: xorg-proto-renderproto-devel >= 0.11
-Requires: xorg-proto-resourceproto-devel >= 1.2.0
-Requires: xorg-proto-scrnsaverproto-devel >= 1.1
-Requires: xorg-proto-videoproto-devel
-Requires: xorg-proto-xextproto-devel >= 1:7.3.0
-Requires: xorg-proto-xf86driproto-devel >= 2.1.0
-Requires: xorg-proto-xineramaproto-devel
-Requires: xorg-proto-xproto-devel >= 7.0.31
-Obsoletes: X11-Xserver-devel < 1:7.0.0
-Obsoletes: XFree86-Xserver-devel < 1:7.0.0
-%{?with_glamor:Obsoletes: glamor-devel}
-
-%description devel
-Header files for X.org server.
-
-%description devel -l pl.UTF-8
-Pliki nagłówkowe dla serwera X.org.
-
-%package source
-Summary: X.org server source code
-Summary(pl.UTF-8): Pliki źródłowe dla serwera X.org
-Group: X11/Development/Libraries
-
-%description source
-X.org server source code.
-
-%description source -l pl.UTF-8
-Pliki źródłowe dla serwera X.org.
-
-%package -n xorg-xserver-libglx
-Summary: GLX extension library for X.org server
-Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
+%package -n xorg-xserver-common
+Summary: Common files for various X servers
+Summary(pl.UTF-8): Pliki wspólne dla serwerów X
Group: X11/Servers
-Requires: %{name} = %{version}-%{release}
-Requires: Mesa-libGL >= 7.1.0
-%{?with_dri2:Requires: Mesa-libGL >= 9.2.0}
-# Mesa version glapi tables in glx/ dir come from
-Provides: xorg-xserver-libglx(glapi) = 7.1.0
-Provides: xorg-xserver-module(glx)
-Obsoletes: X11-OpenGL-core < 1:7.0.0
-Obsoletes: XFree86-OpenGL-core < 1:7.0.0
+Conflicts: xorg-xserver-server < 1.20.11-2
-%description -n xorg-xserver-libglx
-GLX extension library for X.org server.
+%description -n xorg-xserver-common
+Common files for various X servers.
-%description -n xorg-xserver-libglx -l pl.UTF-8
-Biblioteka rozszerzenia GLX dla serwera X.org.
+%description -n xorg-xserver-common -l pl.UTF-8
+Pliki wspólne dla serwerów X.
%prep
%setup -q -n xorg-server-%{version}
%patch4 -p1
%patch6 -p1
+%patch7 -p1
# xserver uses pixman-1 API/ABI so put that explictly here
sed -i -e 's#<pixman\.h#<pixman-1/pixman.h#g' ./fb/fb.h ./include/miscstruct.h ./render/picture.h
# support __filemansuffix__ with "x" suffix (per FHS 2.3)
%{__sed} -i -e 's,\.so man__filemansuffix__/,.so man5/,' hw/xfree86/man/*.man
+%{__sed} -i -e '1s|#!/usr/bin/python$|#!%{__python}|' config/fdi2iclass.py
+
%build
API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
-if [ $API != %{xorg_xserver_server_ansic_abi} ]; then
+if [ "$API" != "%{xorg_xserver_server_ansic_abi}" ]; then
echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
exit 1
fi
API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
-if [ $API != %{xorg_xserver_server_extension_abi} ]; then
+if [ "$API" != "%{xorg_xserver_server_extension_abi}" ]; then
echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
exit 1
fi
-API=$(awk '/#define ABI_FONT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
-if [ $API != %{xorg_xserver_server_font_abi} ]; then
- echo "Set %%define xorg_xserver_server_font_abi to $API and rerun."
- exit 1
-fi
API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
-if [ $API != %{xorg_xserver_server_videodrv_abi} ]; then
+if [ "$API" != "%{xorg_xserver_server_videodrv_abi}" ]; then
echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
exit 1
fi
API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
-if [ $API != %{xorg_xserver_server_xinput_abi} ]; then
+if [ "$API" != "%{xorg_xserver_server_xinput_abi}" ]; then
echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
exit 1
fi
%{__autoheader}
%{__automake}
%configure \
+ CPPFLAGS="%{rpmcppflags} %{tirpc_cflags}" \
+ LIBS="%{tirpc_libs}" \
--libexecdir=%{_libdir}/xorg \
--with-os-name="PLD/Linux" \
--with-os-vendor="PLD/Team" \
--with-xkb-output=/var/lib/xkb \
--disable-linux-acpi \
--disable-linux-apm \
- --enable-aiglx \
%{?with_dbus:--enable-config-dbus} \
--enable-config-hal%{!?with_hal:=no} \
--enable-config-udev%{!?with_udev:=no} \
%{?with_libunwind:--enable-libunwind} \
%{?with_record:--enable-record} \
--enable-secure-rpc \
+ --enable-suid-wrapper \
%{?with_xcsecurity:--enable-xcsecurity} \
- --enable-xephyr \
+ --enable-xephyr%{!?with_xephyr:=no} \
%{?with_xf86bigfont:--enable-xf86bigfont} \
- --disable-xfake \
- --enable-xfbdev \
+ --enable-xnest%{!?with_xnest:=no} \
%{?with_xselinux:--enable-xselinux} \
- %{?with_wayland:--enable-xwayland} \
+ %{!?with_xvfb:--disable-xvfb} \
+ --enable-xwayland%{!?with_wayland:=no} \
+ %{?with_eglstream:--enable-xwayland-eglstream} \
%{!?with_systemtap:--without-dtrace} \
--without-fop \
- --enable-suid-wrapper \
--with-systemd-daemon
-%{__make} -j1
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d/10-quirks.conf
+%if %{with xvfb}
install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
install -d $RPM_BUILD_ROOT/etc/sysconfig
install -p %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/Xvfb
cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/sysconfig/Xvfb
+%endif
# Xorg.wrap config
cat >$RPM_BUILD_ROOT/etc/X11/Xwrapper.config <<EOF
%files
%defattr(644,root,root,755)
-%doc COPYING ChangeLog README
+%doc COPYING ChangeLog README.md
%attr(755,root,root) %{_bindir}/X
%attr(755,root,root) %{_bindir}/Xorg
%attr(4755,root,root) %{_bindir}/Xwrapper
-%attr(755,root,root) %{_bindir}/cvt
-%attr(755,root,root) %{_bindir}/gtf
-%dir %{_libdir}/xorg
-%{_libdir}/xorg/protocol.txt
%attr(755,root,root) %{_libdir}/xorg/Xorg
%attr(4755,root,root) %{_libdir}/xorg/Xorg.wrap
%dir %{_libdir}/xorg/modules
%verify(not md5 mtime size) %{_datadir}/X11/xorg.conf.d/10-quirks.conf
%{_mandir}/man1/Xorg.1*
%{_mandir}/man1/Xorg.wrap.1*
-%{_mandir}/man1/Xserver.1*
-%{_mandir}/man1/cvt.1*
-%{_mandir}/man1/gtf.1*
%{_mandir}/man4/exa.4*
%{_mandir}/man4/fbdevhw.4*
%{_mandir}/man4/modesetting.4*
%{_mandir}/man5/xorg.conf.5*
%{_mandir}/man5/xorg.conf.d.5*
+%files tools
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/cvt
+%attr(755,root,root) %{_bindir}/gtf
+%{_mandir}/man1/cvt.1*
+%{_mandir}/man1/gtf.1*
+
+%files devel
+%defattr(644,root,root,755)
+%doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
+%{_includedir}/xorg
+%{_aclocaldir}/xorg-server.m4
+%{_pkgconfigdir}/xorg-server.pc
+
+%files source
+%defattr(644,root,root,755)
+# keep file perms from install time, but have default defattr to keep adapter happy
+%defattr(-,root,root,755)
+%{_usrsrc}/%{name}-%{version}
+
+%files -n xorg-xserver-libglx
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so
+
%if %{with dmx}
%files -n xorg-xserver-Xdmx
%defattr(644,root,root,755)
%{_mandir}/man1/xdmxconfig.1*
%endif
-%files -n xorg-xserver-Xnest
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/Xnest
-%{_mandir}/man1/Xnest.1*
-
+%if %{with xephyr}
%files -n xorg-xserver-Xephyr
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/Xephyr
%{_mandir}/man1/Xephyr.1*
+%endif
-%files -n xorg-xserver-Xfbdev
+%if %{with xnest}
+%files -n xorg-xserver-Xnest
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/Xfbdev
+%attr(755,root,root) %{_bindir}/Xnest
+%{_mandir}/man1/Xnest.1*
+%endif
+%if %{with xvfb}
%files -n xorg-xserver-Xvfb
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/Xvfb
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/Xvfb
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/Xvfb
+%endif
%if %{with wayland}
%files -n xorg-xserver-Xwayland
%attr(755,root,root) %{_bindir}/Xwayland
%endif
-%files devel
+%files -n xorg-xserver-common
%defattr(644,root,root,755)
-%doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
-%{_includedir}/xorg
-%{_aclocaldir}/xorg-server.m4
-%{_pkgconfigdir}/xorg-server.pc
-
-%files source
-%defattr(644,root,root,755)
-# keep file perms from install time, but have default defattr to keep adapter happy
-%defattr(-,root,root,755)
-%{_usrsrc}/%{name}-%{version}
-
-%files -n xorg-xserver-libglx
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so
+%dir %{_libdir}/xorg
+%{_libdir}/xorg/protocol.txt
+%{_mandir}/man1/Xserver.1*