diff options
-rw-r--r-- | main/xf86-video-tseng/APKBUILD | 17 | ||||
-rw-r--r-- | main/xf86-video-tseng/tseng-1.2.4-git.patch | 317 |
2 files changed, 331 insertions, 3 deletions
diff --git a/main/xf86-video-tseng/APKBUILD b/main/xf86-video-tseng/APKBUILD index a9810dedb..e7799eb0a 100644 --- a/main/xf86-video-tseng/APKBUILD +++ b/main/xf86-video-tseng/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=xf86-video-tseng pkgver=1.2.4 -pkgrel=3 +pkgrel=4 pkgdesc="Tseng Labs video driver" url="http://xorg.freedesktop.org/" arch="all" @@ -11,7 +11,17 @@ depends= makedepends="pkgconfig xorg-server-dev libxi-dev fontsproto randrproto videoproto renderproto" -source="http://xorg.freedesktop.org/releases/individual/driver/$pkgname-$pkgver.tar.bz2" +source="http://xorg.freedesktop.org/releases/individual/driver/$pkgname-$pkgver.tar.bz2 + tseng-1.2.4-git.patch" + +prepare() { + cd "$srcdir"/$pkgname-$pkgver + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done +} build() { cd "$srcdir"/$pkgname-$pkgver @@ -26,4 +36,5 @@ package() { rm "$pkgdir"/usr/lib/xorg/modules/*/*.la || return 1 install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING } -md5sums="fa441774f8bf516a5c6331d64231a39d xf86-video-tseng-1.2.4.tar.bz2" +md5sums="fa441774f8bf516a5c6331d64231a39d xf86-video-tseng-1.2.4.tar.bz2 +48a70c20554df04f373db5ed1fe1ae0c tseng-1.2.4-git.patch" diff --git a/main/xf86-video-tseng/tseng-1.2.4-git.patch b/main/xf86-video-tseng/tseng-1.2.4-git.patch new file mode 100644 index 000000000..082b2cb0b --- /dev/null +++ b/main/xf86-video-tseng/tseng-1.2.4-git.patch @@ -0,0 +1,317 @@ +diff --git a/configure.ac b/configure.ac +index 62cc318..8458c06 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -20,46 +20,46 @@ + # + # Process this file with autoconf to produce a configure script + +-AC_PREREQ(2.57) ++# Initialize Autoconf ++AC_PREREQ([2.60]) + AC_INIT([xf86-video-tseng], +- 1.2.4, ++ [1.2.4], + [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], +- xf86-video-tseng) +- ++ [xf86-video-tseng]) + AC_CONFIG_SRCDIR([Makefile.am]) +-AM_CONFIG_HEADER([config.h]) ++AC_CONFIG_HEADERS([config.h]) + AC_CONFIG_AUX_DIR(.) + ++# Initialize Automake + AM_INIT_AUTOMAKE([foreign dist-bzip2]) +- + AM_MAINTAINER_MODE + +-# Require xorg-macros: XORG_DEFAULT_OPTIONS ++# Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS + m4_ifndef([XORG_MACROS_VERSION], +- [m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])]) +-XORG_MACROS_VERSION(1.3) ++ [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) ++XORG_MACROS_VERSION(1.8) + XORG_DEFAULT_OPTIONS + +-# Checks for programs. ++# Initialize libtool + AC_DISABLE_STATIC + AC_PROG_LIBTOOL +-AC_PROG_CC + + AH_TOP([#include "xorg-server.h"]) + ++# Define a configure option for an alternate module directory + AC_ARG_WITH(xorg-module-dir, +- AC_HELP_STRING([--with-xorg-module-dir=DIR], ++ AS_HELP_STRING([--with-xorg-module-dir=DIR], + [Default xorg module directory [[default=$libdir/xorg/modules]]]), + [moduledir="$withval"], + [moduledir="$libdir/xorg/modules"]) + +-# Checks for extensions ++# Store the list of server defined optional extensions in REQUIRED_MODULES + XORG_DRIVER_CHECK_EXT(RANDR, randrproto) + XORG_DRIVER_CHECK_EXT(RENDER, renderproto) + XORG_DRIVER_CHECK_EXT(XV, videoproto) + XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) + +-# Checks for pkg-config packages ++# Obtain compiler/linker options for the driver dependencies + PKG_CHECK_MODULES(XORG, [xorg-server >= 1.0.99.901 xproto fontsproto $REQUIRED_MODULES]) + + # Checks for libraries. +@@ -78,17 +78,14 @@ if test "x$XSERVER_LIBPCIACCESS" = xyes; then + fi + AM_CONDITIONAL(XSERVER_LIBPCIACCESS, test "x$XSERVER_LIBPCIACCESS" = xyes) + +-# Checks for header files. +-AC_HEADER_STDC +- +-AC_SUBST([XORG_CFLAGS]) + AC_SUBST([moduledir]) + + DRIVER_NAME=tseng + AC_SUBST([DRIVER_NAME]) + +-AC_OUTPUT([ +- Makefile +- src/Makefile +- man/Makefile ++AC_CONFIG_FILES([ ++ Makefile ++ src/Makefile ++ man/Makefile + ]) ++AC_OUTPUT +diff --git a/man/Makefile.am b/man/Makefile.am +index 8f2454b..b3688ce 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -31,25 +31,11 @@ EXTRA_DIST = @DRIVER_NAME@.man + + CLEANFILES = $(driverman_DATA) + +-SED = sed +- +-# Strings to replace in man pages +-XORGRELSTRING = @PACKAGE_STRING@ +- XORGMANNAME = X Version 11 +- +-MAN_SUBSTS = \ +- -e 's|__vendorversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \ +- -e 's|__xorgversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \ +- -e 's|__xservername__|Xorg|g' \ +- -e 's|__xconfigfile__|xorg.conf|g' \ +- -e 's|__projectroot__|$(prefix)|g' \ +- -e 's|__appmansuffix__|$(APP_MAN_SUFFIX)|g' \ +- -e 's|__drivermansuffix__|$(DRIVER_MAN_SUFFIX)|g' \ +- -e 's|__adminmansuffix__|$(ADMIN_MAN_SUFFIX)|g' \ +- -e 's|__miscmansuffix__|$(MISC_MAN_SUFFIX)|g' \ +- -e 's|__filemansuffix__|$(FILE_MAN_SUFFIX)|g' ++ ++# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure ++ + + SUFFIXES = .$(DRIVER_MAN_SUFFIX) .man + + .man.$(DRIVER_MAN_SUFFIX): +- sed $(MAN_SUBSTS) < $< > $@ ++ $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ +diff --git a/man/tseng.man b/man/tseng.man +index 403782f..984c8e7 100644 +--- a/man/tseng.man ++++ b/man/tseng.man +@@ -1,4 +1,3 @@ +-.\" $XFree86: xc/programs/Xserver/hw/xfree86/drivers/tseng/tseng.man,v 1.2 2001/01/27 18:20:55 dawes Exp $ + .\" shorthand for double quote that works everywhere. + .ds q \N'34' + .TH TSENG __drivermansuffix__ __vendorversion__ +diff --git a/src/tseng_cursor.c b/src/tseng_cursor.c +index d4fb847..2412b31 100644 +--- a/src/tseng_cursor.c ++++ b/src/tseng_cursor.c +@@ -159,7 +159,7 @@ TsengSetCursorColors(ScrnInfoPtr pScrn, int bg, int fg) + } + } + +-void ++static void + TsengLoadCursorImage(ScrnInfoPtr pScrn, unsigned char *bits) + { + vgaHWPtr hwp = VGAHWPTR(pScrn); +diff --git a/src/tseng_dga.c b/src/tseng_dga.c +index 70ebe23..528ba4c 100644 +--- a/src/tseng_dga.c ++++ b/src/tseng_dga.c +@@ -74,9 +74,9 @@ TsengDGAInit(ScreenPtr pScreen) + if (!pTseng->DGAnumModes) { + pMode = firstMode = pScrn->modes; + while (pMode) { +- newmodes = xrealloc(modes, (num + 1) * sizeof (DGAModeRec)); ++ newmodes = realloc(modes, (num + 1) * sizeof (DGAModeRec)); + if (!newmodes) { +- xfree(modes); ++ free(modes); + return FALSE; + } + modes = newmodes; +@@ -135,7 +135,7 @@ Tseng_OpenFramebuffer( + TsengPtr pTseng = TsengPTR(pScrn); + + *name = NULL; /* no special device */ +- *mem = (unsigned char*)pTseng->FbAddress; ++ *mem = (unsigned char*)(uintptr_t)pTseng->FbAddress; + *size = pTseng->FbMapSize; + *offset = 0; /* Always */ + *flags = 0; /* Root permissions OS-dependent */ +diff --git a/src/tseng_driver.c b/src/tseng_driver.c +index 445c17e..d36b62c 100644 +--- a/src/tseng_driver.c ++++ b/src/tseng_driver.c +@@ -269,9 +269,9 @@ TsengFreeRec(ScrnInfoPtr pScrn) + pTseng = TsengPTR(pScrn); + + if (pTseng->SavedReg.RAMDAC) +- xfree(pTseng->SavedReg.RAMDAC); ++ free(pTseng->SavedReg.RAMDAC); + +- xfree(pScrn->driverPrivate); ++ free(pScrn->driverPrivate); + pScrn->driverPrivate = NULL; + } + +@@ -395,10 +395,10 @@ TsengProbe(DriverPtr drv, int flags) + foundScreen = TRUE; + } + } +- xfree(usedChips); ++ free(usedChips); + } + +- xfree(devSections); ++ free(devSections); + return foundScreen; + } + +@@ -806,7 +806,7 @@ TsengProcessOptions(ScrnInfoPtr pScrn) + xf86CollectOptions(pScrn, NULL); + + /* Process the options */ +- if (!(pTseng->Options = xalloc(sizeof(TsengOptions)))) ++ if (!(pTseng->Options = malloc(sizeof(TsengOptions)))) + return FALSE; + memcpy(pTseng->Options, TsengOptions, sizeof(TsengOptions)); + xf86ProcessOptions(pScrn->scrnIndex, pScrn->options, pTseng->Options); +@@ -883,7 +883,7 @@ TsengGetFbAddress(ScrnInfoPtr pScrn) + PDEBUG(" TsengGetFbAddress\n"); + + /* base0 is the framebuffer and base1 is the PCI IO space. */ +- if (PCI_REGION_BASE(pTseng->PciInfo, 0, REGION_MEM)) { ++ if (!PCI_REGION_BASE(pTseng->PciInfo, 0, REGION_MEM)) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "No valid Framebuffer address in PCI config space;\n"); + return FALSE; +diff --git a/src/tseng_mode.c b/src/tseng_mode.c +index f075226..a3ff87d 100644 +--- a/src/tseng_mode.c ++++ b/src/tseng_mode.c +@@ -41,7 +41,11 @@ vgaHWWriteBank(vgaHWPtr hwp, CARD8 value) + if (hwp->MMIOBase) + MMIO_OUT8(hwp->MMIOBase, hwp->MMIOOffset + VGA_BANK, value); + else ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 + outb(hwp->PIOOffset + VGA_BANK, value); ++#else ++ pci_io_write8(hwp->io, VGA_BANK, value); ++#endif + } + + CARD8 +@@ -50,7 +54,11 @@ vgaHWReadBank(vgaHWPtr hwp) + if (hwp->MMIOBase) + return MMIO_IN8(hwp->MMIOBase, hwp->MMIOOffset + VGA_BANK); + else ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 + return inb(hwp->PIOOffset + VGA_BANK); ++#else ++ return pci_io_read8(hwp->io, VGA_BANK); ++#endif + } + + #define VGA_SEGMENT 0x3CD +@@ -61,7 +69,11 @@ vgaHWWriteSegment(vgaHWPtr hwp, CARD8 value) + if (hwp->MMIOBase) + MMIO_OUT8(hwp->MMIOBase, hwp->MMIOOffset + VGA_SEGMENT, value); + else ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 + outb(hwp->PIOOffset + VGA_SEGMENT, value); ++#else ++ pci_io_write8(hwp->io, VGA_SEGMENT, value); ++#endif + } + + CARD8 +@@ -70,7 +82,11 @@ vgaHWReadSegment(vgaHWPtr hwp) + if (hwp->MMIOBase) + return MMIO_IN8(hwp->MMIOBase, hwp->MMIOOffset + VGA_SEGMENT); + else ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 + return inb(hwp->PIOOffset + VGA_SEGMENT); ++#else ++ return pci_io_read8(hwp->io, VGA_SEGMENT); ++#endif + } + + /* +@@ -84,8 +100,12 @@ vgaHWWriteModeControl(vgaHWPtr hwp, CARD8 value) + if (hwp->MMIOBase) + MMIO_OUT8(hwp->MMIOBase, + hwp->MMIOOffset + hwp->IOBase + VGA_MODE_CONTROL, value); +- else +- outb(hwp->IOBase + hwp->PIOOffset + VGA_MODE_CONTROL, value); ++ else ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 ++ outb(hwp->PIOOffset + VGA_MODE_CONTROL, value); ++#else ++ pci_io_write8(hwp->io, VGA_MODE_CONTROL, value); ++#endif + } + + /* +@@ -110,14 +130,22 @@ vgaHWHerculesSecondPage(vgaHWPtr hwp, Bool Enable) + + MMIO_OUT8(hwp->MMIOBase, hwp->MMIOOffset + VGA_HERCULES, tmp); + } else { +- tmp = inb(hwp->PIOOffset + VGA_HERCULES); ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 ++ tmp = inb(hwp->PIOOffset + VGA_HERCULES); ++#else ++ tmp = pci_io_read8(hwp->io, VGA_HERCULES); ++#endif + + if (Enable) + tmp |= 0x02; + else + tmp &= ~0x02; + +- outb(hwp->PIOOffset + VGA_HERCULES, tmp); ++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 ++ outb(hwp->PIOOffset + VGA_HERCULES, tmp); ++#else ++ pci_io_write8(hwp->io, VGA_HERCULES, tmp); ++#endif + } + } + +@@ -1502,7 +1530,7 @@ TsengModeInit(ScrnInfoPtr pScrn, DisplayModePtr OrigMode) + + /* clean up */ + if (new->RAMDAC) +- xfree(new->RAMDAC); ++ free(new->RAMDAC); + + return TRUE; + } |