[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-video-radeonhd: Changes to 'debian-unstable'



 configure.ac          |   11 ++++++++++-
 debian/README.source  |    2 +-
 debian/changelog      |    9 +++++++--
 debian/control        |    6 +++---
 debian/xsfbs/xsfbs.mk |   35 ++++++++++++++++++++++-------------
 src/rhd_dri.c         |   46 +++++++++++++++++++++++++++++++++++++++++++---
 src/rhd_dri.h         |    1 +
 src/rhd_driver.c      |   19 +++++++++++++++++++
 8 files changed, 106 insertions(+), 23 deletions(-)

New commits:
commit 73007ced5fbb79d85d9435ac60f91c7277c6b7c7
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat May 15 12:32:05 2010 +0200

    Prepare changelog for upload

diff --git a/debian/changelog b/debian/changelog
index 201a212..3903f52 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-radeonhd (1.3.0-3) UNRELEASED; urgency=low
+xserver-xorg-video-radeonhd (1.3.0-3) unstable; urgency=medium
 
   [ Julien Cristau ]
   * Rename the build directory to not include DEB_BUILD_GNU_TYPE for no
@@ -13,7 +13,7 @@ xserver-xorg-video-radeonhd (1.3.0-3) UNRELEASED; urgency=low
   [ Brice Goglin ]
   * Update description, closes: #573328.
 
- -- Julien Cristau <jcristau@debian.org>  Sat, 16 Jan 2010 16:47:17 +0000
+ -- Julien Cristau <jcristau@debian.org>  Sat, 15 May 2010 12:31:55 +0200
 
 xserver-xorg-video-radeonhd (1.3.0-2) unstable; urgency=low
 

commit 595b12167c82fd26a05477bee47473237366b69a
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat May 15 12:30:43 2010 +0200

    Bump build-dep on libdrm for drmCheckModesettingSupported.

diff --git a/debian/changelog b/debian/changelog
index 85ff6f0..201a212 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,7 @@ xserver-xorg-video-radeonhd (1.3.0-3) UNRELEASED; urgency=low
   * Cherry-pick changes from upstream git to bail early in Probe if kernel
     mode setting is enabled, as it's not compatible with this driver
     (closes: #575226).
+  * Bump build-dep on libdrm for drmCheckModesettingSupported.
 
   [ Brice Goglin ]
   * Update description, closes: #573328.
diff --git a/debian/control b/debian/control
index 16333ce..5cf6163 100644
--- a/debian/control
+++ b/debian/control
@@ -18,7 +18,7 @@ Build-Depends:
  xutils-dev,
  libpci-dev | pciutils-dev,
  dpkg-dev (>= 1.14.17),
- libdrm-dev [!hurd-i386],
+ libdrm-dev (>= 2.4.3) [!hurd-i386],
  x11proto-xf86dri-dev,
  x11proto-gl-dev,
  mesa-common-dev

commit 15948cb8350e78e6372108cb335948b156f862bb
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat May 15 12:26:01 2010 +0200

    Update xsfbs and use new ${xviddriver:Depends} substvar.

diff --git a/debian/changelog b/debian/changelog
index 0602785..55ca14b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,7 @@ xserver-xorg-video-radeonhd (1.3.0-3) UNRELEASED; urgency=low
   * Rename the build directory to not include DEB_BUILD_GNU_TYPE for no
     good reason.  Thanks, Colin Watson!
   * Remove myself from Uploaders
+  * Update xsfbs and use new ${xviddriver:Depends} substvar.
 
   [ Brice Goglin ]
   * Update description, closes: #573328.
diff --git a/debian/control b/debian/control
index 5da4c8c..16333ce 100644
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,7 @@ Build-Depends:
  debhelper (>= 5),
  quilt,
  pkg-config,
- xserver-xorg-dev (>= 2:1.7),
+ xserver-xorg-dev (>= 2:1.7.6.901),
  x11proto-video-dev,
  x11proto-fonts-dev,
  x11proto-randr-dev (>= 1.2),
@@ -31,7 +31,7 @@ Architecture: any
 Depends:
  ${shlibs:Depends},
  ${misc:Depends},
- ${xserver:Depends},
+ ${xviddriver:Depends},
 Provides: ${xviddriver:Provides}
 Suggests: firmware-linux
 Description: X.Org X server -- AMD/ATI r5xx-r7xx alternate display driver

commit d13a5653cba9bc3a3f1f77ca8476df865b0a2937
Author: Matthias Hopf <mhopf@suse.de>
Date:   Thu Mar 25 16:00:04 2010 +0100

    Load DRM module in probe() to check whether KMS is enabled.
    
    This doesn't completely conform with the notion that probe() should return
    with all resources freed. However, resources are outside the Xserver in this
    case.
    X configuration is unknown at probe time. Thus this cannot be disabled even
    with option nodri.
    (cherry picked from commit f6c99911c7a8e4a8d5f6df57776ef2a47ef98761)

diff --git a/src/rhd_dri.c b/src/rhd_dri.c
index ad67e5c..fc5566c 100644
--- a/src/rhd_dri.c
+++ b/src/rhd_dri.c
@@ -2011,8 +2011,16 @@ RHDKMSEnabled(ScrnInfoPtr pScrn, struct pci_device *pciDev)
 		   "No DRICreatePCIBusID symbol\n");
 	return FALSE;
     }
