[xserver-commit] xserver ChangeLog,3.28,3.29 Makefile.am,3.7,3.8 configure.ac,3.29,3.30

Keith Packard xserver-commit@pdx.freedesktop.org
Sun, 02 Nov 2003 11:56:12 -0800


Committed by: keithp

Update of /cvs/xserver/xserver
In directory pdx:/tmp/cvs-serv23831

Modified Files:
	ChangeLog Makefile.am configure.ac 
Log Message:
	merge xfixes_2_branch back to HEAD


Index: ChangeLog
===================================================================
RCS file: /cvs/xserver/xserver/ChangeLog,v
retrieving revision 3.28
retrieving revision 3.29
diff -u -d -r3.28 -r3.29
--- ChangeLog	1 Nov 2003 09:21:10 -0000	3.28
+++ ChangeLog	2 Nov 2003 19:56:09 -0000	3.29
@@ -1,9 +1,756 @@
+2003-11-02  Keith Packard  <keithp@keithp.com>
+
+	* Makefile.am:
+	* Xext/Makefile.am:
+	* Xext/bigreq.c: (BigReqExtensionInit):
+	* Xext/mitmisc.c: (MITMiscExtensionInit):
+	* Xext/saver.c: (ScreenSaverExtensionInit):
+	* Xext/shape.c: (ShapeExtensionInit), (SendShapeNotify):
+	* Xext/shm.c: (ShmExtensionInit), (ShmRegisterFuncs),
+	(ShmSetPixmapFormat), (ShmRegisterFbFuncs), (miShmPutImage),
+	(fbShmCreatePixmap):
+	* Xext/shmint.h:
+	* Xext/sleepuntil.c: (ClientSleepUntil):
+	* Xext/sleepuntil.h:
+	* Xext/sync.c: (SyncCreateSystemCounter), (SyncExtensionInit):
+	* Xext/syncint.h:
+	* Xext/xcmisc.c: (XCMiscExtensionInit):
+	* Xext/xext.h:
+	* Xext/xres.c:
+	* Xext/xtest.c: (XTestExtensionInit):
+	* Xext/xtest1di.c: (XTestExtension1Init):
+	* Xext/xvmc.c: (XvMCFindXvImage):
+	* Xext/xvmcext.h:
+	* configure.ac:
+	* damageext/.cvsignore:
+	* damageext/Makefile.am:
+	* damageext/damageext.c: (DamageExtNotify), (DamageExtReport),
+	(DamageExtDestroy), (ProcDamageQueryVersion), (ProcDamageCreate),
+	(ProcDamageDestroy), (ProcDamageSubtract), (XDamageNumberRequests),
+	(ProcDamageDispatch), (SProcDamageQueryVersion),
+	(SProcDamageCreate), (SProcDamageDestroy), (SProcDamageSubtract),
+	(SProcDamageDispatch), (DamageClientCallback), (DamageResetProc),
+	(FreeDamageExt), (FreeDamageExtWin), (SDamageNotifyEvent),
+	(DamageExtensionInit):
+	* damageext/damageext.h:
+	* damageext/damageextint.h:
+	* dix/Makefile.am:
+	* dix/cursor.c:
+	* dix/dispatch.c:
+	* dix/extension.c: (CloseDownExtensions):
+	* dix/property.c: (NullPropertyReply):
+	* dix/window.c: (SetWinSize), (SetBorderSize):
+	* dix/xpstubs.c: (XpClientIsBitmapClient), (XpClientIsPrintClient),
+	(XprintOptions):
+	* fb/Makefile.am:
+	* fb/fbcmap.c:
+	* fb/fbcopy.c: (fbCopyNtoN), (fbDoCopy), (fbCopyArea):
+	* fb/fboverlay.c:
+	* hw/kdrive/fbdev/Makefile.am:
+	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
+	(fbdevMapFramebuffer), (fbdevSetScreenSizes),
+	(fbdevUnmapFramebuffer), (fbdevSetShadow), (fbdevRandRSetConfig),
+	(fbdevInitScreen), (fbdevFinishInitScreen), (fbdevCreateResources):
+	* hw/kdrive/fbdev/fbdev.h:
+	* hw/kdrive/fbdev/fbinit.c:
+	* hw/kdrive/linux/Makefile.am:
+	* hw/kdrive/linux/agp.c: (GARTInit):
+	* hw/kdrive/linux/bus.c:
+	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
+	* hw/kdrive/linux/linux.c: (LinuxInit):
+	* hw/kdrive/linux/mouse.c:
+	* hw/kdrive/linux/ms.c:
+	* hw/kdrive/linux/ps2.c:
+	* hw/kdrive/mach64/Makefile.am:
+	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit),
+	(mach64InitScreen), (mach64CreateResources), (mach64ScreenFini),
+	(mach64CardFini):
+	* hw/kdrive/mach64/mach64.h:
+	* hw/kdrive/mach64/mach64draw.c: (mach64Setup), (mach64DoneSolid),
+	(mach64DoneCopy), (mach64DrawFini):
+	* hw/kdrive/mach64/mach64video.c: (mach64InitVideo),
+	(mach64FiniVideo):
+	* hw/kdrive/mga/Makefile.am:
+	* hw/kdrive/mga/mga.c: (mgaScreenInit), (mgaCreateResources):
+	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
+	* hw/kdrive/nvidia/Makefile.am:
+	* hw/kdrive/nvidia/nvidia.c: (nvidiaRandRSetConfig),
+	(nvidiaPreserve), (nvidiaLockUnlock), (nvidiaEnable):
+	* hw/kdrive/nvidia/nvidia.h:
+	* hw/kdrive/nvidia/nvidiadraw.c: (nvidiaPrepareSolid),
+	(nvidiaPrepareCopy), (nvidiaDrawInit), (nvidiaDrawEnable):
+	* hw/kdrive/r128/Makefile.am:
+	* hw/kdrive/r128/r128.c: (r128ScreenInit), (r128Preserve),
+	(r128DPMS):
+	* hw/kdrive/r128/r128.h:
+	* hw/kdrive/r128/r128draw.c: (r128WaitAvail), (r128Setup),
+	(r128PrepareSolid), (r128PrepareCopy), (r128DrawInit):
+	* hw/kdrive/r128/r128stub.c: (InitCard):
+	* hw/kdrive/smi/Makefile.am:
+	* hw/kdrive/smi/smi.c: (smiRandRSetConfig), (smiPreserve),
+	(smiDPMS), (smiRestore):
+	* hw/kdrive/smi/smi.h:
+	* hw/kdrive/smi/smidraw.c: (smiPrepareSolid), (smiPrepareCopy),
+	(smiDrawInit):
+	* hw/kdrive/smi/smistub.c:
+	* hw/kdrive/src/Makefile.am:
+	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaCreatePixmap),
+	(kaaPixmapIsOffscreen), (kaaGetOffscreenPixmap),
+	(kaaDrawableIsOffscreen), (kaaFillSpans), (kaaCopyNtoN),
+	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaValidateGC),
+	(kaaFillRegionSolid), (kaaDrawInit), (kaaDrawFini):
+	* hw/kdrive/src/kasync.c:
+	* hw/kdrive/src/kcmap.c:
+	* hw/kdrive/src/kcurscol.c:
+	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources),
+	(KdCloseScreen), (KdScreenInit):
+	* hw/kdrive/src/kdrive.h:
+	* hw/kdrive/src/kinput.c:
+	* hw/kdrive/src/knoop.c:
+	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
+	(KdOffscreenAlloc), (KdOffscreenInit):
+	* hw/kdrive/src/kshadow.c: (KdShadowFbAlloc), (KdShadowFbFree),
+	(KdShadowSet), (KdShadowUnset):
+	* hw/kdrive/src/vga.c:
+	* hw/kdrive/src/vga.h:
+	* hw/kdrive/vesa/Makefile.am:
+	* hw/kdrive/vesa/vesa.c: (vesaScreenInitialize), (vesaUpdateMono),
+	(vesaSetScreenSizes), (vesaSetShadow), (vesaMapFramebuffer),
+	(vesaUnmapFramebuffer), (vesaRandRSetConfig), (vesaInitScreen),
+	(vesaFinishInitScreen), (vesaCreateResources), (vesaScreenFini):
+	* hw/kdrive/vesa/vesa.h:
+	* hw/kdrive/vesa/vesainit.c:
+	* hw/xnest/Color.c: (xnestCreateColormap), (xnestDestroyColormap),
+	(xnestCountInstalledColormapWindows),
+	(xnestGetInstalledColormapWindows),
+	(xnestSameInstalledColormapWindows),
+	(xnestSetInstalledColormapWindows),
+	(xnestSetScreenSaverColormapWindow), (xnestDirectInstallColormaps),
+	(xnestDirectUninstallColormaps), (xnestInstallColormap),
+	(xnestUninstallColormap), (xnestListInstalledColormaps),
+	(xnestStoreColors), (xnestResolveColor),
+	(xnestCreateDefaultColormap):
+	* hw/xnest/Color.h:
+	* hw/xnest/Cursor.c: (xnestConstrainCursor), (xnestCursorLimits),
+	(xnestDisplayCursor), (xnestRealizeCursor), (xnestUnrealizeCursor),
+	(xnestRecolorCursor), (xnestSetCursorPosition):
+	* hw/xnest/Display.c: (xnestOpenDisplay):
+	* hw/xnest/Display.h:
+	* hw/xnest/Events.c: (xnestExposurePredicate),
+	(xnestNotExposurePredicate), (xnestCollectExposures),
+	(xnestCollectEvents):
+	* hw/xnest/Events.h:
+	* hw/xnest/Font.c: (xnestRealizeFont), (xnestUnrealizeFont):
+	* hw/xnest/GC.c: (xnestValidateGC), (xnestChangeGC), (xnestCopyGC),
+	(xnestDestroyGC), (xnestDestroyClipHelper), (xnestChangeClip),
+	(xnestDestroyClip), (xnestCopyClip), (xnestCreateGC):
+	* hw/xnest/GCOps.c: (xnestFillSpans), (xnestSetSpans),
+	(xnestGetSpans), (xnestQueryBestSize), (xnestPutImage),
+	(xnestGetImage), (xnestBitBlitPredicate), (xnestBitBlitHelper),
+	(xnestCopyArea), (xnestCopyPlane), (xnestPolyPoint),
+	(xnestPolylines), (xnestPolySegment), (xnestPolyRectangle),
+	(xnestPolyArc), (xnestFillPolygon), (xnestPolyFillRect),
+	(xnestPolyFillArc), (xnestPolyText8), (xnestPolyText16),
+	(xnestImageText8), (xnestImageText16), (xnestImageGlyphBlt),
+	(xnestPolyGlyphBlt), (xnestPushPixels):
+	* hw/xnest/GCOps.h:
+	* hw/xnest/Handlers.c: (xnestBlockHandler), (xnestWakeupHandler):
+	* hw/xnest/Handlers.h:
+	* hw/xnest/Init.c: (InitOutput), (InitInput), (AbortDDX),
+	(ddxGiveUp), (OsVendorInit), (OsVendorFatalError):
+	* hw/xnest/Keyboard.c: (xnestBell), (xnestChangeKeyboardControl),
+	(xnestKeyboardProc):
+	* hw/xnest/Keyboard.h:
+	* hw/xnest/Makefile.am:
+	* hw/xnest/Pixmap.c: (xnestCreatePixmap), (xnestDestroyPixmap),
+	(xnestPixmapToRegion):
+	* hw/xnest/Pointer.c: (xnestChangePointerControl),
+	(xnestPointerProc):
+	* hw/xnest/Pointer.h:
+	* hw/xnest/Screen.c: (xnestScreen), (offset), (xnestSaveScreen),
+	(xnestCursorOffScreen), (xnestCrossScreen), (xnestOpenScreen),
+	(xnestCloseScreen):
+	* hw/xnest/Screen.h:
+	* hw/xnest/Visual.c: (xnestVisual), (xnestVisualFromID),
+	(xnestDefaultVisualColormap):
+	* hw/xnest/Visual.h:
+	* hw/xnest/Window.c: (xnestFindWindowMatch), (xnestWindowPtr),
+	(xnestCreateWindow), (xnestDestroyWindow), (xnestPositionWindow),
+	(xnestConfigureWindow), (xnestChangeWindowAttributes),
+	(xnestRealizeWindow), (xnestUnrealizeWindow),
+	(xnestPaintWindowBackground), (xnestPaintWindowBorder),
+	(xnestCopyWindow), (xnestClipNotify),
+	(xnestWindowExposurePredicate), (xnestWindowExposures),
+	(xnestRegionEqual), (xnestShapeWindow):
+	* hw/xnest/XNCursor.h:
+	* hw/xnest/XNFont.h:
+	* hw/xnest/XNGC.h:
+	* hw/xnest/XNPixmap.h:
+	* hw/xnest/XNWindow.h:
+	* include/cursorstr.h:
+	* include/extnsionst.h:
+	* include/os.h:
+	* include/picture.h:
+	* include/window.h:
+	* include/windowstr.h:
+	* mi/Makefile.am:
+	* mi/miinitext.c:
+	* mi/miscrinit.c:
+	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
+	* mi/mispritest.h:
+	* mi/mivaltree.c: (miComputeClips):
+	* miext/Makefile.am:
+	* miext/damage/.cvsignore:
+	* miext/damage/Makefile.am:
+	* miext/damage/damage.c: (GetDrawablePixmap), (damageDamageRegion),
+	(damageDamageBox), (damageDamageRect), (damageCreateGC),
+	(damageWrapGC), (damageUnwrapGC), (damageValidateGC),
+	(damageDestroyGC), (damageChangeGC), (damageCopyGC),
+	(damageChangeClip), (damageCopyClip), (damageDestroyClip),
+	(damageComposite), (damageGlyphs), (damageFillSpans),
+	(damageSetSpans), (damagePutImage), (damageCopyArea),
+	(damageCopyPlane), (damagePolyPoint), (damagePolylines),
+	(damagePolySegment), (damagePolyRectangle), (damagePolyArc),
+	(damageFillPolygon), (damagePolyFillRect), (damagePolyFillArc),
+	(damageDamageChars), (damageText), (damagePolyText8),
+	(damagePolyText16), (damageImageText8), (damageImageText16),
+	(damageImageGlyphBlt), (damagePolyGlyphBlt), (damagePushPixels),
+	(damageRemoveDamage), (damageInsertDamage), (damageDestroyPixmap),
+	(damagePaintWindow), (damageCopyWindow), (damageRestoreAreas),
+	(damageCloseScreen), (DamageSetup), (DamageCreate),
+	(DamageRegister), (DamageDrawInternal), (DamageUnregister),
+	(DamageDestroy), (DamageSubtract), (DamageEmpty), (DamageRegion):
+	* miext/damage/damage.h:
+	* miext/damage/damagestr.h:
+	* miext/layer/Makefile.am:
+	* miext/layer/layerinit.c: (layerCloseScreen):
+	* miext/shadow/Makefile.am:
+	* miext/shadow/shadow.c: (shadowRedisplay), (shadowGetImage),
+	(shadowCloseScreen), (shadowSetup), (shadowSet), (shadowUnset),
+	(shadowInit):
+	* miext/shadow/shadow.h:
+	* miext/shadow/shpacked.c: (shadowUpdatePacked):
+	* miext/shadow/shplanar.c: (shadowUpdatePlanar4):
+	* miext/shadow/shplanar8.c: (shadowUpdatePlanar4x8):
+	* miext/shadow/shrotate.c: (shadowUpdateRotatePacked):
+	* miext/shadow/shrotpack.h:
+	* os/Makefile.am:
+	* os/connection.c: (ClientAuthorized):
+	* os/hpsocket.c: (set_socket_option), (unset_socket_option):
+	* os/xdmauth.c: (XdmCheckCookie), (XdmToID):
+	* randr/Makefile.am:
+	* render/Makefile.am:
+	* xfixes/Makefile.am:
+	* xfixes/cursor.c: (CursorDisplayCursor),
+	(SProcXFixesSelectCursorInput), (SXFixesCursorNotifyEvent),
+	(CopyCursorToImage), (ProcXFixesGetCursorImage),
+	(SProcXFixesGetCursorImage), (ProcXFixesSetCursorName),
+	(SProcXFixesSetCursorName), (ProcXFixesGetCursorName),
+	(SProcXFixesGetCursorName), (ProcXFixesGetCursorImageAndName),
+	(SProcXFixesGetCursorImageAndName), (ReplaceCursorLookup),
+	(ReplaceCursor), (TestForCursor), (ProcXFixesChangeCursor),
+	(SProcXFixesChangeCursor), (TestForCursorName),
+	(ProcXFixesChangeCursorByName), (SProcXFixesChangeCursorByName):
+	* xfixes/region.c: (RegionResFree), (RegionCopy),
+	(XFixesRegionInit), (ProcXFixesCreateRegion),
+	(SProcXFixesCreateRegion), (ProcXFixesCreateRegionFromBitmap),
+	(SProcXFixesCreateRegionFromBitmap),
+	(ProcXFixesCreateRegionFromWindow),
+	(SProcXFixesCreateRegionFromWindow),
+	(ProcXFixesCreateRegionFromGC), (SProcXFixesCreateRegionFromGC),
+	(ProcXFixesCreateRegionFromPicture),
+	(SProcXFixesCreateRegionFromPicture), (ProcXFixesDestroyRegion),
+	(SProcXFixesDestroyRegion), (ProcXFixesSetRegion),
+	(SProcXFixesSetRegion), (ProcXFixesCombineRegion),
+	(SProcXFixesCombineRegion), (ProcXFixesInvertRegion),
+	(SProcXFixesInvertRegion), (ProcXFixesRegionExtents),
+	(SProcXFixesRegionExtents), (ProcXFixesFetchRegion),
+	(SProcXFixesFetchRegion), (ProcXFixesSetGCClipRegion),
+	(SProcXFixesSetGCClipRegion), (ProcXFixesSetWindowShapeRegion),
+	(SProcXFixesSetWindowShapeRegion),
+	(ProcXFixesSetPictureClipRegion),
+	(SProcXFixesSetPictureClipRegion):
+	* xfixes/xfixes.c: (ProcXFixesQueryVersion),
+	(XFixesNumberRequests), (ProcXFixesDispatch),
+	(SProcXFixesQueryVersion), (SProcXFixesDispatch),
+	(XFixesClientCallback), (XFixesResetProc), (XFixesExtensionInit):
+	* xfixes/xfixes.h:
+	* xfixes/xfixesint.h:
+	merge xfixes_2_branch back to HEAD
+
+2003-11-02  Keith Packard  <keithp@keithp.com>
+
+	* miext/damage/damage.c: (damageDamageChars):
+	Window origin added to glyph damage box twice.
+
+2003-11-02  Eric Anholt  <anholt@FreeBSD.org>
+
+	* hw/kdrive/r128/r128.h:
+	* hw/kdrive/r128/r128draw.c: (r128Setup):
+	* hw/kdrive/r128/r128stub.c: (InitCard):
+	Fix fill/copyarea of r128 by setting the scissor registers
+	in setup, as XFree86 does on engine init.  Add another PCI
+	ID to r128stub.c.
+
 2003-10-31  Philip Blundell  <philb@gnu.org>
 
 	* configure.ac: Conditionally define XDMCP and HASXDMAUTH.
 	* os/Makefile.am (libos_a_SOURCES): Include xdmcp.c if XDMCP.
 	* os/xdmcp.c, os/xdmauth.c: Tweak #include paths.
 
