+
+# ABI versions, see hw/xfree86/common/xf86Module.h
+%define xorg_xserver_server_ansic_abi 0.3
+%define xorg_xserver_server_extension_abi 0.3
+%define xorg_xserver_server_font_abi 0.5
+%define xorg_xserver_server_videodrv_abi 2.0
+%define xorg_xserver_server_xinput_abi 2.0
+
Summary: X.org server
Summary(pl.UTF-8): Serwer X.org
Name: xorg-xserver-server
-Version: 1.2.99.901
-Release: 0.1
+Version: 1.4
+Release: 3
License: MIT
Group: X11/Servers
Source0: http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
-# Source0-md5: 7fa14761413ffaf36c0bf591cf419709
-%define mesa_version 6.5.2
+# Source0-md5: a06d9fe4f9f1d459ae02657f9ce64220
+%define mesa_version 7.0.1
Source1: http://dl.sourceforge.net/mesa3d/MesaLib-%{mesa_version}.tar.bz2
-# Source1-md5: e4d894181f1859651658b3704633e10d
+# Source1-md5: c056abd763e899114bf745c9eedbf9ad
Source2: xserver.pamd
Patch0: %{name}-ncurses.patch
Patch1: %{name}-xwrapper.patch
+# nasty hack for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30052
+Patch2: %{name}-gcc-x86_64-workaround.patch
+Patch3: %{name}-link.patch
+Patch4: %{name}-dbus.patch
URL: http://xorg.freedesktop.org/
# for glx headers
BuildRequires: OpenGL-GLX-devel
BuildRequires: autoconf >= 2.57
BuildRequires: automake
BuildRequires: cpp
-BuildRequires: libdrm-devel >= 2.2.0
+BuildRequires: dbus-devel
+BuildRequires: hal-devel
+BuildRequires: libdrm-devel >= 2.3.0
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: pam-devel
BuildRequires: perl-base
+BuildRequires: pixman-devel >= 0.9.5
BuildRequires: pkgconfig >= 1:0.19
BuildRequires: xorg-app-mkfontscale
BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libxkbui-devel >= 1.0.2
BuildRequires: xorg-lib-xtrans-devel
BuildRequires: xorg-proto-bigreqsproto-devel
-BuildRequires: xorg-proto-compositeproto-devel >= 0.3
-BuildRequires: xorg-proto-damageproto-devel
+BuildRequires: xorg-proto-compositeproto-devel >= 0.4
+BuildRequires: xorg-proto-damageproto-devel >= 1.1
BuildRequires: xorg-proto-dmxproto-devel
BuildRequires: xorg-proto-evieext-devel
BuildRequires: xorg-proto-fixesproto-devel >= 4.0
BuildRequires: xorg-proto-fontcacheproto-devel
BuildRequires: xorg-proto-fontsproto-devel
BuildRequires: xorg-proto-glproto-devel >= 1.4.8
-BuildRequires: xorg-proto-inputproto-devel >= 1.4
+BuildRequires: xorg-proto-inputproto-devel >= 1.4.2
BuildRequires: xorg-proto-kbproto-devel >= 1.0.3
BuildRequires: xorg-proto-printproto-devel
-BuildRequires: xorg-proto-randrproto-devel
+BuildRequires: xorg-proto-randrproto-devel >= 1.2
BuildRequires: xorg-proto-recordproto-devel
-BuildRequires: xorg-proto-renderproto-devel
+BuildRequires: xorg-proto-renderproto-devel >= 0.9.3
BuildRequires: xorg-proto-resourceproto-devel
BuildRequires: xorg-proto-scrnsaverproto-devel >= 1.1.0
BuildRequires: xorg-proto-trapproto-devel
BuildRequires: xorg-proto-xf86miscproto-devel
BuildRequires: xorg-proto-xf86vidmodeproto-devel
BuildRequires: xorg-proto-xineramaproto-devel
-BuildRequires: xorg-proto-xproto-devel
+BuildRequires: xorg-proto-xproto-devel >= 7.0.9
BuildRequires: xorg-util-util-macros >= 0.99.2
-# xcalibrateproto, tslib (for KDRIVE only)
-# glitz-devel >= 0.4.3 (for XGL and EGL only)
+#BR: xcalibrateproto, tslib (for KDRIVE only)
+#BR: glitz-devel >= 0.4.3 (for XGL and EGL only)
+Requires: pixman >= 0.9.5
+Requires: xkeyboard-config
# for rgb.txt
Requires: xorg-app-rgb >= 0.99.3
Requires: xorg-app-xkbcomp
-# just for %{_includedir}/bitmaps dir
-Requires: xorg-data-xbitmaps
-Requires: xkeyboard-config
-# xserver requires default fixed and cursosr fonts.
+# xserver requires fixed and cursor fonts
Requires: xorg-font-font-alias
Requires: xorg-font-font-cursor-misc
Requires: xorg-font-font-misc-misc-base >= 1.0.0-0.3
-# for new app-defaults location
-Requires: xorg-lib-libXt >= 1.0.0
+Provides: xorg-xserver-server(ansic-abi) = %{xorg_xserver_server_ansic_abi}
+Provides: xorg-xserver-server(extension-abi) = %{xorg_xserver_server_extension_abi}
+Provides: xorg-xserver-server(font-abi) = %{xorg_xserver_server_font_abi}
+Provides: xorg-xserver-server(videodrv-abi) = %{xorg_xserver_server_videodrv_abi}
+Provides: xorg-xserver-server(xinput-abi) = %{xorg_xserver_server_xinput_abi}
Obsoletes: X11-Xserver < 1:7.0.0
+Obsoletes: X11-driver-i2c < 1:7.0.0
Obsoletes: X11-modules < 1:7.0.0
+Obsoletes: X11-setup < 1:7.0.0
Obsoletes: XFree86-Xserver < 1:7.0.0
Obsoletes: XFree86-modules < 1:7.0.0
+Obsoletes: XFree86-setup < 1:7.0.0
Obsoletes: Xserver
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# avoid self-dependencies on included modules
+%define _noautoreq libscanpci.so libxf1bpp.so
+
%description
Xorg server is a generally used X server which uses display hardware.
It requires proper driver for your display hardware.
Summary: Xvfb - virtual framebuffer X server
Summary(pl.UTF-8): Xvfb - serwer X z wirtualnym framebufferem
Group: X11/Servers
+# requires fixed and cursor fonts
+Requires: xorg-font-font-alias
+Requires: xorg-font-font-cursor-misc
+Requires: xorg-font-font-misc-misc-base >= 1.0.0-0.3
Obsoletes: X11-Xvfb < 1:7.0.0
Obsoletes: XFree86-Xvfb < 1:7.0.0
Summary: Header files for X.org server
Summary(pl.UTF-8): Pliki nagłówkowe dla servera X.org
Group: X11/Development/Libraries
-Requires: libdrm-devel >= 2.2.0
+Requires: libdrm-devel >= 2.3.0
+Requires: pixman-devel >= 0.9.5
Requires: xorg-proto-fontsproto-devel
-Requires: xorg-proto-renderproto-devel
+Requires: xorg-proto-renderproto-devel >= 0.9.3
Requires: xorg-proto-videoproto-devel
Requires: xorg-proto-xextproto-devel
+Requires: xorg-proto-xproto-devel >= 7.0.9
Obsoletes: X11-Xserver-devel < 1:7.0.0
-Obsoletes: X11-XFree86-devel < 1:7.0.0
+Obsoletes: XFree86-Xserver-devel < 1:7.0.0
%description devel
Header files for X.org server.
%description devel -l pl.UTF-8
Pliki nagłówkowe dla serwera X.org.
+%package xorgcfg
+Summary: xorgcfg - graphical configuration tool for X.org server
+Summary(pl.UTF-8): xorgcfg - graficzne narzędzie konfiguracyjne dla serwera X.org
+Group: X11/Servers
+Requires: %{name} = %{version}-%{release}
+# just for %{_includedir}/bitmaps dir?
+Requires: xorg-data-xbitmaps
+# for new app-defaults location
+Requires: xorg-lib-libXt >= 1.0.0
+Requires: xorg-lib-libxkbui >= 1.0.2
+
+%description xorgcfg
+xorgcfg is a tool to configure X.org server, and can be used to either
+write the initial configuration file or make customizations to the
+current configuration.
+
+%description xorgcfg -l pl.UTF-8
+xorgcfg to narzędzie do konfiguracji serwera X.org. Można go użyć do
+utworzenia początkowego pliku konfiguracyjnego lub dokonania
+modyfikacji istniejącej konfiguracji.
+
%package -n xorg-xserver-libglx
Summary: GLX extension library fo X.org server
Summary(pl.UTF-8): Biblioteka rozszerzenia GLX dla serwera X.org
Requires: %{name} = %{version}-%{release}
Provides: xorg-xserver-libglx(glapi) = %{mesa_version}
Provides: xorg-xserver-modules-libglx
-Obsoletes: xorg-driver-video-nvidia
+Obsoletes: X11-OpenGL-core < 1:7.0.0
+Obsoletes: XFree86-OpenGL-core < 1:7.0.0
+Conflicts: xorg-driver-video-nvidia
%description -n xorg-xserver-libglx
GLX extension library fo X.org server.
%setup -q -a1 -n xorg-server-%{version}
%patch0 -p1
%patch1 -p0
+%ifarch %{x8664} i486
+%patch2 -p1
+%endif
+%patch3 -p1
+%patch4 -p0
+
+# xserver uses pixman-1 API/ABI so put that explictly here
+sed -i -e 's#<pixman\.h#<pixman-1/pixman.h#g' ./fb/fb.h ./include/miscstruct.h ./render/picture.h
%build
+if API=$(awk '/#define ABI_ANSIC_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h) && \
+ [ $API != %{xorg_xserver_server_ansic_abi} ]; then
+ echo "Set %%define xorg_xserver_server_ansic_abi to $API and rerun."
+ exit 1
+fi
+
+if API=$(awk '/#define ABI_EXTENSION_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h) && \
+ [ $API != %{xorg_xserver_server_extension_abi} ]; then
+ echo "Set %%define xorg_xserver_server_extension_abi to $API and rerun."
+ exit 1
+fi
+
+if API=$(awk '/#define ABI_FONT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h) && \
+ [ $API != %{xorg_xserver_server_font_abi} ]; then
+ echo "Set %%define xorg_xserver_server_font_abi to $API and rerun."
+ exit 1
+fi
+if API=$(awk '/#define ABI_VIDEODRV_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h) && \
+ [ $API != %{xorg_xserver_server_videodrv_abi} ]; then
+ echo "Set %%define xorg_xserver_server_videodrv_abi to $API and rerun."
+ exit 1
+fi
+if API=$(awk '/#define ABI_XINPUT_VERSION/ { split($0,A,/[(,)]/); printf("%d.%d",A[2], A[3]); }' hw/xfree86/common/xf86Module.h) && \
+ [ $API != %{xorg_xserver_server_xinput_abi} ]; then
+ echo "Set %%define xorg_xserver_server_xinput_abi to $API and rerun."
+ exit 1
+fi
+
%{__libtoolize}
%{__aclocal}
%{__autoconf}
%configure \
--with-os-name="PLD/Linux" \
--with-os-vendor="PLD/Team" \
- --enable-dga \
+ --enable-aiglx \
--enable-builddocs \
+ --enable-dga \
+ --enable-dmx \
+ --enable-glx-tls \
--enable-lbx \
--enable-xevie \
- --enable-dmx \
+ --enable-xorgcfg \
--enable-xprint \
--with-dri-driver-path=%{_libdir}/xorg/modules/dri \
--with-default-font-path="%{_fontsdir}/misc,%{_fontsdir}/TTF,%{_fontsdir}/OTF,%{_fontsdir}/Type1,%{_fontsdir}/100dpi,%{_fontsdir}/75dpi" \
%files
%defattr(644,root,root,755)
-%doc COPYING
+%doc COPYING ChangeLog
%attr(755,root,root) %{_bindir}/X
%attr(755,root,root) %{_bindir}/Xorg
%attr(4755,root,root) %{_bindir}/Xwrapper
%attr(755,root,root) %{_bindir}/out[bwl]
%attr(755,root,root) %{_bindir}/pcitweak
%attr(755,root,root) %{_bindir}/scanpci
-%attr(755,root,root) %{_bindir}/xorgcfg
%attr(755,root,root) %{_bindir}/xorgconfig
-%{_includedir}/X11/bitmaps/*
-%{_includedir}/X11/pixmaps
%{_libdir}/X11/Cards
%{_libdir}/X11/Options
%dir %{_libdir}/xorg
%attr(755,root,root) %{_libdir}/xorg/modules/lib*.so
%dir %{_libdir}/xserver
%{_libdir}/xserver/SecurityPolicy
-%{_datadir}/X11/app-defaults/XOrgCfg
%dir /var/lib/xkb
/var/lib/xkb/README.compiled
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/xserver
%{_mandir}/man1/gtf.1x*
%{_mandir}/man1/pcitweak.1x*
%{_mandir}/man1/scanpci.1x*
-%{_mandir}/man1/xorgcfg.1x*
%{_mandir}/man1/xorgconfig.1*
%{_mandir}/man4/exa.4*
%{_mandir}/man4/fbdevhw.4*
%{_mandir}/man5/xorg.conf.5x*
+%{_mandir}/man5/SecurityPolicy.5x*
%files -n xorg-xserver-Xdmx
%defattr(644,root,root,755)
%{_aclocaldir}/xorg-server.m4
%{_pkgconfigdir}/xorg-server.pc
+%files xorgcfg
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/xorgcfg
+%{_includedir}/X11/bitmaps/*
+%{_includedir}/X11/pixmaps
+%{_datadir}/X11/app-defaults/XOrgCfg
+%{_mandir}/man1/xorgcfg.1x*
+
%files -n xorg-xserver-libglx
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so