+
     busId = DRICreatePCIBusID(pciDev);
+
+    if ( (ret = drmOpen(dri_driver_name, busId)) >= 0)
+	drmClose (ret);
+    else
+	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+		   "Could not open DRM - module might not be loaded, KMS detection faulty.\n");
     ret = (drmCheckModesettingSupported(busId) == 0);
+
     xfree(busId);
 
     xf86DrvMsg(pScrn->scrnIndex, X_INFO, "[DRM] Kernel mode setting %s\n",

commit 833aea69a54eb032ee63238702bc8f629c6cf37f
Author: Matthias Hopf <mhopf@suse.de>
Date:   Thu Mar 25 14:03:44 2010 +0100

    Grmbf. Fix KMS detection for good.
    (cherry picked from commit ff0b281821c81a979358564da7a35a907d096ea0)

diff --git a/src/rhd_dri.c b/src/rhd_dri.c
index 843a742..ad67e5c 100644
--- a/src/rhd_dri.c
+++ b/src/rhd_dri.c
@@ -2012,7 +2012,7 @@ RHDKMSEnabled(ScrnInfoPtr pScrn, struct pci_device *pciDev)
 	return FALSE;
     }
     busId = DRICreatePCIBusID(pciDev);
-    ret = drmCheckModesettingSupported(busId);
+    ret = (drmCheckModesettingSupported(busId) == 0);
     xfree(busId);
 
     xf86DrvMsg(pScrn->scrnIndex, X_INFO, "[DRM] Kernel mode setting %s\n",

commit e3b5dae2dd4608335ed8d5a439dfbd7c0bf286e9
Author: Matthias Hopf <mhopf@suse.de>
Date:   Thu Mar 25 12:33:47 2010 +0100

    Fix KMS test compilation.
    (cherry picked from commit d1741505b4374461b8cb5886d8aa63c0c5c2dff7)

diff --git a/configure.ac b/configure.ac
index f967819..f94b379 100644
--- a/configure.ac
+++ b/configure.ac
@@ -166,6 +166,7 @@ USE_DRI=no
 if test "x$DRI" = xyes; then
 	USE_DRI="yes"
 	AC_CHECK_DECL(XF86DRI,, [USE_DRI=no], [#include <xorg-server.h>])
+	XORG_CFLAGS="$XORG_CFLAGS $DRI_CFLAGS"
 	PKG_CHECK_MODULES(DRI, [libdrm >= 2.2 xf86driproto glproto],, [USE_DRI=no])
 fi
 
@@ -175,10 +176,12 @@ fi
 
 AC_MSG_CHECKING([whether to enable DRI support])
 AC_MSG_RESULT($USE_DRI)
-test "x$USE_DRI" = xyes && AC_DEFINE(USE_DRI, 1, [Build support for DRI])
 AM_CONDITIONAL(USE_DRI, test "x$USE_DRI" = xyes)
 
-if test "x$USER_DRI" = "xyes"; then
+if test "x$USE_DRI" = "xyes"; then
+	AC_DEFINE(USE_DRI, 1, [Build support for DRI])
+	CFLAGS="$CFLAGS $DRI_CFLAGS"
+	CPPFLAGS="$CPPFLAGS $DRI_CFLAGS"
 	AC_CHECK_HEADER([xf86drmMode.h],
 			[AC_DEFINE([HAVE_XF86DRMMODE_H], [1],
 				[Define to 1 if you have xf86drmMode.h])])
diff --git a/src/rhd_dri.c b/src/rhd_dri.c
index e4946a2..843a742 100644
--- a/src/rhd_dri.c
+++ b/src/rhd_dri.c
@@ -2015,10 +2015,12 @@ RHDKMSEnabled(ScrnInfoPtr pScrn, struct pci_device *pciDev)
     ret = drmCheckModesettingSupported(busId);
     xfree(busId);
 
-    xf86DrvMsg(pScrn->scrnIdex, X_INFO, "[DRM] Kernel mode setting %s\n",
+    xf86DrvMsg(pScrn->scrnIndex, X_INFO, "[DRM] Kernel mode setting %s\n",
 	       ret ? "enabled" : "disabled");
     return ret;
 #else
+    xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+	       "[DRM] No kernel mode setting support available during compile time - assuming it is not active\n");
     return FALSE;
 #endif /* HAVE_XF86DRMMODE_H */
 }

commit c4d1b6d1f7067586b72a527812aaacba1443dc04
Author: Egbert Eich <eich@freedesktop.org>
Date:   Thu Dec 10 10:33:46 2009 +0100

    Probe: Move KMS test to rhd_dri.c.
    
    (jcristau: cherry-picked from c8fb3cdb44249c19f19d7538450dd75acad71062,
     fixed up conflicts in rhd_dri.[ch])

diff --git a/src/rhd_dri.c b/src/rhd_dri.c
index 27d328b..e4946a2 100644
--- a/src/rhd_dri.c
+++ b/src/rhd_dri.c
@@ -1,9 +1,10 @@
 /*
  * Copyright 2000  ATI Technologies Inc., Markham, Ontario,
  * Copyright 2000  VA Linux Systems Inc., Fremont, California.
- * Copyright 2007  Luc Verhaegen <libv@exsuse.de>
- * Copyright 2007  Matthias Hopf <mhopf@novell.com>
- * Copyright 2007  Egbert Eich   <eich@novell.com>
+ * Copyright 2007 - 2009  Luc Verhaegen <libv@exsuse.de>
+ * Copyright 2007 - 2009 Matthias Hopf <mhopf@novell.com>
+ * Copyright 2007 - 2009  Egbert Eich   <eich@novell.com>
+ * Copyright 2009  Hans Ulrich Niedermann <hun@n-dimensional.de>
  * Copyright 2007  Advanced Micro Devices, Inc.
  * All Rights Reserved.
  *
@@ -62,6 +63,9 @@
 #  define DEPRECATED __attribute__ ((deprecated))
 #  define __user
 #endif
+#ifdef HAVE_XF86DRMMODE_H
+# include "xf86drmMode.h"
+#endif
 #include "radeon_drm.h"
 #include "GL/glxint.h"
 #include "GL/glxtokens.h"
@@ -1993,3 +1997,29 @@ RHDDRIGetIntGARTLocation(ScrnInfoPtr pScrn)
 
     return rhdDRI->gartLocation + rhdDRI->bufStart;
 }
+
+#ifdef XSERVER_LIBPCIACCESS
+int
+RHDKMSEnabled(ScrnInfoPtr pScrn, struct pci_device *pciDev)
+{
+    char *busId;
+    int ret;
+
+#ifdef HAVE_XF86DRMMODE_H
+    if (!xf86LoaderCheckSymbol("DRICreatePCIBusID")) {
+	xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+		   "No DRICreatePCIBusID symbol\n");
+	return FALSE;
+    }
+    busId = DRICreatePCIBusID(pciDev);
+    ret = drmCheckModesettingSupported(busId);
+    xfree(busId);
+
+    xf86DrvMsg(pScrn->scrnIdex, X_INFO, "[DRM] Kernel mode setting %s\n",
+	       ret ? "enabled" : "disabled");
+    return ret;
+#else
+    return FALSE;
+#endif /* HAVE_XF86DRMMODE_H */
+}
+#endif
diff --git a/src/rhd_dri.h b/src/rhd_dri.h
index ac860ef..473ef0b 100644
--- a/src/rhd_dri.h
+++ b/src/rhd_dri.h
@@ -37,5 +37,6 @@ extern Bool RHDDRIScreenInit(ScreenPtr pScreen);
 
 /* Claim the 3D context */
 void RHDDRIContextClaim(ScrnInfoPtr pScrn);
+extern int  RHDKMSEnabled(ScrnInfoPtr pScrn, struct pci_device *pciDev);
 
 #endif
diff --git a/src/rhd_driver.c b/src/rhd_driver.c
index c262c98..68555c7 100644
--- a/src/rhd_driver.c
+++ b/src/rhd_driver.c
@@ -2,7 +2,6 @@
  * Copyright 2007-2009  Luc Verhaegen <libv@exsuse.de>
  * Copyright 2007-2009  Matthias Hopf <mhopf@novell.com>
  * Copyright 2007-2009  Egbert Eich   <eich@novell.com>
- * Copyright      2009  Dave Airlie   <airlied@redhat.com>
  * Copyright      2009  Hans Ulrich Niedermann <hun@n-dimensional.de>
  * Copyright 2007-2009  Advanced Micro Devices, Inc.
  *
@@ -404,40 +403,6 @@ RHDAvailableOptions(int chipid, int busid)
  */
 #ifdef XSERVER_LIBPCIACCESS
 
-#ifdef HAVE_XF86DRMMODE_H
-/* The radeon_kernel_mode_enabled() function is taken verbatim from
- * radeon's radeon_probe.c file. */
-static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci_dev)
-{
-    char *busIdString;
-    int ret;
-
-    if (!xf86LoaderCheckSymbol("DRICreatePCIBusID")) {
-      xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
-		   "[KMS] No DRICreatePCIBusID symbol, no kernel modesetting.\n");
-	return FALSE;
-    }
-
-    busIdString = DRICreatePCIBusID(pci_dev);
-    ret = drmCheckModesettingSupported(busIdString);
-    xfree(busIdString);
-    if (ret) {
-      xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
-		   "[KMS] drm report modesetting isn't supported.\n");
-	return FALSE;
-    }
-
-    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
-		   "[KMS] Kernel modesetting enabled.\n");
-    return TRUE;
-}
-#else
-static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci_dev)
-{
-    return FALSE;
-}
-#endif
-
 static Bool
 RHDPciProbe(DriverPtr drv, int entityNum,
 	    struct pci_device *dev, intptr_t matchData)