+2003-10-31  Keith Packard  <keithp@keithp.com>
+
+	* Xext/shm.c: (miShmPutImage), (fbShmCreatePixmap):
+	* hw/xnest/GCOps.c: (xnestSetSpans), (xnestGetSpans),
+	(xnestQueryBestSize), (xnestPutImage), (xnestGetImage),
+	(xnestBitBlitHelper), (xnestCopyArea), (xnestCopyPlane),
+	(xnestPolyPoint), (xnestPolylines), (xnestPolyText16),
+	(xnestImageText16), (xnestImageGlyphBlt), (xnestPolyGlyphBlt),
+	(xnestPushPixels):
+	* hw/xnest/GCOps.h:
+	* hw/xnest/Handlers.c: (xnestBlockHandler), (xnestWakeupHandler):
+	* hw/xnest/Handlers.h:
+	* hw/xnest/Init.c: (InitOutput), (InitInput), (AbortDDX),
+	(ddxGiveUp), (OsVendorInit), (OsVendorFatalError):
+	* hw/xnest/Keyboard.c: (xnestBell), (xnestChangeKeyboardControl),
+	(xnestKeyboardProc):
+	* hw/xnest/Keyboard.h:
+	* hw/xnest/Pixmap.c: (xnestCreatePixmap), (xnestDestroyPixmap),
+	(xnestPixmapToRegion):
+	* hw/xnest/Pointer.c: (xnestChangePointerControl),
+	(xnestPointerProc):
+	* hw/xnest/Pointer.h:
+	* hw/xnest/Screen.c: (offset), (xnestSaveScreen),
+	(xnestCursorOffScreen), (xnestCrossScreen), (xnestOpenScreen),
+	(xnestCloseScreen):
+	* hw/xnest/Screen.h:
+	* hw/xnest/Visual.c: (xnestDefaultVisualColormap):
+	* hw/xnest/Visual.h:
+	* hw/xnest/Window.c: (xnestFindWindowMatch), (xnestCreateWindow),
+	(xnestDestroyWindow), (xnestPositionWindow),
+	(xnestConfigureWindow), (xnestChangeWindowAttributes),
+	(xnestRealizeWindow), (xnestUnrealizeWindow),
+	(xnestPaintWindowBackground), (xnestPaintWindowBorder),
+	(xnestCopyWindow), (xnestClipNotify),
+	(xnestWindowExposurePredicate), (xnestWindowExposures),
+	(xnestRegionEqual), (xnestShapeWindow):
+	* hw/xnest/XNPixmap.h:
+	* hw/xnest/XNWindow.h:
+	* mi/miscrinit.c:
+	* miext/damage/damage.c:
+	* miext/shadow/shrotpack.h:
+	Prototype fixes (mostly in Xnest).  Seems to build -Werror now.
+
+2003-10-31  Keith Packard  <keithp@keithp.com>
+
+	* Xext/shm.c: (ShmRegisterFbFuncs):
+	* Xext/shmint.h:
+	* dix/window.c: (SetWinSize), (SetBorderSize):
+	* fb/Makefile.am:
+	* fb/fbcmap.c:
+	* fb/fboverlay.c:
+	* include/windowstr.h:
+	* mi/mivaltree.c: (miComputeClips):
+	Move MIT-SHM server declarations to shmint.h
+	Start APPORTION dix hooks
+	Comment out fbHasVisualTypes as it appears unused
+
+2003-10-29  Keith Packard  <keithp@keithp.com>
+
+	* Xext/bigreq.c: (BigReqExtensionInit):
+	* Xext/mitmisc.c: (MITMiscExtensionInit):
+	* Xext/saver.c: (ScreenSaverExtensionInit):
+	* Xext/shm.c: (ShmExtensionInit), (ShmRegisterFuncs),
+	(ShmSetPixmapFormat):
+	* Xext/shmint.h:
+	* Xext/sleepuntil.c: (ClientSleepUntil):
+	* Xext/sleepuntil.h:
+	* Xext/sync.c: (SyncCreateSystemCounter), (SyncExtensionInit):
+	* Xext/syncint.h:
+	* Xext/xcmisc.c: (XCMiscExtensionInit):
+	* Xext/xext.h:
+	* Xext/xres.c:
+	* Xext/xtest.c: (XTestExtensionInit):
+	* Xext/xtest1di.c: (XTestExtension1Init):
+	* Xext/xvmc.c: (XvMCFindXvImage):
+	* Xext/xvmcext.h:
+	* configure.ac:
+	* dix/dispatch.c:
+	* dix/extension.c: (CloseDownExtensions):
+	* dix/property.c: (NullPropertyReply):
+	* dix/xpstubs.c: (XpClientIsBitmapClient), (XpClientIsPrintClient),
+	(XprintOptions):
+	* hw/kdrive/fbdev/fbdev.c: (fbdevUnmapFramebuffer),
+	(fbdevRandRSetConfig):
+	* hw/kdrive/fbdev/fbdev.h:
+	* hw/kdrive/linux/agp.c: (GARTInit):
+	* hw/kdrive/linux/bus.c:
+	* hw/kdrive/linux/keyboard.c: (readKernelMapping):
+	* hw/kdrive/linux/linux.c: (LinuxInit):
+	* hw/kdrive/linux/mouse.c:
+	* hw/kdrive/linux/ms.c:
+	* hw/kdrive/linux/ps2.c:
+	* hw/kdrive/mach64/mach64.c:
+	* hw/kdrive/mach64/mach64draw.c:
+	* hw/kdrive/mga/mga.c:
+	* hw/kdrive/mga/mgadraw.c: (mgaPrepareSolid), (mgaPrepareCopy):
+	* hw/kdrive/nvidia/nvidia.c: (nvidiaLockUnlock):
+	* hw/kdrive/nvidia/nvidia.h:
+	* hw/kdrive/nvidia/nvidiadraw.c: (nvidiaPrepareSolid),
+	(nvidiaPrepareCopy), (nvidiaDrawInit), (nvidiaDrawEnable):
+	* hw/kdrive/r128/r128.c: (r128ScreenInit), (r128Preserve),
+	(r128DPMS):
+	* hw/kdrive/r128/r128draw.c: (r128WaitAvail), (r128Setup),
+	(r128DrawInit):
+	* hw/kdrive/r128/r128stub.c:
+	* hw/kdrive/smi/smi.c: (smiRandRSetConfig), (smiPreserve),
+	(smiDPMS), (smiRestore):
+	* hw/kdrive/smi/smi.h:
+	* hw/kdrive/smi/smidraw.c: (smiPrepareSolid), (smiPrepareCopy),
+	(smiDrawInit):
+	* hw/kdrive/smi/smistub.c:
+	* hw/kdrive/src/kaa.c:
+	* hw/kdrive/src/kcmap.c:
+	* hw/kdrive/src/kcurscol.c:
+	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources):
+	* hw/kdrive/src/kdrive.h:
+	* hw/kdrive/src/kinput.c:
+	* hw/kdrive/src/knoop.c:
+	* hw/kdrive/src/vga.c:
+	* hw/kdrive/src/vga.h:
+	* hw/kdrive/vesa/vesa.h:
+	* hw/xnest/Color.c: (xnestCreateColormap), (xnestDestroyColormap),
+	(xnestCountInstalledColormapWindows),
+	(xnestGetInstalledColormapWindows),
+	(xnestSameInstalledColormapWindows),
+	(xnestSetInstalledColormapWindows),
+	(xnestSetScreenSaverColormapWindow), (xnestDirectInstallColormaps),
+	(xnestDirectUninstallColormaps), (xnestInstallColormap),
+	(xnestUninstallColormap), (xnestListInstalledColormaps),
+	(xnestStoreColors), (xnestResolveColor),
+	(xnestCreateDefaultColormap):
+	* hw/xnest/Color.h:
+	* hw/xnest/Cursor.c: (xnestConstrainCursor), (xnestCursorLimits),
+	(xnestDisplayCursor), (xnestRealizeCursor), (xnestUnrealizeCursor),
+	(xnestRecolorCursor), (xnestSetCursorPosition):
+	* hw/xnest/Display.c: (xnestOpenDisplay):
+	* hw/xnest/Display.h:
+	* hw/xnest/Events.c: (xnestExposurePredicate),
+	(xnestNotExposurePredicate), (xnestCollectExposures),
+	(xnestCollectEvents):
+	* hw/xnest/Events.h:
+	* hw/xnest/Font.c: (xnestRealizeFont), (xnestUnrealizeFont):
+	* hw/xnest/GC.c: (xnestValidateGC), (xnestChangeGC), (xnestCopyGC),
+	(xnestDestroyGC), (xnestDestroyClipHelper), (xnestChangeClip),
+	(xnestDestroyClip), (xnestCopyClip), (xnestCreateGC):
+	* hw/xnest/GCOps.c: (xnestFillSpans), (xnestSetSpans),
+	(xnestGetSpans), (xnestQueryBestSize), (xnestPutImage),
+	(xnestGetImage), (xnestBitBlitPredicate), (xnestBitBlitHelper),
+	(xnestCopyArea), (xnestCopyPlane), (xnestPolyPoint),
+	(xnestPolylines), (xnestPolySegment), (xnestPolyRectangle),
+	(xnestPolyArc), (xnestFillPolygon), (xnestPolyFillRect),
+	(xnestPolyFillArc), (xnestPolyText8), (xnestPolyText16),
+	(xnestImageText8), (xnestImageText16), (xnestImageGlyphBlt),
+	(xnestPolyGlyphBlt), (xnestPushPixels):
+	* hw/xnest/GCOps.h:
+	* hw/xnest/Keyboard.h:
+	* hw/xnest/Screen.c: (xnestScreen):
+	* hw/xnest/Screen.h:
+	* hw/xnest/Visual.c: (xnestVisual), (xnestVisualFromID):
+	* hw/xnest/Visual.h:
+	* hw/xnest/Window.c: (xnestWindowPtr):
+	* hw/xnest/XNCursor.h:
+	* hw/xnest/XNFont.h:
+	* hw/xnest/XNGC.h:
+	* hw/xnest/XNPixmap.h:
+	* hw/xnest/XNWindow.h:
+	* include/extnsionst.h:
+	* mi/Makefile.am:
+	* mi/miinitext.c:
+	* os/Makefile.am:
+	* os/connection.c: (ClientAuthorized):
+	* os/hpsocket.c: (set_socket_option), (unset_socket_option):
+	* os/xdmauth.c: (XdmCheckCookie), (XdmToID):
+	Prototype fixes (various)
+	Add GCC warnings (including -Werror.  clean up your code)
+	Other warning fixes (unused variables, etc)
+	Get rid of unused extension interfaces (aux screen procs)
+	Make lots of functions in kdrive static
+	Eliminate unused code from os library
+
+2003-10-25  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/vesa/vesa.c: (vesaSetShadow), (vesaMapFramebuffer),
+	(vesaRandRSetConfig), (vesaInitScreen):
+	Was using byteStride before set in computing off_screen_base
+	Also a couple of unused variables removed
+
+2003-10-24  Keith Packard  <keithp@keithp.com>
+
+	* Makefile.am:
+	* Xext/Makefile.am:
+	* configure.ac:
+	* damageext/Makefile.am:
+	* dix/Makefile.am:
+	* fb/Makefile.am:
+	* hw/kdrive/fbdev/Makefile.am:
+	* hw/kdrive/linux/Makefile.am:
+	* hw/kdrive/mach64/Makefile.am:
+	* hw/kdrive/mga/Makefile.am:
+	* hw/kdrive/nvidia/Makefile.am:
+	* hw/kdrive/r128/Makefile.am:
+	* hw/kdrive/smi/Makefile.am:
+	* hw/kdrive/src/Makefile.am:
+	* hw/kdrive/vesa/Makefile.am:
+	* hw/xnest/Makefile.am:
+	* mi/Makefile.am:
+	* miext/damage/Makefile.am:
+	* miext/shadow/Makefile.am:
+	* os/Makefile.am:
+	* randr/Makefile.am:
+	* render/Makefile.am:
+	* xfixes/Makefile.am:
+	Make building (almost) work with automake 1.4 or 1.7.
+	The dist-bzip2 option needs help still.
+
+2003-10-24  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit):
+	Function pointer initializers in wrong order (oops)
+	* hw/kdrive/src/kshadow.c: (KdShadowSet):
+	Missing return value
+	* include/os.h:
+	Not obeying autoconf HAVE_ALLOCA_H all of the time.
+
+2003-10-24  Keith Packard  <keithp@keithp.com>
+
+	* damageext/damageext.c: (DamageExtensionInit):
+	* damageext/damageextint.h:
+	Make sure miext/damage is initialized when enabling damage
+	extension
+
+2003-10-24  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
+	(fbdevMapFramebuffer), (fbdevSetScreenSizes),
+	(fbdevUnmapFramebuffer), (fbdevSetShadow), (fbdevRandRSetConfig),
+	(fbdevInitScreen), (fbdevFinishInitScreen), (fbdevCreateResources):
+	* hw/kdrive/fbdev/fbdev.h:
+	* hw/kdrive/fbdev/fbinit.c:
+	* hw/kdrive/mach64/mach64.c: (mach64CreateResources):
+	* hw/kdrive/mga/Makefile.am:
+	* hw/kdrive/mga/mga.c: (mgaCreateResources):
+	* hw/kdrive/nvidia/Makefile.am:
+	* hw/kdrive/nvidia/nvidia.c:
+	* hw/kdrive/r128/Makefile.am:
+	* hw/kdrive/r128/r128.c:
+	* hw/kdrive/r128/r128draw.c: (r128PrepareSolid), (r128PrepareCopy):
+	* hw/kdrive/smi/Makefile.am:
+	* hw/kdrive/smi/smi.c:
+	* hw/kdrive/smi/smi.h:
+	* hw/kdrive/src/kdrive.c: (KdCreateScreenResources),
+	(KdScreenInit):
+	* hw/kdrive/src/kdrive.h:
+	* hw/kdrive/src/kshadow.c: (KdShadowFbAlloc), (KdShadowFbFree),
+	(KdShadowSet), (KdShadowUnset):
+	* hw/kdrive/vesa/vesa.c: (vesaSetScreenSizes), (vesaSetShadow),
+	(vesaMapFramebuffer), (vesaUnmapFramebuffer), (vesaRandRSetConfig),
+	(vesaInitScreen), (vesaFinishInitScreen), (vesaCreateResources),
+	(vesaScreenFini):
+	* hw/kdrive/vesa/vesa.h:
+	* hw/kdrive/vesa/vesainit.c:
+	Add function called at CreateScreenResources to get shadow set up
+	on pixmap correctly.  Rework vesa and fbdev code to handle
+	shadows right with the non-layer world.
+	* mi/misprite.c:
+	* mi/mispritest.h:
+	Use GetScreenPixmap directly for damage detection of sprite.
+	Avoids problems during server shutdown with windows disappearing
+	before the sprite layer is closed.
+
+2003-10-23  Keith Packard  <keithp@keithp.com>
+
+	* Makefile.am:
+	* configure.ac:
+	* damageext/Makefile.am:
+	* damageext/damageext.c: (DamageExtNotify), (DamageExtReport),
+	(DamageExtDestroy), (ProcDamageQueryVersion), (ProcDamageCreate),
+	(ProcDamageDestroy), (ProcDamageSubtract), (XDamageNumberRequests),
+	(ProcDamageDispatch), (SProcDamageQueryVersion),
+	(SProcDamageCreate), (SProcDamageDestroy), (SProcDamageSubtract),
+	(SProcDamageDispatch), (DamageClientCallback), (DamageResetProc),
+	(FreeDamageExt), (FreeDamageExtWin), (SDamageNotifyEvent),
+	(DamageExtensionInit):
+	* damageext/damageext.h:
+	* damageext/damageextint.h:
+	* hw/kdrive/fbdev/Makefile.am:
+	* hw/kdrive/linux/Makefile.am:
+	* hw/kdrive/mach64/Makefile.am:
+	* hw/kdrive/mga/Makefile.am:
+	* hw/kdrive/nvidia/Makefile.am:
+	* hw/kdrive/r128/Makefile.am:
+	* hw/kdrive/smi/Makefile.am:
+	* hw/kdrive/src/Makefile.am:
+	* hw/kdrive/vesa/Makefile.am:
+	* hw/xnest/Makefile.am:
+	* mi/Makefile.am:
+	* mi/miinitext.c:
+	* mi/misprite.c:
+	* miext/damage/damage.c: (damageDamageRegion), (DamageCreate),
+	(DamageDestroy):
+	* miext/damage/damage.h:
+	* miext/damage/damagestr.h:
+	* miext/shadow/shadow.c: (shadowSetup):
+	* xfixes/region.c:
+	* xfixes/xfixes.h:
+	* xfixes/xfixesint.h:
+	Ok, so this change is way bigger than it needed to be, but I
+	couldn't stand it anymore.  The "real" change here is the
+	addition of the damage extension server side pieces and a
+	minor change of the miext/damage interface to add a callback
+	on damage destroy.  All of the configuration changes are to
+	add macros for various sets of libraries so that we don't have to
+	keep editing every Makefile.am whenever we add another extension
+	to the library.  The xfixes changes expose VERIFY_REGION so
+	that damageext can use it.
+
+2003-10-23  Keith Packard  <keithp@keithp.com>
+
+	* fb/fbcopy.c: (fbDoCopy):
+	Always call SourceValidate, even if src and dst are the same.
+	This lets the software cursor code use Damage and not have to
+	wrap all copy functions to see source effects.
+
+2003-10-22  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/mach64/mach64draw.c: (mach64Setup), (mach64DoneSolid),
+	(mach64DoneCopy):
+	Added SYNC_ALWAYS for debugging (sync after each operation)
+	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
+	Add SPRITE_DEBUG_ENABLE to help debug cursor problems
+	* miext/damage/damage.c: (damageDamageRegion), (damageDamageBox),
+	(damageDamageRect), (damageValidateGC):
+	Leave all GCs redirected through Damage GC ops so that adding
+	damage doesn't require revalidating all GCs (that would require
+	walking the window tree and resetting all serial numbers).
+	Add DAMAGE_DEBUG_ENABLE to help debug damage problems
+
+2003-10-22  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/src/kaa.c: (kaaCreatePixmap):
+	Don't start pixmaps differing from root format in off-screen memory
+
+2003-10-21  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaGetOffscreenPixmap):
+	oops.  Failed to set window offsets in kaaGetOffscreenPixmap
+	
+	* hw/kdrive/vesa/vesa.c: (vesaInitScreen), (vesaFinishInitScreen):
+	Initialized shadow too early; acceleration stomped damage
+
+2003-10-21  Keith Packard  <keithp@keithp.com>
+
+	* configure.ac:
+	Build damage infrastructure.  Don't build layer
+	
+	* fb/fbcopy.c: (fbCopyNtoN), (fbCopyArea):
+	Move check for 24/32 copy to fbCopyNtoN so that other users will hit
+	it
+	
+	* hw/kdrive/fbdev/Makefile.am:
+	* hw/kdrive/fbdev/fbdev.c: (fbdevScreenInitialize),
+	(fbdevGetPixmap), (fbdevPixmapSet), (fbdevRandRSetConfig),
+	(fbdevInitScreen), (fbdevFinishInitScreen):
+	* hw/kdrive/fbdev/fbdev.h:
+	Eliminate miext/layer
+	
+	* hw/kdrive/linux/Makefile.am:
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/mach64/Makefile.am:
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/mach64/mach64.c: (mach64ScreenInit),
+	(mach64InitScreen), (mach64ScreenFini), (mach64CardFini):
+	* hw/kdrive/mach64/mach64.h:
+	* hw/kdrive/mach64/mach64draw.c: (mach64DrawFini):
+	* hw/kdrive/mach64/mach64video.c: (mach64InitVideo),
+	(mach64FiniVideo):
+	Memory leak fix of mach64c on server reset
+	Memory leak fix for video on server reset.
+	Eliminate layer
+	
+	* hw/kdrive/mga/Makefile.am:
+	* hw/kdrive/mga/mga.c: (mgaScreenInit):
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/nvidia/Makefile.am:
+	* hw/kdrive/nvidia/nvidia.c: (nvidiaRandRSetConfig),
+	(nvidiaPreserve), (nvidiaEnable):
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/r128/Makefile.am:
+	* hw/kdrive/smi/Makefile.am:
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/src/Makefile.am:
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap), (kaaCreatePixmap),
+	(kaaPixmapIsOffscreen), (kaaGetOffscreenPixmap),
+	(kaaDrawableIsOffscreen), (kaaFillSpans), (kaaCopyNtoN),
+	(kaaPolyFillRect), (kaaSolidBoxClipped), (kaaValidateGC),
+	(kaaFillRegionSolid), (kaaDrawInit), (kaaDrawFini):
+	Don't assume windows are onscreen, use GetWindowPixmap
+	and test devPrivate.ptr.  Make sure depth 24 pixmaps are 24bpp
+	when hardware format is 24bpp.
+	
+	* hw/kdrive/src/kasync.c:
+	Get rid of debug KdAssertSync function
+	
+	* hw/kdrive/src/kdrive.c: (KdCloseScreen), (KdScreenInit):
+	* hw/kdrive/src/kdrive.h:
+	* hw/kdrive/src/koffscreen.c: (KdOffscreenValidate),
+	(KdOffscreenAlloc), (KdOffscreenInit):
+	add memory_size to KdScreenInfo, eliminate off_screen_size,
+	fix tests to suit.
+	
+	* hw/kdrive/vesa/Makefile.am:
+	* hw/kdrive/vesa/vesa.c: (vesaScreenInitialize), (vesaUpdateMono),
+	(vesaGetPixmap), (vesaMapFramebuffer), (vesaPixmapSet),
+	(vesaRandRSetConfig), (vesaInitScreen), (vesaFinishInitScreen),
+	(vesaScreenFini):
+	* hw/kdrive/vesa/vesa.h:
+	Build damage infrastructure.  Don't build layer
+	
+	* hw/xnest/Makefile.am:
+	Use damage (for software cursor, I guess)
+
+	* mi/Makefile.am:
+	* mi/misprite.c: (miSpriteReportDamage), (miSpriteCopyWindow):
+	* mi/mispritest.h:
+	Damage is used for software cursor
+
+	* miext/Makefile.am:
+	* miext/layer/Makefile.am:
+	* miext/layer/layerinit.c: (layerCloseScreen):
+	Build damage infrastructure.  Don't build layer
+	
+	* miext/shadow/Makefile.am:
+	* miext/shadow/shadow.c: (shadowRedisplay), (shadowGetImage),
+	(shadowCloseScreen), (shadowSetup), (shadowSet), (shadowUnset),
+	(shadowInit):
+	* miext/shadow/shadow.h:
+	* miext/shadow/shpacked.c: (shadowUpdatePacked):
+	* miext/shadow/shplanar.c: (shadowUpdatePlanar4):
+	* miext/shadow/shplanar8.c: (shadowUpdatePlanar4x8):
+	* miext/shadow/shrotate.c: (shadowUpdateRotatePacked):
+	* miext/shadow/shrotpack.h:
+	Use damage to track changes
+
+	* xfixes/xfixes.c: (XFixesResetProc):
+	Fix memory leak
+
 2003-10-19  Keith Packard  <keithp@keithp.com>
 
 	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap):
