3 %bcond_with multigl # package libglx.so in a way allowing concurrent install with nvidia/fglrx drivers
4 %bcond_without dri2 # DRI2 support
5 %bcond_without hal # HAL support
6 %bcond_without dmx # DMX support
7 %bcond_with record # RECORD extension
9 # ABI versions, see hw/xfree86/common/xf86Module.h
10 %define xorg_xserver_server_ansic_abi 0.4
11 %define xorg_xserver_server_extension_abi 2.0
12 %define xorg_xserver_server_font_abi 0.6
13 %define xorg_xserver_server_videodrv_abi 5.0
14 %define xorg_xserver_server_xinput_abi 4.0
17 Summary(pl.UTF-8): Serwer X.org
18 Name: xorg-xserver-server
20 Release: 0.2%{?with_multigl:.mgl}
23 Source0: http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
24 # Source0-md5: db87577456968e64c774124cc761cc7c
26 Patch0: %{name}-xwrapper.patch
27 Patch1: %{name}-pic-libxf86config.patch
28 Patch2: %{name}-fb-size.patch
29 URL: http://xorg.freedesktop.org/
30 BuildRequires: Mesa-libGL-devel >= 7.2
32 BuildRequires: OpenGL-GLX-devel
33 BuildRequires: autoconf >= 2.57
34 BuildRequires: automake
37 BuildRequires: dbus-devel
38 BuildRequires: hal-devel
40 BuildRequires: libdrm-devel >= 2.4.1
41 BuildRequires: libtool
42 BuildRequires: ncurses-devel
43 BuildRequires: pam-devel
44 BuildRequires: perl-base
45 BuildRequires: pixman-devel >= 0.13.2
46 BuildRequires: pkgconfig >= 1:0.19
47 BuildRequires: xorg-app-mkfontscale
48 BuildRequires: xorg-lib-libX11-devel
49 BuildRequires: xorg-lib-libXau-devel
50 BuildRequires: xorg-lib-libXaw-devel
51 BuildRequires: xorg-lib-libXdmcp-devel
52 BuildRequires: xorg-lib-libXext-devel
53 BuildRequires: xorg-lib-libXfont-devel
54 BuildRequires: xorg-lib-libXi-devel >= 1.2
55 BuildRequires: xorg-lib-libXmu-devel
56 BuildRequires: xorg-lib-libXpm-devel
57 BuildRequires: xorg-lib-libXrender-devel
58 BuildRequires: xorg-lib-libXres-devel
59 BuildRequires: xorg-lib-libXt-devel >= 1.0.0
60 BuildRequires: xorg-lib-libXtst-devel
61 BuildRequires: xorg-lib-libXxf86dga-devel
62 BuildRequires: xorg-lib-libXxf86misc-devel
63 BuildRequires: xorg-lib-libXxf86vm-devel
64 %{?with_dmx:BuildRequires: xorg-lib-libdmx-devel}
65 BuildRequires: xorg-lib-libfontenc-devel
66 BuildRequires: xorg-lib-libpciaccess-devel
67 BuildRequires: xorg-lib-libxkbfile-devel
68 BuildRequires: xorg-lib-libxkbui-devel >= 1.0.2
69 BuildRequires: xorg-lib-xtrans-devel >= 1.2.2
70 BuildRequires: xorg-proto-bigreqsproto-devel
71 BuildRequires: xorg-proto-compositeproto-devel >= 0.4
72 BuildRequires: xorg-proto-damageproto-devel >= 1.1
73 %{?with_dmx:BuildRequires: xorg-proto-dmxproto-devel}
74 %{?with_dri2:BuildRequires: xorg-proto-dri2proto-devel >= 1.99.3}
75 BuildRequires: xorg-proto-evieext-devel
76 BuildRequires: xorg-proto-fixesproto-devel >= 4.0
77 BuildRequires: xorg-proto-fontcacheproto-devel
78 BuildRequires: xorg-proto-fontsproto-devel
79 BuildRequires: xorg-proto-glproto-devel >= 1.4.8
80 BuildRequires: xorg-proto-inputproto-devel >= 1.5.0
81 BuildRequires: xorg-proto-kbproto-devel >= 1.0.3
82 BuildRequires: xorg-proto-printproto-devel
83 BuildRequires: xorg-proto-randrproto-devel >= 1.2.99.2
84 %{?with_record:BuildRequires: xorg-proto-recordproto-devel}
85 BuildRequires: xorg-proto-renderproto-devel >= 0.9.3
86 BuildRequires: xorg-proto-resourceproto-devel
87 BuildRequires: xorg-proto-scrnsaverproto-devel >= 1.1.0
88 BuildRequires: xorg-proto-videoproto-devel
89 BuildRequires: xorg-proto-xcmiscproto-devel
90 BuildRequires: xorg-proto-xextproto-devel >= 7.0.3
91 BuildRequires: xorg-proto-xf86bigfontproto-devel
92 BuildRequires: xorg-proto-xf86dgaproto-devel
93 BuildRequires: xorg-proto-xf86driproto-devel >= 2.0.4
94 BuildRequires: xorg-proto-xf86miscproto-devel
95 BuildRequires: xorg-proto-xf86vidmodeproto-devel
96 BuildRequires: xorg-proto-xineramaproto-devel
97 BuildRequires: xorg-proto-xproto-devel >= 7.0.13
98 BuildRequires: xorg-util-util-macros >= 0.99.2
99 #BR: xcalibrateproto, tslib (for KDRIVE only)
100 #BR: glitz-devel >= 0.4.3 (for XGL and EGL only)
101 Requires(triggerpostun): sed >= 4.0
102 Requires: pixman >= 0.13.2
103 Requires: xkeyboard-config
105 Requires: xorg-app-rgb >= 0.99.3
106 Requires: xorg-app-xkbcomp
107 # xserver requires fixed and cursor fonts
108 Requires: xorg-font-font-alias
109 Requires: xorg-font-font-cursor-misc
110 Requires: xorg-font-font-misc-misc-base >= 1.0.0-0.3
111 Suggests: xkeyboard-config
112 Provides: xorg-xserver-server(ansic-abi) = %{xorg_xserver_server_ansic_abi}
113 Provides: xorg-xserver-server(extension-abi) = %{xorg_xserver_server_extension_abi}
114 Provides: xorg-xserver-server(font-abi) = %{xorg_xserver_server_font_abi}
115 Provides: xorg-xserver-server(videodrv-abi) = %{xorg_xserver_server_videodrv_abi}
116 Provides: xorg-xserver-server(xinput-abi) = %{xorg_xserver_server_xinput_abi}
117 Obsoletes: X11-Xserver < 1:7.0.0
118 Obsoletes: X11-driver-i2c < 1:7.0.0
119 Obsoletes: X11-modules < 1:7.0.0
120 Obsoletes: X11-setup < 1:7.0.0
121 Obsoletes: XFree86-Xserver < 1:7.0.0
122 Obsoletes: XFree86-modules < 1:7.0.0
123 Obsoletes: XFree86-setup < 1:7.0.0
125 Obsoletes: xorg-xserver-server-xorgcfg
126 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
128 # avoid self-dependencies on included modules
129 %define _noautoreq libscanpci.so libxf1bpp.so
132 Xorg server is a generally used X server which uses display hardware.
133 It requires proper driver for your display hardware.
135 %description -l pl.UTF-8
136 Serwer Xorg to podstawowy serwer X wyświetlający obraz na karcie
137 graficznej. Do działania wymaga odpowiedniego sterownika.
139 %package -n xorg-xserver-Xdmx
140 Summary: Xdmx - distributed multi-head X server
141 Summary(pl.UTF-8): Xdmx - rozproszony, wielomonitorowy serwer X
144 %description -n xorg-xserver-Xdmx
145 Xdmx - distributed multi-head X server.
147 %description -n xorg-xserver-Xdmx -l pl.UTF-8
148 Xdmx - rozproszony, wielomonitorowy serwer X.
150 %package -n xorg-xserver-Xnest
151 Summary: Xnest - nested X server
152 Summary(pl.UTF-8): Xnest - zagnieżdżony serwer X
154 Obsoletes: X11-Xnest < 1:7.0.0
155 Obsoletes: XFree86-Xnest < 1:7.0.0
156 Obsoletes: Xserver-Xnest
158 %description -n xorg-xserver-Xnest
159 Xnest is an X Window System server which runs in an X window. Xnest is
160 a 'nested' window server, actually a client of the real X server,
161 which manages windows and graphics requests for Xnest, while Xnest
162 manages the windows and graphics requests for its own clients.
164 %description -n xorg-xserver-Xnest -l pl.UTF-8
165 Xnest jest serwerem X uruchamianym w okienku innego serwera X. Xnest
166 zachowuje się jak klient X w stosunku do prawdziwego serwera X, a jak
167 serwer X dla własnych klientów.
169 %description -n xorg-xserver-Xnest -l ru.UTF-8
170 Xnest - это сервер X Window System, который работает в окне X. На
171 самом деле это клиент реального X-сервера, который управляет окнами и
172 графическими запросами для Xnest в то время, как Xnest управляет
173 окнами и графическими запросами для своих собственных клиентов.
175 %description -n xorg-xserver-Xnest -l uk.UTF-8
176 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
177 клієнт реального X-сервера, який керує вікнами та графічними запитами
178 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
179 своїх власних клієнтів.
181 %package -n xorg-xserver-Xprt
182 Summary: Xprt - Xprint server for X
183 Summary(pl.UTF-8): Xprt - serwer Xprint dla X
185 Obsoletes: X11-Xprt < 1:7.0.0
186 Obsoletes: XFree86-Xprt < 1:7.0.0
188 %description -n xorg-xserver-Xprt
189 Xprt is the Xprint print server for X Window System for non display
190 devices such as printers and fax machines.
192 %description -n xorg-xserver-Xprt -l pl.UTF-8
193 Xprt to serwer wydruków Xprint dla X Window System dla urządzeń nie
194 wyświetlających, takich jak drukarki czy faksy.
196 %package -n xorg-xserver-Xvfb
197 Summary: Xvfb - virtual framebuffer X server
198 Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
200 # requires fixed and cursor fonts
201 Requires: xorg-font-font-alias
202 Requires: xorg-font-font-cursor-misc
203 Requires: xorg-font-font-misc-misc-base >= 1.0.0-0.3
204 Obsoletes: X11-Xvfb < 1:7.0.0
205 Obsoletes: XFree86-Xvfb < 1:7.0.0
207 %description -n xorg-xserver-Xvfb
208 Xvfb (X Virtual Frame Buffer) is an X Window System server that is
209 capable of running on machines with no display hardware and no
210 physical input devices. Xvfb emulates a dumb framebuffer using virtual
211 memory. Xvfb doesn't open any devices, but behaves otherwise as an X
212 display. Xvfb is normally used for testing servers. Using Xvfb, the
213 mfb or cfb code for any depth can be exercised without using real
214 hardware that supports the desired depths. Xvfb has also been used to
215 test X clients against unusual depths and screen configurations, to do
216 batch processing with Xvfb as a background rendering engine, to do
217 load testing, to help with porting an X server to a new platform, and
218 to provide an unobtrusive way of running applications which really
219 don't need an X server but insist on having one.
221 %description -n xorg-xserver-Xvfb -l pl.UTF-8
222 Xvfb (X Virtual Frame Buffer) jest serwerem X, który można uruchamiać
223 na maszynach bez urządzeń wyświetlających ani fizycznych urządzeń
224 wejściowych. Xvfb emuluje prosty framebuffer w pamięci. Zwykle jest
225 używany do testowania serwerów X, może też być używany do testowania
226 klientów X w rzadko używanych konfiguracjach ekranu. Można też użyć
227 Xvfb do uruchomienia aplikacji, które w rzeczywistości nie wymagają
228 serwera X, ale odmawiają uruchomienia bez niego.
231 Summary: Header files for X.org server
232 Summary(pl.UTF-8): Pliki nagłówkowe dla servera X.org
233 Group: X11/Development/Libraries
234 Requires: libdrm-devel >= 2.4.1
235 Requires: pixman-devel >= 0.13.2
236 Requires: xorg-lib-libxkbfile-devel
237 Requires: xorg-proto-fontsproto-devel
238 Requires: xorg-proto-renderproto-devel >= 0.9.3
239 Requires: xorg-proto-videoproto-devel
240 Requires: xorg-proto-xextproto-devel
241 Requires: xorg-proto-xproto-devel >= 7.0.9
242 Obsoletes: X11-Xserver-devel < 1:7.0.0
243 Obsoletes: XFree86-Xserver-devel < 1:7.0.0
246 Header files for X.org server.
248 %description devel -l pl.UTF-8
249 Pliki nagłówkowe dla serwera X.org.
251 %package -n xorg-xserver-libdri
252 Summary: DRI extension library for X.org server
253 Summary(pl.UTF-8): Biblioteka rozszerzenia DRI dla serwera X.org
255 Requires: %{name} = %{version}-%{release}
256 Provides: xorg-xserver-modules-libdri
257 %if %{without multigl}
258 Conflicts: xorg-driver-video-nvidia
259 Conflicts: xorg-driver-video-fglrx-libdri
262 %description -n xorg-xserver-libdri
263 DRI extension library for X.org server.
265 %description -n xorg-xserver-libdri -l pl.UTF-8
266 Biblioteka rozszerzenia DRI dla serwera X.org.
268 %package -n xorg-xserver-libglx
269 Summary: GLX extension library for X.org server
270 Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
272 Requires: %{name} = %{version}-%{release}
273 # Mesa version glapi tables in glx/ dir come from
274 Provides: xorg-xserver-libglx(glapi) = 7.1.0
275 Provides: xorg-xserver-modules-libglx
276 Obsoletes: X11-OpenGL-core < 1:7.0.0
277 Obsoletes: XFree86-OpenGL-core < 1:7.0.0
278 %if %{without multigl}
279 Conflicts: xorg-driver-video-nvidia
280 Conflicts: xorg-driver-video-fglrx-libglx
283 %description -n xorg-xserver-libglx
284 GLX extension library for X.org server.
286 %description -n xorg-xserver-libglx -l pl.UTF-8
287 Biblioteka rozszerzenia GLX dla serwera X.org.
290 %setup -q -n xorg-server-%{version}
295 # xserver uses pixman-1 API/ABI so put that explictly here
296 sed -i -e 's#<pixman\.h#<pixman-1/pixman.h#g' ./fb/fb.h ./include/miscstruct.h ./render/picture.h
299 API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
300 if [ $API != %{xorg_xserver_server_ansic_abi} ]; then
301 echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
305 API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
306 if [ $API != %{xorg_xserver_server_extension_abi} ]; then
307 echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
311 API=$(awk '/#define ABI_FONT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
312 if [ $API != %{xorg_xserver_server_font_abi} ]; then
313 echo "Set %%define xorg_xserver_server_font_abi to $API and rerun."
316 API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
317 if [ $API != %{xorg_xserver_server_videodrv_abi} ]; then
318 echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
321 API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
322 if [ $API != %{xorg_xserver_server_xinput_abi} ]; then
323 echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
333 --with-os-name="PLD/Linux" \
334 --with-os-vendor="PLD/Team" \
335 --disable-builtin-fonts \
336 %{!?with_hal:--disable-config-hal} \
340 %{?with_dmx:--enable-dmx} \
342 --enable-install-libxf86config \
343 %{?with_record:--enable-record} \
344 --enable-secure-rpc \
345 --%{?with_dri2:en}%{!?with_dri2:dis}able-dri2 \
346 --with-dri-driver-path=%{_libdir}/xorg/modules/dri \
347 --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
348 --with-xkb-output=/var/lib/xkb
353 rm -rf $RPM_BUILD_ROOT
356 DESTDIR=$RPM_BUILD_ROOT
358 install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/xserver
359 install -d $RPM_BUILD_ROOT/etc/security/console.apps
360 install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{dri,drivers,input}
361 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
362 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
364 rm -f $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.{la,a}
367 cd $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions
368 mv -f libglx.so libglx.so.%{version}
369 ln -sf libglx.so.%{version} libglx.so
373 rm -rf $RPM_BUILD_ROOT
376 %post -n xorg-xserver-libglx
377 if [ ! -e %{_libdir}/xorg/modules/extensions/libglx.so ]; then
378 ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so
382 %triggerpostun -- xorg-xserver-server < 1.5.0
383 if [ -f /etc/X11/xorg.conf ]; then
384 sed -i -e 's/^\s*RgbPath.*$/#& # obsolete option/' /etc/X11/xorg.conf
385 sed -i -e 's/^\s*Load\s*"type1".*$/#& # obsolete module/' /etc/X11/xorg.conf
386 %if %{without record}
387 sed -i -e 's/^\s*Load\s*"record".*$/#& # module disabled in this build/' /etc/X11/xorg.conf
389 sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # obsolete module/' /etc/X11/xorg.conf
393 %defattr(644,root,root,755)
394 %doc COPYING ChangeLog
395 %attr(755,root,root) %{_bindir}/X
396 %attr(755,root,root) %{_bindir}/Xorg
397 %attr(4755,root,root) %{_bindir}/Xwrapper
398 %attr(755,root,root) %{_bindir}/cvt
399 %attr(755,root,root) %{_bindir}/gtf
400 %{_libdir}/X11/Options
402 %{_libdir}/xorg/protocol.txt
403 %dir %{_libdir}/xorg/modules
404 %dir %{_libdir}/xorg/modules/dri
405 %dir %{_libdir}/xorg/modules/drivers
406 %dir %{_libdir}/xorg/modules/extensions
407 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdbe.so
408 %{?with_dri2:%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdri2.so}
409 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libextmod.so
410 %{?with_record:%attr(755,root,root) %{_libdir}/xorg/modules/extensions/librecord.so}
411 %dir %{_libdir}/xorg/modules/input
412 %dir %{_libdir}/xorg/modules/linux
413 %attr(755,root,root) %{_libdir}/xorg/modules/linux/libfbdevhw.so
414 %dir %{_libdir}/xorg/modules/multimedia
415 %attr(755,root,root) %{_libdir}/xorg/modules/multimedia/*.so
416 %attr(755,root,root) %{_libdir}/xorg/modules/lib*.so
418 /var/lib/xkb/README.compiled
419 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xserver
420 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.xserver
421 %config(missingok) /etc/security/console.apps/xserver
422 %{_mandir}/man1/Xorg.1x*
423 %{_mandir}/man1/Xserver.1x*
424 %{_mandir}/man1/cvt.1*
425 %{_mandir}/man1/gtf.1x*
426 %{_mandir}/man4/exa.4*
427 %{_mandir}/man4/fbdevhw.4*
428 %{_mandir}/man5/xorg.conf.5x*
431 %files -n xorg-xserver-Xdmx
432 %defattr(644,root,root,755)
433 %attr(755,root,root) %{_bindir}/Xdmx
434 %attr(755,root,root) %{_bindir}/dmxaddinput
435 %attr(755,root,root) %{_bindir}/dmxaddscreen
436 %attr(755,root,root) %{_bindir}/dmxreconfig
437 %attr(755,root,root) %{_bindir}/dmxresize
438 %attr(755,root,root) %{_bindir}/dmxrminput
439 %attr(755,root,root) %{_bindir}/dmxrmscreen
440 %attr(755,root,root) %{_bindir}/dmxtodmx
441 %attr(755,root,root) %{_bindir}/dmxwininfo
442 %attr(755,root,root) %{_bindir}/vdltodmx
443 %attr(755,root,root) %{_bindir}/xdmx
444 %attr(755,root,root) %{_bindir}/xdmxconfig
445 %{_mandir}/man1/Xdmx.1x*
446 %{_mandir}/man1/dmxtodmx.1x*
447 %{_mandir}/man1/vdltodmx.1x*
448 %{_mandir}/man1/xdmxconfig.1x*
451 %files -n xorg-xserver-Xnest
452 %defattr(644,root,root,755)
453 %attr(755,root,root) %{_bindir}/Xnest
454 %{_mandir}/man1/Xnest.1x*
456 %files -n xorg-xserver-Xvfb
457 %defattr(644,root,root,755)
458 %attr(755,root,root) %{_bindir}/Xvfb
459 %{_mandir}/man1/Xvfb.1x*
462 %defattr(644,root,root,755)
464 %{_libdir}/libxf86config.a
465 %{_aclocaldir}/xorg-server.m4
466 %{_pkgconfigdir}/xorg-server.pc
468 %files -n xorg-xserver-libdri
469 %defattr(644,root,root,755)
470 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdri.so
472 %files -n xorg-xserver-libglx
473 %defattr(644,root,root,755)
475 %ghost %{_libdir}/xorg/modules/extensions/libglx.so
476 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so.%{version}
478 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so