@@ -450,20 +415,19 @@ RHDPciProbe(DriverPtr drv, int entityNum,
     if (pScrn != NULL) {
 
 	if (dev) {
-	    Bool kms = radeon_kernel_mode_enabled(pScrn, dev);
+#ifdef USE_DRI
+	    Bool kms = RHDKMSEnabled(pScrn, dev);
 	    if (kms) {
 		xf86DrvMsgVerb(pScrn->scrnIndex, X_ERROR, 0,
-		    "FATAL: RADEONHD does not work with kernel modesetting (KMS).\n"
-		    "\tAppend \"nomodeset\" or \"radeon.modeset=0\" (depending\n"
-		    "\ton your kernel version, or just add both to be sure) to \n"
-		    "\tyour kernel command line in /boot/grub/grub.conf.\n");
+		    "FATAL: RadeonHD presently does not work with kernel modesetting (KMS).\n"
+		    "Please disable KMS in your kernel.\n");
 		return FALSE;
 	    } else {
 		xf86DrvMsgVerb(pScrn->scrnIndex, X_ERROR, 0,
 		    "KMS is disabled. This is good for us, because RADEONHD conflicts with KMS.\n");
 	    }
 	}
-
+#endif
 	pScrn->driverVersion = RHD_VERSION;
 	pScrn->driverName    = RHD_DRIVER_NAME;
 	pScrn->name          = RHD_NAME;

commit 20c839c9327c4f29052c9549378592d22e1dc32d
Author: Egbert Eich <eich@freedesktop.org>
Date:   Mon Dec 7 11:39:47 2009 +0100

    Configure: Only compile the KMS check code if xf86drmMode.h is actually present.
    (cherry picked from commit 0b91ec067e338e8d5b0bdec9d646c63830d2d443)

diff --git a/configure.ac b/configure.ac
index 3615a9b..f967819 100644
--- a/configure.ac
+++ b/configure.ac
@@ -178,6 +178,12 @@ AC_MSG_RESULT($USE_DRI)
 test "x$USE_DRI" = xyes && AC_DEFINE(USE_DRI, 1, [Build support for DRI])
 AM_CONDITIONAL(USE_DRI, test "x$USE_DRI" = xyes)
 
+if test "x$USER_DRI" = "xyes"; then
+	AC_CHECK_HEADER([xf86drmMode.h],
+			[AC_DEFINE([HAVE_XF86DRMMODE_H], [1],
+				[Define to 1 if you have xf86drmMode.h])])
+fi
+
 AC_CHECK_FILE([${sdkdir}/damage.h],
 	[AC_DEFINE(DAMAGE,1,[Use Damage extension])], [])
 
diff --git a/src/rhd_driver.c b/src/rhd_driver.c
index 9bb2249..c262c98 100644
--- a/src/rhd_driver.c
+++ b/src/rhd_driver.c
@@ -90,8 +90,10 @@
 #define _XF86DRI_SERVER_
 #include "dri.h"
 #include "GL/glxint.h"
+#ifdef HAVE_XF86DRMMODE_H
 #include "xf86drmMode.h"
 #endif
+#endif
 
 #if HAVE_XF86_ANSIC_H
 # include "xf86_ansic.h"
@@ -402,6 +404,7 @@ RHDAvailableOptions(int chipid, int busid)
  */
 #ifdef XSERVER_LIBPCIACCESS
 
+#ifdef HAVE_XF86DRMMODE_H
 /* The radeon_kernel_mode_enabled() function is taken verbatim from
  * radeon's radeon_probe.c file. */
 static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci_dev)