@@ -12,6 +759,42 @@
 	Minor cleanups -- remove a couple of bogus KdCheckSync calls,
 	restructure KdOffscreenSwapOut to avoid unneeded 'continue'
 
+2003-10-19  Keith Packard  <keithp@keithp.com>
+
+	* hw/kdrive/src/kaa.c: (kaaDestroyPixmap):
+	* hw/kdrive/src/koffscreen.c: (KdOffscreenKickOut),
+	(KdOffscreenSwapOut):
+	Minor cleanups -- remove a couple of bogus KdCheckSync calls,
+	restructure KdOffscreenSwapOut to avoid unneeded 'continue'
+
+2003-10-19  Keith Packard  <keithp@keithp.com>
+
+	* Xext/shape.c: (ShapeExtensionInit), (SendShapeNotify):
+	* Xext/shapeint.h:
+	* dix/cursor.c:
+	* dix/window.c:
+	* include/cursorstr.h:
+	* include/picture.h:
+	* include/window.h:
+	* xfixes/Makefile.am:
+	* xfixes/cursor.c: (CursorDisplayCursor),
+	(SProcXFixesSelectCursorInput), (SXFixesCursorNotifyEvent),
+	(CopyCursorToImage), (ProcXFixesGetCursorImage),
+	(SProcXFixesGetCursorImage), (ProcXFixesSetCursorName),
+	(SProcXFixesSetCursorName), (ProcXFixesGetCursorName),
+	(SProcXFixesGetCursorName), (ProcXFixesGetCursorImageAndName),
+	(SProcXFixesGetCursorImageAndName), (ReplaceCursorLookup),
+	(ReplaceCursor), (TestForCursor), (ProcXFixesChangeCursor),
+	(SProcXFixesChangeCursor), (TestForCursorName),
+	(ProcXFixesChangeCursorByName), (SProcXFixesChangeCursorByName):
+	* xfixes/xfixes.c: (ProcXFixesQueryVersion),
+	(XFixesNumberRequests), (ProcXFixesDispatch),
+	(SProcXFixesQueryVersion), (SProcXFixesDispatch),
+	(XFixesClientCallback), (XFixesExtensionInit):
+	* xfixes/xfixesint.h:
+	Add cursor name and region requests to XFixes extension for
+	version 2 support
+
 2003-10-16  Keith Packard <keithp@keithp.com>
 	* hw/kdrive/src/kdoffscreen.c: (KdOffscreenSwapOut/KdOffscreenSwapIn)
 	Discard/reconstruct list of offscreen areas on VT switch so no

