2 # - consider XSELINUX by default
3 # - Xvfb initscript runs Xvfb as root! add user there!
6 %bcond_with dbus # D-BUS support for configuration (if no udev)
7 %bcond_with hal # HAL support for configuration (if no udev)
8 %bcond_without udev # UDEV support for configuration
9 %bcond_without dri2 # DRI2 extension
10 %bcond_without dri3 # DRI3 extension
11 %bcond_without record # RECORD extension
12 %bcond_with xcsecurity # XC-SECURITY extension (deprecated)
13 %bcond_with xf86bigfont # XF86BigFont extension
14 %bcond_with xselinux # SELinux extension
15 %bcond_without dmx # DMX DDX (Xdmx server)
16 %bcond_without wayland # Wayland DDX (Xwayland server)
17 %bcond_with eglstream # XWayland eglstream support
18 %bcond_without glamor # glamor dix module
19 %bcond_without systemtap # systemtap/dtrace probes
20 %bcond_without libunwind # use libunwind for backtracing
22 # ABI versions, see hw/xfree86/common/xf86Module.h
23 %define xorg_xserver_server_ansic_abi 0.4
24 %define xorg_xserver_server_extension_abi 10.0
25 %define xorg_xserver_server_videodrv_abi 24.1
26 %define xorg_xserver_server_xinput_abi 24.1
28 %define pixman_ver 0.30.0
31 %undefine with_libunwind
35 Summary(pl.UTF-8): Serwer X.org
36 Name: xorg-xserver-server
41 Source0: https://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
42 # Source0-md5: afcae2f46d47c33863cab7fd9db7279a
43 Source1: 10-quirks.conf
45 Source10: %{name}-Xvfb.init
46 Source11: %{name}-Xvfb.sysconfig
48 Patch1: %{name}-xwrapper-pam.patch
50 Patch4: %{name}-builtin-SHA1.patch
52 Patch6: 110_nvidia_slowdow_fix.patch
53 Patch7: platform_probe_crash.patch
54 URL: https://xorg.freedesktop.org/
55 BuildRequires: Mesa-libGL-devel >= 7.8.1
56 %{?with_dri2:BuildRequires: Mesa-libGL-devel >= 9.2.0}
57 %{?with_glamor:BuildRequires: Mesa-libgbm-devel >= 17.1.0}
59 BuildRequires: OpenGL-GLX-devel
60 %{?with_xselinux:BuildRequires: audit-libs-devel}
61 BuildRequires: autoconf >= 2.60
62 BuildRequires: automake
64 BuildRequires: docbook-dtd43-xml
65 #BuildRequires: doxygen >= 1.6.1
66 %if %{with hal} || %{with dbus}
67 BuildRequires: dbus-devel >= 1.0
69 %{?with_eglstream:BuildRequires: egl-wayland-devel >= 1.0.2}
70 %{?with_hal:BuildRequires: hal-devel}
71 BuildRequires: libdrm-devel >= 2.4.89
73 BuildRequires: libepoxy-devel >= 1.5.4
75 %{?with_xselinux:BuildRequires: libselinux-devel >= 2.0.86}
76 BuildRequires: libtirpc-devel
77 BuildRequires: libtool >= 2:2.2
78 %{?with_libunwind:BuildRequires: libunwind-devel}
79 BuildRequires: libxcb-devel >= 1.9.3
80 BuildRequires: pam-devel
81 BuildRequires: perl-base
82 BuildRequires: pixman-devel >= %{pixman_ver}
83 BuildRequires: pkgconfig >= 1:0.19
84 %{?with_systemtap:BuildRequires: systemtap-sdt-devel}
85 BuildRequires: systemd-devel >= 1:209
86 BuildRequires: udev-devel >= 1:143
88 %{?with_wayland:BuildRequires: wayland-devel >= 1.3.0}
89 %{?with_wayland:BuildRequires: wayland-protocols >= 1.10}
90 BuildRequires: xcb-util-devel
91 BuildRequires: xcb-util-image-devel
92 BuildRequires: xcb-util-keysyms-devel
93 BuildRequires: xcb-util-renderutil-devel
94 BuildRequires: xcb-util-wm-devel
95 BuildRequires: xmlto >= 0.0.20
96 BuildRequires: xorg-app-mkfontscale
97 BuildRequires: xorg-font-font-util >= 1.1
98 BuildRequires: xorg-lib-libX11-devel >= 1.6
99 BuildRequires: xorg-lib-libXau-devel
100 %{?with_dmx:BuildRequires: xorg-lib-libXaw-devel}
101 BuildRequires: xorg-lib-libXdamage-devel
102 BuildRequires: xorg-lib-libXdmcp-devel
103 BuildRequires: xorg-lib-libXext-devel >= 1.0.99.4
104 BuildRequires: xorg-lib-libXfixes-devel
105 BuildRequires: xorg-lib-libXfont2-devel >= 2.0.0
106 BuildRequires: xorg-lib-libXi-devel >= 1.2.99.1
107 %{?with_dmx:BuildRequires: xorg-lib-libXmu-devel}
108 %{?with_dmx:BuildRequires: xorg-lib-libXpm-devel}
109 BuildRequires: xorg-lib-libXrender-devel
110 BuildRequires: xorg-lib-libXres-devel
111 %{?with_dmx:BuildRequires: xorg-lib-libXt-devel >= 1.0.0}
112 BuildRequires: xorg-lib-libXtst-devel >= 1.0.99.2
113 BuildRequires: xorg-lib-libXv-devel
114 BuildRequires: xorg-lib-libXxf86dga-devel
115 BuildRequires: xorg-lib-libXxf86misc-devel
116 BuildRequires: xorg-lib-libXxf86vm-devel
117 %{?with_dmx:BuildRequires: xorg-lib-libdmx-devel >= 1.0.99.1}
118 BuildRequires: xorg-lib-libfontenc-devel
119 BuildRequires: xorg-lib-libpciaccess-devel >= 0.12.901
120 BuildRequires: xorg-lib-libxkbfile-devel
121 BuildRequires: xorg-lib-libxshmfence-devel >= 1.1
122 BuildRequires: xorg-lib-xtrans-devel >= 1.3.5
123 BuildRequires: xorg-proto-bigreqsproto-devel >= 1.1.0
124 BuildRequires: xorg-proto-compositeproto-devel >= 0.4
125 BuildRequires: xorg-proto-damageproto-devel >= 1.1
126 %{?with_dmx:BuildRequires: xorg-proto-dmxproto-devel >= 2.2.99.1}
127 %{?with_dri2:BuildRequires: xorg-proto-dri2proto-devel >= 2.8}
128 BuildRequires: xorg-proto-dri3proto-devel >= 1.2
129 BuildRequires: xorg-proto-fixesproto-devel >= 5.0
130 BuildRequires: xorg-proto-fontcacheproto-devel
131 BuildRequires: xorg-proto-fontsproto-devel >= 2.1.3
132 BuildRequires: xorg-proto-glproto-devel >= 1.4.17
133 BuildRequires: xorg-proto-inputproto-devel >= 2.3
134 BuildRequires: xorg-proto-kbproto-devel >= 1.0.3
135 BuildRequires: xorg-proto-presentproto-devel >= 1.1
136 BuildRequires: xorg-proto-printproto-devel
137 BuildRequires: xorg-proto-randrproto-devel >= 1.6.0
138 %{?with_record:BuildRequires: xorg-proto-recordproto-devel >= 1.13.99.1}
139 BuildRequires: xorg-proto-renderproto-devel >= 0.11
140 BuildRequires: xorg-proto-resourceproto-devel >= 1.2.0
141 BuildRequires: xorg-proto-scrnsaverproto-devel >= 1.1
142 BuildRequires: xorg-proto-videoproto-devel
143 BuildRequires: xorg-proto-xcmiscproto-devel >= 1.2.0
144 BuildRequires: xorg-proto-xextproto-devel >= 1:7.3.0
145 %{?with_xf86bigfont:BuildRequires: xorg-proto-xf86bigfontproto-devel >= 1.2.0}
146 BuildRequires: xorg-proto-xf86dgaproto-devel >= 2.0.99.1
147 BuildRequires: xorg-proto-xf86driproto-devel >= 2.1.0
148 BuildRequires: xorg-proto-xf86miscproto-devel
149 BuildRequires: xorg-proto-xf86vidmodeproto-devel >= 2.2.99.1
150 BuildRequires: xorg-proto-xineramaproto-devel
151 BuildRequires: xorg-proto-xproto-devel >= 7.0.31
152 BuildRequires: xorg-sgml-doctools >= 1.8
153 BuildRequires: xorg-util-util-macros >= 1.14
154 #BR: tslib (for KDRIVE only)
155 Requires(triggerpostun): sed >= 4.0
156 %{?with_glamor:Requires: Mesa-libgbm >= 17.1.0}
157 Requires: libdrm >= 2.4.89
158 %{?with_glamor:Requires: libepoxy >= 1.5.4}
159 Requires: pixman >= %{pixman_ver}
160 Requires: udev-libs >= 1:143
161 Requires: xkeyboard-config
163 Requires: xorg-app-rgb >= 0.99.3
164 Requires: xorg-app-xkbcomp
165 Requires: xorg-lib-libXfont2 >= 2.0.0
166 Requires: xorg-lib-libpciaccess >= 0.12.901
167 Requires: xorg-lib-libxshmfence >= 1.1
168 Suggests: dbus-x11 >= 1.0
169 %{?with_hal:Suggests: hal}
170 Suggests: udev-acl >= 1:143
171 %{?with_udev:Suggests: udev-core >= 1:143}
172 Suggests: xkeyboard-config
173 Suggests: xorg-driver-input-libinput
174 # Usual desktop setups need least one video driver to run, see xorg.log which one exactly
175 Suggests: xorg-driver-video
176 Provides: xorg-driver-video-modesetting
177 Provides: xorg-xserver-libdri = %{version}-%{release}
178 Provides: xorg-xserver-module(dri)
179 Provides: xorg-xserver-server(ansic-abi) = %{xorg_xserver_server_ansic_abi}
180 Provides: xorg-xserver-server(extension-abi) = %{xorg_xserver_server_extension_abi}
181 Provides: xorg-xserver-server(videodrv-abi) = %{xorg_xserver_server_videodrv_abi}
182 Provides: xorg-xserver-server(xinput-abi) = %{xorg_xserver_server_xinput_abi}
183 Obsoletes: X11-Xserver < 1:7.0.0
184 Obsoletes: X11-driver-i2c < 1:7.0.0
185 Obsoletes: X11-modules < 1:7.0.0
186 Obsoletes: X11-setup < 1:7.0.0
187 Obsoletes: XFree86-Xserver < 1:7.0.0
188 Obsoletes: XFree86-modules < 1:7.0.0
189 Obsoletes: XFree86-setup < 1:7.0.0
191 %{?with_glamor:Obsoletes: glamor}
192 Obsoletes: xorg-xserver-libdri
193 Obsoletes: xorg-xserver-server-xorgcfg
194 Obsoletes: xorg-driver-video-modesetting
195 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
197 %define tirpc_cflags $(pkg-config --cflags libtirpc)
198 %define tirpc_libs $(pkg-config --libs libtirpc)
201 Xorg server is a generally used X server which uses display hardware.
202 It requires proper driver for your display hardware.
204 %description -l pl.UTF-8
205 Serwer Xorg to podstawowy serwer X wyświetlający obraz na karcie
206 graficznej. Do działania wymaga odpowiedniego sterownika.
208 %package -n xorg-xserver-Xdmx
209 Summary: Xdmx - distributed multi-head X server
210 Summary(pl.UTF-8): Xdmx - rozproszony, wielomonitorowy serwer X
212 Requires: pixman >= %{pixman_ver}
213 Requires: xorg-lib-libX11 >= 1.6
214 Requires: xorg-lib-libXext >= 1.0.99.4
215 Requires: xorg-lib-libXfont2 >= 2.0.0
216 Requires: xorg-lib-libXi >= 1.2.99.1
217 Requires: xorg-lib-libdmx >= 1.0.99.1
219 %description -n xorg-xserver-Xdmx
220 Xdmx - distributed multi-head X server.
222 %description -n xorg-xserver-Xdmx -l pl.UTF-8
223 Xdmx - rozproszony, wielomonitorowy serwer X.
225 %package -n xorg-xserver-Xnest
226 Summary: Xnest - nested X server
227 Summary(pl.UTF-8): Xnest - zagnieżdżony serwer X
229 Requires: pixman >= %{pixman_ver}
230 Requires: xorg-lib-libXext >= 1.0.99.4
231 Requires: xorg-lib-libXfont2 >= 2.0.0
232 Obsoletes: X11-Xnest < 1:7.0.0
233 Obsoletes: XFree86-Xnest < 1:7.0.0
234 Obsoletes: Xserver-Xnest
236 %description -n xorg-xserver-Xnest
237 Xnest is an X Window System server which runs in an X window. Xnest is
238 a 'nested' window server, actually a client of the real X server,
239 which manages windows and graphics requests for Xnest, while Xnest
240 manages the windows and graphics requests for its own clients.
242 %description -n xorg-xserver-Xnest -l pl.UTF-8
243 Xnest jest serwerem X uruchamianym w okienku innego serwera X. Xnest
244 zachowuje się jak klient X w stosunku do prawdziwego serwera X, a jak
245 serwer X dla własnych klientów.
247 %description -n xorg-xserver-Xnest -l ru.UTF-8
248 Xnest - это сервер X Window System, который работает в окне X. На
249 самом деле это клиент реального X-сервера, который управляет окнами и
250 графическими запросами для Xnest в то время, как Xnest управляет
251 окнами и графическими запросами для своих собственных клиентов.
253 %description -n xorg-xserver-Xnest -l uk.UTF-8
254 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
255 клієнт реального X-сервера, який керує вікнами та графічними запитами
256 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
257 своїх власних клієнтів.
259 %package -n xorg-xserver-Xephyr
260 Summary: Xephyr - nested X server
261 Summary(pl.UTF-8): Xephyr - zagnieżdżony serwer X
263 Requires: Mesa-libGL >= 7.1.0
264 %{?with_glamor:Requires: libepoxy >= 1.5.4}
265 Requires: libxcb >= 1.9.3
266 Requires: pixman >= %{pixman_ver}
267 Requires: xorg-lib-libXfont2 >= 2.0.0
269 %description -n xorg-xserver-Xephyr
270 Xephyr is a kdrive server that outputs to a window on a pre-existing
271 'host' X display. Think Xnest but with support for modern extensions
272 like composite, damage and randr.
274 Unlike Xnest which is an X proxy, i.e. limited to the capabilities of
275 the host X server, Xephyr is a real X server which uses the host X
276 server window as "framebuffer" via fast SHM XImages.
278 It also has support for 'visually' debugging what the server is
281 %description -n xorg-xserver-Xephyr -l pl.UTF-8
282 Xephyr jest serwerem opartym na kdrive wyświetlającym w oknie na
283 istniejącym ekranie X. Można o nim myśleć jako o Xnest ze wsparciem do
284 wspólczesnych rozszerzeń jak composite, damage i randr.
286 %package -n xorg-xserver-Xvfb
287 Summary: Xvfb - virtual framebuffer X server
288 Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
290 Requires: Mesa-libGL >= 7.1.0
292 Requires: pixman >= %{pixman_ver}
295 Requires: xkeyboard-config
296 Requires: xorg-app-xauth
297 Requires: xorg-app-xkbcomp
298 Requires: xorg-lib-libXfont2 >= 2.0.0
299 Obsoletes: X11-Xvfb < 1:7.0.0
300 Obsoletes: XFree86-Xvfb < 1:7.0.0
302 %description -n xorg-xserver-Xvfb
303 Xvfb (X Virtual Frame Buffer) is an X Window System server that is
304 capable of running on machines with no display hardware and no
305 physical input devices. Xvfb emulates a dumb framebuffer using virtual
306 memory. Xvfb doesn't open any devices, but behaves otherwise as an X
307 display. Xvfb is normally used for testing servers. Using Xvfb, the
308 mfb or cfb code for any depth can be exercised without using real
309 hardware that supports the desired depths. Xvfb has also been used to
310 test X clients against unusual depths and screen configurations, to do
311 batch processing with Xvfb as a background rendering engine, to do
312 load testing, to help with porting an X server to a new platform, and
313 to provide an unobtrusive way of running applications which really
314 don't need an X server but insist on having one.
316 %description -n xorg-xserver-Xvfb -l pl.UTF-8
317 Xvfb (X Virtual Frame Buffer) jest serwerem X, który można uruchamiać
318 na maszynach bez urządzeń wyświetlających ani fizycznych urządzeń
319 wejściowych. Xvfb emuluje prosty framebuffer w pamięci. Zwykle jest
320 używany do testowania serwerów X, może też być używany do testowania
321 klientów X w rzadko używanych konfiguracjach ekranu. Można też użyć
322 Xvfb do uruchomienia aplikacji, które w rzeczywistości nie wymagają
323 serwera X, ale odmawiają uruchomienia bez niego.
325 %package -n xorg-xserver-Xvfb-init
326 Summary: Init scripts for Xvfb
327 Summary(pl.UTF-8): Skrypty startowe dla Xvfb
329 Requires: xorg-xserver-Xvfb
331 %description -n xorg-xserver-Xvfb-init
332 This package contains init scripts for Xvfb and registers Xvfb as
335 %description -n xorg-xserver-Xvfb-init -l pl.UTF-8
336 Ten pakiet zawiera skrypty startowe dla Xvfb oraz rejestruje Xvfb jako
339 %package -n xorg-xserver-Xwayland
340 Summary: Xwayland - X server integrated into a Wayland window system
341 Summary(pl.UTF-8): Xwayland - serwer X integrowalny w Wayland
343 %{?with_eglstream:Requires: egl-wayland >= 1.0.2}
344 %{?with_glamor:Requires: libepoxy >= 1.5.4}
345 Requires: pixman >= %{pixman_ver}
346 Requires: xorg-lib-libX11 >= 1.6
347 Requires: xorg-lib-libXext >= 1.0.99.4
348 Requires: xorg-lib-libXfont2 >= 2.0.0
349 Requires: xorg-lib-libXi >= 1.2.99.1
351 %description -n xorg-xserver-Xwayland
352 Xwayland - server integrated into a Wayland window system.
354 %description -n xorg-xserver-Xwayland -l pl.UTF-8
355 Xwayland - serwer X integrowalny w Wayland.
358 Summary: Header files for X.org server
359 Summary(pl.UTF-8): Pliki nagłówkowe dla serwera X.org
360 Group: X11/Development/Libraries
361 Requires: Mesa-libGL-devel >= 7.8.0
362 Requires: libdrm-devel >= 2.4.89
363 Requires: pixman-devel >= %{pixman_ver}
364 Requires: xorg-lib-libXfont2-devel >= 2.0.0
365 Requires: xorg-lib-libpciaccess-devel >= 0.12.901
366 Requires: xorg-lib-libxkbfile-devel
367 %{?with_dri2:Requires: xorg-proto-dri2proto-devel >= 2.8}
368 %{?with_dri3:Requires: xorg-proto-dri3proto-devel >= 1.0}
369 Requires: xorg-proto-dri3proto-devel >= 1.0
370 Requires: xorg-proto-fontsproto-devel >= 2.1.3
371 Requires: xorg-proto-glproto-devel >= 1.4.17
372 Requires: xorg-proto-inputproto-devel >= 2.3
373 Requires: xorg-proto-kbproto-devel >= 1.0.3
374 Requires: xorg-proto-presentproto-devel >= 1.1
375 Requires: xorg-proto-randrproto-devel >= 1.6.0
376 Requires: xorg-proto-renderproto-devel >= 0.11
377 Requires: xorg-proto-resourceproto-devel >= 1.2.0
378 Requires: xorg-proto-scrnsaverproto-devel >= 1.1
379 Requires: xorg-proto-videoproto-devel
380 Requires: xorg-proto-xextproto-devel >= 1:7.3.0
381 Requires: xorg-proto-xf86driproto-devel >= 2.1.0
382 Requires: xorg-proto-xineramaproto-devel
383 Requires: xorg-proto-xproto-devel >= 7.0.31
384 Obsoletes: X11-Xserver-devel < 1:7.0.0
385 Obsoletes: XFree86-Xserver-devel < 1:7.0.0
386 %{?with_glamor:Obsoletes: glamor-devel}
389 Header files for X.org server.
391 %description devel -l pl.UTF-8
392 Pliki nagłówkowe dla serwera X.org.
395 Summary: X.org server source code
396 Summary(pl.UTF-8): Pliki źródłowe dla serwera X.org
397 Group: X11/Development/Libraries
400 X.org server source code.
402 %description source -l pl.UTF-8
403 Pliki źródłowe dla serwera X.org.
405 %package -n xorg-xserver-libglx
406 Summary: GLX extension library for X.org server
407 Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
409 Requires: %{name} = %{version}-%{release}
410 Requires: Mesa-libGL >= 7.1.0
411 %{?with_dri2:Requires: Mesa-libGL >= 9.2.0}
412 # Mesa version glapi tables in glx/ dir come from
413 Provides: xorg-xserver-libglx(glapi) = 7.1.0
414 Provides: xorg-xserver-module(glx)
415 Obsoletes: X11-OpenGL-core < 1:7.0.0
416 Obsoletes: XFree86-OpenGL-core < 1:7.0.0
418 %description -n xorg-xserver-libglx
419 GLX extension library for X.org server.
421 %description -n xorg-xserver-libglx -l pl.UTF-8
422 Biblioteka rozszerzenia GLX dla serwera X.org.
425 %setup -q -n xorg-server-%{version}
433 # xserver uses pixman-1 API/ABI so put that explictly here
434 sed -i -e 's#<pixman\.h#<pixman-1/pixman.h#g' ./fb/fb.h ./include/miscstruct.h ./render/picture.h
436 # support __filemansuffix__ with "x" suffix (per FHS 2.3)
437 %{__sed} -i -e 's,\.so man__filemansuffix__/,.so man5/,' hw/xfree86/man/*.man
439 %{__sed} -i -e '1s|#!/usr/bin/python$|#!%{__python}|' config/fdi2iclass.py
442 API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
443 if [ "$API" != "%{xorg_xserver_server_ansic_abi}" ]; then
444 echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
448 API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
449 if [ "$API" != "%{xorg_xserver_server_extension_abi}" ]; then
450 echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
454 API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
455 if [ "$API" != "%{xorg_xserver_server_videodrv_abi}" ]; then
456 echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
459 API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
460 if [ "$API" != "%{xorg_xserver_server_xinput_abi}" ]; then
461 echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
471 CPPFLAGS="%{rpmcppflags} %{tirpc_cflags}" \
472 LIBS="%{tirpc_libs}" \
473 --libexecdir=%{_libdir}/xorg \
474 --with-os-name="PLD/Linux" \
475 --with-os-vendor="PLD/Team" \
476 --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
477 --with-xkb-output=/var/lib/xkb \
478 --disable-linux-acpi \
479 --disable-linux-apm \
480 %{?with_dbus:--enable-config-dbus} \
481 --enable-config-hal%{!?with_hal:=no} \
482 --enable-config-udev%{!?with_udev:=no} \
484 %{?with_dmx:--enable-dmx} \
485 --enable-dri2%{!?with_dri2:=no} \
486 --enable-dri3%{!?with_dri3:=no} \
487 %{?with_glamor:--enable-glamor} \
489 %{?with_libunwind:--enable-libunwind} \
490 %{?with_record:--enable-record} \
491 --enable-secure-rpc \
492 %{?with_xcsecurity:--enable-xcsecurity} \
494 %{?with_xf86bigfont:--enable-xf86bigfont} \
495 %{?with_xselinux:--enable-xselinux} \
496 %{?with_wayland:--enable-xwayland} \
497 %{?with_eglstream:--enable-xwayland-eglstream} \
498 %{!?with_systemtap:--without-dtrace} \
500 --enable-suid-wrapper \
501 --with-systemd-daemon
506 rm -rf $RPM_BUILD_ROOT
508 %if "%{_libdir}" != "%{_exec_prefix}/lib"
509 install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/xorg/modules/dri
513 DESTDIR=$RPM_BUILD_ROOT
515 install -Dp %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/xserver
516 install -d $RPM_BUILD_ROOT/etc/{security/console.apps,X11/xorg.conf.d}
517 install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{dri,drivers,input}
518 install -d $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
519 install -p %{SOURCE12} $RPM_BUILD_ROOT%{_bindir}/xvfb-run
521 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
522 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
524 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.la
526 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d/10-quirks.conf
528 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
529 install -d $RPM_BUILD_ROOT/etc/sysconfig
530 install -p %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/Xvfb
531 cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/sysconfig/Xvfb
534 cat >$RPM_BUILD_ROOT/etc/X11/Xwrapper.config <<EOF
535 # allowed values: rootonly console anybody pam
538 # set to yes if hardware or console access requires root rights (and Xwrapper fails to detect it)
539 #needs_root_rights = yes
542 # compatibility with old xwrapper
543 ln -s %{_libdir}/xorg/Xorg.wrap $RPM_BUILD_ROOT%{_bindir}/Xwrapper
545 # prepare source package
546 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
547 cp -a * $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
548 cd $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
550 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
551 find -name '*.h' | xargs chmod a-x
553 %if %{with systemtap}
554 %{__rm} $RPM_BUILD_ROOT%{_docdir}/xorg-server/Xserver-DTrace.*
558 rm -rf $RPM_BUILD_ROOT
560 %triggerpostun -- xorg-xserver-server < 1.5.0
561 if [ -f /etc/X11/xorg.conf ]; then
562 sed -i -e 's/^\s*RgbPath.*$/#& # obsolete option/' /etc/X11/xorg.conf
563 sed -i -e 's/^\s*Load\s*"type1".*$/#& # obsolete module/' /etc/X11/xorg.conf
564 %if %{without record}
565 sed -i -e 's/^\s*Load\s*"record".*$/#& # module disabled in this build/' /etc/X11/xorg.conf
567 sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # obsolete module/' /etc/X11/xorg.conf
570 %post -n xorg-xserver-Xvfb-init
571 /sbin/chkconfig --add Xvfb
572 %service Xvfb restart
574 %preun -n xorg-xserver-Xvfb-init
575 if [ "$1" = "0" ]; then
576 %service -q Xvfb stop
577 /sbin/chkconfig --del Xvfb
581 %defattr(644,root,root,755)
582 %doc COPYING ChangeLog README.md
583 %attr(755,root,root) %{_bindir}/X
584 %attr(755,root,root) %{_bindir}/Xorg
585 %attr(4755,root,root) %{_bindir}/Xwrapper
586 %attr(755,root,root) %{_bindir}/cvt
587 %attr(755,root,root) %{_bindir}/gtf
589 %{_libdir}/xorg/protocol.txt
590 %attr(755,root,root) %{_libdir}/xorg/Xorg
591 %attr(4755,root,root) %{_libdir}/xorg/Xorg.wrap
592 %dir %{_libdir}/xorg/modules
593 %attr(755,root,root) %{_libdir}/xorg/modules/libexa.so
594 %attr(755,root,root) %{_libdir}/xorg/modules/libfb.so
595 %attr(755,root,root) %{_libdir}/xorg/modules/libfbdevhw.so
596 %{?with_glamor:%attr(755,root,root) %{_libdir}/xorg/modules/libglamoregl.so}
597 %attr(755,root,root) %{_libdir}/xorg/modules/libint10.so
598 %attr(755,root,root) %{_libdir}/xorg/modules/libshadow.so
599 %attr(755,root,root) %{_libdir}/xorg/modules/libshadowfb.so
600 %attr(755,root,root) %{_libdir}/xorg/modules/libvbe.so
601 %attr(755,root,root) %{_libdir}/xorg/modules/libvgahw.so
602 %attr(755,root,root) %{_libdir}/xorg/modules/libwfb.so
603 %dir %{_libdir}/xorg/modules/dri
604 %dir %{_libdir}/xorg/modules/drivers
605 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/modesetting_drv.so
606 %dir %{_libdir}/xorg/modules/extensions
607 %dir %{_libdir}/xorg/modules/input
608 %if "%{_libdir}" != "%{_exec_prefix}/lib"
609 %dir %{_exec_prefix}/lib/xorg
610 %dir %{_exec_prefix}/lib/xorg/modules
611 %dir %{_exec_prefix}/lib/xorg/modules/dri
614 /var/lib/xkb/README.compiled
615 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xserver
616 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.xserver
617 %config(missingok) /etc/security/console.apps/xserver
618 %{?with_dbus:/etc/dbus-1/system.d/xorg-server.conf}
619 %dir /etc/X11/xorg.conf.d
620 %config(noreplace) %verify(not md5 mtime size) /etc/X11/Xwrapper.config
621 %dir %{_datadir}/X11/xorg.conf.d
622 # overwrite these settings with local configs in /etc/X11/xorg.conf.d
623 %verify(not md5 mtime size) %{_datadir}/X11/xorg.conf.d/10-quirks.conf
624 %{_mandir}/man1/Xorg.1*
625 %{_mandir}/man1/Xorg.wrap.1*
626 %{_mandir}/man1/Xserver.1*
627 %{_mandir}/man1/cvt.1*
628 %{_mandir}/man1/gtf.1*
629 %{_mandir}/man4/exa.4*
630 %{_mandir}/man4/fbdevhw.4*
631 %{_mandir}/man4/modesetting.4*
632 %{_mandir}/man5/Xwrapper.config.5*
633 %{_mandir}/man5/xorg.conf.5*
634 %{_mandir}/man5/xorg.conf.d.5*
637 %files -n xorg-xserver-Xdmx
638 %defattr(644,root,root,755)
639 %attr(755,root,root) %{_bindir}/Xdmx
640 %attr(755,root,root) %{_bindir}/dmxaddinput
641 %attr(755,root,root) %{_bindir}/dmxaddscreen
642 %attr(755,root,root) %{_bindir}/dmxinfo
643 %attr(755,root,root) %{_bindir}/dmxreconfig
644 %attr(755,root,root) %{_bindir}/dmxresize
645 %attr(755,root,root) %{_bindir}/dmxrminput
646 %attr(755,root,root) %{_bindir}/dmxrmscreen
647 %attr(755,root,root) %{_bindir}/dmxtodmx
648 %attr(755,root,root) %{_bindir}/dmxwininfo
649 %attr(755,root,root) %{_bindir}/vdltodmx
650 %attr(755,root,root) %{_bindir}/xdmxconfig
651 %{_mandir}/man1/Xdmx.1*
652 %{_mandir}/man1/dmxtodmx.1*
653 %{_mandir}/man1/vdltodmx.1*
654 %{_mandir}/man1/xdmxconfig.1*
657 %files -n xorg-xserver-Xnest
658 %defattr(644,root,root,755)
659 %attr(755,root,root) %{_bindir}/Xnest
660 %{_mandir}/man1/Xnest.1*
662 %files -n xorg-xserver-Xephyr
663 %defattr(644,root,root,755)
664 %attr(755,root,root) %{_bindir}/Xephyr
665 %{_mandir}/man1/Xephyr.1*
667 %files -n xorg-xserver-Xvfb
668 %defattr(644,root,root,755)
669 %attr(755,root,root) %{_bindir}/Xvfb
670 %attr(755,root,root) %{_bindir}/xvfb-run
671 %{_mandir}/man1/Xvfb.1*
673 %files -n xorg-xserver-Xvfb-init
674 %defattr(644,root,root,755)
675 %attr(754,root,root) /etc/rc.d/init.d/Xvfb
676 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/Xvfb
679 %files -n xorg-xserver-Xwayland
680 %defattr(644,root,root,755)
681 %attr(755,root,root) %{_bindir}/Xwayland
685 %defattr(644,root,root,755)
686 %doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
688 %{_aclocaldir}/xorg-server.m4
689 %{_pkgconfigdir}/xorg-server.pc
692 %defattr(644,root,root,755)
693 # keep file perms from install time, but have default defattr to keep adapter happy
694 %defattr(-,root,root,755)
695 %{_usrsrc}/%{name}-%{version}
697 %files -n xorg-xserver-libglx
698 %defattr(644,root,root,755)
699 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so