Blame SPECS/xorg-x11-server.spec

98b35a
# This package is an experiment in active integration of upstream SCM with
98b35a
# Fedora packaging.  It works something like this:
98b35a
#
98b35a
# The "pristine" source is actually a git repo (with no working checkout).
98b35a
# The first step of %%prep is to check it out and switch to a "fedora" branch.
98b35a
# If you need to add a patch to the server, just do it like a normal git
98b35a
# operation, dump it with git-format-patch to a file in the standard naming
98b35a
# format, and add a PatchN: line.  If you want to push something upstream,
98b35a
# check out the master branch, pull, cherry-pick, and push.
98b35a
98b35a
# X.org requires lazy relocations to work.
98b35a
%undefine _hardened_build
98b35a
%undefine _strict_symbol_defs_build
98b35a
98b35a
#global gitdate 20161026
98b35a
%global stable_abi 1
98b35a
98b35a
%if !0%{?gitdate} || %{stable_abi}
98b35a
# Released ABI versions.  Have to keep these manually in sync with the
98b35a
# source because rpm is a terrible language.
98b35a
%global ansic_major 0
98b35a
%global ansic_minor 4
98b35a
%global videodrv_major 24
5269bc
%global videodrv_minor 1
98b35a
%global xinput_major 24
98b35a
%global xinput_minor 1
98b35a
%global extension_major 10
98b35a
%global extension_minor 0
98b35a
%endif
98b35a
98b35a
%if 0%{?gitdate}
98b35a
# For git snapshots, use date for major and a serial number for minor
98b35a
%global minor_serial 0
98b35a
%global git_ansic_major %{gitdate}
98b35a
%global git_ansic_minor %{minor_serial}
98b35a
%global git_videodrv_major %{gitdate}
98b35a
%global git_videodrv_minor %{minor_serial}
98b35a
%global git_xinput_major %{gitdate}
98b35a
%global git_xinput_minor %{minor_serial}
98b35a
%global git_extension_major %{gitdate}
98b35a
%global git_extension_minor %{minor_serial}
98b35a
%endif
98b35a
98b35a
%global pkgname xorg-server
98b35a
98b35a
Summary:   X.Org X11 X server
98b35a
Name:      xorg-x11-server
bd14d3
Version:   1.20.11
3123db
Release:   9%{?gitdate:.%{gitdate}}%{?dist}
98b35a
URL:       http://www.x.org
98b35a
License:   MIT
98b35a
Group:     User Interface/X
98b35a
98b35a
#VCS:      git:git://git.freedesktop.org/git/xorg/xserver
98b35a
%if 0%{?gitdate}
98b35a
# git snapshot.  to recreate, run:
98b35a
# ./make-git-snapshot.sh `cat commitid`
98b35a
Source0:   xorg-server-%{gitdate}.tar.xz
98b35a
#Source0:   http://www.x.org/pub/individual/xserver/%{pkgname}-%{version}.tar.bz2
98b35a
Source1:   make-git-snapshot.sh
98b35a
Source2:   commitid
98b35a
%else
98b35a
Source0:   https://www.x.org/pub/individual/xserver/%{pkgname}-%{version}.tar.bz2
98b35a
Source1:   gitignore
98b35a
%endif
98b35a
98b35a
Source4:   10-quirks.conf
98b35a
98b35a
Source10:   xserver.pamd
98b35a
98b35a
# "useful" xvfb-run script
98b35a
Source20:  http://svn.exactcode.de/t2/trunk/package/xorg/xorg-server/xvfb-run.sh
98b35a
98b35a
# for requires generation in drivers
98b35a
Source30: xserver-sdk-abi-requires.release
98b35a
Source31: xserver-sdk-abi-requires.git
98b35a
98b35a
# maintainer convenience script
98b35a
Source40: driver-abi-rebuild.sh
98b35a
98b35a
# From Debian use intel ddx driver only for gen4 and older chipsets
98b35a
Patch1: 06_use-intel-only-on-pre-gen4.diff
98b35a
# Default to xf86-video-modesetting on GeForce 8 and newer
98b35a
Patch2: 0001-xfree86-use-modesetting-driver-by-default-on-GeForce.patch
98b35a
Patch3: 0001-xf86-dri2-Use-va_gl-as-vdpau_driver-for-Intel-i965-G.patch
98b35a
Patch4: 0001-Always-install-vbe-and-int10-sdk-headers.patch
98b35a
# Submitted upstream, but not going anywhere
98b35a
Patch5: 0001-autobind-GPUs-to-the-screen.patch
98b35a
# because the display-managers are not ready yet, do not upstream
98b35a
Patch6: 0001-Fedora-hack-Make-the-suid-root-wrapper-always-start-.patch
98b35a
98b35a
# RHEL mustard
98b35a
Patch10: 0001-mustard-Don-t-probe-for-drivers-not-shipped-in-RHEL8.patch
3d8d92
Patch11: 0001-mustard-Add-DRI2-fallback-driver-mappings-for-i965-a.patch
98b35a
#Patch11: 0001-Enable-PAM-support.patch
98b35a
Patch12: 0001-link-with-z-now.patch
98b35a
Patch14: 0001-xfree86-Don-t-autoconfigure-vesa-or-fbdev.patch
98b35a
Patch15: 0001-xfree86-LeaveVT-from-xf86CrtcCloseScreen.patch
98b35a
Patch16: 0001-xfree86-try-harder-to-span-on-multihead.patch
98b35a
Patch18: 0001-mustard-Work-around-broken-fbdev-headers.patch
98b35a
98b35a
# fix to be upstreamed
98b35a
Patch100: 0001-linux-Make-platform-device-probe-less-fragile.patch
98b35a
Patch102: 0001-xfree86-ensure-the-readlink-buffer-is-null-terminate.patch
98b35a
98b35a
# fix already upstream
98b35a
Patch200: 0001-Fix-segfault-on-probing-a-non-PCI-platform-device-on.patch
3d8d92
Patch201: 0001-linux-Fix-platform-device-PCI-detection-for-complex-.patch
5269bc
Patch202: 0001-modesetting-Reduce-glamor-initialization-failed-mess.patch
27249d
Patch203: 0001-xfree86-Only-switch-to-original-VT-if-it-is-active.patch
3f8e74
Patch204: 0001-xf86-logind-Fix-drm_drop_master-before-vt_reldisp.patch
3f8e74
Patch205: 0001-present-Check-for-NULL-to-prevent-crash.patch
3f8e74
3f8e74
# CVE-2021-4011
3f8e74
Patch10009: 0001-record-Fix-out-of-bounds-access-in-SwapCreateRegiste.patch
3f8e74
# CVE-2021-4009
3f8e74
Patch10010: 0002-xfixes-Fix-out-of-bounds-access-in-ProcXFixesCreateP.patch
3f8e74
# CVE-2021-4010
3f8e74
Patch10011: 0003-Xext-Fix-out-of-bounds-access-in-SProcScreenSaverSus.patch
3f8e74
# CVE-2021-4008
3f8e74
Patch10012: 0004-render-Fix-out-of-bounds-access-in-SProcRenderCompos.patch
3123db
# CVE-2022-2319/ZDI-CAN-16062, CVE-2022-2320/ZDI-CAN-16070
3123db
Patch10013: 0001-xkb-switch-to-array-index-loops-to-moving-pointers.patch
3123db
Patch10014: 0002-xkb-swap-XkbSetDeviceInfo-and-XkbSetDeviceInfoCheck.patch
3123db
Patch10015: 0003-xkb-add-request-length-validation-for-XkbSetGeometry.patch
98b35a
98b35a
BuildRequires: systemtap-sdt-devel
98b35a
BuildRequires: git
98b35a
BuildRequires: automake autoconf libtool pkgconfig
98b35a
BuildRequires: xorg-x11-util-macros >= 1.17
98b35a
98b35a
BuildRequires: xorg-x11-proto-devel >= 7.7-10
98b35a
BuildRequires: xorg-x11-font-utils >= 7.2-11
98b35a
98b35a
BuildRequires: dbus-devel libepoxy-devel systemd-devel
98b35a
BuildRequires: xorg-x11-xtrans-devel >= 1.3.2
98b35a
BuildRequires: libXfont2-devel libXau-devel libxkbfile-devel libXres-devel
98b35a
BuildRequires: libfontenc-devel libXtst-devel libXdmcp-devel
98b35a
BuildRequires: libX11-devel libXext-devel
98b35a
BuildRequires: libXinerama-devel libXi-devel
98b35a
98b35a
# DMX config utils buildreqs.
98b35a
BuildRequires: libXt-devel libdmx-devel libXmu-devel libXrender-devel
98b35a
BuildRequires: libXi-devel libXpm-devel libXaw-devel libXfixes-devel
98b35a
98b35a
BuildRequires: pkgconfig(epoxy)
98b35a
BuildRequires: pkgconfig(xshmfence) >= 1.1
98b35a
BuildRequires: libXv-devel
98b35a
BuildRequires: pixman-devel >= 0.30.0
98b35a
BuildRequires: libpciaccess-devel >= 0.13.1 openssl-devel bison flex flex-devel
98b35a
BuildRequires: mesa-libGL-devel >= 9.2
98b35a
BuildRequires: mesa-libEGL-devel
98b35a
BuildRequires: mesa-libgbm-devel
98b35a
# XXX silly...
98b35a
BuildRequires: libdrm-devel >= 2.4.0 kernel-headers
98b35a
BuildRequires: pam-devel
98b35a
BuildRequires: audit-libs-devel libselinux-devel >= 2.0.86-1
98b35a
BuildRequires: libudev-devel
98b35a
# libunwind is Exclusive for the following arches
98b35a
%ifarch aarch64 %{arm} hppa ia64 mips ppc ppc64 %{ix86} x86_64
98b35a
%if !0%{?rhel}
98b35a
BuildRequires: libunwind-devel
98b35a
%endif
98b35a
%endif
98b35a
98b35a
BuildRequires: pkgconfig(xcb-aux) pkgconfig(xcb-image) pkgconfig(xcb-icccm)
98b35a
BuildRequires: pkgconfig(xcb-keysyms) pkgconfig(xcb-renderutil)
98b35a
98b35a
%description
98b35a
X.Org X11 X server
98b35a
98b35a
98b35a
%package common
98b35a
Summary: Xorg server common files
98b35a
Group: User Interface/X
98b35a
Requires: pixman >= 0.30.0
98b35a
Requires: xkeyboard-config xkbcomp
98b35a
98b35a
%description common
98b35a
Common files shared among all X servers.
98b35a
98b35a
98b35a
%package Xorg
98b35a
Summary: Xorg X server
98b35a
Group: User Interface/X
98b35a
Provides: Xorg = %{version}-%{release}
98b35a
Provides: Xserver
98b35a
# HdG: This should be moved to the wrapper package once the wrapper gets
98b35a
# its own sub-package:
98b35a
Provides: xorg-x11-server-wrapper = %{version}-%{release}
98b35a
%if !0%{?gitdate} || %{stable_abi}
98b35a
Provides: xserver-abi(ansic-%{ansic_major}) = %{ansic_minor}
98b35a
Provides: xserver-abi(videodrv-%{videodrv_major}) = %{videodrv_minor}
98b35a
Provides: xserver-abi(xinput-%{xinput_major}) = %{xinput_minor}
98b35a
Provides: xserver-abi(extension-%{extension_major}) = %{extension_minor}
98b35a
%endif
98b35a
%if 0%{?gitdate}
98b35a
Provides: xserver-abi(ansic-%{git_ansic_major}) = %{git_ansic_minor}
98b35a
Provides: xserver-abi(videodrv-%{git_videodrv_major}) = %{git_videodrv_minor}
98b35a
Provides: xserver-abi(xinput-%{git_xinput_major}) = %{git_xinput_minor}
98b35a
Provides: xserver-abi(extension-%{git_extension_major}) = %{git_extension_minor}
98b35a
%endif
98b35a
Obsoletes: xorg-x11-glamor < %{version}-%{release}
98b35a
Provides: xorg-x11-glamor = %{version}-%{release}
98b35a
Obsoletes: xorg-x11-drv-modesetting < %{version}-%{release}
98b35a
Provides: xorg-x11-drv-modesetting = %{version}-%{release}
98b35a
# Dropped from F25
98b35a
Obsoletes: xorg-x11-drv-vmmouse < 13.1.0-4
98b35a
98b35a
Requires: xorg-x11-server-common >= %{version}-%{release}
98b35a
Requires: system-setup-keyboard
98b35a
Requires: xorg-x11-drv-libinput
98b35a
%ifnarch s390 s390x
98b35a
Requires: xorg-x11-drv-fbdev
98b35a
%ifarch x86_64
98b35a
Requires: xorg-x11-drv-vesa
98b35a
%endif
98b35a
%endif
98b35a
Requires: libEGL
98b35a
98b35a
%description Xorg
98b35a
X.org X11 is an open source implementation of the X Window System.  It
98b35a
provides the basic low level functionality which full fledged
98b35a
graphical user interfaces (GUIs) such as GNOME and KDE are designed
98b35a
upon.
98b35a
98b35a
98b35a
%package Xnest
98b35a
Summary: A nested server
98b35a
Group: User Interface/X
98b35a
Requires: xorg-x11-server-common >= %{version}-%{release}
98b35a
Provides: Xnest
98b35a
98b35a
%description Xnest
98b35a
Xnest is an X server which has been implemented as an ordinary
98b35a
X application.  It runs in a window just like other X applications,
98b35a
but it is an X server itself in which you can run other software.  It
98b35a
is a very useful tool for developers who wish to test their
98b35a
applications without running them on their real X server.
98b35a
98b35a
98b35a
%package Xdmx
98b35a
Summary: Distributed Multihead X Server and utilities
98b35a
Group: User Interface/X
98b35a
Requires: xorg-x11-server-common >= %{version}-%{release}
98b35a
Provides: Xdmx
98b35a
98b35a
%description Xdmx
98b35a
Xdmx is proxy X server that provides multi-head support for multiple displays
98b35a
attached to different machines (each of which is running a typical X server).
98b35a
When Xinerama is used with Xdmx, the multiple displays on multiple machines
98b35a
are presented to the user as a single unified screen.  A simple application
98b35a
for Xdmx would be to provide multi-head support using two desktop machines,
98b35a
each of which has a single display device attached to it.  A complex
98b35a
application for Xdmx would be to unify a 4 by 4 grid of 1280x1024 displays
98b35a
(each attached to one of 16 computers) into a unified 5120x4096 display.
98b35a
98b35a
98b35a
%package Xvfb
98b35a
Summary: A X Windows System virtual framebuffer X server
98b35a
Group: User Interface/X
98b35a
# xvfb-run is GPLv2, rest is MIT
98b35a
License: MIT and GPLv2
98b35a
Requires: xorg-x11-server-common >= %{version}-%{release}
98b35a
# required for xvfb-run
98b35a
Requires: xorg-x11-xauth
98b35a
Provides: Xvfb
98b35a
98b35a
%description Xvfb
98b35a
Xvfb (X Virtual Frame Buffer) is an X server that is able to run on
98b35a
machines with no display hardware and no physical input devices.
98b35a
Xvfb simulates a dumb framebuffer using virtual memory.  Xvfb does
98b35a
not open any devices, but behaves otherwise as an X display.  Xvfb
98b35a
is normally used for testing servers.
98b35a
98b35a
98b35a
%package Xephyr
98b35a
Summary: A nested server
98b35a
Group: User Interface/X
98b35a
Requires: xorg-x11-server-common >= %{version}-%{release}
98b35a
Provides: Xephyr
98b35a
98b35a
%description Xephyr
98b35a
Xephyr is an X server which has been implemented as an ordinary
98b35a
X application.  It runs in a window just like other X applications,
98b35a
but it is an X server itself in which you can run other software.  It
98b35a
is a very useful tool for developers who wish to test their
98b35a
applications without running them on their real X server.  Unlike
98b35a
Xnest, Xephyr renders to an X image rather than relaying the
98b35a
X protocol, and therefore supports the newer X extensions like
98b35a
Render and Composite.
98b35a
98b35a
98b35a
%package devel
98b35a
Summary: SDK for X server driver module development
98b35a
Group: User Interface/X
98b35a
Requires: xorg-x11-util-macros
98b35a
Requires: xorg-x11-proto-devel
98b35a
Requires: libXfont2-devel
98b35a
Requires: pkgconfig pixman-devel libpciaccess-devel
98b35a
Provides: xorg-x11-server-static
98b35a
Obsoletes: xorg-x11-glamor-devel < %{version}-%{release}
98b35a
Provides: xorg-x11-glamor-devel = %{version}-%{release}
98b35a
98b35a
%description devel
98b35a
The SDK package provides the developmental files which are necessary for
98b35a
developing X server driver modules, and for compiling driver modules
98b35a
outside of the standard X11 source code tree.  Developers writing video
98b35a
drivers, input drivers, or other X modules should install this package.
98b35a
98b35a
98b35a
%package source
98b35a
Summary: Xserver source code required to build VNC server (Xvnc)
98b35a
Group: Development/Libraries
98b35a
BuildArch: noarch
98b35a
98b35a
%description source
98b35a
Xserver source code needed to build VNC server (Xvnc)
98b35a
98b35a
98b35a
%prep
98b35a
%autosetup -N -n %{pkgname}-%{?gitdate:%{gitdate}}%{!?gitdate:%{version}}
98b35a
rm -rf .git
98b35a
cp %{SOURCE1} .gitignore
98b35a
# ick
98b35a
%global __scm git
98b35a
%{expand:%__scm_setup_git -q}
98b35a
%autopatch
98b35a
98b35a
%if 0%{?stable_abi}
98b35a
# check the ABI in the source against what we expect.
98b35a
getmajor() {
98b35a
    grep -i ^#define.ABI.$1_VERSION hw/xfree86/common/xf86Module.h |
98b35a
    tr '(),' '   ' | awk '{ print $4 }'
98b35a
}
98b35a
98b35a
getminor() {
98b35a
    grep -i ^#define.ABI.$1_VERSION hw/xfree86/common/xf86Module.h |
98b35a
    tr '(),' '   ' | awk '{ print $5 }'
98b35a
}
98b35a
98b35a
test `getmajor ansic` == %{ansic_major}
98b35a
test `getminor ansic` == %{ansic_minor}
98b35a
test `getmajor videodrv` == %{videodrv_major}
98b35a
test `getminor videodrv` == %{videodrv_minor}
98b35a
test `getmajor xinput` == %{xinput_major}
98b35a
test `getminor xinput` == %{xinput_minor}
98b35a
test `getmajor extension` == %{extension_major}
98b35a
test `getminor extension` == %{extension_minor}
98b35a
98b35a
%endif
98b35a
98b35a
%build
98b35a
98b35a
export CFLAGS="$RPM_OPT_FLAGS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1"
98b35a
export CXXFLAGS="$RPM_OPT_FLAGS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1"
98b35a
export LDFLAGS="$RPM_LD_FLAGS -specs=/usr/lib/rpm/redhat/redhat-hardened-ld"
98b35a
98b35a
%ifnarch %{ix86} x86_64
98b35a
%global no_int10 --disable-vbe --disable-int10-module
98b35a
%endif
98b35a
98b35a
%global kdrive --enable-kdrive --enable-xephyr --disable-xfake --disable-xfbdev
98b35a
%global xservers --enable-xvfb --enable-xnest %{kdrive} --enable-xorg
98b35a
%global default_font_path "catalogue:/etc/X11/fontpath.d,built-ins"
98b35a
%global dri_flags --enable-dri --enable-dri2 %{?!rhel:--enable-dri3} --enable-suid-wrapper --enable-glamor
98b35a
98b35a
autoreconf -f -v --install || exit 1
98b35a
98b35a
%configure %{xservers} \
98b35a
	--enable-dependency-tracking \