@@ -428,6 +431,12 @@ static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci
 		   "[KMS] Kernel modesetting enabled.\n");
     return TRUE;
 }
+#else
+static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci_dev)
+{
+    return FALSE;
+}
+#endif
 
 static Bool
 RHDPciProbe(DriverPtr drv, int entityNum,

commit 58a3035b58b30c3472bb930d0b57e6960e83b829
Author: Hans Ulrich Niedermann <hun@n-dimensional.de>
Date:   Mon Dec 7 11:38:06 2009 +0100

    Probe: Only allow this driver when KMS is not present.
    
    If kernel modesetting (KMS) is detected and active, we abort the
    PciProbe and do not touch the GPU in any way. Then at least the KMS
    console continues working, and there is an error message for the user
    to read.
    This is only temporary until KMS has been added to this driver.
    (cherry picked from commit 56fa25f40baa91b1f05a32cd5e4add96a07d8e61)

diff --git a/src/rhd_driver.c b/src/rhd_driver.c
index e502c5f..9bb2249 100644
--- a/src/rhd_driver.c
+++ b/src/rhd_driver.c
@@ -2,6 +2,8 @@
  * Copyright 2007-2009  Luc Verhaegen <libv@exsuse.de>
  * Copyright 2007-2009  Matthias Hopf <mhopf@novell.com>
  * Copyright 2007-2009  Egbert Eich   <eich@novell.com>
+ * Copyright      2009  Dave Airlie   <airlied@redhat.com>
+ * Copyright      2009  Hans Ulrich Niedermann <hun@n-dimensional.de>
  * Copyright 2007-2009  Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
@@ -88,6 +90,7 @@
 #define _XF86DRI_SERVER_
 #include "dri.h"
 #include "GL/glxint.h"
+#include "xf86drmMode.h"
 #endif
 
 #if HAVE_XF86_ANSIC_H
@@ -398,6 +401,34 @@ RHDAvailableOptions(int chipid, int busid)
  *
  */
 #ifdef XSERVER_LIBPCIACCESS
+
+/* The radeon_kernel_mode_enabled() function is taken verbatim from
+ * radeon's radeon_probe.c file. */
+static Bool radeon_kernel_mode_enabled(ScrnInfoPtr pScrn, struct pci_device *pci_dev)
+{
+    char *busIdString;
+    int ret;
+
+    if (!xf86LoaderCheckSymbol("DRICreatePCIBusID")) {
+      xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
+		   "[KMS] No DRICreatePCIBusID symbol, no kernel modesetting.\n");
+	return FALSE;
+    }
+
+    busIdString = DRICreatePCIBusID(pci_dev);
+    ret = drmCheckModesettingSupported(busIdString);
+    xfree(busIdString);
+    if (ret) {
+      xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
+		   "[KMS] drm report modesetting isn't supported.\n");
+	return FALSE;
+    }
+
+    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 0,
+		   "[KMS] Kernel modesetting enabled.\n");
+    return TRUE;
+}
+
 static Bool
 RHDPciProbe(DriverPtr drv, int entityNum,
 	    struct pci_device *dev, intptr_t matchData)