Index: Makefile.am
===================================================================
RCS file: /cvs/xserver/xserver/Makefile.am,v
retrieving revision 3.7
retrieving revision 3.8
diff -u -d -r3.7 -r3.8
--- Makefile.am	9 Oct 2003 06:36:26 -0000	3.7
+++ Makefile.am	2 Nov 2003 19:56:09 -0000	3.8
@@ -1,3 +1,4 @@
+AUTOMAKE_OPTIONS=dist-bzip2
 SUBDIRS=	\
 	dix 	\
 	fb	\
@@ -8,5 +9,6 @@
 	randr	\
 	render  \
 	xfixes  \
+	damageext \
 	hw
 

Index: configure.ac
===================================================================
RCS file: /cvs/xserver/xserver/configure.ac,v
retrieving revision 3.29
retrieving revision 3.30
diff -u -d -r3.29 -r3.30
--- configure.ac	31 Oct 2003 23:45:51 -0000	3.29
+++ configure.ac	2 Nov 2003 19:56:09 -0000	3.30
@@ -23,10 +23,10 @@
 dnl
 dnl Process this file with autoconf to create configure.
 
-AC_PREREQ(2.57)
+AC_PREREQ(2.53)
 AC_INIT([Xserver],6.6.1,[keithp@keithp.com],Xserver)
 AC_CONFIG_SRCDIR([Makefile.am])
