aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorknu <knu@FreeBSD.org>2000-12-26 11:24:38 +0800
committerknu <knu@FreeBSD.org>2000-12-26 11:24:38 +0800
commitf4e70d7600c0ab705310358999a1abbc42217740 (patch)
tree113255a862842f23c1425a2a0d58a17287f510d9
parent5862619faa1a0c3a63408f62084c80456f696a4c (diff)
downloadfreebsd-ports-gnome-f4e70d7600c0ab705310358999a1abbc42217740.tar.gz
freebsd-ports-gnome-f4e70d7600c0ab705310358999a1abbc42217740.tar.zst
freebsd-ports-gnome-f4e70d7600c0ab705310358999a1abbc42217740.zip
Merge the patches that were added to x11/XFree86 in these several
months. This should fix the build on 5-CURRENT and help some video chips. See x11/XFree86's history for details. Approved by: Taguchi Takeshi <taguchi@tohoku.iij.ad.jp> (MAINTAINER)
-rw-r--r--x11-servers/XttXF86srv-common/Makefile15
-rw-r--r--x11-servers/XttXF86srv-common/distinfo6
-rw-r--r--x11-servers/XttXF86srv-common/files/patch-g9
-rw-r--r--x11-servers/XttXF86srv-common/files/patch-i208
-rw-r--r--x11-servers/XttXF86srv-common/files/patch-q21
-rw-r--r--x11-servers/XttXF86srv-common/files/patch-r43
-rw-r--r--x11-servers/XttXF86srv-common/files/patch-s21
7 files changed, 318 insertions, 5 deletions
diff --git a/x11-servers/XttXF86srv-common/Makefile b/x11-servers/XttXF86srv-common/Makefile
index 49b1db6e5362..d1be5c876034 100644
--- a/x11-servers/XttXF86srv-common/Makefile
+++ b/x11-servers/XttXF86srv-common/Makefile
@@ -7,22 +7,28 @@
PORTNAME?= xtt-common
PORTVERSION= ${VERSION}.${PATCHLEVEL}
+PORTREVISION= 1
CATEGORIES= x11-servers
MASTER_SITES= ${MASTER_SITE_XFREE} \
http://X-TT.dsl.gr.jp/dists/1.x/${VERSION}/
-MASTER_SITE_SUBDIR= 3.3.6
+MASTER_SITE_SUBDIR= ${XFREE_VERSION}
DISTFILES= X336src-1.tgz xtt-${VERSION}.tgz
+PATCH_SITES= ${MASTER_SITE_XFREE:S,%SUBDIR%/source,${XFREE_VERSION}/fixes,}
+PATCHFILES= fix-01-r128 fix-04-s3trio3d2x fix-05-s3trio3d fix-06-s3trio3d2x\
+ fix-07-s3trio64v2gx+netfinity fix-08-s3savage_ix+mx
+
MAINTAINER= taguchi@tohoku.iij.ad.jp
RUN_DEPENDS+= mkttfdir:${PORTSDIR}/print/perlftlib
+XFREE_VERSION= 3.3.6
VERSION= 1.3
-PATCHLEVEL= 0
+PATCHLEVEL= 1
SERVER?= common
INSTALLS_SHLIB= yes
.if !defined(USE_SHARED_WRKSRC) && defined(COMPILE_ALL_SERVERS_AT_ONCE)
-USE_SHARED_WRKSRC= YES
+USE_SHARED_WRKSRC= YES
.endif
.if !defined(XDM_DES) && defined(USA_RESIDENT) && ${USA_RESIDENT} == NO
MASTER_SITES+= ftp://psych.psy.uq.oz.au/pub/X11R5/ \
@@ -55,8 +61,7 @@ COREPATCHES= shared-libfont-1.2.diff xfs-for-delayed-font-1.0.diff \
XTTTARBALL= xtt-core.tar
ADDPATCHES= ${XTTDIR}/contribute/xtt-xfsft-lib.patch
DOCDIR= ${PREFIX}/share/doc/Xtt
-PATCH_DIST_ARGS= -d ${WRKDIR} --forward --quiet -E ${PATCH_STRIP}
-#PATCH_DIST_STRIP= -p1
+PATCH_DIST_STRIP= -p1
.include <bsd.port.pre.mk>
diff --git a/x11-servers/XttXF86srv-common/distinfo b/x11-servers/XttXF86srv-common/distinfo
index 2372e04a667f..068509c72a55 100644
--- a/x11-servers/XttXF86srv-common/distinfo
+++ b/x11-servers/XttXF86srv-common/distinfo
@@ -1,3 +1,9 @@
MD5 (xc/X336src-1.tgz) = bbfa360d10ce91ab37f24f197a31b485
MD5 (xc/xtt-1.3.tgz) = f4c9efdb90d848701c305e2955149920
+MD5 (xc/fix-01-r128) = a62387e13b970c5a83e9a0822c30344f
+MD5 (xc/fix-04-s3trio3d2x) = 75569a9d49bb45b8ecb311ab3f8c2469
+MD5 (xc/fix-05-s3trio3d) = eb8fd33328c8b5fbd0410472339dee44
+MD5 (xc/fix-06-s3trio3d2x) = 79c4e3f340f1df5786649559d09c2378
+MD5 (xc/fix-07-s3trio64v2gx+netfinity) = 6b09cc9b7b3d89f18ea5e9591969b99c
+MD5 (xc/fix-08-s3savage_ix+mx) = 8df8d4b013de9e5f87d028b1bf2415a5
MD5 (xc/Wraphelp.c) = IGNORE
diff --git a/x11-servers/XttXF86srv-common/files/patch-g b/x11-servers/XttXF86srv-common/files/patch-g
new file mode 100644
index 000000000000..999a5f929328
--- /dev/null
+++ b/x11-servers/XttXF86srv-common/files/patch-g
@@ -0,0 +1,9 @@
+Index: programs/Xserver/hw/xfree86/vga256/drivers/i810/i810_accel.c
+@@ -39,6 +39,7 @@
+
+ #include <math.h>
+ #include <stdio.h>
++#include <sys/types.h>
+ #include <sys/mman.h>
+ #include <signal.h>
+
diff --git a/x11-servers/XttXF86srv-common/files/patch-i b/x11-servers/XttXF86srv-common/files/patch-i
new file mode 100644
index 000000000000..c042eae5760a
--- /dev/null
+++ b/x11-servers/XttXF86srv-common/files/patch-i
@@ -0,0 +1,208 @@
+S3 Savage/MX and Savage/IX patches for XFree86 3.3.6 post fix-08
+
+http://www.probo.com/timr/savagemx.html
+
+from: Sun Oct 22 10:12:06 CEST 2000
+
+--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_cursor.c.orig Sun Oct 22 09:52:21 2000
++++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_cursor.c Fri Sep 1 22:12:56 2000
+@@ -250,7 +250,7 @@
+ /* VerticalRetraceWait(); */
+
+ /* turn cursor off */
+- S3VHideCursor();
++ S3SAVHideCursor();
+
+ /* move cursor off-screen */
+ outb(vgaCRIndex, 0x46);
+--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.c.orig Sun Oct 22 09:52:21 2000
++++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.c Fri Sep 29 23:19:23 2000
+@@ -94,6 +94,7 @@
+ static void S3SAVRestore();
+ static void S3SAVAdjust();
+ static void S3SAVFbInit();
++static int S3SAVPitchAdjust();
+ void S3SAVSetRead();
+ void S3SAVAccelInit();
+ void S3SAVInitialize2DEngine();
+@@ -721,12 +722,12 @@
+
+ /* Restore the desired video mode with CR67 */
+
+- outb(vgaCRIndex, 0x67);
+ #if 0
++ outb(vgaCRIndex, 0x67);
+ cr67 = inb(vgaCRReg) & 0xf; /* Possible hardware bug on VX? */
+-#endif
+ outb(vgaCRReg, 0x50 | cr67);
+ usleep(10000);
++#endif
+ outb(vgaCRIndex, 0x67);
+ outb(vgaCRReg, restore->CR67 & ~0x0c); /* Don't enable STREAMS yet */
+
+@@ -745,9 +746,11 @@
+ outb(vgaCRReg, restore->CR51);
+
+ /* Memory timings */
+- outb(vgaCRIndex, 0x36);
++ outb(vgaCRIndex, 0x36);
+ outb(vgaCRReg, restore->CR36);
+- outb(vgaCRIndex, 0x68);
++ outb(vgaCRIndex, 0x60);
++ outb(vgaCRReg, restore->CR60);
++ outb(vgaCRIndex, 0x68);
+ outb(vgaCRReg, restore->CR68);
+ outb(vgaCRIndex, 0x69);
+ outb(vgaCRReg, restore->CR69);
+@@ -764,8 +767,11 @@
+ outb(vgaCRReg, restore->CR90);
+ outb(vgaCRIndex, 0x91);
+ outb(vgaCRReg, restore->CR91);
+- outb(vgaCRIndex, 0xB0); /* Savage4 config3 */
+- outb(vgaCRReg, restore->CRB0);
++ if( s3vPriv.chip == S3_SAVAGE4 )
++ {
++ outb(vgaCRIndex, 0xB0); /* Savage4 config3 */
++ outb(vgaCRReg, restore->CRB0);
++ }
+
+ outb(vgaCRIndex, 0x32);
+ outb(vgaCRReg, restore->CR32);
+@@ -981,6 +987,8 @@
+ save->CR53 = inb(vgaCRReg);
+ outb(vgaCRIndex, 0x58);
+ save->CR58 = inb(vgaCRReg);
++ outb(vgaCRIndex, 0x60);
++ save->CR60 = inb(vgaCRReg);
+ outb(vgaCRIndex, 0x66);
+ save->CR66 = inb(vgaCRReg);
+ outb(vgaCRIndex, 0x67);
+@@ -1135,10 +1143,29 @@
+ }
+
+
++/*
++ * This function adjusts the pitch to a multiple of 16 pixels.
++ */
++
++static int
++S3SAVPitchAdjust( void )
++{
++ int pitch = vga256InfoRec.virtualX;
++
++ if( pitch % 16 != 0 )
++ {
++ pitch = (pitch + 15) & ~15;
++
++ ErrorF("%s %s: %s: Display width padded to %d bytes.\n",
++ XCONFIG_PROBED, vga256InfoRec.name, vga256InfoRec.chipset,
++ pitch);
++ }
++ return pitch;
++}
++
++
+ /*
+- * This is the main probe function for the virge chipsets.
+- * Right now, I have taken a shortcut and get most of the info from
+- * PCI probing.
++ * This is the main probe function for the Savage chipsets.
+ */
+
+ static Bool
+@@ -1511,6 +1538,8 @@
+ S3V.ChipLinearBase = vga256InfoRec.MemBase;
+ S3V.ChipLinearSize = vga256InfoRec.videoRam * 1024;
+
++ vgaSetPitchAdjustHook(S3SAVPitchAdjust);
++
+ return TRUE;
+ }
+
+@@ -1782,9 +1811,9 @@
+ outb(vgaCRIndex, 0x3a);
+ tmp = inb(vgaCRReg);
+ if(!OFLG_ISSET(OPTION_PCI_BURST_ON, &vga256InfoRec.options))
+- new->CR3A = tmp | 0x95; /* ENH 256, no PCI burst! */
++ new->CR3A = tmp | 0x90; /* ENH 256, no PCI burst! */
+ else
+- new->CR3A = (tmp & 0x7f) | 0x15; /* ENH 256, PCI burst */
++ new->CR3A = (tmp & 0x7f) | 0x10; /* ENH 256, PCI burst */
+
+ new->CR53 &= ~0x08; /* Enables MMIO */
+ new->CR31 = 0x8c; /* Dis. 64k window, en. ENH maps */
+@@ -1806,12 +1835,22 @@
+
+ dclk = vga256InfoRec.clock[mode->Clock];
+ new->CR67 = 0x00; /* Defaults */
+- new->SR15 = 0x03 | 0x80;
++ if( s3vPriv.chip != S3_SAVAGE2000 )
++ new->SR15 = 0x03 | 0x80;
++ else
++ /* One-cycle writes broken on Savage2000? */
++ new->SR15 = 0x03;
+ new->SR18 = 0x00;
+ new->CR43 = 0x00;
+ new->CR45 = 0x00;
+ new->CR65 = 0x00;
+
++ outb(vgaCRIndex, 0x60);
++ new->CR60 = inb(vgaCRReg);
++
++ if( s3vPriv.chip == S3_SAVAGE_MX )
++ new->CR60 = 0x09;
++
+ outb(vgaCRIndex, 0x40);
+ new->CR40 = inb(vgaCRReg) & ~0x01;
+
+@@ -1852,16 +1891,19 @@
+
+ {
+ if (vgaBitsPerPixel == 8) {
+- if (dclk <= 110000) new->CR67 = 0x00; /* 8bpp, 135MHz */
+- else new->CR67 = 0x10; /* 8bpp, 220MHz */
++ new->CR67 = 0x00; /* 8bpp, 220MHz */
+ }
+ else if ((vgaBitsPerPixel == 16) && (vga256InfoRec.weight.green == 5)) {
+- if (dclk <= 110000) new->CR67 = 0x20; /* 15bpp, 135MHz */
+- else new->CR67 = 0x30; /* 15bpp, 220MHz */
++ if( s3vPriv.chip == S3_SAVAGE_MX )
++ new->CR67 = 0x30; /* 15bpp, 220MHz */
++ else
++ new->CR67 = 0x20;
+ }
+ else if (vgaBitsPerPixel == 16) {
+- if (dclk <= 110000) new->CR67 = 0x40; /* 16bpp, 135MHz */
+- else new->CR67 = 0x50; /* 16bpp, 220MHz */
++ if( s3vPriv.chip == S3_SAVAGE_MX )
++ new->CR67 = 0x50; /* 16bpp, 220MHz */
++ else
++ new->CR67 = 0x40;
+ }
+ else if ((vgaBitsPerPixel == 24) || (vgaBitsPerPixel == 32)) {
+ new->CR67 = 0xd0; /* 24bpp, 135MHz */
+@@ -1967,8 +2009,12 @@
+ else
+ new->CR50 |= 0xC1; /* default to use GlobalBD */
+
+- new->CR33 = 0x20;
++ if( s3vPriv.chip == S3_SAVAGE2000 )
++ new->CR33 = 0x08;
++ else
++ new->CR33 = 0x20;
+
++ new->std.CRTC[0x17] = 0xeb;
+
+ /* Now we handle various XConfig memory options and others */
+
+--- programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.h.orig Sun Oct 22 09:52:21 2000
++++ programs/Xserver/hw/xfree86/vga256/drivers/s3_savage/s3sav_driver.h Sat Sep 2 02:57:01 2000
+@@ -25,7 +25,7 @@
+ unsigned char CR31, CR32, CR33, CR34, CR36, CR3A, CR3B, CR3C;
+ unsigned char CR40, CR42, CR43, CR45;
+ unsigned char CR50, CR51, CR53, CR58, CR5B, CR5D, CR5E;
+- unsigned char CR65, CR66, CR67, CR68, CR69, CR6F; /* Video attrib. */
++ unsigned char CR60, CR65, CR66, CR67, CR68, CR69, CR6F; /* Video attrib. */
+ unsigned char CR86, CR88;
+ unsigned char CR90, CR91, CRB0;
+ unsigned char ColorStack[8]; /* S3 hw cursor color stack CR4A/CR4B */
diff --git a/x11-servers/XttXF86srv-common/files/patch-q b/x11-servers/XttXF86srv-common/files/patch-q
new file mode 100644
index 000000000000..66937ce3de9a
--- /dev/null
+++ b/x11-servers/XttXF86srv-common/files/patch-q
@@ -0,0 +1,21 @@
+--- programs/Xserver/hw/xfree86/etc/scanpci.c.orig Fri Dec 3 04:43:47 1999
++++ programs/Xserver/hw/xfree86/etc/scanpci.c Mon Dec 4 14:14:39 2000
+@@ -101,7 +101,17 @@
+ #endif
+ #if defined(__FreeBSD__) || defined(__386BSD__)
+ #include <sys/file.h>
+-#include <machine/console.h>
++#if defined(__FreeBSD__)
++# include <osreldate.h>
++# if __FreeBSD_version >= 410000
++# include <sys/consio.h>
++# include <sys/kbio.h>
++# else
++# include <machine/console.h>
++# endif
++#else
++# include <machine/console.h>
++#endif
+ #ifndef GCCUSESGAS
+ #define GCCUSESGAS
+ #endif
diff --git a/x11-servers/XttXF86srv-common/files/patch-r b/x11-servers/XttXF86srv-common/files/patch-r
new file mode 100644
index 000000000000..ef144a258fcc
--- /dev/null
+++ b/x11-servers/XttXF86srv-common/files/patch-r
@@ -0,0 +1,43 @@
+--- programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h.ORIG Mon Nov 27 13:29 :06 2000
++++ programs/Xserver/hw/xfree86/os-support/xf86_OSlib.h Mon Nov 27 14:26:21 2000
+@@ -461,11 +461,21 @@
+ # endif
+ # ifdef SYSCONS_SUPPORT
+ # define COMPAT_SYSCONS
+-# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
++# if defined(__NetBSD__) || defined(__OpenBSD__)
+ # include <machine/console.h>
+ # else
+-# include <sys/console.h>
+-# endif /* __FreeBSD__ || __NetBSD__ || defined(__OpenBSD__) */
++# if defined(__FreeBSD__)
++# include <osreldate.h>
++# if __FreeBSD_version >= 410000
++# include <sys/consio.h>
++# include <sys/kbio.h>
++# else
++# include <machine/console.h>
++# endif /* FreeBSD 4.1 RELEASE or lator */
++# else
++# include <sys/console.h>
++# endif
++# endif
+ # endif /* SYSCONS_SUPPORT */
+ # if defined(PCVT_SUPPORT)
+ # if !defined(SYSCONS_SUPPORT)
+@@ -496,8 +506,13 @@
+ # include <dev/wscons/wsconsio.h>
+ # endif /* WSCONS_SUPPORT */
+ # if defined(__FreeBSD__)
+-# undef MOUSE_GETINFO
+-# include <machine/mouse.h>
++# include <osreldate.h>
++# if __FreeBSD_version >= 500013
++# include <sys/mouse.h>
++# else
++# undef MOUSE_GETINFO
++# include <machine/mouse.h>
++# endif
+ # endif
+ /* Include these definitions in case ioctl_pc.h didn't get included */
+ # ifndef CONSOLE_X_MODE_ON
diff --git a/x11-servers/XttXF86srv-common/files/patch-s b/x11-servers/XttXF86srv-common/files/patch-s
new file mode 100644
index 000000000000..3697f7b18ac3
--- /dev/null
+++ b/x11-servers/XttXF86srv-common/files/patch-s
@@ -0,0 +1,21 @@
+--- programs/Xserver/hw/xfree86/SuperProbe/OS_386BSD.c.ORIG Mon Nov 27 14:29 :12 2000
++++ programs/Xserver/hw/xfree86/SuperProbe/OS_386BSD.c Mon Nov 27 14:37:03 2000
+@@ -83,7 +83,17 @@
+ # endif
+ # ifdef SYSCONS_SUPPORT
+ /* both, Free and NetBSD have syscons */
+-# include <machine/console.h>
++# if defined(__FreeBSD__)
++# include <osreldate.h>
++# if __FreeBSD_version >= 410000
++# include <sys/consio.h>
++# include <sys/kbio.h>
++# else
++# include <machine/console.h>
++# endif
++# else
++# include <machine/console.h>
++# endif
+ # endif
+ # else
+ # ifdef CODRV_SUPPORT