diff options
author | 2009-12-15 12:10:34 +0000 | |
---|---|---|
committer | 2009-12-15 12:10:34 +0000 | |
commit | 2672be47e82fb8fedd64715bf0b513eecf819f09 (patch) | |
tree | e8da7b96f7dafaf257806ca683102b9cd39450e9 /x11-drivers | |
parent | Remove --with-default-audio so mpg321 will use libao default instead wrt #297... (diff) | |
download | gentoo-2-2672be47e82fb8fedd64715bf0b513eecf819f09.tar.gz gentoo-2-2672be47e82fb8fedd64715bf0b513eecf819f09.tar.bz2 gentoo-2-2672be47e82fb8fedd64715bf0b513eecf819f09.zip |
make ati-drivers-9.11 compile with 2.6.32 kernel, close bug #294997
(Portage version: 2.2_rc46/cvs/Linux x86_64)
Diffstat (limited to 'x11-drivers')
-rw-r--r-- | x11-drivers/ati-drivers/ChangeLog | 6 | ||||
-rw-r--r-- | x11-drivers/ati-drivers/ati-drivers-9.11.ebuild | 14 | ||||
-rw-r--r-- | x11-drivers/ati-drivers/files/kernel/2.6.32-9.11-fix_compilation.patch | 37 |
3 files changed, 49 insertions, 8 deletions
diff --git a/x11-drivers/ati-drivers/ChangeLog b/x11-drivers/ati-drivers/ChangeLog index 218162461673..9c0476efccb9 100644 --- a/x11-drivers/ati-drivers/ChangeLog +++ b/x11-drivers/ati-drivers/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for x11-drivers/ati-drivers # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.204 2009/12/02 09:35:23 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.205 2009/12/15 12:10:33 lxnay Exp $ + + 15 Dec 2009; Fabio Erculiani <lxnay@gentoo.org> ati-drivers-9.11.ebuild, + +files/kernel/2.6.32-9.11-fix_compilation.patch: + make ati-drivers-9.11 compile with 2.6.32 kernel, close bug #294997 02 Dec 2009; Tomáš Chvátal <scarabeus@gentoo.org> -files/8.40.4/ati-drivers-2.6.23.patch, diff --git a/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild b/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild index 12e27acffd66..5a75d8cf78e5 100644 --- a/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild +++ b/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild,v 1.1 2009/11/19 19:09:36 lu_zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-9.11.ebuild,v 1.2 2009/12/15 12:10:33 lxnay Exp $ EAPI="2" @@ -101,12 +101,6 @@ _check_kernel_config() { die "CONFIG_PREEMT_RCU enabled" fi - # kernel hook checking up latest allowed version - if kernel_is ge 2 6 32; then - eerror "Kernels newer then 2.6.31 are not supported by this driver" - die "Downgrade your kernel" - fi - if ! linux_chkconfig_present MTRR; then ewarn "You don't have MTRR support enabled in the kernel." ewarn "Direct rendering will not work." @@ -223,6 +217,12 @@ src_unpack() { src_prepare() { epatch "${FILESDIR}"/ati-drivers-xen.patch + # Upstream will support 2.6.32 Linux kernel from next version + # so this (and patch in FILESDIR) will be removed afterwards + if kernel_is ge 2 6 32; then + epatch "${FILESDIR}"/kernel/2.6.32-${PV}-fix_compilation.patch + fi + # All kernel options for prepare are ment to be in here if use modules; then # version patches diff --git a/x11-drivers/ati-drivers/files/kernel/2.6.32-9.11-fix_compilation.patch b/x11-drivers/ati-drivers/files/kernel/2.6.32-9.11-fix_compilation.patch new file mode 100644 index 000000000000..38519d76c343 --- /dev/null +++ b/x11-drivers/ati-drivers/files/kernel/2.6.32-9.11-fix_compilation.patch @@ -0,0 +1,37 @@ +--- work/common/lib/modules/fglrx/build_mod/firegl_public.c ++++ work.new/common/lib/modules/fglrx/build_mod/firegl_public.c +@@ -1441,7 +1441,9 @@ + todo !!! + #endif + +-unsigned long ATI_API_CALL __ke__cmpxchg(volatile void *ptr, unsigned long old, ++void __cmpxchg_wrong_size(void) {} ++ ++unsigned long ATI_API_CALL __ke__cmpxchg(volatile unsigned long *ptr, unsigned long old, + unsigned long new, int size) + { + #ifndef __HAVE_ARCH_CMPXCHG +--- work/common/lib/modules/fglrx/build_mod/firegl_public.h ++++ work.new/common/lib/modules/fglrx/build_mod/firegl_public.h +@@ -441,7 +441,8 @@ + extern void ATI_API_CALL KCL_SIGNAL_BlockAll(int (*notifier)(void *priv), void *pPriv, __ke_sigset_t *pSigMask); + extern void ATI_API_CALL KCL_SIGNAL_UnblockAll(void); + +-extern unsigned long ATI_API_CALL __ke__cmpxchg(volatile void *ptr, unsigned long old, ++extern void __cmpxchg_wrong_size(void); ++extern unsigned long ATI_API_CALL __ke__cmpxchg(volatile unsigned long *ptr, unsigned long old, + unsigned long new, int size); + + #define __ke_cmpxchg(ptr,o,n) \ +--- work/common/lib/modules/fglrx/build_mod/kcl_io.c ++++ work.new/common/lib/modules/fglrx/build_mod/kcl_io.c +@@ -37,8 +37,9 @@ + */ + + #include <linux/version.h> + #include <linux/autoconf.h> + #include <linux/poll.h> ++#include <linux/signal.h> + #include <asm/io.h> + + #include "kcl_config.h" |