-AM_INIT_AUTOMAKE([dist-bzip2])
+AM_INIT_AUTOMAKE([Xserver],6.6.1)
 AM_MAINTAINER_MODE
 AM_CONFIG_HEADER(include/config.h)
 
@@ -37,15 +37,6 @@
 AM_PROG_LIBTOOL
 AC_PROG_MAKE_SET
 
-changequote(,)dnl
-if test "x$GCC" = "xyes"; then
-  case " $CFLAGS " in
-  *[\ \	]-Wall[\ \	]*) ;;
-  *) CFLAGS="$CFLAGS -Wall" ;;
-  esac
-fi
-changequote([,])dnl
-
 AC_HEADER_DIRENT
 AC_HEADER_STDC
 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
@@ -82,11 +73,14 @@
 # tslib touchscreen driver
 AC_CHECK_HEADERS([tslib.h])
 
-REQUIRED_MODULES="randr render fixesext xextensions xfont xproto xtrans xau"
+REQUIRED_MODULES="randr render fixesext damageext xextensions xfont xproto xtrans xau"
 
 DEFAULT_FONT_PATH="/usr/lib/X11/fonts/misc,/usr/lib/X11/fonts/100dpi,/usr/lib/X11/fonts/75dpi"
 DEFAULT_VENDOR_STRING="freedesktop.org"
 DEFAULT_VENDOR_RELEASE="6600"