@@ -409,6 +440,21 @@ RHDPciProbe(DriverPtr drv, int entityNum,
 				RES_SHARED_VGA, NULL, NULL, NULL, NULL);
     if (pScrn != NULL) {
 
+	if (dev) {
+	    Bool kms = radeon_kernel_mode_enabled(pScrn, dev);
+	    if (kms) {
+		xf86DrvMsgVerb(pScrn->scrnIndex, X_ERROR, 0,
+		    "FATAL: RADEONHD does not work with kernel modesetting (KMS).\n"
+		    "\tAppend \"nomodeset\" or \"radeon.modeset=0\" (depending\n"
+		    "\ton your kernel version, or just add both to be sure) to \n"
+		    "\tyour kernel command line in /boot/grub/grub.conf.\n");
+		return FALSE;
+	    } else {
+		xf86DrvMsgVerb(pScrn->scrnIndex, X_ERROR, 0,
+		    "KMS is disabled. This is good for us, because RADEONHD conflicts with KMS.\n");
+	    }
+	}
+
 	pScrn->driverVersion = RHD_VERSION;
 	pScrn->driverName    = RHD_DRIVER_NAME;
 	pScrn->name          = RHD_NAME;

commit 81fc271788605b52e85c2d11635a0371fb44605e
Author: Cyril Brulebois <kibi@debian.org>
Date:   Sun May 2 02:14:45 2010 +0200

    Add xorg-driver-{video,input} to Provides.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 77c4a39..3c59c20 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -261,8 +261,8 @@ INPUTDEP = $(shell cat /usr/share/xserver-xorg/xinputdep 2>/dev/null)
 # these two can be removed post-squeeze
 VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null)
 INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null)
-VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI)
-INPDRIVER_PROVIDES = xserver-xorg-input-$(INPUTABI)
+VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI), xorg-driver-video
+INPDRIVER_PROVIDES = xserver-xorg-input-$(INPUTABI), xorg-driver-input
 
 ifeq ($(PACKAGE),)
 PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)

commit b045afbd8277ad0c44e29d7c45802053c4335ccd
Author: Julien Cristau <jcristau@debian.org>
Date:   Fri Apr 16 22:14:46 2010 +0200

    Update serverabi rule for xserver 1.7.6.901
    
    Add new variables ${xviddriver:Depends} and ${xinpdriver:Depends} for
    drivers.  The ${xserver:Depends} variable is deprecated.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 351fea5..77c4a39 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -253,25 +253,33 @@ $(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir
 	#                                    debian/*.prerm
 	>$@
 
-SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null)
+# Compute dependencies for drivers
+#
+VIDEODEP = $(shell cat /usr/share/xserver-xorg/videodrvdep 2>/dev/null)
+INPUTDEP = $(shell cat /usr/share/xserver-xorg/xinputdep 2>/dev/null)
+
+# these two can be removed post-squeeze
 VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null)
 INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null)
-SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS))
 VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI)
 INPDRIVER_PROVIDES = xserver-xorg-input-$(INPUTABI)