98b35a
	--disable-static \
98b35a
	--with-pic \
98b35a
	%{?no_int10} --with-int10=x86emu \
98b35a
	--with-default-font-path=%{default_font_path} \
98b35a
	--with-module-dir=%{_libdir}/xorg/modules \
98b35a
	--with-builderstring="Build ID: %{name} %{version}-%{release}" \
98b35a
	--with-os-name="$(hostname -s) $(uname -r)" \
98b35a
	--with-xkb-output=%{_localstatedir}/lib/xkb \
98b35a
        --without-dtrace \
98b35a
	--disable-linux-acpi --disable-linux-apm \
98b35a
	--enable-xselinux --enable-record --enable-present \
27249d
        --enable-xcsecurity \
98b35a
	--enable-config-udev \
98b35a
	--disable-unit-tests \
98b35a
	--enable-dmx \
bd14d3
	--disable-xwayland \
98b35a
	%{dri_flags} %{?bodhi_flags} \
98b35a
	${CONFIGURE}
98b35a
        
98b35a
make V=1 %{?_smp_mflags}
98b35a
98b35a
98b35a
%install
98b35a
%make_install
98b35a
98b35a
mkdir -p $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,input}
98b35a
98b35a
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d
98b35a
install -m 644 %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/xserver
98b35a
# restore this if/when restoring the PAM patch
98b35a
#mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/security/console.apps
98b35a
#touch $RPM_BUILD_ROOT%{_sysconfdir}/security/console.apps/xserver
98b35a
98b35a
mkdir -p $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
98b35a
install -m 644 %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
98b35a
98b35a
# make sure the (empty) /etc/X11/xorg.conf.d is there, system-setup-keyboard
98b35a
# relies on it more or less.
98b35a
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/X11/xorg.conf.d
98b35a
98b35a
%if %{stable_abi}
98b35a
install -m 755 %{SOURCE30} $RPM_BUILD_ROOT%{_bindir}/xserver-sdk-abi-requires
98b35a
%else
98b35a
sed -e s/@MAJOR@/%{gitdate}/g -e s/@MINOR@/%{minor_serial}/g %{SOURCE31} > \
98b35a
    $RPM_BUILD_ROOT%{_bindir}/xserver-sdk-abi-requires