+EXTENSION_LIBS='$(top_builddir)/Xext/libXext.a'
+EXTENSION_INCS='-I$(top_srcdir)/Xext'
+
 AC_ARG_ENABLE(shape,         [  --disable-shape ],[SHAPE=$enableval],[SHAPE=yes])
 AC_ARG_ENABLE(xv,            [  --enable-xv ],[XV=$enableval],[XV=no])
 AC_ARG_ENABLE(mitshm,        [  --disable-shm ],[MITSHM=$enableval],[MITSHM=yes])
@@ -229,7 +223,13 @@
 dnl A bunch of configuration values which shouldn't be optional
 dnl
 AC_DEFINE(RENDER,1,[Support RENDER extension])
+EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/render/librender.a'
+EXTENSION_INCS="$EXTENSION_INCS "'-I$(top_srcdir)/render'
+
 AC_DEFINE(RANDR,1,[Support RANDR extension])
+EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/randr/librandr.a'
+EXTENSION_INCS="$EXTENSION_INCS "-I'$(top_srcdir)/randr'
+
 AC_DEFINE(DDXOSINIT,1,[Use OsVendorInit])
 AC_DEFINE(SMART_SCHEDULE,1,[Include time-based scheduler])
 AC_DEFINE(NDEBUG,1,[Disable some debugging code])
