]> git.pld-linux.org Git - packages/xorg-xserver-server.git/blob - xorg-xserver-server.spec
upstream fix for crash in platform probe; rel 3
[packages/xorg-xserver-server.git] / xorg-xserver-server.spec
1 # TODO
2 # - consider XSELINUX by default
3 # - Xvfb initscript runs Xvfb as root! add user there!
4 #
5 # Conditional build:
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
21 #
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
27
28 %define pixman_ver      0.30.0
29
30 %ifarch x32
31 %undefine       with_libunwind
32 %endif
33
34 Summary:        X.org server
35 Summary(pl.UTF-8):      Serwer X.org
36 Name:           xorg-xserver-server
37 Version:        1.20.9
38 Release:        3
39 License:        MIT
40 Group:          X11/Servers
41 Source0:        https://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
42 # Source0-md5:  afcae2f46d47c33863cab7fd9db7279a
43 Source1:        10-quirks.conf
44 Source2:        xserver.pamd
45 Source10:       %{name}-Xvfb.init
46 Source11:       %{name}-Xvfb.sysconfig
47 Source12:       xvfb-run.sh
48 Patch1:         %{name}-xwrapper-pam.patch
49
50 Patch4:         %{name}-builtin-SHA1.patch
51
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}
58 # for glx headers
59 BuildRequires:  OpenGL-GLX-devel
60 %{?with_xselinux:BuildRequires: audit-libs-devel}
61 BuildRequires:  autoconf >= 2.60
62 BuildRequires:  automake
63 BuildRequires:  cpp
64 BuildRequires:  docbook-dtd43-xml
65 #BuildRequires: doxygen >= 1.6.1
66 %if %{with hal} || %{with dbus}
67 BuildRequires:  dbus-devel >= 1.0
68 %endif
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}
73 BuildRequires:  libepoxy-devel >= 1.5.4
74 %endif
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
87 # wayland-client
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
162 # for rgb.txt
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
190 Obsoletes:      Xserver
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)
196
197 %define         tirpc_cflags    $(pkg-config --cflags libtirpc)
198 %define         tirpc_libs      $(pkg-config --libs libtirpc)
199
200 %description
201 Xorg server is a generally used X server which uses display hardware.
202 It requires proper driver for your display hardware.
203
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.
207
208 %package -n xorg-xserver-Xdmx
209 Summary:        Xdmx - distributed multi-head X server
210 Summary(pl.UTF-8):      Xdmx - rozproszony, wielomonitorowy serwer X
211 Group:          X11/Servers
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
218
219 %description -n xorg-xserver-Xdmx
220 Xdmx - distributed multi-head X server.
221
222 %description -n xorg-xserver-Xdmx -l pl.UTF-8
223 Xdmx - rozproszony, wielomonitorowy serwer X.
224
225 %package -n xorg-xserver-Xnest
226 Summary:        Xnest - nested X server
227 Summary(pl.UTF-8):      Xnest - zagnieżdżony serwer X
228 Group:          X11/Servers
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
235
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.
241
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.
246
247 %description -n xorg-xserver-Xnest -l ru.UTF-8
248 Xnest - это сервер X Window System, который работает в окне X. На
249 самом деле это клиент реального X-сервера, который управляет окнами и
250 графическими запросами для Xnest в то время, как Xnest управляет
251 окнами и графическими запросами для своих собственных клиентов.
252
253 %description -n xorg-xserver-Xnest -l uk.UTF-8
254 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
255 клієнт реального X-сервера, який керує вікнами та графічними запитами
256 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
257 своїх власних клієнтів.
258
259 %package -n xorg-xserver-Xephyr
260 Summary:        Xephyr - nested X server
261 Summary(pl.UTF-8):      Xephyr - zagnieżdżony serwer X
262 Group:          X11/Servers
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
268
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.
273
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.
277
278 It also has support for 'visually' debugging what the server is
279 painting.
280
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.
285
286 %package -n xorg-xserver-Xvfb
287 Summary:        Xvfb - virtual framebuffer X server
288 Summary(pl.UTF-8):      Xvfb - serwer X z wirtualnym framebufferem
289 Group:          X11/Servers
290 Requires:       Mesa-libGL >= 7.1.0
291 Requires:       mktemp
292 Requires:       pixman >= %{pixman_ver}
293 Requires:       util-linux
294 Requires:       which
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
301
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.
315
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.
324
325 %package -n xorg-xserver-Xvfb-init
326 Summary:        Init scripts for Xvfb
327 Summary(pl.UTF-8):      Skrypty startowe dla Xvfb
328 Group:          X11/Servers
329 Requires:       xorg-xserver-Xvfb
330
331 %description -n xorg-xserver-Xvfb-init
332 This package contains init scripts for Xvfb and registers Xvfb as
333 system service.
334
335 %description -n xorg-xserver-Xvfb-init -l pl.UTF-8
336 Ten pakiet zawiera skrypty startowe dla Xvfb oraz rejestruje Xvfb jako
337 usługę systemową.
338
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
342 Group:          X11/Servers
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
350
351 %description -n xorg-xserver-Xwayland
352 Xwayland - server integrated into a Wayland window system.
353
354 %description -n xorg-xserver-Xwayland -l pl.UTF-8
355 Xwayland - serwer X integrowalny w Wayland.
356
357 %package devel
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}
387
388 %description devel
389 Header files for X.org server.
390
391 %description devel -l pl.UTF-8
392 Pliki nagłówkowe dla serwera X.org.
393
394 %package source
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
398
399 %description source
400 X.org server source code.
401
402 %description source -l pl.UTF-8
403 Pliki źródłowe dla serwera X.org.
404
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
408 Group:          X11/Servers
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
417
418 %description -n xorg-xserver-libglx
419 GLX extension library for X.org server.
420
421 %description -n xorg-xserver-libglx -l pl.UTF-8
422 Biblioteka rozszerzenia GLX dla serwera X.org.
423
424 %prep
425 %setup -q -n xorg-server-%{version}
426 %patch1 -p1
427
428 %patch4 -p1
429
430 %patch6 -p1
431 %patch7 -p1
432
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
435
436 # support __filemansuffix__ with "x" suffix (per FHS 2.3)
437 %{__sed} -i -e 's,\.so man__filemansuffix__/,.so man5/,' hw/xfree86/man/*.man
438
439 %{__sed} -i -e '1s|#!/usr/bin/python$|#!%{__python}|' config/fdi2iclass.py
440
441 %build
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."
445         exit 1
446 fi
447
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."
451         exit 1
452 fi
453
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."
457         exit 1
458 fi
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."
462         exit 1
463 fi
464
465 %{__libtoolize}
466 %{__aclocal} -I m4
467 %{__autoconf}
468 %{__autoheader}
469 %{__automake}
470 %configure \
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} \
483         --enable-dga \
484         %{?with_dmx:--enable-dmx} \
485         --enable-dri2%{!?with_dri2:=no} \
486         --enable-dri3%{!?with_dri3:=no} \
487         %{?with_glamor:--enable-glamor} \
488         --enable-kdrive \
489         %{?with_libunwind:--enable-libunwind} \
490         %{?with_record:--enable-record} \
491         --enable-secure-rpc \
492         %{?with_xcsecurity:--enable-xcsecurity} \
493         --enable-xephyr \
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} \
499         --without-fop \
500         --enable-suid-wrapper \
501         --with-systemd-daemon
502
503 %{__make}
504
505 %install
506 rm -rf $RPM_BUILD_ROOT
507
508 %if "%{_libdir}" != "%{_exec_prefix}/lib"
509 install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/xorg/modules/dri
510 %endif
511
512 %{__make} install \
513         DESTDIR=$RPM_BUILD_ROOT
514
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
520
521 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
522 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
523
524 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.la
525
526 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d/10-quirks.conf
527
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
532
533 # Xorg.wrap config
534 cat >$RPM_BUILD_ROOT/etc/X11/Xwrapper.config <<EOF
535 # allowed values: rootonly console anybody pam
536 allowed_users = pam
537
538 # set to yes if hardware or console access requires root rights (and Xwrapper fails to detect it)
539 #needs_root_rights = yes
540 EOF
541
542 # compatibility with old xwrapper
543 ln -s %{_libdir}/xorg/Xorg.wrap $RPM_BUILD_ROOT%{_bindir}/Xwrapper
544
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}
549 %{__make} distclean
550 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
551 find -name '*.h' | xargs chmod a-x
552
553 %if %{with systemtap}
554 %{__rm} $RPM_BUILD_ROOT%{_docdir}/xorg-server/Xserver-DTrace.*
555 %endif
556
557 %clean
558 rm -rf $RPM_BUILD_ROOT
559
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
566 %endif
567         sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # obsolete module/' /etc/X11/xorg.conf
568 fi
569
570 %post -n xorg-xserver-Xvfb-init
571 /sbin/chkconfig --add Xvfb
572 %service Xvfb restart
573
574 %preun -n xorg-xserver-Xvfb-init
575 if [ "$1" = "0" ]; then
576         %service -q Xvfb stop
577         /sbin/chkconfig --del Xvfb
578 fi
579
580 %files
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
588 %dir %{_libdir}/xorg
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
612 %endif
613 %dir /var/lib/xkb
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*
635
636 %if %{with dmx}
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*
655 %endif
656
657 %files -n xorg-xserver-Xnest
658 %defattr(644,root,root,755)
659 %attr(755,root,root) %{_bindir}/Xnest
660 %{_mandir}/man1/Xnest.1*
661
662 %files -n xorg-xserver-Xephyr
663 %defattr(644,root,root,755)
664 %attr(755,root,root) %{_bindir}/Xephyr
665 %{_mandir}/man1/Xephyr.1*
666
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*
672
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
677
678 %if %{with wayland}
679 %files -n xorg-xserver-Xwayland
680 %defattr(644,root,root,755)
681 %attr(755,root,root) %{_bindir}/Xwayland
682 %endif
683
684 %files devel
685 %defattr(644,root,root,755)
686 %doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
687 %{_includedir}/xorg
688 %{_aclocaldir}/xorg-server.m4
689 %{_pkgconfigdir}/xorg-server.pc
690
691 %files source
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}
696
697 %files -n xorg-xserver-libglx
698 %defattr(644,root,root,755)
699 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so
This page took 0.086888 seconds and 3 git commands to generate.