diff options
author | Chi-Thanh Christopher Nguyen <chithanh@gentoo.org> | 2015-01-06 19:04:52 +0100 |
---|---|---|
committer | Chi-Thanh Christopher Nguyen <chithanh@gentoo.org> | 2015-01-06 19:04:52 +0100 |
commit | 43090b8b8196f06d1205776a4831dc83dc1e6282 (patch) | |
tree | 4992d6676d415c285cc0cad9531058e60fca8986 | |
parent | x11-drivers/ati-drivers: misc fixes (diff) | |
download | x11-43090b8b8196f06d1205776a4831dc83dc1e6282.tar.gz x11-43090b8b8196f06d1205776a4831dc83dc1e6282.tar.bz2 x11-43090b8b8196f06d1205776a4831dc83dc1e6282.zip |
x11-base/xorg-server: make ia64 patch apply again
https://bugs.gentoo.org/show_bug.cgi?id=523436
-rw-r--r-- | x11-base/xorg-server/files/xorg-server-1.17-ia64-fix_inx_outx.patch | 59 | ||||
-rw-r--r-- | x11-base/xorg-server/xorg-server-9999.ebuild | 1 |
2 files changed, 60 insertions, 0 deletions
diff --git a/x11-base/xorg-server/files/xorg-server-1.17-ia64-fix_inx_outx.patch b/x11-base/xorg-server/files/xorg-server-1.17-ia64-fix_inx_outx.patch new file mode 100644 index 00000000..84485c98 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.17-ia64-fix_inx_outx.patch @@ -0,0 +1,59 @@ +diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h +index 1653574..fe881ee 100644 +--- a/hw/xfree86/common/compiler.h ++++ b/hw/xfree86/common/compiler.h +@@ -286,6 +286,54 @@ extern _X_EXPORT unsigned int inl(unsigned int port); + #include <machine/pio.h> + #endif /* __NetBSD__ */ + ++#elif defined(linux) && defined(__ia64__) ++/* for Linux on ia64, we use the LIBC _inx/_outx routines */ ++/* note that the appropriate setup via "ioperm" needs to be done */ ++/* *before* any inx/outx is done. */ ++ ++extern _X_EXPORT void _outb(unsigned char val, unsigned long port); ++extern _X_EXPORT void _outw(unsigned short val, unsigned long port); ++extern _X_EXPORT void _outl(unsigned int val, unsigned long port); ++extern _X_EXPORT unsigned int _inb(unsigned long port); ++extern _X_EXPORT unsigned int _inw(unsigned long port); ++extern _X_EXPORT unsigned int _inl(unsigned long port); ++ ++static __inline__ void ++outb(unsigned long port, unsigned char val) ++{ ++ _outb(val, port); ++} ++ ++static __inline__ void ++outw(unsigned long port, unsigned short val) ++{ ++ _outw(val, port); ++} ++ ++static __inline__ void ++outl(unsigned long port, unsigned int val) ++{ ++ _outl(val, port); ++} ++ ++static __inline__ unsigned int ++inb(unsigned long port) ++{ ++ return _inb(port); ++} ++ ++static __inline__ unsigned int ++inw(unsigned long port) ++{ ++ return _inw(port); ++} ++ ++static __inline__ unsigned int ++inl(unsigned long port) ++{ ++ return _inl(port); ++} ++ + #elif defined(__amd64__) + + #include <inttypes.h> diff --git a/x11-base/xorg-server/xorg-server-9999.ebuild b/x11-base/xorg-server/xorg-server-9999.ebuild index ec31957e..25e94ef0 100644 --- a/x11-base/xorg-server/xorg-server-9999.ebuild +++ b/x11-base/xorg-server/xorg-server-9999.ebuild @@ -131,6 +131,7 @@ REQUIRED_USE="!minimal? ( PATCHES=( "${UPSTREAMED_PATCHES[@]}" + "${FILESDIR}"/${PN}-1.17-ia64-fix_inx_outx.patch "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch ) |