summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <anholt@FreeBSD.org>2003-09-18 03:20:45 +0000
committerEric Anholt <anholt@FreeBSD.org>2003-09-18 03:20:45 +0000
commit27d17afba2c21f490ea8472d7aa37495e02e3ed8 (patch)
tree1e39415364d42463873f1d86a99908baa3428b7b
parentRemove BROKEN line: (diff)
Followup commit: Unbreak XFree86-4-Server-snap on -stable -- gcc 2 has no
-Wno-system-headers. While I'm here, port patches for non-x86/alpha from XFree86-4-Server. Reported by: Adam Weinberger <adamw@magnesium.net> Marius Strobl <marius@alchemy.franken.de>
Notes
Notes: svn path=/head/; revision=89022
-rw-r--r--x11-servers/XFree86-4-Server-snap/Makefile1
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-FreeBSD.cf19
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-Pci.h34
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-Sbus.c11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-alpha_video.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-bsd-Imakefile26
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-bsd-bsdResource.c9
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-bus-Imakefile18
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-compiler.h11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-dri_util.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-elfloader.c77
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-freebsdPci.c11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-int10-generic.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-libc_wrapper.c11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-loader-Imakefile9
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-loader.c20
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-mga_dri.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-mga_driver.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-nv_driver.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-nv_setup.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-os-support_Imakefile10
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-r128_driver.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-radeon_cursor.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-radeon_dri.c0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-radeon_reg.h0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-radeondri0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-savage-pci-id0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-smi0
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-sunffb-Imakefile11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xf86-common-Imakefile21
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xf86Events.c18
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xf86Sbus.h16
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xf86sym.c31
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xfree86.cf11
-rw-r--r--x11-servers/XFree86-4-Server-snap/files/patch-xkbInit.c0
35 files changed, 368 insertions, 7 deletions
diff --git a/x11-servers/XFree86-4-Server-snap/Makefile b/x11-servers/XFree86-4-Server-snap/Makefile
index b865f5b322cd..a4ee26178171 100644
--- a/x11-servers/XFree86-4-Server-snap/Makefile
+++ b/x11-servers/XFree86-4-Server-snap/Makefile
@@ -7,6 +7,7 @@
PORTNAME= Server
PORTVERSION= 4.3.99.12
+PORTREVISION= 1
CATEGORIES= x11-servers
MASTER_SITES= ${MASTER_SITE_XFREE:S|source/||:S/$/:x/} \
${MASTER_SITE_LOCAL:S/$/:local/}
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-FreeBSD.cf b/x11-servers/XFree86-4-Server-snap/files/patch-FreeBSD.cf
index e8a25812cf73..a3c1afd34c13 100644
--- a/x11-servers/XFree86-4-Server-snap/files/patch-FreeBSD.cf
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-FreeBSD.cf
@@ -1,5 +1,5 @@
---- config/cf/FreeBSD.cf.orig Wed Sep 10 04:00:01 2003
-+++ config/cf/FreeBSD.cf Tue Sep 16 16:54:44 2003
+--- config/cf/FreeBSD.cf.orig Wed Sep 10 11:00:01 2003
++++ config/cf/FreeBSD.cf Thu Sep 18 01:04:05 2003
@@ -167,11 +167,11 @@
* ld: warning: libXThrStub.so.6, needed by libX11.so, not found
*/
@@ -16,17 +16,22 @@
#endif
#define CppCmd /usr/bin/cpp
-@@ -182,7 +182,8 @@
+@@ -182,7 +182,13 @@
#if defined(UseInstalled)
#define DefaultCCOptions /**/
#else
-#define DefaultCCOptions -ansi -pedantic -Dasm=__asm GccWarningOptions
-+#define DefaultCCOptions -ansi -pedantic -Wno-system-headers -Dasm=__asm \
++#if defined(HasGcc3) && HasGcc3
++#define NoSystemWarn -Wno-system-headers
++#else
++#define NoSystemWarn
++#endif
++#define DefaultCCOptions -ansi -pedantic NoSystemWarn -Dasm=__asm \
+ GccWarningOptions
#endif
#endif
#ifndef ExtraLibraries
-@@ -233,20 +234,24 @@
+@@ -233,20 +239,24 @@
#endif
/*
@@ -53,7 +58,7 @@
(OSMajorVersion >= 5 || (OSMajorVersion == 4 && OSMinorVersion >= 2))
# define HasX86Support YES
# define HasMMXSupport YES
-@@ -349,10 +354,8 @@
+@@ -349,10 +359,8 @@
#ifdef i386Architecture
#define ServerExtraDefines GccGasOption XFree86ServerDefines
#endif
@@ -66,7 +71,7 @@
#define ServerExtraDefines GccGasOption XFree86ServerDefines -D_XSERVER64
#endif
-@@ -376,18 +379,8 @@
+@@ -376,18 +384,8 @@
#define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
#endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-Pci.h b/x11-servers/XFree86-4-Server-snap/files/patch-Pci.h
index e69de29bb2d1..3f0842e170a4 100644
--- a/x11-servers/XFree86-4-Server-snap/files/patch-Pci.h
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-Pci.h
@@ -0,0 +1,34 @@
+--- programs/Xserver/hw/xfree86/os-support/bus/Pci.h.orig Wed Sep 10 04:05:17 2003
++++ programs/Xserver/hw/xfree86/os-support/bus/Pci.h Wed Sep 17 19:10:42 2003
+@@ -255,6 +255,10 @@
+ # define ARCH_PCI_INIT linuxPciInit
+ # define INCLUDE_XF86_MAP_PCI_MEM
+ # define INCLUDE_XF86_NO_DOMAIN
++# elif defined(FreeBSD)
++# define ARCH_PCI_INIT freebsdPciInit
++# define INCLUDE_XF86_MAP_PCI_MEM
++# define INCLUDE_XF86_NO_DOMAIN
+ # endif
+ # define XF86SCANPCI_WRAPPER ia64ScanPCIWrapper
+ #elif defined(__i386__)
+@@ -315,14 +319,18 @@
+ # elif defined(sun)
+ # define ARCH_PCI_INIT sparcPciInit
+ # define INCLUDE_XF86_MAP_PCI_MEM
+-# elif defined(__OpenBSD__) && defined(__sparc64__)
++# elif (defined(__OpenBSD__) || defined(__FreeBSD__)) && defined(__sparc64__)
+ # define ARCH_PCI_INIT freebsdPciInit
+ # define INCLUDE_XF86_MAP_PCI_MEM
+ # define INCLUDE_XF86_NO_DOMAIN
+ # endif
+ # define ARCH_PCI_PCI_BRIDGE sparcPciPciBridge
+ #elif defined(__AMD64__)
+-# define ARCH_PCI_INIT ix86PciInit
++# if defined(__FreeBSD__)
++# define ARCH_PCI_INIT freebsdPciInit
++# else
++# define ARCH_PCI_INIT ix86PciInit
++# endif
+ # define INCLUDE_XF86_MAP_PCI_MEM
+ # define INCLUDE_XF86_NO_DOMAIN
+ # if defined(linux)
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-Sbus.c b/x11-servers/XFree86-4-Server-snap/files/patch-Sbus.c
new file mode 100644
index 000000000000..9013e1dfe8c0
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-Sbus.c
@@ -0,0 +1,11 @@
+--- programs/Xserver/hw/xfree86/os-support/bus/Sbus.c.orig Fri May 16 15:33:46 2003
++++ programs/Xserver/hw/xfree86/os-support/bus/Sbus.c Fri May 16 15:37:46 2003
+@@ -170,6 +170,8 @@
+ promP1275 = TRUE;
+ else
+ promP1275 = FALSE;
++#elif defined(__FreeBSD__)
++ promP1275 = TRUE;
+ #else
+ #error Missing promIsP1275() function for this OS
+ #endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-alpha_video.c b/x11-servers/XFree86-4-Server-snap/files/patch-alpha_video.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-alpha_video.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-bsd-Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-bsd-Imakefile
new file mode 100644
index 000000000000..5e98788f28dd
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-bsd-Imakefile
@@ -0,0 +1,26 @@
+--- programs/Xserver/hw/xfree86/os-support/bsd/Imakefile.orig Thu May 15 18:39:39 2003
++++ programs/Xserver/hw/xfree86/os-support/bsd/Imakefile Thu May 15 18:40:42 2003
+@@ -45,10 +45,10 @@
+ IOPERM_SRC = ioperm_noop.c
+ IOPERM_OBJ = ioperm_noop.o
+ # endif
+-#elif defined(FreeBSDArchitecture) && !defined(AlphaBsdArchitecture)
++#elif defined(FreeBSDArchitecture)
++# if defined(i386Architecture)
+ IOPERMDEFINES = -DUSE_DEV_IO
+-#else
+-# if defined(AlphaBsdArchitecture)
++# elif defined(AlphaBsdArchitecture)
+ IOPERMDEFINES = -DUSE_ALPHA_PORTS
+ # else
+ IOPERM_SRC = ioperm_noop.c
+@@ -150,6 +150,9 @@
+ #elif defined(Sparc64Architecture)
+ VIDEO_SRC = sparc64_video.c
+ VIDEO_OBJ = sparc64_video.o
++#elif defined(x86_64Architecture)
++VIDEO_SRC = i386_video.c
++VIDEO_OBJ = i386_video.o
+ #else
+ #error Unknown architecture !
+ #endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-bsd-bsdResource.c b/x11-servers/XFree86-4-Server-snap/files/patch-bsd-bsdResource.c
new file mode 100644
index 000000000000..34da14506316
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-bsd-bsdResource.c
@@ -0,0 +1,9 @@
+--- programs/Xserver/hw/xfree86/os-support/bsd/bsdResource.c Wed May 22 14:38:29 2002
++++ programs/Xserver/hw/xfree86/os-support/bsd/bsdResource.c Wed Jun 4 19:00:15 2003
+@@ -19,5 +19,5 @@
+ #ifdef INCLUDE_XF86_NO_DOMAIN
+
+-#if defined(__alpha__) || defined(__sparc64__)
++#if defined(__alpha__) || defined(__sparc64__) || defined(__amd64__)
+
+ resPtr
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-bus-Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-bus-Imakefile
new file mode 100644
index 000000000000..503877315957
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-bus-Imakefile
@@ -0,0 +1,18 @@
+--- programs/Xserver/hw/xfree86/os-support/bus/Imakefile.orig Sun Feb 23 15:26:49 2003
++++ programs/Xserver/hw/xfree86/os-support/bus/Imakefile Fri May 16 14:33:32 2003
+@@ -88,6 +88,15 @@
+ PCIDRVRSRC = freebsdPci.c
+ PCIDRVROBJ = freebsdPci.o
+
++#elif defined(FreeBSDArchitecture) && defined(Sparc64Architecture)
++
++XCOMM Sparc SBUS & PCI drivers
++
++PCIDRVRSRC = freebsdPci.c
++PCIDRVROBJ = freebsdPci.o
++SBUSDRVSRC = Sbus.c
++SBUSDRVOBJ = Sbus.o
++
+ #elif defined(NetBSDArchitecture) && defined(AlphaArchitecture)
+
+ XCOMM Alpha (NetBSD) PCI driver
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-compiler.h b/x11-servers/XFree86-4-Server-snap/files/patch-compiler.h
new file mode 100644
index 000000000000..2cbe5f847ea2
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-compiler.h
@@ -0,0 +1,11 @@
+--- programs/Xserver/hw/xfree86/common/compiler.h.orig Thu May 15 14:49:26 2003
++++ programs/Xserver/hw/xfree86/common/compiler.h Thu May 15 14:50:07 2003
+@@ -514,7 +514,7 @@
+ return ret;
+ }
+
+-# elif (defined(linux) || defined(Lynx) || defined(sun) || defined(__OpenBSD__)) && defined(__sparc__)
++# elif (defined(linux) || defined(Lynx) || defined(sun) || defined(__OpenBSD__) || defined(__FreeBSD__)) && defined(__sparc__)
+
+ # if !defined(Lynx)
+ # ifndef ASI_PL
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-dri_util.c b/x11-servers/XFree86-4-Server-snap/files/patch-dri_util.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-dri_util.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-elfloader.c b/x11-servers/XFree86-4-Server-snap/files/patch-elfloader.c
new file mode 100644
index 000000000000..1f030e6d90b1
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-elfloader.c
@@ -0,0 +1,77 @@
+--- programs/Xserver/hw/xfree86/loader/elfloader.c.orig Fri Jan 24 12:26:35 2003
++++ programs/Xserver/hw/xfree86/loader/elfloader.c Tue May 20 15:18:44 2003
+@@ -74,5 +74,5 @@
+ # error No MAP_ANON?
+ # endif
+-# if !defined (__AMD64__)
++# if !defined (__AMD64__) || !defined(__linux__)
+ # define MMAP_FLAGS (MAP_PRIVATE | MAP_ANON)
+ # else
+@@ -1150,6 +1150,7 @@
+ #endif
+ #if defined(__sparc__)
+ unsigned char *dest8; /* address of the 8 bit place being modified */
++ unsigned long *dest64;
+ #endif
+ #if defined(__alpha__)
+ unsigned int *dest32h; /* address of the high 32 bit place being modified */
+@@ -1960,7 +1961,6 @@
+ break;
+
+ case R_SPARC_32: /* 3 */
+- case R_SPARC_GLOB_DAT: /* 20 */
+ case R_SPARC_UA32: /* 23 */
+ dest32 = (unsigned int *)(secp + rel->r_offset);
+ symval += rel->r_addend;
+@@ -1970,29 +1970,36 @@
+ ((unsigned char *)dest32)[3] = (unsigned char)(symval );
+ break;
+
++ case R_SPARC_GLOB_DAT: /* 20 */
++ case R_SPARC_64: /* 32 */
++ dest64 = (unsigned long *)(secp + rel->r_offset);
++ symval += rel->r_addend;
++ *dest64 = symval;
++ break;
++
+ case R_SPARC_DISP8: /* 4 */
+ dest8 = (unsigned char *)(secp + rel->r_offset);
+ symval += rel->r_addend;
+- *dest8 = (symval - (Elf32_Addr) dest8);
++ *dest8 = (symval - (Elf_Addr) dest8);
+ break;
+
+ case R_SPARC_DISP16: /* 5 */
+ dest16 = (unsigned short *)(secp + rel->r_offset);
+ symval += rel->r_addend;
+- *dest16 = (symval - (Elf32_Addr) dest16);
++ *dest16 = (symval - (Elf_Addr) dest16);
+ break;
+
+ case R_SPARC_DISP32: /* 6 */
+ dest32 = (unsigned int *)(secp + rel->r_offset);
+ symval += rel->r_addend;
+- *dest32 = (symval - (Elf32_Addr) dest32);
++ *dest32 = (symval - (Elf_Addr) dest32);
+ break;
+
+ case R_SPARC_WDISP30: /* 7 */
+ dest32 = (unsigned int *)(secp + rel->r_offset);
+ symval += rel->r_addend;
+ *dest32 = ((*dest32 & 0xc0000000) |
+- ((symval - (Elf32_Addr) dest32) >> 2));
++ (((symval - (Elf_Addr) dest32) >> 2) & 0x3fffffff));
+ break;
+
+ case R_SPARC_HI22: /* 9 */
+@@ -2038,8 +2045,8 @@
+ break;
+
+ case R_SPARC_RELATIVE: /* 22 */
+- dest32 = (unsigned int *)(secp + rel->r_offset);
+- *dest32 += (unsigned int)secp + rel->r_addend;
++ dest64 = (unsigned long *)(secp + rel->r_offset);
++ *dest64 = (unsigned long)secp + rel->r_addend;
+ break;
+ #endif /*__sparc__*/
+ #ifdef __ia64__
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-freebsdPci.c b/x11-servers/XFree86-4-Server-snap/files/patch-freebsdPci.c
new file mode 100644
index 000000000000..58b4c940474a
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-freebsdPci.c
@@ -0,0 +1,11 @@
+--- programs/Xserver/hw/xfree86/os-support/bus/freebsdPci.c.orig Thu May 15 18:53:48 2003
++++ programs/Xserver/hw/xfree86/os-support/bus/freebsdPci.c Thu May 15 18:54:24 2003
+@@ -84,7 +84,7 @@
+ /* bridge */ NULL
+ };
+
+-#if !defined(__OpenBSD__)
++#if !defined(__OpenBSD__) && !defined(__FreeBSD__)
+ #if X_BYTE_ORDER == X_BIG_ENDIAN
+ #ifdef __sparc__
+ #ifndef ASI_PL
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-int10-generic.c b/x11-servers/XFree86-4-Server-snap/files/patch-int10-generic.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-int10-generic.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-libc_wrapper.c b/x11-servers/XFree86-4-Server-snap/files/patch-libc_wrapper.c
new file mode 100644
index 000000000000..5441e3bf58c9
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-libc_wrapper.c
@@ -0,0 +1,11 @@
+--- programs/Xserver/hw/xfree86/os-support/shared/libc_wrapper.c.orig Wed Sep 10 04:05:22 2003
++++ programs/Xserver/hw/xfree86/os-support/shared/libc_wrapper.c Wed Sep 17 19:18:01 2003
+@@ -484,7 +484,7 @@
+ if (flags & XF86_MAP_FIXED) f |= MAP_FIXED;
+ if (flags & XF86_MAP_SHARED) f |= MAP_SHARED;
+ if (flags & XF86_MAP_PRIVATE) f |= MAP_PRIVATE;
+-#ifdef __AMD64__
++#ifdef __AMD64__ && defined(linux)
+ if (flags & XF86_MAP_32BIT) f |= MAP_32BIT;
+ #endif
+ if (prot & XF86_PROT_EXEC) p |= PROT_EXEC;
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-loader-Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-loader-Imakefile
new file mode 100644
index 000000000000..19eef5970c6c
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-loader-Imakefile
@@ -0,0 +1,9 @@
+--- programs/Xserver/hw/xfree86/loader/Imakefile Wed Feb 26 15:32:12 2003
++++ programs/Xserver/hw/xfree86/loader/Imakefile Wed Jun 4 19:14:55 2003
+@@ -35,5 +35,5 @@
+ #endif
+
+-#if defined (AMD64Architecture)
++#if defined (AMD64Architecture) && defined(linux)
+ ARCHDEFINES = -DDoMMAPedMerge -DMmapPageAlign
+ #endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-loader.c b/x11-servers/XFree86-4-Server-snap/files/patch-loader.c
new file mode 100644
index 000000000000..23acde46016b
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-loader.c
@@ -0,0 +1,20 @@
+--- programs/Xserver/hw/xfree86/loader/loader.c.orig Thu May 15 19:50:47 2003
++++ programs/Xserver/hw/xfree86/loader/loader.c Thu May 15 19:51:35 2003
+@@ -88,7 +88,7 @@
+ static int refCount[MAX_HANDLE] ;
+ #endif
+
+-#if defined(__sparc__) && defined(__GNUC__)
++#if defined(__sparc__) && defined(__GNUC__) && !defined(__FreeBSD__)
+ # define SYMFUNCDOT(func) { "." #func, (funcptr)&__sparc_dot_ ## func },
+ # if !defined(__OpenBSD__)
+ # define SYMFUNCDOT89(func) { "." #func, (funcptr)&func ## _sparcv89 },
+@@ -298,7 +298,7 @@
+ LoaderAddSymbols(-1, -1, dixLookupTab ) ;
+ LoaderAddSymbols(-1, -1, fontLookupTab ) ;
+ LoaderAddSymbols(-1, -1, extLookupTab );
+-#ifdef __sparc__
++#if defined(__sparc__) && !defined(__FreeBSD__)
+ #ifdef linux
+ if (sparcUseHWMulDiv())
+ LoaderAddSymbols(-1, -1, SparcV89LookupTab ) ;
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-mga_dri.c b/x11-servers/XFree86-4-Server-snap/files/patch-mga_dri.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-mga_dri.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-mga_driver.c b/x11-servers/XFree86-4-Server-snap/files/patch-mga_driver.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-mga_driver.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-nv_driver.c b/x11-servers/XFree86-4-Server-snap/files/patch-nv_driver.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-nv_driver.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-nv_setup.c b/x11-servers/XFree86-4-Server-snap/files/patch-nv_setup.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-nv_setup.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-os-support_Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-os-support_Imakefile
new file mode 100644
index 000000000000..5ca4d30ccf34
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-os-support_Imakefile
@@ -0,0 +1,10 @@
+--- programs/Xserver/hw/xfree86/os-support/Imakefile.orig Mon Feb 17 12:06:45 2003
++++ programs/Xserver/hw/xfree86/os-support/Imakefile Thu May 15 16:51:46 2003
+@@ -13,6 +13,7 @@
+ #if defined(i386Architecture) || defined(ia64Architecture) || \
+ (defined(SunArchitecture) && defined(SparcArchitecture)) || \
+ (defined(FreeBSDArchitecture) && defined(AlphaArchitecture)) || \
++ (defined(FreeBSDArchitecture) && defined(Sparc64Architecture)) || \
+ (defined(NetBSDArchitecture) && defined(AlphaArchitecture)) || \
+ (defined(NetBSDArchitecture) && defined(PpcArchitecture)) || \
+ (defined(NetBSDArchitecture) && defined(SparcArchitecture)) || \
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-r128_driver.c b/x11-servers/XFree86-4-Server-snap/files/patch-r128_driver.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-r128_driver.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_cursor.c b/x11-servers/XFree86-4-Server-snap/files/patch-radeon_cursor.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_cursor.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_dri.c b/x11-servers/XFree86-4-Server-snap/files/patch-radeon_dri.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_dri.c
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_reg.h b/x11-servers/XFree86-4-Server-snap/files/patch-radeon_reg.h
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-radeon_reg.h
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-radeondri b/x11-servers/XFree86-4-Server-snap/files/patch-radeondri
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-radeondri
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-savage-pci-id b/x11-servers/XFree86-4-Server-snap/files/patch-savage-pci-id
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-savage-pci-id
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-smi b/x11-servers/XFree86-4-Server-snap/files/patch-smi
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-smi
+++ /dev/null
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-sunffb-Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-sunffb-Imakefile
new file mode 100644
index 000000000000..fe16ad9c1cf7
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-sunffb-Imakefile
@@ -0,0 +1,11 @@
+--- programs/Xserver/hw/xfree86/drivers/sunffb/Imakefile.orig Mon Sep 16 14:06:01 2002
++++ programs/Xserver/hw/xfree86/drivers/sunffb/Imakefile Tue May 20 12:25:15 2003
+@@ -49,7 +49,7 @@
+ #define FFBsObjectRule(name) @@\
+ name.o: name.s @@\
+ $(RM) $@ @@\
+- $(CPP) $*.s | $(AS) $(GCCVISOPTION) -o $@ -
++ $(CC) -c -x assembler-with-cpp $(GCCVISOPTION) $*.s -o $@
+ #endif
+ #else
+ VISOBJS =
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xf86-common-Imakefile b/x11-servers/XFree86-4-Server-snap/files/patch-xf86-common-Imakefile
new file mode 100644
index 000000000000..c5c5c7617849
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-xf86-common-Imakefile
@@ -0,0 +1,21 @@
+--- programs/Xserver/hw/xfree86/common/Imakefile.orig Mon Feb 17 12:06:41 2003
++++ programs/Xserver/hw/xfree86/common/Imakefile Thu May 15 20:17:15 2003
+@@ -18,7 +18,8 @@
+ #endif /* GNUMachArchitecture */
+ #else
+ # if defined(i386BsdArchitecture) || defined(AlphaBsdArchitecture) \
+- || defined(OpenBSDArchitecture) || defined(NetBSDArchitecture)
++ || defined(OpenBSDArchitecture) || defined(NetBSDArchitecture) \
++ || defined(FreeBSDArchitecture)
+ KBD = xf86KbdBSD
+ # else
+ # ifdef LinuxArchitecture
+@@ -29,7 +30,7 @@
+ # endif
+ #endif
+
+-#ifdef SparcArchitecture
++#if defined(SparcArchitecture) || defined(Sparc64Architecture)
+ SBUSSRC = xf86sbusBus.c
+ SBUSOBJ = xf86sbusBus.o
+ #endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xf86Events.c b/x11-servers/XFree86-4-Server-snap/files/patch-xf86Events.c
new file mode 100644
index 000000000000..636c0b42b876
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-xf86Events.c
@@ -0,0 +1,18 @@
+--- programs/Xserver/hw/xfree86/common/xf86Events.c.orig Mon Aug 25 04:08:11 2003
++++ programs/Xserver/hw/xfree86/common/xf86Events.c Wed Sep 17 19:38:22 2003
+@@ -627,6 +627,7 @@
+ scanCode = KEY_Pause; /* pause */
+ }
+
++#ifndef __sparc64__
+ /*
+ * PC keyboards generate separate key codes for
+ * Alt+Print and Control+Pause but in the X keyboard model
+@@ -637,6 +638,7 @@
+ scanCode = KEY_Print;
+ else if (scanCode == KEY_Break)
+ scanCode = KEY_Pause;
++#endif
+
+ /*
+ * and now get some special keysequences
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xf86Sbus.h b/x11-servers/XFree86-4-Server-snap/files/patch-xf86Sbus.h
new file mode 100644
index 000000000000..c6ac90bc6a21
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-xf86Sbus.h
@@ -0,0 +1,16 @@
+--- programs/Xserver/hw/xfree86/os-support/bus/xf86Sbus.h.orig Wed May 22 17:38:30 2002
++++ programs/Xserver/hw/xfree86/os-support/bus/xf86Sbus.h Fri May 16 15:47:05 2003
+@@ -35,7 +35,13 @@
+ #elif defined(__OpenBSD__) && defined(__sparc64__)
+ /* XXX */
+ #elif defined(CSRG_BASED)
++#if defined(__FreeBSD__)
++#include <sys/types.h>
++#include <sys/fbio.h>
++#include <dev/ofw/openpromio.h>
++#else
+ #include <machine/fbio.h>
++#endif
+ #else
+ #include <sun/fbio.h>
+ #endif
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xf86sym.c b/x11-servers/XFree86-4-Server-snap/files/patch-xf86sym.c
new file mode 100644
index 000000000000..1d30c304c847
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-xf86sym.c
@@ -0,0 +1,31 @@
+--- programs/Xserver/hw/xfree86/loader/xf86sym.c.orig Wed Feb 26 15:08:02 2003
++++ programs/Xserver/hw/xfree86/loader/xf86sym.c Wed May 21 08:47:39 2003
+@@ -106,6 +106,14 @@
+ extern void* __remqu(long, long);
+ #endif
+
++#if defined(__sparc__) && defined(__FreeBSD__)
++extern float _Qp_qtos(unsigned int *);
++extern double _Qp_qtod(unsigned int *);
++extern unsigned long long _Qp_qtoux(unsigned int *);
++extern void _Qp_dtoq(unsigned int *, double);
++extern void _Qp_uitoq(unsigned int *, unsigned int);
++#endif
++
+ #if defined(__GNUC__)
+ extern long __div64(long, long);
+ extern long __divdf3(long, long);
+@@ -1066,6 +1074,13 @@
+
+ #ifdef __FreeBSD__
+ SYMFUNC(sysctlbyname)
++#if defined(__sparc__)
++ SYMFUNC(_Qp_qtos)
++ SYMFUNC(_Qp_qtod)
++ SYMFUNC(_Qp_qtoux)
++ SYMFUNC(_Qp_uitoq)
++ SYMFUNC(_Qp_dtoq)
++#endif
+ #endif
+
+ /*
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xfree86.cf b/x11-servers/XFree86-4-Server-snap/files/patch-xfree86.cf
new file mode 100644
index 000000000000..a46f6ae40b15
--- /dev/null
+++ b/x11-servers/XFree86-4-Server-snap/files/patch-xfree86.cf
@@ -0,0 +1,11 @@
+--- config/cf/xfree86.cf.orig Mon May 19 02:11:26 2003
++++ config/cf/xfree86.cf Mon May 19 02:12:05 2003
+@@ -481,7 +481,7 @@
+
+ /* SPARC and UltraSPARC drivers */
+
+-#if defined(SparcArchitecture) && \
++#if (defined(SparcArchitecture) || defined(Sparc64Architecture)) && \
+ !defined(LynxOSArchitecture) && \
+ !defined(NetBSDArchitecture) && \
+ !defined(OpenBSDArchitecture)
diff --git a/x11-servers/XFree86-4-Server-snap/files/patch-xkbInit.c b/x11-servers/XFree86-4-Server-snap/files/patch-xkbInit.c
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/x11-servers/XFree86-4-Server-snap/files/patch-xkbInit.c
+++ /dev/null