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