@@ -241,28 +241,81 @@
 AC_DEFINE(BIGREQS,1,[Support BigRequests extension])
 AC_DEFINE(PIXPRIV,1,[Support pixmap privates])
 AC_DEFINE(XFIXES,1,[Support XFixes extension])
+EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/xfixes/libxfixes.a'
+EXTENSION_INCS="$EXTENSION_INCS "'-I$(top_srcdir)/xfixes'
+
+AC_DEFINE(DAMAGEEXT,1,[Support Damage extension])
+EXTENSION_LIBS="$EXTENSION_LIBS "'$(top_builddir)/damageext/libdamageext.a'
+EXTENSION_INCS="$EXTENSION_INCS "'-I$(top_srcdir)/damageext'
+
+DIX_LIB='$(top_builddir)/dix/libdix.a'
+OS_LIB='$(top_builddir)/os/libos.a'
+MI_LIB='$(top_builddir)/mi/libmi.a'
+MI_INC='-I$(top_srcdir)/mi'
+FB_LIB='$(top_builddir)/fb/libfb.a'
+FB_INC='-I$(top_srcdir)/fb'
+DAMAGE_LIB='$(top_builddir)/miext/damage/libdamage.a'
+DAMAGE_INC='-I$(top_srcdir)/miext/damage'
+SHADOW_LIB='$(top_builddir)/miext/shadow/libshadow.a'
+SHADOW_INC='-I$(top_srcdir)/miext/shadow'
+XPSTUBS_LIB='$(top_builddir)/dix/libxpstubs.a'
+XSERVER_LIBS="${XSERVER_LIBS} -lm -lz"
 
 PKG_CHECK_MODULES(XSERVER, $REQUIRED_MODULES)
