2 # - use epoxy >= 1.4.4 when available
3 # - consider XSELINUX by default
4 # - Xvfb initscript runs Xvfb as root! add user there!
7 %bcond_with dbus # D-BUS support for configuration (if no udev)
8 %bcond_with hal # HAL support for configuration (if no udev)
9 %bcond_without udev # UDEV support for configuration
10 %bcond_without dri2 # DRI2 extension
11 %bcond_without dri3 # DRI3 extension
12 %bcond_without record # RECORD extension
13 %bcond_with xcsecurity # XC-SECURITY extension (deprecated)
14 %bcond_with xf86bigfont # XF86BigFont extension
15 %bcond_with xselinux # SELinux extension
16 %bcond_without dmx # DMX DDX (Xdmx server)
17 %bcond_without wayland # Wayland DDX (Xwayland server)
18 %bcond_with eglstream # XWayland eglstream support
19 %bcond_without glamor # glamor dix module
20 %bcond_without systemtap # systemtap/dtrace probes
21 %bcond_without libunwind # use libunwind for backtracing
23 # ABI versions, see hw/xfree86/common/xf86Module.h
24 %define xorg_xserver_server_ansic_abi 0.4
25 %define xorg_xserver_server_extension_abi 10.0
26 %define xorg_xserver_server_videodrv_abi 24.0
27 %define xorg_xserver_server_xinput_abi 24.1
29 %define pixman_ver 0.30.0
32 %undefine with_libunwind
36 Summary(pl.UTF-8): Serwer X.org
37 Name: xorg-xserver-server
42 Source0: http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
43 # Source0-md5: c1ca1ea0a905ea788da03c77cc38b06e
44 Source1: 10-quirks.conf
46 Source10: %{name}-Xvfb.init
47 Source11: %{name}-Xvfb.sysconfig
49 Patch1: %{name}-xwrapper-pam.patch
51 Patch4: %{name}-builtin-SHA1.patch
53 Patch6: 110_nvidia_slowdow_fix.patch
54 URL: http://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 >= 10.2.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
72 %if %{with glamor} || %{with wayland}
73 BuildRequires: libepoxy-devel # >= 1.4.4
74 %{?with_eglstream:BuildRequires: libepoxy-devel >= 1.5.0}
76 %{?with_xselinux:BuildRequires: libselinux-devel >= 2.0.86}
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 >= 10.2.0}
157 Requires: libdrm >= 2.4.89
158 Requires: libepoxy # >= 1.4.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)
198 Xorg server is a generally used X server which uses display hardware.
199 It requires proper driver for your display hardware.
201 %description -l pl.UTF-8
202 Serwer Xorg to podstawowy serwer X wyświetlający obraz na karcie
203 graficznej. Do działania wymaga odpowiedniego sterownika.
205 %package -n xorg-xserver-Xdmx
206 Summary: Xdmx - distributed multi-head X server
207 Summary(pl.UTF-8): Xdmx - rozproszony, wielomonitorowy serwer X
209 Requires: pixman >= %{pixman_ver}
210 Requires: xorg-lib-libX11 >= 1.6
211 Requires: xorg-lib-libXext >= 1.0.99.4
212 Requires: xorg-lib-libXfont2 >= 2.0.0
213 Requires: xorg-lib-libXi >= 1.2.99.1
214 Requires: xorg-lib-libdmx >= 1.0.99.1
216 %description -n xorg-xserver-Xdmx
217 Xdmx - distributed multi-head X server.
219 %description -n xorg-xserver-Xdmx -l pl.UTF-8
220 Xdmx - rozproszony, wielomonitorowy serwer X.
222 %package -n xorg-xserver-Xnest
223 Summary: Xnest - nested X server
224 Summary(pl.UTF-8): Xnest - zagnieżdżony serwer X
226 Requires: pixman >= %{pixman_ver}
227 Requires: xorg-lib-libXext >= 1.0.99.4
228 Requires: xorg-lib-libXfont2 >= 2.0.0
229 Obsoletes: X11-Xnest < 1:7.0.0
230 Obsoletes: XFree86-Xnest < 1:7.0.0
231 Obsoletes: Xserver-Xnest
233 %description -n xorg-xserver-Xnest
234 Xnest is an X Window System server which runs in an X window. Xnest is
235 a 'nested' window server, actually a client of the real X server,
236 which manages windows and graphics requests for Xnest, while Xnest
237 manages the windows and graphics requests for its own clients.
239 %description -n xorg-xserver-Xnest -l pl.UTF-8
240 Xnest jest serwerem X uruchamianym w okienku innego serwera X. Xnest
241 zachowuje się jak klient X w stosunku do prawdziwego serwera X, a jak
242 serwer X dla własnych klientów.
244 %description -n xorg-xserver-Xnest -l ru.UTF-8
245 Xnest - это сервер X Window System, который работает в окне X. На
246 самом деле это клиент реального X-сервера, который управляет окнами и
247 графическими запросами для Xnest в то время, как Xnest управляет
248 окнами и графическими запросами для своих собственных клиентов.
250 %description -n xorg-xserver-Xnest -l uk.UTF-8
251 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
252 клієнт реального X-сервера, який керує вікнами та графічними запитами
253 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
254 своїх власних клієнтів.
256 %package -n xorg-xserver-Xephyr
257 Summary: Xephyr - nested X server
258 Summary(pl.UTF-8): Xephyr - zagnieżdżony serwer X
260 Requires: Mesa-libGL >= 7.1.0
261 Requires: libepoxy # >= 1.4.4
262 Requires: libxcb >= 1.9.3
263 Requires: pixman >= %{pixman_ver}
264 Requires: xorg-lib-libXfont2 >= 2.0.0
266 %description -n xorg-xserver-Xephyr
267 Xephyr is a kdrive server that outputs to a window on a pre-existing
268 'host' X display. Think Xnest but with support for modern extensions
269 like composite, damage and randr.
271 Unlike Xnest which is an X proxy, i.e. limited to the capabilities of
272 the host X server, Xephyr is a real X server which uses the host X
273 server window as "framebuffer" via fast SHM XImages.
275 It also has support for 'visually' debugging what the server is
278 %description -n xorg-xserver-Xephyr -l pl.UTF-8
279 Xephyr jest serwerem opartym na kdrive wyświetlającym w oknie na
280 istniejącym ekranie X. Można o nim myśleć jako o Xnest ze wsparciem do
281 wspólczesnych rozszerzeń jak composite, damage i randr.
283 %package -n xorg-xserver-Xvfb
284 Summary: Xvfb - virtual framebuffer X server
285 Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
287 Requires: Mesa-libGL >= 7.1.0
289 Requires: pixman >= %{pixman_ver}
292 Requires: xkeyboard-config
293 Requires: xorg-app-xauth
294 Requires: xorg-app-xkbcomp
295 Requires: xorg-lib-libXfont2 >= 2.0.0
296 Obsoletes: X11-Xvfb < 1:7.0.0
297 Obsoletes: XFree86-Xvfb < 1:7.0.0
299 %description -n xorg-xserver-Xvfb
300 Xvfb (X Virtual Frame Buffer) is an X Window System server that is
301 capable of running on machines with no display hardware and no
302 physical input devices. Xvfb emulates a dumb framebuffer using virtual
303 memory. Xvfb doesn't open any devices, but behaves otherwise as an X
304 display. Xvfb is normally used for testing servers. Using Xvfb, the
305 mfb or cfb code for any depth can be exercised without using real
306 hardware that supports the desired depths. Xvfb has also been used to
307 test X clients against unusual depths and screen configurations, to do
308 batch processing with Xvfb as a background rendering engine, to do
309 load testing, to help with porting an X server to a new platform, and
310 to provide an unobtrusive way of running applications which really
311 don't need an X server but insist on having one.
313 %description -n xorg-xserver-Xvfb -l pl.UTF-8
314 Xvfb (X Virtual Frame Buffer) jest serwerem X, który można uruchamiać
315 na maszynach bez urządzeń wyświetlających ani fizycznych urządzeń
316 wejściowych. Xvfb emuluje prosty framebuffer w pamięci. Zwykle jest
317 używany do testowania serwerów X, może też być używany do testowania
318 klientów X w rzadko używanych konfiguracjach ekranu. Można też użyć
319 Xvfb do uruchomienia aplikacji, które w rzeczywistości nie wymagają
320 serwera X, ale odmawiają uruchomienia bez niego.
322 %package -n xorg-xserver-Xvfb-init
323 Summary: Init scripts for Xvfb
324 Summary(pl.UTF-8): Skrypty startowe dla Xvfb
326 Requires: xorg-xserver-Xvfb
328 %description -n xorg-xserver-Xvfb-init
329 This package contains init scripts for Xvfb and registers Xvfb as
332 %description -n xorg-xserver-Xvfb-init -l pl.UTF-8
333 Ten pakiet zawiera skrypty startowe dla Xvfb oraz rejestruje Xvfb jako
336 %package -n xorg-xserver-Xwayland
337 Summary: Xwayland - X server integrated into a Wayland window system
338 Summary(pl.UTF-8): Xwayland - serwer X integrowalny w Wayland
340 %{?with_eglstream:Requires: egl-wayland >= 1.0.2}
341 %if %{with eglstream}
342 Requires: libepoxy >= 1.5.0
344 Requires: libepoxy # >= 1.4.4
346 Requires: pixman >= %{pixman_ver}
347 Requires: xorg-lib-libX11 >= 1.6
348 Requires: xorg-lib-libXext >= 1.0.99.4
349 Requires: xorg-lib-libXfont2 >= 2.0.0
350 Requires: xorg-lib-libXi >= 1.2.99.1
352 %description -n xorg-xserver-Xwayland
353 Xwayland - server integrated into a Wayland window system.
355 %description -n xorg-xserver-Xwayland -l pl.UTF-8
356 Xwayland - serwer X integrowalny w Wayland.
359 Summary: Header files for X.org server
360 Summary(pl.UTF-8): Pliki nagłówkowe dla serwera X.org
361 Group: X11/Development/Libraries
362 Requires: Mesa-libGL-devel >= 7.8.0
363 Requires: libdrm-devel >= 2.4.89
364 Requires: pixman-devel >= %{pixman_ver}
365 Requires: xorg-lib-libXfont2-devel >= 2.0.0
366 Requires: xorg-lib-libpciaccess-devel >= 0.12.901
367 Requires: xorg-lib-libxkbfile-devel
368 %{?with_dri2:Requires: xorg-proto-dri2proto-devel >= 2.8}
369 %{?with_dri3:Requires: xorg-proto-dri3proto-devel >= 1.0}
370 Requires: xorg-proto-dri3proto-devel >= 1.0
371 Requires: xorg-proto-fontsproto-devel >= 2.1.3
372 Requires: xorg-proto-glproto-devel >= 1.4.17
373 Requires: xorg-proto-inputproto-devel >= 2.3
374 Requires: xorg-proto-kbproto-devel >= 1.0.3
375 Requires: xorg-proto-presentproto-devel >= 1.1
376 Requires: xorg-proto-randrproto-devel >= 1.6.0
377 Requires: xorg-proto-renderproto-devel >= 0.11
378 Requires: xorg-proto-resourceproto-devel >= 1.2.0
379 Requires: xorg-proto-scrnsaverproto-devel >= 1.1
380 Requires: xorg-proto-videoproto-devel
381 Requires: xorg-proto-xextproto-devel >= 1:7.3.0
382 Requires: xorg-proto-xf86driproto-devel >= 2.1.0
383 Requires: xorg-proto-xineramaproto-devel
384 Requires: xorg-proto-xproto-devel >= 7.0.31
385 Obsoletes: X11-Xserver-devel < 1:7.0.0
386 Obsoletes: XFree86-Xserver-devel < 1:7.0.0
387 %{?with_glamor:Obsoletes: glamor-devel}
390 Header files for X.org server.
392 %description devel -l pl.UTF-8
393 Pliki nagłówkowe dla serwera X.org.
396 Summary: X.org server source code
397 Summary(pl.UTF-8): Pliki źródłowe dla serwera X.org
398 Group: X11/Development/Libraries
401 X.org server source code.
403 %description source -l pl.UTF-8
404 Pliki źródłowe dla serwera X.org.
406 %package -n xorg-xserver-libglx
407 Summary: GLX extension library for X.org server
408 Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
410 Requires: %{name} = %{version}-%{release}
411 Requires: Mesa-libGL >= 7.1.0
412 %{?with_dri2:Requires: Mesa-libGL >= 9.2.0}
413 # Mesa version glapi tables in glx/ dir come from
414 Provides: xorg-xserver-libglx(glapi) = 7.1.0
415 Provides: xorg-xserver-module(glx)
416 Obsoletes: X11-OpenGL-core < 1:7.0.0
417 Obsoletes: XFree86-OpenGL-core < 1:7.0.0
419 %description -n xorg-xserver-libglx
420 GLX extension library for X.org server.
422 %description -n xorg-xserver-libglx -l pl.UTF-8
423 Biblioteka rozszerzenia GLX dla serwera X.org.
426 %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
440 API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
441 if [ "$API" != "%{xorg_xserver_server_ansic_abi}" ]; then
442 echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
446 API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
447 if [ "$API" != "%{xorg_xserver_server_extension_abi}" ]; then
448 echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
452 API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
453 if [ "$API" != "%{xorg_xserver_server_videodrv_abi}" ]; then
454 echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
457 API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
458 if [ "$API" != "%{xorg_xserver_server_xinput_abi}" ]; then
459 echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
469 --libexecdir=%{_libdir}/xorg \
470 --with-os-name="PLD/Linux" \
471 --with-os-vendor="PLD/Team" \
472 --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
473 --with-xkb-output=/var/lib/xkb \
474 --disable-linux-acpi \
475 --disable-linux-apm \
476 %{?with_dbus:--enable-config-dbus} \
477 --enable-config-hal%{!?with_hal:=no} \
478 --enable-config-udev%{!?with_udev:=no} \
480 %{?with_dmx:--enable-dmx} \
481 --enable-dri2%{!?with_dri2:=no} \
482 --enable-dri3%{!?with_dri3:=no} \
483 %{?with_glamor:--enable-glamor} \
485 %{?with_libunwind:--enable-libunwind} \
486 %{?with_record:--enable-record} \
487 --enable-secure-rpc \
488 %{?with_xcsecurity:--enable-xcsecurity} \
490 %{?with_xf86bigfont:--enable-xf86bigfont} \
491 %{?with_xselinux:--enable-xselinux} \
492 %{?with_wayland:--enable-xwayland} \
493 %{?with_eglstream:--enable-xwayland-eglstream} \
494 %{!?with_systemtap:--without-dtrace} \
496 --enable-suid-wrapper \
497 --with-systemd-daemon
502 rm -rf $RPM_BUILD_ROOT
504 %if "%{_libdir}" != "%{_exec_prefix}/lib"
505 install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/xorg/modules/dri
509 DESTDIR=$RPM_BUILD_ROOT
511 install -Dp %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/xserver
512 install -d $RPM_BUILD_ROOT/etc/{security/console.apps,X11/xorg.conf.d}
513 install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{dri,drivers,input}
514 install -d $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
515 install -p %{SOURCE12} $RPM_BUILD_ROOT%{_bindir}/xvfb-run
517 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
518 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
520 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.la
522 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d/10-quirks.conf
524 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
525 install -d $RPM_BUILD_ROOT/etc/sysconfig
526 install -p %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/Xvfb
527 cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/sysconfig/Xvfb
530 cat >$RPM_BUILD_ROOT/etc/X11/Xwrapper.config <<EOF
531 # allowed values: rootonly console anybody pam
534 # set to yes if hardware or console access requires root rights (and Xwrapper fails to detect it)
535 #needs_root_rights = yes
538 # compatibility with old xwrapper
539 ln -s %{_libdir}/xorg/Xorg.wrap $RPM_BUILD_ROOT%{_bindir}/Xwrapper
541 # prepare source package
542 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
543 cp -a * $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
544 cd $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}
546 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
547 find -name '*.h' | xargs chmod a-x
549 %if %{with systemtap}
550 %{__rm} $RPM_BUILD_ROOT%{_docdir}/xorg-server/Xserver-DTrace.*
554 rm -rf $RPM_BUILD_ROOT
556 %triggerpostun -- xorg-xserver-server < 1.5.0
557 if [ -f /etc/X11/xorg.conf ]; then
558 sed -i -e 's/^\s*RgbPath.*$/#& # obsolete option/' /etc/X11/xorg.conf
559 sed -i -e 's/^\s*Load\s*"type1".*$/#& # obsolete module/' /etc/X11/xorg.conf
560 %if %{without record}
561 sed -i -e 's/^\s*Load\s*"record".*$/#& # module disabled in this build/' /etc/X11/xorg.conf
563 sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # obsolete module/' /etc/X11/xorg.conf
566 %post -n xorg-xserver-Xvfb-init
567 /sbin/chkconfig --add Xvfb
568 %service Xvfb restart
570 %preun -n xorg-xserver-Xvfb-init
571 if [ "$1" = "0" ]; then
572 %service -q Xvfb stop
573 /sbin/chkconfig --del Xvfb
577 %defattr(644,root,root,755)
578 %doc COPYING ChangeLog README
579 %attr(755,root,root) %{_bindir}/X
580 %attr(755,root,root) %{_bindir}/Xorg
581 %attr(4755,root,root) %{_bindir}/Xwrapper
582 %attr(755,root,root) %{_bindir}/cvt
583 %attr(755,root,root) %{_bindir}/gtf
585 %{_libdir}/xorg/protocol.txt
586 %attr(755,root,root) %{_libdir}/xorg/Xorg
587 %attr(4755,root,root) %{_libdir}/xorg/Xorg.wrap
588 %dir %{_libdir}/xorg/modules
589 %attr(755,root,root) %{_libdir}/xorg/modules/libexa.so
590 %attr(755,root,root) %{_libdir}/xorg/modules/libfb.so
591 %attr(755,root,root) %{_libdir}/xorg/modules/libfbdevhw.so
592 %{?with_glamor:%attr(755,root,root) %{_libdir}/xorg/modules/libglamoregl.so}
593 %attr(755,root,root) %{_libdir}/xorg/modules/libint10.so
594 %attr(755,root,root) %{_libdir}/xorg/modules/libshadow.so
595 %attr(755,root,root) %{_libdir}/xorg/modules/libshadowfb.so
596 %attr(755,root,root) %{_libdir}/xorg/modules/libvbe.so
597 %attr(755,root,root) %{_libdir}/xorg/modules/libvgahw.so
598 %attr(755,root,root) %{_libdir}/xorg/modules/libwfb.so
599 %dir %{_libdir}/xorg/modules/dri
600 %dir %{_libdir}/xorg/modules/drivers
601 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/modesetting_drv.so
602 %dir %{_libdir}/xorg/modules/extensions
603 %dir %{_libdir}/xorg/modules/input
604 %if "%{_libdir}" != "%{_exec_prefix}/lib"
605 %dir %{_exec_prefix}/lib/xorg
606 %dir %{_exec_prefix}/lib/xorg/modules
607 %dir %{_exec_prefix}/lib/xorg/modules/dri
610 /var/lib/xkb/README.compiled
611 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xserver
612 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.xserver
613 %config(missingok) /etc/security/console.apps/xserver
614 %{?with_dbus:/etc/dbus-1/system.d/xorg-server.conf}
615 %dir /etc/X11/xorg.conf.d
616 %config(noreplace) %verify(not md5 mtime size) /etc/X11/Xwrapper.config
617 %dir %{_datadir}/X11/xorg.conf.d
618 # overwrite these settings with local configs in /etc/X11/xorg.conf.d
619 %verify(not md5 mtime size) %{_datadir}/X11/xorg.conf.d/10-quirks.conf
620 %{_mandir}/man1/Xorg.1*
621 %{_mandir}/man1/Xorg.wrap.1*
622 %{_mandir}/man1/Xserver.1*
623 %{_mandir}/man1/cvt.1*
624 %{_mandir}/man1/gtf.1*
625 %{_mandir}/man4/exa.4*
626 %{_mandir}/man4/fbdevhw.4*
627 %{_mandir}/man4/modesetting.4*
628 %{_mandir}/man5/Xwrapper.config.5*
629 %{_mandir}/man5/xorg.conf.5*
630 %{_mandir}/man5/xorg.conf.d.5*
633 %files -n xorg-xserver-Xdmx
634 %defattr(644,root,root,755)
635 %attr(755,root,root) %{_bindir}/Xdmx
636 %attr(755,root,root) %{_bindir}/dmxaddinput
637 %attr(755,root,root) %{_bindir}/dmxaddscreen
638 %attr(755,root,root) %{_bindir}/dmxinfo
639 %attr(755,root,root) %{_bindir}/dmxreconfig
640 %attr(755,root,root) %{_bindir}/dmxresize
641 %attr(755,root,root) %{_bindir}/dmxrminput
642 %attr(755,root,root) %{_bindir}/dmxrmscreen
643 %attr(755,root,root) %{_bindir}/dmxtodmx
644 %attr(755,root,root) %{_bindir}/dmxwininfo
645 %attr(755,root,root) %{_bindir}/vdltodmx
646 %attr(755,root,root) %{_bindir}/xdmxconfig
647 %{_mandir}/man1/Xdmx.1*
648 %{_mandir}/man1/dmxtodmx.1*
649 %{_mandir}/man1/vdltodmx.1*
650 %{_mandir}/man1/xdmxconfig.1*
653 %files -n xorg-xserver-Xnest
654 %defattr(644,root,root,755)
655 %attr(755,root,root) %{_bindir}/Xnest
656 %{_mandir}/man1/Xnest.1*
658 %files -n xorg-xserver-Xephyr
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{_bindir}/Xephyr
661 %{_mandir}/man1/Xephyr.1*
663 %files -n xorg-xserver-Xvfb
664 %defattr(644,root,root,755)
665 %attr(755,root,root) %{_bindir}/Xvfb
666 %attr(755,root,root) %{_bindir}/xvfb-run
667 %{_mandir}/man1/Xvfb.1*
669 %files -n xorg-xserver-Xvfb-init
670 %defattr(644,root,root,755)
671 %attr(754,root,root) /etc/rc.d/init.d/Xvfb
672 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/Xvfb
675 %files -n xorg-xserver-Xwayland
676 %defattr(644,root,root,755)
677 %attr(755,root,root) %{_bindir}/Xwayland
681 %defattr(644,root,root,755)
682 %doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
684 %{_aclocaldir}/xorg-server.m4
685 %{_pkgconfigdir}/xorg-server.pc
688 %defattr(644,root,root,755)
689 # keep file perms from install time, but have default defattr to keep adapter happy
690 %defattr(-,root,root,755)
691 %{_usrsrc}/%{name}-%{version}
693 %files -n xorg-xserver-libglx
694 %defattr(644,root,root,755)
695 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so