--- XFree86.spec.old	2003-03-14 07:38:19.000000000 +0100
+++ XFree86.spec	2003-03-14 01:07:57.000000000 +0100
@@ -239,6 +242,10 @@
 # Patch for building in Debug mode
 Patch700: XFree86-4.2.99.3-acecad-debug.patch.bz2
 
+# Patch for concurrent running X servers
+Patch800: multihead.diff.bz2
+
+
 %description
 If you want to install the X Window System (TM) on
 your machine, you'll need to install XFree86.
@@ -457,6 +464,19 @@
 %description server
 XFree86-server is the new generation of X server from XFree86.
 
+%package concurrent-server
+Summary: The X server and associated modules
+Group: System/XFree86
+Requires: XFree86 = %{version}-%{release}
+Requires: XFree86-xfs
+
+%description concurrent-server
+XFree86-concurrent-server is X server wich support concurrent running X servers.
+If you install kernel which supports multiple X servers you can use this X server
+to have multiple X servers/users at the same time.For information consult 
+with http://startx.times.lv/ for how to get such kernel and how to configure
+your system for multiple users.
+
 %ifarch %{ix86}
 %package glide-module
 Summary: The glide module for XFree86 server.
@@ -596,6 +616,8 @@
 
 %patch550 -p1 -b .nv-init
 
+%patch800 -p1 -b .multihead
+
 # backup the original files (so we can look at them later) and use our own
 cp xc/nls/compose.dir xc/nls/compose.dir.orig
 cp xc/nls/locale.alias xc/nls/locale.alias.orig
@@ -758,6 +780,13 @@
         xc/programs/Xserver/hw/xfree86/drivers/mga
 %endif
 
+cp -p xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c \
+        xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c.patched
+
+cp -f xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c.multihead \
+        xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c
+
+
 # DrakX fonts
 mkdir mdk-fonts
 bzcat %{SOURCE151} | tar xf - -C mdk-fonts
@@ -799,6 +828,26 @@
 	TOPPARALLELMFLAGS="$PARALLELMFLAGS"
 %endif
 
+# concurrent X server
+
+mv xc/programs/Xserver/XFree86 xc/programs/Xserver/XFree86-orig
+mv xc/programs/Xserver/Xnest xc/programs/Xserver/Xnest-orig
+mv xc/programs/Xserver/Xprt xc/programs/Xserver/Xprt-orig
+mv xc/programs/Xserver/Xvfb xc/programs/Xserver/Xvfb-orig
+#%patch800 -p1 -b .multihead
+cp -f xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c.patched \
+        xc/programs/Xserver/hw/xfree86/common/xf86pciBus.c
+rm -f xc/programs/Xserver/hw/xfree86/common/xf86pciBus.o
+cd xc/programs/Xserver
+make
+mv XFree86 XFree86-concurrent
+mv -f XFree86-orig XFree86
+mv -f Xnest-orig Xnest
+mv -f Xprt-orig Xprt
+mv -f Xvfb-orig Xvfb
+cd ../../../
+# end concurrent X server
+
 # DrakX fonts
 for i in mdk-fonts/*.bdf ; do
 	LD_LIBRARY_PATH=xc/lib/font xc/programs/bdftopcf/bdftopcf -o mdk-fonts/`basename $i .bdf`.pcf $i
@@ -892,6 +941,13 @@
 # setup the default X server
 rm -f $RPM_BUILD_ROOT/usr/X11R6/bin/X
 ln -s Xwrapper $RPM_BUILD_ROOT/usr/X11R6/bin/X
+# setup concurrent X server
+install -m 755 xc/programs/Xserver/XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/XFree86-concurrent
+ln -s XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/X0
+ln -s XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/X1
+ln -s XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/X2
+ln -s XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/X3
+ln -s XFree86-concurrent $RPM_BUILD_ROOT/usr/X11R6/bin/X4
 
 # explicitly create X authdir
 mkdir -p $RPM_BUILD_ROOT/etc/X11/xdm/authdir
@@ -1325,6 +1381,16 @@
 %doc /usr/X11R6/lib/X11/XF86Config-4.eg
 /usr/X11R6/bin/XFree86
 
+%files concurrent-server 
+%defattr(-,root,root,-)
+/usr/X11R6/bin/XFree86-concurrent
+/usr/X11R6/bin/X0
+/usr/X11R6/bin/X1
+/usr/X11R6/bin/X2
+/usr/X11R6/bin/X3
+/usr/X11R6/bin/X4
+
+
 %ifarch %{ix86}
 %files glide-module
 %defattr(-,root,root,-)