98b35a
chmod 755 $RPM_BUILD_ROOT%{_bindir}/xserver-sdk-abi-requires
98b35a
%endif
98b35a
98b35a
install -m 0755 %{SOURCE20} $RPM_BUILD_ROOT%{_bindir}/xvfb-run
98b35a
98b35a
# Make the source package
98b35a
%global xserver_source_dir %{_datadir}/xorg-x11-server-source
98b35a
%global inst_srcdir %{buildroot}/%{xserver_source_dir}
98b35a
98b35a
mkdir -p %{inst_srcdir}/{Xext,xkb,GL,hw/{xquartz/bundle,xfree86/common}}
98b35a
mkdir -p %{inst_srcdir}/{hw/dmx/doc,man,doc,hw/dmx/doxygen}
98b35a
cp {,%{inst_srcdir}/}hw/xquartz/bundle/cpprules.in
98b35a
cp {,%{inst_srcdir}/}man/Xserver.man
98b35a
cp {,%{inst_srcdir}/}doc/smartsched
98b35a
cp {,%{inst_srcdir}/}hw/dmx/doxygen/doxygen.conf.in
98b35a
cp {,%{inst_srcdir}/}xserver.ent.in
98b35a
cp {,%{inst_srcdir}/}hw/xfree86/Xorg.sh.in
98b35a
cp xkb/README.compiled %{inst_srcdir}/xkb
98b35a
cp hw/xfree86/xorgconf.cpp %{inst_srcdir}/hw/xfree86
98b35a
98b35a
find . -type f | egrep '.*\.(c|h|am|ac|inc|m4|h.in|pc.in|man.pre|pl|txt)$' |
98b35a
xargs tar cf - | (cd %{inst_srcdir} && tar xf -)
98b35a
find %{inst_srcdir}/hw/xfree86 -name \*.c -delete
98b35a
98b35a
# Remove unwanted files/dirs
98b35a
{
98b35a
    find $RPM_BUILD_ROOT -type f -name '*.la' | xargs rm -f -- || :
98b35a
%ifnarch %{ix86} x86_64
98b35a
    rm -f $RPM_BUILD_ROOT%{_libdir}/xorg/modules/lib{int10,vbe}.so
98b35a
%endif
98b35a
}
98b35a
98b35a
98b35a
%files common
98b35a
%doc COPYING
98b35a
%{_mandir}/man1/Xserver.1*
98b35a
%{_libdir}/xorg/protocol.txt
98b35a
%dir %{_localstatedir}/lib/xkb
98b35a
%{_localstatedir}/lib/xkb/README.compiled
98b35a
98b35a
%if 1
98b35a
%global Xorgperms %attr(4755, root, root)
98b35a
%else
98b35a
# disable until module loading is audited
98b35a
%global Xorgperms %attr(0711,root,root) %caps(cap_sys_admin,cap_sys_rawio,cap_dac_override=pe)
98b35a
%endif
98b35a
98b35a
# restore the missingok one if/when restoring the PAM patch
98b35a
%files Xorg
98b35a
%config %attr(0644,root,root) %{_sysconfdir}/pam.d/xserver
98b35a
#config(missingok) /etc/security/console.apps/xserver
98b35a
%{_bindir}/X
98b35a
%{_bindir}/Xorg
98b35a
%{_libexecdir}/Xorg
98b35a
%{Xorgperms} %{_libexecdir}/Xorg.wrap
98b35a
%{_bindir}/cvt
98b35a
%{_bindir}/gtf
98b35a
%dir %{_libdir}/xorg
98b35a
%dir %{_libdir}/xorg/modules
98b35a
%dir %{_libdir}/xorg/modules/drivers
98b35a
%{_libdir}/xorg/modules/drivers/modesetting_drv.so
98b35a
%dir %{_libdir}/xorg/modules/extensions
98b35a
%{_libdir}/xorg/modules/extensions/libglx.so
98b35a
%dir %{_libdir}/xorg/modules/input
98b35a
%{_libdir}/xorg/modules/libfbdevhw.so
98b35a
%{_libdir}/xorg/modules/libexa.so
98b35a
%{_libdir}/xorg/modules/libfb.so
98b35a
%{_libdir}/xorg/modules/libglamoregl.so
98b35a
%{_libdir}/xorg/modules/libshadow.so
98b35a
%{_libdir}/xorg/modules/libshadowfb.so
98b35a
%{_libdir}/xorg/modules/libvgahw.so
98b35a
%{_libdir}/xorg/modules/libwfb.so
98b35a
%ifarch %{ix86} x86_64
98b35a
%{_libdir}/xorg/modules/libint10.so
98b35a
%{_libdir}/xorg/modules/libvbe.so
98b35a
%endif
98b35a
%{_mandir}/man1/gtf.1*
98b35a
%{_mandir}/man1/Xorg.1*
98b35a
%{_mandir}/man1/Xorg.wrap.1*
98b35a
%{_mandir}/man1/cvt.1*
98b35a
%{_mandir}/man4/fbdevhw.4*
98b35a
%{_mandir}/man4/exa.4*
98b35a
%{_mandir}/man4/modesetting.4*
98b35a
%{_mandir}/man5/Xwrapper.config.5*
98b35a
%{_mandir}/man5/xorg.conf.5*
98b35a
%{_mandir}/man5/xorg.conf.d.5*
98b35a
%dir %{_sysconfdir}/X11/xorg.conf.d
98b35a
%dir %{_datadir}/X11/xorg.conf.d
98b35a
%{_datadir}/X11/xorg.conf.d/10-quirks.conf
98b35a
98b35a
%files Xnest
98b35a
%{_bindir}/Xnest
98b35a
%{_mandir}/man1/Xnest.1*
98b35a
98b35a
%files Xdmx
98b35a
%{_bindir}/Xdmx
98b35a
%{_bindir}/dmxaddinput
98b35a
%{_bindir}/dmxaddscreen
98b35a
%{_bindir}/dmxreconfig
98b35a
%{_bindir}/dmxresize
98b35a
%{_bindir}/dmxrminput
98b35a
%{_bindir}/dmxrmscreen
98b35a
%{_bindir}/dmxtodmx
98b35a
%{_bindir}/dmxwininfo
98b35a
%{_bindir}/vdltodmx
98b35a
%{_bindir}/dmxinfo
98b35a
%{_bindir}/xdmxconfig
98b35a
%{_mandir}/man1/Xdmx.1*
98b35a
%{_mandir}/man1/dmxtodmx.1*
98b35a
%{_mandir}/man1/vdltodmx.1*
98b35a
%{_mandir}/man1/xdmxconfig.1*
98b35a
98b35a
%files Xvfb
98b35a
%{_bindir}/Xvfb
98b35a
%{_bindir}/xvfb-run
98b35a
%{_mandir}/man1/Xvfb.1*
98b35a
98b35a
%files Xephyr
98b35a
%{_bindir}/Xephyr
98b35a
%{_mandir}/man1/Xephyr.1*
98b35a
98b35a
%files devel
98b35a
%doc COPYING
98b35a
#{_docdir}/xorg-server
98b35a
%{_bindir}/xserver-sdk-abi-requires
98b35a
%{_libdir}/pkgconfig/xorg-server.pc
98b35a
%dir %{_includedir}/xorg
98b35a
%{_includedir}/xorg/*.h
98b35a
%{_datadir}/aclocal/xorg-server.m4
98b35a
98b35a
%files source
98b35a
%{xserver_source_dir}
98b35a
98b35a
98b35a
%changelog
3123db
* Fri Jul 29 2022 Olivier Fourdan <ofourdan@redhat.com> - 1.20.11-9
3123db
- CVE fix for: CVE-2022-2319/ZDI-CAN-16062, CVE-2022-2320/ZDI-CAN-16070
3123db
  Resolves: rhbz#2108156, rhbz#2108161
3123db
3123db
* Thu Jun 09 2022 Ray Strode <rstrode@redhat.com> - 1.20.11-8
3123db
- Rebuild again for ipv6 xtrans fix
3123db
  Related: #2075132
3123db
3123db
* Tue May 24 2022 Ray Strode <rstrode@redhat.com> - 1.20.11-6
3123db
- Rebuild for ipv6 xtrans fix
3123db
  Related: #2075132
3123db
3f8e74
* Fri Jan 28 2022 Olivier Fourdan <ofourdan@redhat.com> - 1.20.11-5
3f8e74
- Fix crash with NVIDIA proprietary driver with Present (#2046329)
3f8e74
3f8e74
* Thu Jan  6 2022 Olivier Fourdan <ofourdan@redhat.com> - 1.20.11-4
3f8e74
- CVE fix for: CVE-2021-4008 (#2030162), CVE-2021-4009 (#2030172),
3f8e74
  CVE-2021-4010 (#2030175), CVE-2021-4011 (#2030181)
3f8e74
3f8e74
* Mon Nov  29 2021 Jocelyn Falempe <jfalempe@redhat.com> - 1.20.11-3
3f8e74
- xf86/logind Fix drm_drop_master before vt_reldis
3f8e74
  Resolves: #1771863
3f8e74
bd14d3
* Wed Jun  9 2021 Olivier Fourdan <ofourdan@redhat.com> - 1.20.11-2
bd14d3
- Remove Xwayland from the xserver builds
bd14d3
  Resolves: #1956838
bd14d3
bd14d3
* Tue Jun  1 2021 Olivier Fourdan <ofourdan@redhat.com> - 1.20.11-1
bd14d3
- xserver 1.20.11
bd14d3
  Resolves: #1954260
bd14d3
27249d
* Thu Dec 10 2020 Adam Jackson <ajax@redhat.com> - 1.20.10-1
27249d
- xserver 1.20.10
27249d
  Resolves: #1891871
27249d
27249d
* Wed Dec  9 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-10
27249d
- modesetting: keep going if a modeset fails on EnterVT
27249d
  Resolves: #1838392
27249d
27249d
* Mon Nov 16 2020 Adam Jackson <ajax@redhat.com> - 1.20.8-9
27249d
- CVE fix for: CVE-2020-14347 (#1862320)
27249d
27249d
* Thu Oct 29 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-8
27249d
- CVE fixes for: CVE-2020-14345 (#1872391), CVE-2020-14346 (#1872395),
27249d
  CVE-2020-14361 (#1872402), CVE-2020-14362 (#1872409)
27249d
27249d
* Tue Oct 27 2020 Adam Jackson <ajax@redhat.com> - 1.20.8-7
27249d
- Enable XC-SECURITY
27249d
  Resolves: #1863142
27249d
27249d
* Thu Aug 20 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-6
27249d
- xfree86: add drm modes on non-GTF panels
27249d
  Resolves: #1823461
27249d
27249d
* Tue Aug  4 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-5
27249d
- xwayland: Hold a pixmap reference in struct xwl_present_event
27249d
  Related: #1728684
27249d
- glamor: Fix glamor_poly_fill_rect_gl xRectangle::width/height handling
27249d
  Resolves: #1740250
27249d
27249d
* Fri Jul 10 2020 Ray Strode <rstrode@redhat.com> - 1.20.8-4
27249d
- Don't switch VTs in the exit path, if killed on inactive VT
27249d
  Related: #1618481
27249d
5269bc
* Fri Jun 26 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-3
5269bc
- Downgrade modesetting "glamor initialization failed" X_ERROR → X_INFO
5269bc
  Resolves: #1724573
5269bc
- Xwayland / Present leak fixes for #1728684
5269bc
5269bc
* Wed Jun 10 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.8-2
5269bc
- Re-enable Xwayland Present support
5269bc
  Resolves: #1728684, #1715676
5269bc
- Remove unused patch
5269bc
5269bc
* Tue May 26 2020 Adam Jackson <ajax@redhat.com> - 1.20.8-1
5269bc
- xserver 1.20.8
5269bc
5269bc
* Tue Feb 11 2020 Michel Dänzer <mdaenzer@redhat.com> - 1.20.6-3
5269bc
- Add fix for crash with Option "Rotate" in xorg.conf
5269bc
  Resolves: #1795328
5269bc
3d8d92
* Wed Dec 11 2019 Michel Dänzer <mdaenzer@redhat.com> - 1.20.6-2
3d8d92
- Add fixes for intermittent modesetting artifacts
3d8d92
  Resolves: #1738670
3d8d92
3d8d92
* Mon Dec  9 2019 Olivier Fourdan <ofourdan@redhat.com> - 1.20.6-1
3d8d92
- xserver 1.20.6
3d8d92
3d8d92
* Tue Sep 03 2019 Adam Jackson <ajax@redhat.com> - 1.20.3-11
3d8d92
- Add DRI2 fallback driver mappings for i965 and radeonsi
3d8d92
3d8d92
* Mon Aug 19 2019 Adam Jackson <ajax@redhat.com> - 1.20.3-10
3d8d92
- Backport glvnd vendor selection for prime render offloading
3d8d92
3d8d92
* Fri Jul 12 2019 Adam Jackson <ajax@redhat.com> - 1.20.3-8
3d8d92
- Fix platform device PCI detection for complex bus topologies
3d8d92
3d8d92
* Wed Apr 10 2019 Adam Jackson <ajax@redhat.com> - 1.20.3-7
98b35a
- Don't require fbdev on s390x, where it doesn't exist
98b35a
3d8d92
* Wed Apr 03 2019 Adam Jackson <ajax@redhat.com> - 1.20.3-6
98b35a
- Add Requires: fbdev (and on x86_64, vesa) to Xorg subpackage
98b35a
98b35a
* Mon Jan 14 2019 Ben Crocker <bcrocker@redhat.com> - 1.20.3-5
98b35a
- Add Eric Anholt's patch e50c85f4ebf559 from upstream:
98b35a
- Fix segfault on probing a non-PCI platform device on a system with PCI
98b35a
- NOTE: also pertains on a system with no PCI, e.g. s390x.
98b35a
  Resolves: #1652013
98b35a
98b35a
* Mon Jan 07 2019 Olivier Fourdan <ofourdan@redhat.com> - 1.20.3-4
98b35a
- Move LeaveVT after resetting randr pointers in xf86CrtcCloseScreen
98b35a
98b35a
* Mon Nov 19 2018 Adam Jackson <ajax@redhat.com> - 1.20.3-3
98b35a
- Apply even more -z now and -pie
98b35a
98b35a
* Mon Nov 19 2018 Ray Strode <rstrode@redhat.com> - 1.20.3-2
98b35a
- Fix crash in Xephyr on server reset
98b35a
  Resolves: #1650168
98b35a
98b35a
* Tue Nov 13 2018 Adam Jackson <ajax@redhat.com> - 1.20.3-1
98b35a
- xserver 1.20.3
98b35a
- Also forget about DRI driver names for drivers we're not shipping
98b35a
98b35a
* Fri Oct 26 2018 Adam Jackson <ajax@redhat.com> - 1.20.2-5
98b35a
- Work around broken fbdev headers
98b35a
98b35a
* Mon Oct 22 2018 Adam Jackson <ajax@redhat.com> - 1.20.2-4
98b35a
- Back out the PAM patch, may not be necessary in 8
98b35a
98b35a
* Wed Oct 17 2018 Peter Hutterer <peter.hutterer@redhat.com> 1.20.2-3
98b35a
- Backport fix for readlink call from master
98b35a
98b35a
* Tue Oct 16 2018 Adam Jackson <ajax@redhat.com> - 1.20.2-2
98b35a
- Avoid drmSetInterfaceVersion in platform device probe
98b35a
- Backport a misparenthesis fix from master
98b35a
98b35a
* Mon Oct 15 2018 Adam Jackson <ajax@redhat.com> - 1.20.2-1
98b35a
- xserver 1.20.2
98b35a
98b35a
* Mon Oct 15 2018 Olivier Fourdan <ofourdan@redhat.com>> - 1.20.1-4
98b35a
- Some more RHEL mustard:
98b35a
  - Disable Present support in Xwayland (rhbz#1638463)
98b35a
98b35a
* Fri Oct 12 2018 Adam Jackson <ajax@redhat.com> - 1.20.1-3
98b35a
- Assorted RHEL mustard:
98b35a
  - Don't probe for drivers we're not shipping
98b35a
  - Enable PAM
98b35a
  - Link Xorg with -z now
98b35a
  - Nerf modesetting's atomic ioctl support
98b35a
  - Don't autoconfigure vesa or fbdev from X -configure
98b35a
  - Call LeaveVT on RANDR's CloseScreen path so we drop drm master
98b35a
  - Try harder to get initial spanning desktop if the output's
98b35a
    preferred mode was filtered away
98b35a
- Sync va_gl/vdpau patch from F29
98b35a
98b35a
* Thu Sep 13 2018 Dave Airlie <airlied@redhat.com> - 1.20.1-2
98b35a
- build with PIE flags
98b35a
98b35a
* Thu Aug 09 2018 Adam Jackson <ajax@redhat.com> - 1.20.1-1
98b35a
- xserver 1.20.1
98b35a
98b35a
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.20.0-5
98b35a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
98b35a
98b35a
* Tue Jun 12 2018 Adam Jackson <ajax@redhat.com> - 1.20.0-4
98b35a
- Xorg and Xwayland Requires: libEGL
98b35a
98b35a
* Fri Jun 01 2018 Adam Williamson <awilliam@redhat.com> - 1.20.0-3
98b35a
- Backport fixes for RHBZ#1579067
98b35a
98b35a
* Wed May 16 2018 Adam Jackson <ajax@redhat.com> - 1.20.0-2
98b35a
- Xorg Requires: xorg-x11-drv-libinput
98b35a
98b35a
* Thu May 10 2018 Adam Jackson <ajax@redhat.com> - 1.20.0-1
98b35a
- xserver 1.20
98b35a
98b35a
* Wed Apr 25 2018 Adam Jackson <ajax@redhat.com> - 1.19.99.905-2
98b35a
- Fix xvfb-run's default depth to be 24
98b35a
98b35a
* Tue Apr 24 2018 Adam Jackson <ajax@redhat.com> - 1.19.99.905-1
98b35a
- xserver 1.20 RC5
98b35a
98b35a
* Thu Apr 12 2018 Olivier Fourdan <ofourdan@redhat.com> - 1.19.99.904-2
98b35a
- Re-fix "use type instead of which in xvfb-run (rhbz#1443357)" which
98b35a
  was overridden inadvertently
98b35a
98b35a
* Tue Apr 10 2018 Adam Jackson <ajax@redhat.com> - 1.19.99.904-1
98b35a
- xserver 1.20 RC4
98b35a
98b35a
* Mon Apr 02 2018 Adam Jackson <ajax@redhat.com> - 1.19.99.903-1
98b35a
- xserver 1.20 RC3
98b35a
98b35a
* Tue Feb 13 2018 Olivier Fourdan <ofourdan@redhat.com> 1.19.6-5
98b35a
- xwayland: avoid race condition on new keymap
98b35a
- xwayland: Keep separate variables for pointer and tablet foci (rhbz#1519961)
98b35a
- xvfb-run now support command line option “--auto-display”
98b35a
98b35a
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.6-4
98b35a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
98b35a
98b35a
* Tue Jan 30 2018 Olivier Fourdan <ofourdan@redhat.com> 1.19.6-3
98b35a
- Avoid generating a core file when the Wayland compositor is gone.
98b35a
98b35a
* Thu Jan 11 2018 Peter Hutterer <peter.hutterer@redhat.com> 1.19.6-2
98b35a
- Fix handling of devices with ID_INPUT=null
98b35a
98b35a
* Wed Dec 20 2017 Adam Jackson <ajax@redhat.com> - 1.19.6-1
98b35a
- xserver 1.19.6
98b35a
98b35a
* Thu Oct 12 2017 Adam Jackson <ajax@redhat.com> - 1.19.5-1
98b35a
- xserver 1.19.5
98b35a
98b35a
* Thu Oct 05 2017 Olivier Fourdan <ofourdan@redhat.com> - 1.19.4-1
98b35a
- xserver-1.19.4
98b35a
- Backport tablet support for Xwayland
98b35a
98b35a
* Fri Sep 08 2017 Troy Dawson <tdawson@redhat.com> - 1.19.3-9
98b35a
- Cleanup spec file conditionals
98b35a
98b35a
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.3-8
98b35a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
98b35a
98b35a
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.3-7
98b35a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
98b35a
98b35a
* Sun Jul  2 2017 Ville Skyttä <ville.skytta@iki.fi> - 1.19.3-6
98b35a
- Use type instead of which in xvfb-run (rhbz#1443357)
98b35a
98b35a
* Thu May 04 2017 Orion Poplawski <orion@cora.nwra.com> - 1.19.3-5
98b35a
- Enable full build for s390/x
98b35a
98b35a
* Mon Apr 24 2017 Ben Skeggs <bskeggs@redhat.com> - 1.19.3-4
98b35a
- Default to xf86-video-modesetting on GeForce 8 and newer
98b35a
98b35a
* Fri Apr 07 2017 Adam Jackson <ajax@redhat.com> - 1.19.3-3
98b35a
- Inoculate against a versioning bug with libdrm 2.4.78
98b35a
98b35a
* Thu Mar 23 2017 Hans de Goede <hdegoede@redhat.com> - 1.19.3-2
98b35a
- Use va_gl as vdpau driver on i965 GPUs (rhbz#1413733)
98b35a
98b35a
* Wed Mar 15 2017 Adam Jackson <ajax@redhat.com> - 1.19.3-1
98b35a
- xserver 1.19.3
98b35a
98b35a
* Thu Mar 02 2017 Adam Jackson <ajax@redhat.com> - 1.19.2-1
98b35a
- xserver 1.19.2
98b35a
98b35a
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.1-4
98b35a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
98b35a
98b35a
* Wed Feb 01 2017 Peter Hutterer <peter.hutterer@redhat.com> 1.19.1-3
98b35a
- Fix a few input thread lock issues causing intel crashes (#1384486)
98b35a
98b35a
* Mon Jan 16 2017 Adam Jackson <ajax@redhat.com> - 1.19.1-2
98b35a
- Limit the intel driver only on F26 and up
98b35a
98b35a
* Wed Jan 11 2017 Adam Jackson <ajax@redhat.com> - 1.19.1-1
98b35a
- xserver 1.19.1
98b35a
98b35a
* Tue Jan 10 2017 Hans de Goede <hdegoede@redhat.com> - 1.19.0-4
98b35a
- Follow Debian and only default to the intel ddx on gen4 or older intel GPUs
98b35a
98b35a
* Tue Dec 20 2016 Hans de Goede <hdegoede@redhat.com> - 1.19.0-3
98b35a
- Add one more patch for better integration with the nvidia binary driver
98b35a
98b35a
* Thu Dec 15 2016 Hans de Goede <hdegoede@redhat.com> - 1.19.0-2
98b35a
- Add some patches for better integration with the nvidia binary driver
98b35a
- Add a patch from upstream fixing a crash (rhbz#1389886)
98b35a
98b35a
* Wed Nov 23 2016 Olivier Fourdan <ofourdan@redhat.com> 1.19.0-1
98b35a
- xserver 1.19.0
98b35a
- Fix use after free of cursors in Xwayland (rhbz#1385258)
98b35a
- Fix an issue where some monitors would show only black, or
98b35a
  partially black when secondary GPU outputs are used
98b35a
98b35a
* Tue Nov 15 2016 Peter Hutterer <peter.hutterer@redhat.com> 1.19.0-0.8.rc2
98b35a
- Update device barriers for new master devices (#1384432)
98b35a
98b35a
* Thu Nov  3 2016 Hans de Goede <hdegoede@redhat.com> - 1.19.0-0.7.rc2
98b35a
- Update to 1.19.0-rc2
98b35a
- Fix (hopefully) various crashes in FlushAllOutput() (rhbz#1382444)
98b35a
- Fix Xwayland crashing in glamor on non glamor capable hw (rhbz#1390018)
98b35a
98b35a
* Tue Nov  1 2016 Ben Crocker <bcrocker@redhat.com> - 1.19.0-0.6.20161028
98b35a
- Fix Config record allocation during startup: if xorg.conf.d directory
98b35a
- was absent, a segfault resulted.
98b35a
98b35a
* Mon Oct 31 2016 Adam Jackson <ajax@redhat.com> - 1.19.0-0.5.20161026
98b35a
- Use %%autopatch instead of doing our own custom git-am trick
98b35a
98b35a
* Fri Oct 28 2016 Hans de Goede <hdegoede@redhat.com> - 1.19.0-0.4.20161026
98b35a
- Add missing Requires: libXfont2-devel to -devel sub-package (rhbz#1389711)
98b35a
98b35a
* Wed Oct 26 2016 Hans de Goede <hdegoede@redhat.com> - 1.19.0-0.3.20161026
98b35a
- Sync with upstream git, bringing in a bunch if bug-fixes
98b35a
- Add some extra fixes which are pending upstream
98b35a
- This also adds PointerWarping emulation to Xwayland, which should improve
98b35a
  compatiblity with many games