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 >= 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 Provides: xorg-xserver-server(ansic-abi) = %{xorg_xserver_server_ansic_abi}
111 Provides: xorg-xserver-server(extension-abi) = %{xorg_xserver_server_extension_abi}
112 Provides: xorg-xserver-server(font-abi) = %{xorg_xserver_server_font_abi}
113 Provides: xorg-xserver-server(videodrv-abi) = %{xorg_xserver_server_videodrv_abi}
114 Provides: xorg-xserver-server(xinput-abi) = %{xorg_xserver_server_xinput_abi}
115 Obsoletes: X11-Xserver < 1:7.0.0
116 Obsoletes: X11-driver-i2c < 1:7.0.0
117 Obsoletes: X11-modules < 1:7.0.0
118 Obsoletes: X11-setup < 1:7.0.0
119 Obsoletes: XFree86-Xserver < 1:7.0.0
120 Obsoletes: XFree86-modules < 1:7.0.0
121 Obsoletes: XFree86-setup < 1:7.0.0
123 Obsoletes: xorg-xserver-server-xorgcfg
124 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
126 # avoid self-dependencies on included modules
127 %define _noautoreq libscanpci.so libxf1bpp.so
130 Xorg server is a generally used X server which uses display hardware.
131 It requires proper driver for your display hardware.
133 %description -l pl.UTF-8
134 Serwer Xorg to podstawowy serwer X wyświetlający obraz na karcie
135 graficznej. Do działania wymaga odpowiedniego sterownika.
137 %package -n xorg-xserver-Xdmx
138 Summary: Xdmx - distributed multi-head X server
139 Summary(pl.UTF-8): Xdmx - rozproszony, wielomonitorowy serwer X
142 %description -n xorg-xserver-Xdmx
143 Xdmx - distributed multi-head X server.
145 %description -n xorg-xserver-Xdmx -l pl.UTF-8
146 Xdmx - rozproszony, wielomonitorowy serwer X.
148 %package -n xorg-xserver-Xnest
149 Summary: Xnest - nested X server
150 Summary(pl.UTF-8): Xnest - zagnieżdżony serwer X
152 Obsoletes: X11-Xnest < 1:7.0.0
153 Obsoletes: XFree86-Xnest < 1:7.0.0
154 Obsoletes: Xserver-Xnest
156 %description -n xorg-xserver-Xnest
157 Xnest is an X Window System server which runs in an X window. Xnest is
158 a 'nested' window server, actually a client of the real X server,
159 which manages windows and graphics requests for Xnest, while Xnest
160 manages the windows and graphics requests for its own clients.
162 %description -n xorg-xserver-Xnest -l pl.UTF-8
163 Xnest jest serwerem X uruchamianym w okienku innego serwera X. Xnest
164 zachowuje się jak klient X w stosunku do prawdziwego serwera X, a jak
165 serwer X dla własnych klientów.
167 %description -n xorg-xserver-Xnest -l ru.UTF-8
168 Xnest - это сервер X Window System, который работает в окне X. На
169 самом деле это клиент реального X-сервера, который управляет окнами и
170 графическими запросами для Xnest в то время, как Xnest управляет
171 окнами и графическими запросами для своих собственных клиентов.
173 %description -n xorg-xserver-Xnest -l uk.UTF-8
174 Xnest - це сервер X Window System, який працює у вікні X. Фактично це
175 клієнт реального X-сервера, який керує вікнами та графічними запитами
176 для Xnest в той час, як Xnest керує вікнами та графічними запитами для
177 своїх власних клієнтів.
179 %package -n xorg-xserver-Xprt
180 Summary: Xprt - Xprint server for X
181 Summary(pl.UTF-8): Xprt - serwer Xprint dla X
183 Obsoletes: X11-Xprt < 1:7.0.0
184 Obsoletes: XFree86-Xprt < 1:7.0.0
186 %description -n xorg-xserver-Xprt
187 Xprt is the Xprint print server for X Window System for non display
188 devices such as printers and fax machines.
190 %description -n xorg-xserver-Xprt -l pl.UTF-8
191 Xprt to serwer wydruków Xprint dla X Window System dla urządzeń nie
192 wyświetlających, takich jak drukarki czy faksy.
194 %package -n xorg-xserver-Xvfb
195 Summary: Xvfb - virtual framebuffer X server
196 Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
198 # requires fixed and cursor fonts
199 Requires: xorg-font-font-alias
200 Requires: xorg-font-font-cursor-misc
201 Requires: xorg-font-font-misc-misc-base >= 1.0.0-0.3
202 Obsoletes: X11-Xvfb < 1:7.0.0
203 Obsoletes: XFree86-Xvfb < 1:7.0.0
205 %description -n xorg-xserver-Xvfb
206 Xvfb (X Virtual Frame Buffer) is an X Window System server that is
207 capable of running on machines with no display hardware and no
208 physical input devices. Xvfb emulates a dumb framebuffer using virtual
209 memory. Xvfb doesn't open any devices, but behaves otherwise as an X
210 display. Xvfb is normally used for testing servers. Using Xvfb, the
211 mfb or cfb code for any depth can be exercised without using real
212 hardware that supports the desired depths. Xvfb has also been used to
213 test X clients against unusual depths and screen configurations, to do
214 batch processing with Xvfb as a background rendering engine, to do
215 load testing, to help with porting an X server to a new platform, and
216 to provide an unobtrusive way of running applications which really
217 don't need an X server but insist on having one.
219 %description -n xorg-xserver-Xvfb -l pl.UTF-8
220 Xvfb (X Virtual Frame Buffer) jest serwerem X, który można uruchamiać
221 na maszynach bez urządzeń wyświetlających ani fizycznych urządzeń
222 wejściowych. Xvfb emuluje prosty framebuffer w pamięci. Zwykle jest
223 używany do testowania serwerów X, może też być używany do testowania
224 klientów X w rzadko używanych konfiguracjach ekranu. Można też użyć
225 Xvfb do uruchomienia aplikacji, które w rzeczywistości nie wymagają
226 serwera X, ale odmawiają uruchomienia bez niego.
229 Summary: Header files for X.org server
230 Summary(pl.UTF-8): Pliki nagłówkowe dla servera X.org
231 Group: X11/Development/Libraries
232 Requires: libdrm-devel >= 2.4.1
233 Requires: pixman-devel >= 0.13.2
234 Requires: xorg-proto-fontsproto-devel
235 Requires: xorg-proto-renderproto-devel >= 0.9.3
236 Requires: xorg-proto-videoproto-devel
237 Requires: xorg-proto-xextproto-devel
238 Requires: xorg-proto-xproto-devel >= 7.0.9
239 Obsoletes: X11-Xserver-devel < 1:7.0.0
240 Obsoletes: XFree86-Xserver-devel < 1:7.0.0
243 Header files for X.org server.
245 %description devel -l pl.UTF-8
246 Pliki nagłówkowe dla serwera X.org.
248 %package -n xorg-xserver-libglx
249 Summary: GLX extension library fo X.org server
250 Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
252 Requires: %{name} = %{version}-%{release}
253 # Mesa version glapi tables in glx/ dir come from
254 Provides: xorg-xserver-libglx(glapi) = 7.1.0
255 Provides: xorg-xserver-modules-libglx
256 Obsoletes: X11-OpenGL-core < 1:7.0.0
257 Obsoletes: XFree86-OpenGL-core < 1:7.0.0
258 %if %{without multigl}
259 Conflicts: xorg-driver-video-nvidia
262 %description -n xorg-xserver-libglx
263 GLX extension library fo X.org server.
265 %description -n xorg-xserver-libglx -l pl.UTF-8
266 Biblioteka rozszerzenia GLX dla serwera X.org.
269 %setup -q -n xorg-server-%{version}
274 # xserver uses pixman-1 API/ABI so put that explictly here
275 sed -i -e 's#<pixman\.h#<pixman-1/pixman.h#g' ./fb/fb.h ./include/miscstruct.h ./render/picture.h
278 API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
279 if [ $API != %{xorg_xserver_server_ansic_abi} ]; then
280 echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
284 API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
285 if [ $API != %{xorg_xserver_server_extension_abi} ]; then
286 echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
290 API=$(awk '/#define ABI_FONT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
291 if [ $API != %{xorg_xserver_server_font_abi} ]; then
292 echo "Set %%define xorg_xserver_server_font_abi to $API and rerun."
295 API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
296 if [ $API != %{xorg_xserver_server_videodrv_abi} ]; then
297 echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
300 API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h)
301 if [ $API != %{xorg_xserver_server_xinput_abi} ]; then
302 echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
312 --with-os-name="PLD/Linux" \
313 --with-os-vendor="PLD/Team" \
314 --disable-builtin-fonts \
315 %{!?with_hal:--disable-config-hal} \
321 --enable-install-libxf86config \
322 %{?with_record:--enable-record} \
323 --enable-secure-rpc \
324 --%{?with_dri2:en}%{!?with_dri2:dis}able-dri2 \
325 --with-dri-driver-path=%{_libdir}/xorg/modules/dri \
326 --with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
327 --with-xkb-output=/var/lib/xkb
332 rm -rf $RPM_BUILD_ROOT
335 DESTDIR=$RPM_BUILD_ROOT
337 install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/xserver
338 install -d $RPM_BUILD_ROOT/etc/security/console.apps
339 install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{dri,drivers,input}
340 :> $RPM_BUILD_ROOT/etc/security/console.apps/xserver
341 :> $RPM_BUILD_ROOT/etc/security/blacklist.xserver
343 rm -f $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{*,*/*}.{la,a}
346 cd $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions
347 mv -f libglx.so libglx.so.%{version}
348 ln -sf libglx.so.%{version} libglx.so
352 rm -rf $RPM_BUILD_ROOT
355 %post -n xorg-xserver-libglx
356 if [ ! -e %{_libdir}/xorg/modules/extensions/libglx.so ]; then
357 ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so
361 %triggerpostun -- xorg-xserver-server < 1.5.0
362 if [ -f /etc/X11/xorg.conf ]; then
363 sed -i -e 's/^\s*RgbPath.*$/#& # obsolete option/' /etc/X11/xorg.conf
364 sed -i -e 's/^\s*Load\s*"type1".*$/#& # obsolete module/' /etc/X11/xorg.conf
365 %if %{without record}
366 sed -i -e 's/^\s*Load\s*"record".*$/#& # module disabled in this build/' /etc/X11/xorg.conf
368 sed -i -e 's/^\s*Load\s*"xtrap".*$/#& # deprecated module, disabled/' /etc/X11/xorg.conf
372 %defattr(644,root,root,755)
373 %doc COPYING ChangeLog
374 %attr(755,root,root) %{_bindir}/X
375 %attr(755,root,root) %{_bindir}/Xorg
376 %attr(4755,root,root) %{_bindir}/Xwrapper
377 %attr(755,root,root) %{_bindir}/cvt
378 %attr(755,root,root) %{_bindir}/gtf
379 %attr(755,root,root) %{_bindir}/in[bwl]
380 %attr(755,root,root) %{_bindir}/ioport
381 %attr(755,root,root) %{_bindir}/out[bwl]
382 %attr(755,root,root) %{_bindir}/xorgconfig
384 %{_libdir}/X11/Options
386 %{_libdir}/xorg/protocol.txt
387 %dir %{_libdir}/xorg/modules
388 %dir %{_libdir}/xorg/modules/dri
389 %dir %{_libdir}/xorg/modules/drivers
390 %dir %{_libdir}/xorg/modules/extensions
391 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdbe.so
392 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdri.so
393 %{?with_dri2:%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libdri2.so}
394 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libextmod.so
395 %{?with_record:%attr(755,root,root) %{_libdir}/xorg/modules/extensions/librecord.so}
396 %dir %{_libdir}/xorg/modules/fonts
397 %attr(755,root,root) %{_libdir}/xorg/modules/fonts/lib*.so
398 %dir %{_libdir}/xorg/modules/input
399 %dir %{_libdir}/xorg/modules/linux
400 %attr(755,root,root) %{_libdir}/xorg/modules/linux/libfbdevhw.so
401 %dir %{_libdir}/xorg/modules/multimedia
402 %attr(755,root,root) %{_libdir}/xorg/modules/multimedia/*.so
403 %attr(755,root,root) %{_libdir}/xorg/modules/lib*.so
405 /var/lib/xkb/README.compiled
406 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xserver
407 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.xserver
408 %config(missingok) /etc/security/console.apps/xserver
409 %{_mandir}/man1/Xorg.1x*
410 %{_mandir}/man1/Xserver.1x*
411 %{_mandir}/man1/cvt.1*
412 %{_mandir}/man1/gtf.1x*
413 %{_mandir}/man1/xorgconfig.1*
414 %{_mandir}/man4/exa.4*
415 %{_mandir}/man4/fbdevhw.4*
416 %{_mandir}/man5/xorg.conf.5x*
418 %files -n xorg-xserver-Xdmx
419 %defattr(644,root,root,755)
420 %attr(755,root,root) %{_bindir}/Xdmx
421 %attr(755,root,root) %{_bindir}/dmxaddinput
422 %attr(755,root,root) %{_bindir}/dmxaddscreen
423 %attr(755,root,root) %{_bindir}/dmxreconfig
424 %attr(755,root,root) %{_bindir}/dmxresize
425 %attr(755,root,root) %{_bindir}/dmxrminput
426 %attr(755,root,root) %{_bindir}/dmxrmscreen
427 %attr(755,root,root) %{_bindir}/dmxtodmx
428 %attr(755,root,root) %{_bindir}/dmxwininfo
429 %attr(755,root,root) %{_bindir}/vdltodmx
430 %attr(755,root,root) %{_bindir}/xdmx
431 %attr(755,root,root) %{_bindir}/xdmxconfig
432 %{_mandir}/man1/Xdmx.1x*
433 %{_mandir}/man1/dmxtodmx.1x*
434 %{_mandir}/man1/vdltodmx.1x*
435 %{_mandir}/man1/xdmxconfig.1x*
437 %files -n xorg-xserver-Xnest
438 %defattr(644,root,root,755)
439 %attr(755,root,root) %{_bindir}/Xnest
440 %{_mandir}/man1/Xnest.1x*
442 %files -n xorg-xserver-Xvfb
443 %defattr(644,root,root,755)
444 %attr(755,root,root) %{_bindir}/Xvfb
445 %{_mandir}/man1/Xvfb.1x*
448 %defattr(644,root,root,755)
450 %{_libdir}/libxf86config.a
451 %{_aclocaldir}/xorg-server.m4
452 %{_pkgconfigdir}/xorg-server.pc
454 %files -n xorg-xserver-libglx
455 %defattr(644,root,root,755)
457 %ghost %{_libdir}/xorg/modules/extensions/libglx.so
458 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so.%{version}
460 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so