]> git.pld-linux.org Git - packages/xorg-xserver-server.git/blob - xorg-xserver-server.spec
- eglstream bcond (BR: egl-wayland + libepoxy 1.5.0)
[packages/xorg-xserver-server.git] / xorg-xserver-server.spec
1 # TODO
2 # - use epoxy >= 1.4.4 when available
3 # - consider XSELINUX by default
4 # - Xvfb initscript runs Xvfb as root! add user there!
5 #
6 # Conditional build:
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
22 #
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
28
29 %define pixman_ver      0.30.0
30
31 %ifarch x32
32 %undefine       with_libunwind
33 %endif
34
35 Summary:        X.org server
36 Summary(pl.UTF-8):      Serwer X.org
37 Name:           xorg-xserver-server
38 Version:        1.20.0
39 Release:        1
40 License:        MIT
41 Group:          X11/Servers
42 Source0:        http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
43 # Source0-md5:  c1ca1ea0a905ea788da03c77cc38b06e
44 Source1:        10-quirks.conf
45 Source2:        xserver.pamd
46 Source10:       %{name}-Xvfb.init
47 Source11:       %{name}-Xvfb.sysconfig
48 Source12:       xvfb-run.sh
49 Patch1:         %{name}-xwrapper-pam.patch
50
51 Patch4:         %{name}-builtin-SHA1.patch
52
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}
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} || %{with wayland}
73 BuildRequires:  libepoxy-devel # >= 1.4.4
74 %{?with_eglstream:BuildRequires:        libepoxy-devel >= 1.5.0}
75 %endif
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
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 >= 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
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 %description
198 Xorg server is a generally used X server which uses display hardware.
199 It requires proper driver for your display hardware.
200
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.
204
205 %package -n xorg-xserver-Xdmx
206 Summary:        Xdmx - distributed multi-head X server
207 Summary(pl.UTF-8):      Xdmx - rozproszony, wielomonitorowy serwer X
208 Group:          X11/Servers
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
215
216 %description -n xorg-xserver-Xdmx
217 Xdmx - distributed multi-head X server.
218
219 %description -n xorg-xserver-Xdmx -l pl.UTF-8
220 Xdmx - rozproszony, wielomonitorowy serwer X.
221
222 %package -n xorg-xserver-Xnest
223 Summary:        Xnest - nested X server
224 Summary(pl.UTF-8):      Xnest - zagnieżdżony serwer X
225 Group:          X11/Servers
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
232
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.
238
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.
243
244 %description -n xorg-xserver-Xnest -l ru.UTF-8
245 Xnest - это сервер X Window System, который работает в окне X. На
246 самом деле это клиент реального X-сервера, который управляет окнами и
247 графическими запросами для Xnest в то время, как Xnest управляет
248 окнами и графическими запросами для своих собственных клиентов.
249
250 %description -n xorg-xserver-Xnest -l uk.UTF-8
251 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
252 клієнт реального X-сервера, який керує вікнами та графічними запитами
253 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
254 своїх власних клієнтів.
255
256 %package -n xorg-xserver-Xephyr
257 Summary:        Xephyr - nested X server
258 Summary(pl.UTF-8):      Xephyr - zagnieżdżony serwer X
259 Group:          X11/Servers
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
265
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.
270
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.
274
275 It also has support for 'visually' debugging what the server is
276 painting.
277
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.
282
283 %package -n xorg-xserver-Xvfb
284 Summary:        Xvfb - virtual framebuffer X server
285 Summary(pl.UTF-8):      Xvfb - serwer X z wirtualnym framebufferem
286 Group:          X11/Servers
287 Requires:       Mesa-libGL >= 7.1.0
288 Requires:       mktemp
289 Requires:       pixman >= %{pixman_ver}
290 Requires:       util-linux
291 Requires:       which
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
298
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.
312
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.
321
322 %package -n xorg-xserver-Xvfb-init
323 Summary:        Init scripts for Xvfb
324 Summary(pl.UTF-8):      Skrypty startowe dla Xvfb
325 Group:          X11/Servers
326 Requires:       xorg-xserver-Xvfb
327
328 %description -n xorg-xserver-Xvfb-init
329 This package contains init scripts for Xvfb and registers Xvfb as
330 system service.
331
332 %description -n xorg-xserver-Xvfb-init -l pl.UTF-8
333 Ten pakiet zawiera skrypty startowe dla Xvfb oraz rejestruje Xvfb jako
334 usługę systemową.
335
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
339 Group:          X11/Servers
340 %{?with_eglstream:Requires:     egl-wayland >= 1.0.2}
341 %if %{with eglstream}
342 Requires:       libepoxy >= 1.5.0
343 %else
344 Requires:       libepoxy # >= 1.4.4
345 %endif
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
351
352 %description -n xorg-xserver-Xwayland
353 Xwayland - server integrated into a Wayland window system.
354
355 %description -n xorg-xserver-Xwayland -l pl.UTF-8
356 Xwayland - serwer X integrowalny w Wayland.
357
358 %package devel
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}
388
389 %description devel
390 Header files for X.org server.
391
392 %description devel -l pl.UTF-8
393 Pliki nagłówkowe dla serwera X.org.
394
395 %package source
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
399
400 %description source
401 X.org server source code.
402
403 %description source -l pl.UTF-8
404 Pliki źródłowe dla serwera X.org.
405
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
409 Group:          X11/Servers
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
418
419 %description -n xorg-xserver-libglx
420 GLX extension library for X.org server.
421
422 %description -n xorg-xserver-libglx -l pl.UTF-8
423 Biblioteka rozszerzenia GLX dla serwera X.org.
424
425 %prep
426 %setup -q -n xorg-server-%{version}
427 %patch1 -p1
428
429 %patch4 -p1
430
431 %patch6 -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 %build
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."
443         exit 1
444 fi
445
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."
449         exit 1
450 fi
451
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."
455         exit 1
456 fi
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."
460         exit 1
461 fi
462
463 %{__libtoolize}
464 %{__aclocal} -I m4
465 %{__autoconf}
466 %{__autoheader}
467 %{__automake}
468 %configure \
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} \
479         --enable-dga \
480         %{?with_dmx:--enable-dmx} \
481         --enable-dri2%{!?with_dri2:=no} \
482         --enable-dri3%{!?with_dri3:=no} \
483         %{?with_glamor:--enable-glamor} \
484         --enable-kdrive \
485         %{?with_libunwind:--enable-libunwind} \
486         %{?with_record:--enable-record} \
487         --enable-secure-rpc \
488         %{?with_xcsecurity:--enable-xcsecurity} \
489         --enable-xephyr \
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} \
495         --without-fop \
496         --enable-suid-wrapper \
497         --with-systemd-daemon
498
499 %{__make} -j1
500
501 %install
502 rm -rf $RPM_BUILD_ROOT
503
504 %if "%{_libdir}" != "%{_exec_prefix}/lib"
505 install -d $RPM_BUILD_ROOT%{_exec_prefix}/lib/xorg/modules/dri
506 %endif
507
508 %{__make} install \
509         DESTDIR=$RPM_BUILD_ROOT
510
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
516
517 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
518 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
519
520 %{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.la
521
522 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d/10-quirks.conf
523
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
528
529 # Xorg.wrap config
530 cat >$RPM_BUILD_ROOT/etc/X11/Xwrapper.config <<EOF
531 # allowed values: rootonly console anybody pam
532 allowed_users = pam
533
534 # set to yes if hardware or console access requires root rights (and Xwrapper fails to detect it)
535 #needs_root_rights = yes
536 EOF
537
538 # compatibility with old xwrapper
539 ln -s %{_libdir}/xorg/Xorg.wrap $RPM_BUILD_ROOT%{_bindir}/Xwrapper
540
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}
545 %{__make} distclean
546 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
547 find -name '*.h' | xargs chmod a-x
548
549 %if %{with systemtap}
550 %{__rm} $RPM_BUILD_ROOT%{_docdir}/xorg-server/Xserver-DTrace.*
551 %endif
552
553 %clean
554 rm -rf $RPM_BUILD_ROOT
555
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
562 %endif
563         sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # obsolete module/' /etc/X11/xorg.conf
564 fi
565
566 %post -n xorg-xserver-Xvfb-init
567 /sbin/chkconfig --add Xvfb
568 %service Xvfb restart
569
570 %preun -n xorg-xserver-Xvfb-init
571 if [ "$1" = "0" ]; then
572         %service -q Xvfb stop
573         /sbin/chkconfig --del Xvfb
574 fi
575
576 %files
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
584 %dir %{_libdir}/xorg
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
608 %endif
609 %dir /var/lib/xkb
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*
631
632 %if %{with dmx}
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*
651 %endif
652
653 %files -n xorg-xserver-Xnest
654 %defattr(644,root,root,755)
655 %attr(755,root,root) %{_bindir}/Xnest
656 %{_mandir}/man1/Xnest.1*
657
658 %files -n xorg-xserver-Xephyr
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{_bindir}/Xephyr
661 %{_mandir}/man1/Xephyr.1*
662
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*
668
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
673
674 %if %{with wayland}
675 %files -n xorg-xserver-Xwayland
676 %defattr(644,root,root,755)
677 %attr(755,root,root) %{_bindir}/Xwayland
678 %endif
679
680 %files devel
681 %defattr(644,root,root,755)
682 %doc doc/{Xinput,Xserver-spec}.html %{?with_systemtap:doc/dtrace/Xserver-DTrace.html}
683 %{_includedir}/xorg
684 %{_aclocaldir}/xorg-server.m4
685 %{_pkgconfigdir}/xorg-server.pc
686
687 %files source
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}
692
693 %files -n xorg-xserver-libglx
694 %defattr(644,root,root,755)
695 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so
This page took 0.106046 seconds and 4 git commands to generate.