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