+XNEST_LIBS=
+XNEST_INCS=
 if test "$XNESTSERVER" = yes; then
 	PKG_CHECK_MODULES(XNESTSERVER, $XNEST_REQUIRED_MODULES)
+	XNEST_LIBS="$DIX_LIB $OS_LIB $XNEST_LIB \
+	             $EXTENSION_LIBS $MI_LIB \
+		     $EXTENSION_LIBS $DAMAGE_LIB $SHADOW_LIB $XPSTUBS_LIB"
+	XNEST_INCS="$XNEST_INC $XNEST_OS_INC $DAMAGE_INC $SHADOW_INC \
+		     $EXTENSION_INCS $MI_INC"
+fi
+AC_SUBST([XNEST_LIBS])
+AC_SUBST([XNEST_INCS])
+
+KDRIVE_LIBS=
+KDRIVE_INCS=
+if test "$KDRIVESERVER" = yes; then
+	KDRIVE_LIB='$(top_builddir)/hw/kdrive/src/libkdrive.a'
+	KDRIVE_INC='-I$(top_srcdir)/hw/kdrive/src'
+	KDRIVE_OS_LIB='$(top_builddir)/hw/kdrive/linux/liblinux.a'
+	KDRIVE_OS_INC='-I$(top_srcdir)/hw/kdrive/linux'
+	
+	KDRIVE_LIBS="$DIX_LIB $OS_LIB $KDRIVE_LIB $KDRIVE_OS_LIB \
+	             $EXTENSION_LIBS $FB_LIB $MI_LIB \
+		     $EXTENSION_LIBS $DAMAGE_LIB $SHADOW_LIB $XPSTUBS_LIB"
+	KDRIVE_INCS="$KDRIVE_INC $KDRIVE_OS_INC $DAMAGE_INC $SHADOW_INC \
+		     $EXTENSION_INCS $FB_INC $MI_INC"
 fi
+AC_SUBST([KDRIVE_LIBS])
+AC_SUBST([KDRIVE_INCS])
 
 AC_CHECK_HEADERS([X11/XF86keysym.h],,,${XSERVER_CFLAGS})
-XSERVER_CFLAGS="$XSERVER_CFLAGS "'-I${top_srcdir}/include'
 
 XSERVER_CFLAGS="$XSERVER_CFLAGS "'-I${top_srcdir}/include'
+
+if test "x$GCC" = "xyes"; then
+	GCC_WARNINGS="-Wall -Wpointer-arith -Wstrict-prototypes \
+	-Wmissing-prototypes -Wmissing-declarations \
+	-Wnested-externs -fno-strict-aliasing -Werror"
+	XSERVER_CFLAGS="$GCC_WARNINGS $XSERVER_CFLAGS"
+fi
+
 AC_OUTPUT([
 Makefile
 dix/Makefile
 fb/Makefile
 mi/Makefile
 miext/Makefile
-miext/layer/Makefile
+miext/damage/Makefile
 miext/shadow/Makefile
 os/Makefile
 randr/Makefile
 render/Makefile
 xfixes/Makefile
+damageext/Makefile
 Xext/Makefile
 hw/Makefile
 hw/kdrive/Makefile