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