+
 ifeq ($(PACKAGE),)
 PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control)
 endif
 
 .PHONY: serverabi
 serverabi: install
-ifeq ($(SERVERMINVERS),)
-	@echo error: xserver-xorg-dev needs to be installed
+ifeq ($(VIDEODEP),)
+	@echo 'error: xserver-xorg-dev >= 1.7.6.901 needs to be installed'
 	@exit 1
 else
-	echo "xserver:Depends=$(SERVER_DEPENDS)" >> debian/$(PACKAGE).substvars
+	echo "xviddriver:Depends=$(VIDEODEP)" >> debian/$(PACKAGE).substvars
+	echo "xinpdriver:Depends=$(INPUTDEP)" >> debian/$(PACKAGE).substvars
+	# the following is there for compatibility...
 	echo "xviddriver:Provides=$(VIDDRIVER_PROVIDES)" >> debian/$(PACKAGE).substvars
 	echo "xinpdriver:Provides=$(INPDRIVER_PROVIDES)" >> debian/$(PACKAGE).substvars
+	echo "xserver:Depends=$(VIDEODEP), $(INPUTDEP)" >> debian/$(PACKAGE).substvars
 endif
 
 # vim:set noet ai sts=8 sw=8 tw=0:

commit 8bd2e9b523da35493db1bd781d4ef6bfbbeb2eff
Author: Julien Cristau <jcristau@debian.org>
Date:   Tue Apr 13 14:06:33 2010 +0200

    xsfbs.mk: don't use a directory as a make target
    
    The timestamp on the directory gets updated each time a file is added in
    it, which causes useless rebuilds.

diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 5e16b10..351fea5 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -110,14 +110,15 @@ $(STAMP_DIR)/stampdir:
 .PHONY: prepare
 stampdir_targets+=prepare
 prepare: $(STAMP_DIR)/prepare
-$(STAMP_DIR)/prepare: $(STAMP_DIR)/log $(STAMP_DIR)/genscripts
+$(STAMP_DIR)/prepare: $(STAMP_DIR)/logdir $(STAMP_DIR)/genscripts
 	>$@
 
-.PHONY: log
-stampdir_targets+=log
-log: $(STAMP_DIR)/log
-$(STAMP_DIR)/log: $(STAMP_DIR)/stampdir
+.PHONY: logdir
+stampdir_targets+=logdir
+logdir: $(STAMP_DIR)/logdir
+$(STAMP_DIR)/logdir: $(STAMP_DIR)/stampdir
 	mkdir -p $(STAMP_DIR)/log
+	>$@
 
 # Apply all patches to the upstream source.
 .PHONY: patch
@@ -145,7 +146,7 @@ $(STAMP_DIR)/patch: $(STAMP_DIR)/prepare
 
 # Revert all patches to the upstream source.
 .PHONY: unpatch
-unpatch: $(STAMP_DIR)/log
+unpatch: $(STAMP_DIR)/logdir
 	rm -f $(STAMP_DIR)/patch
 	@echo -n "Unapplying patches..."; \
 	if $(QUILT) applied >/dev/null 2>/dev/null; then \

commit 734e3b2d1dcfe5db07cb19902617fd1212c0c186
Author: Cyril Brulebois <kibi@debian.org>
Date:   Thu Apr 1 20:49:15 2010 +0200

    Fix typo.

diff --git a/debian/README.source b/debian/README.source
index 34ab4bf..b09a1ab 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -25,7 +25,7 @@ just need to be pulled into git.debian.org in a "upstream-*" branch.
 Otherwise, the upstream sources are manually installed in the Debian
 git repository.
 
-The .orig.tar.gz upstream source file could be generated this
+The .orig.tar.gz upstream source file could be generated using this
 "upstream-*" branch in the Debian git repository but it is actually
 copied from upstream tarballs directly.
 


Reply to: