Subject: Re: precompiled X11 libs
From: [email-masked] (James Dumser)

3 Feb 1997 16:03:20 -0800
Approved: [email-masked]
Distribution: cygnus
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Original-To: [email-masked]
Original-Cc: [email-masked]
In-Reply-To: <[email-masked]> from "[email-masked]" at Feb 1, 97 04:44:36 am
X-MIMI-Options: headers none
X-Mailer: ELM [version 2.4 PL23]
Content-Length: 41786     
Original-Sender: [email-masked]

On Sat, 01 Feb 1997 04:44:36 EST, Heribert
<[email-masked]> wrote:
>: I mean how should I run diff (or something that can create the patch)...
>: 
>: X11R6.3 source is ~ 150MB, Objects ~ 50-100 MB, binary, libs ~ 20 MB
>
>I never packaged diffs, but here's my somewhat tested guess for unix:
>Note that I assume cp -p foo.c foo.c.orig of every file before editing.
>
>(for f in `find X11R6.3 -name '*.orig' -print`
>do diff -c $f `dirname $f`/`basename $f .orig`
>done)>my.patch

Normally, I like to have a base source tree and a modified source tree;
then you can do
  diff -urN X11R6.3.dist X11R6.3 > X11R6.3.diff
But given the size of X11, that borders on being impractical. I'm
included diffs I created from the patched files. I haven't gotten things
to compile yet so I can't endorse the changes. You should be able to cd
to /src/X11 (the directory containing xc) and
  patch < this.message
(You may also need to manually create the new files,
xc/config/cf/cygwin32.*, xc/copyfile.bat, and xc/xmakefile; I'm not
positive I've got the diff formed correctly to have patch create them
for you.)

diff -ur xc/config/cf/Imake.cf patches/xc/config/cf/Imake.cf
--- xc/config/cf/Imake.cf	Wed Dec 31 17:57:42 1969
+++ patches/xc/config/cf/Imake.cf	Mon Feb 03 10:45:16 1997
@@ -414,6 +414,13 @@
 # endif /* __alpha */
 #endif /* linux */
 
+#ifdef __CYGWIN32__
+# define MacroIncludeFile <cygwin32.cf>
+# define MacroFile cygwin32.cf
+# define LinuxArchitecture
+# define i386Architecture
+#endif /* __CYGWIN32__ */
+
 #ifdef __uxp__
 # define MacroIncludeFile <fujitsu.cf>
 # define MacroFile fujitsu.cf
diff -ur xc/config/cf/Imakefile patches/xc/config/cf/Imakefile
--- xc/config/cf/Imakefile	Wed Dec 31 17:58:27 1969
+++ patches/xc/config/cf/Imakefile	Mon Feb 03 10:45:17 1997
@@ -14,6 +14,7 @@
 
 RULEFILES = \
 Imake.rules \
+cygwin32.rules \
 Motif.rules \
 Win32.rules \
 X11.rules \
@@ -36,6 +37,7 @@
 
 TMPLFILES = \
 Imake.tmpl \
+cygwin32.tmpl \
 Library.tmpl \
 Motif.tmpl \
 Server.tmpl \
@@ -58,6 +60,7 @@
 
 CFFILES = \
 Imake.cf \
+cygwin32.cf \
 Amoeba.cf \
 DGUX.cf \
 FreeBSD.cf \
diff -ur xc/config/cf/site.def patches/xc/config/cf/site.def
--- xc/config/cf/site.def	Mon Feb 03 10:37:32 1997
+++ patches/xc/config/cf/site.def	Mon Feb 03 10:45:22 1997
@@ -32,6 +32,10 @@

 #ifdef BeforeVendorCF
+#define HasGcc YES
+#define HasGcc2 YES
+#define GzipFontCompression YES
+/* #define PreIncDir /usr/cygnus/H-i386-cygwin32/i386-cygwin32/include */
 
 /* #include <host.def> */
 
@@ -39,17 +43,22 @@
  * the two following macros need to be defined directly (where "X11" is
  * really whatever the TopLevelProject macro is defined to be).
  */
+/*
 # if defined(AIXArchitecture) || defined(SVR4Architecture) || \
      defined(SCOArchitecture) || defined(Win32Architecture) || \
      defined(UXPArchitecture) || defined(SunArchitecture)
 #  ifndef ProjectRulesFile
+*/
 #   define ProjectRulesFile	<X11.rules>
+/*
 #  endif
 #  ifndef ProjectTmplFile
+*/
 #   define ProjectTmplFile	<X11.tmpl>
+/*
 #  endif
 # endif
-
+*/
 /*
 #ifndef HasGcc2
 #define HasGcc2 YES
@@ -65,7 +74,7 @@
 /* Only set HasXdmAuth to YES if you have a Wraphelp.c file. */
 /* #define HasXdmAuth YES */
 
-/* #define PreIncDir /usr/local/lib/gcc-lib/sparc-sun-solaris2.4/2.7.2/include */
+/* #define PreIncDir /usr/cygnus/H-i386-cygwin32/i386-cygwin32/include */
 
 /*
 #if defined(SunArchitecture) && defined(SparcArchitecture)
diff -ur xc/config/imake/imake.c patches/xc/config/imake/imake.c
--- xc/config/imake/imake.c	Wed Dec 31 17:57:21 1969
+++ patches/xc/config/imake/imake.c	Mon Feb 03 10:45:24 1997
@@ -281,7 +281,7 @@
 #  ifdef CPP_PROGRAM
 #   define DEFAULT_CPP CPP_PROGRAM
 #  else
-#   define DEFAULT_CPP "/lib/cpp"
+#   define DEFAULT_CPP "cpp"
 #  endif
 # endif
 #endif
@@ -358,7 +358,7 @@
 	sprintf(makefileMacro, "MAKEFILE=%s", Imakefile);
 	AddMakeArg( makefileMacro );
 
-	if ((tmpfd = fopen(tmpMakefile, "w+")) == NULL)
+	if ((tmpfd = fopen(tmpMakefile, "wb+")) == NULL)
 		LogFatal("Cannot create temporary file %s.", tmpMakefile);
 
 	cleanedImakefile = CleanCppInput(Imakefile);
diff -ur xc/config/imake/imakemdep.h patches/xc/config/imake/imakemdep.h
--- xc/config/imake/imakemdep.h	Wed Dec 31 17:59:49 1969
+++ patches/xc/config/imake/imakemdep.h	Mon Feb 03 10:45:25 1997
@@ -483,6 +483,9 @@
         "-traditional",
         "-Dlinux",
 #endif
+#ifdef __CYGWIN32__
+        "-traditional",
+#endif
 #ifdef __uxp__
 	"-D__uxp__",
 #endif
diff -ur xc/config/makedepend/Imakefile patches/xc/config/makedepend/Imakefile
--- xc/config/makedepend/Imakefile	Wed Dec 31 18:00:20 1969
+++ patches/xc/config/makedepend/Imakefile	Mon Feb 03 10:45:26 1997
@@ -40,7 +40,7 @@
 
 /*
  * bootstrapping: want to build the real makedepend
- * only after we've run "make depend" here.  That way
+ * only after we have run "make depend" here.  That way
  * the program has the right dependencies for clearmake.
  * Save the bootstrap original files so they can be winked in
  * to other views.
diff -ur xc/config/makedepend/main.c patches/xc/config/makedepend/main.c
--- xc/config/makedepend/main.c	Wed Dec 31 17:57:01 1969
+++ patches/xc/config/makedepend/main.c	Mon Feb 03 10:45:26 1997
@@ -615,12 +615,12 @@
 		fatalerr("cannot open \"%s\"\n", makefile);
 	sprintf(backup, "%s.bak", makefile);
 	unlink(backup);
-#ifdef WIN32
+#if defined (WIN32) || defined (__CYGWIN32__)
 	fclose(fdin);
 #endif
 	if (rename(makefile, backup) < 0)
 		fatalerr("cannot rename %s to %s\n", makefile, backup);
-#ifdef WIN32
+#if defined (WIN32) || defined (__CYGWIN32__)
 	if ((fdin = fopen(backup, "r")) == NULL)
 		fatalerr("cannot open \"%s\"\n", backup);
 #endif
@@ -643,7 +643,7 @@
 	    }
 	}
 	fflush(fdout);
-#if defined(USGISH) || defined(_SEQUENT_)
+#if defined(USGISH) || defined(_SEQUENT_) || defined (__CYGWIN32__)
 	chmod(makefile, st.st_mode);
 #else
         fchmod(fileno(fdout), st.st_mode);
diff -ur xc/lib/X11/X11-def.cpp patches/xc/lib/X11/X11-def.cpp
--- xc/lib/X11/X11-def.cpp	Wed Dec 31 18:03:12 1969
+++ patches/xc/lib/X11/X11-def.cpp	Mon Feb 03 10:45:31 1997
@@ -1,12 +1,18 @@
+#ifndef __CYGWIN32__
 LIBRARY X11
+#else
+LIBRARY libX11
+#endif
 VERSION LIBRARY_VERSION
 EXPORTS
+#ifndef __CYGWIN32__
  _Xdebug_p=_Xdebug CONSTANT
  _XCreateMutex_fn_p=_XCreateMutex_fn CONSTANT
  _XFreeMutex_fn_p=_XFreeMutex_fn CONSTANT
  _XLockMutex_fn_p=_XLockMutex_fn CONSTANT
  _XUnlockMutex_fn_p=_XUnlockMutex_fn CONSTANT
  _Xglobal_lock_p=_Xglobal_lock CONSTANT
+#endif
  XActivateScreenSaver
  XAddConnectionWatch
  XAddExtension
@@ -599,14 +605,18 @@
  _XDeqAsyncHandler
  _XEatData
  _XError
+#ifndef __CYGWIN32__
  _XFlushIt
+#endif
  _XFlushGCCache
  _XFreeTemp
  _XGetAsyncData
  _XGetAsyncReply
  _XIOError
  _XInitImageFuncPtrs
+#ifndef __CYGWIN32__
  _XLockDisplay
+#endif
  _XRead
  _XReadEvents
  _XReadPad
@@ -620,8 +630,10 @@
  _XUnregisterFilter
  _XUnregisterInternalConnection
  _XVIDtoVisual
+#ifndef __CYGWIN32__
  _Xthread_init
  _Xthread_waiter
+#endif
  XkbIgnoreExtension
  XkbOpenDisplay
  XkbQueryExtension
@@ -730,4 +742,23 @@
  XkbSetDeviceButtonActions
  XkbToControl
  XkbSetDebuggingFlags
+#ifdef __CYGWIN32__
+ _Xsetlocale
+ _XFlush
+ _Xlcmbtowc
+ _Xlcwctomb
+ _Xlcmbstowcs
+ _Xlcwcstombs
+ _Xmbtowc
+ _Xmblen
+ _Xwctomb
+ _Xmbstowcs
+ _Xwcstombs
+ _Xwcscpy
+ _Xwcsncpy
+ _Xwcslen
+ _Xwcscmp
+ _Xwcsncmp
+#endif
+
 /* $XConsortium: X11-def.cpp /main/14 1996/12/18 16:53:53 lehors $ */
diff -ur xc/lib/lbxutil/lbx_zlib/lbx_zlib.h patches/xc/lib/lbxutil/lbx_zlib/lbx_zlib.h
--- xc/lib/lbxutil/lbx_zlib/lbx_zlib.h	Wed Dec 31 17:59:21 1969
+++ patches/xc/lib/lbxutil/lbx_zlib/lbx_zlib.h	Mon Feb 03 10:45:28 1997
@@ -103,7 +103,11 @@
 #define BOOL wBOOL
 #undef Status
 #define Status wStatus
+#ifdef __CYGWIN32__
+#define WSAEWOULDBLOCK 0
+#else
 #include <winsock.h>
+#endif
 #undef Status
 #define Status int
 #undef BOOL
diff -ur xc/lib/lbxutil/lbx_zlib/lbx_zlib_io.c patches/xc/lib/lbxutil/lbx_zlib/lbx_zlib_io.c
--- xc/lib/lbxutil/lbx_zlib/lbx_zlib_io.c	Wed Dec 31 17:59:24 1969
+++ patches/xc/lib/lbxutil/lbx_zlib/lbx_zlib_io.c	Mon Feb 03 10:45:29 1997
@@ -42,6 +42,9 @@
 #define NULL		0
 #endif
 
+#ifdef __CYGWIN32__
+#define ESET(a) ;
+#endif
 
 /*
  * The following is taken from the xtrans code, almost as is,
diff -ur xc/lib/xtrans/Xtrans.c patches/xc/lib/xtrans/Xtrans.c
--- xc/lib/xtrans/Xtrans.c	Wed Dec 31 18:00:22 1969
+++ patches/xc/lib/xtrans/Xtrans.c	Mon Feb 03 10:45:32 1997
@@ -1302,7 +1302,7 @@
 
 #endif /* CRAY */
 
-#if (defined(SYSV) && defined(i386)) || defined(WIN32) || defined(__sxg__) || defined(SCO)
+#if (defined(SYSV) && defined(i386)) || defined(WIN32) || defined(__sxg__) || defined(SCO) || defined(__CYGWIN32__)
 
 /*
  * emulate readv
@@ -1338,7 +1338,7 @@
 
 #endif /* SYSV && SYSV386 || WIN32 || __sxg__ || SCO */
 
-#if defined(WIN32) || defined(__sxg__) || defined(SCO)
+#if defined(WIN32) || defined(__sxg__) || defined(SCO) || defined(__CYGWIN32__)
 
 /*
  * emulate writev
diff -ur xc/lib/xtrans/Xtrans.h patches/xc/lib/xtrans/Xtrans.h
--- xc/lib/xtrans/Xtrans.h	Wed Dec 31 18:01:09 1969
+++ patches/xc/lib/xtrans/Xtrans.h	Mon Feb 03 10:45:33 1997
@@ -152,7 +152,7 @@
 #endif

-#if defined(WIN32) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__))
+#if defined(WIN32) || defined(__CYGWIN32__) || (defined(USG) && !defined(CRAY) && !defined(umips) && !defined(MOTOROLA) && !defined(uniosu) && !defined(__sxg__))
 
 /*
  *      TRANS(Readv) and TRANS(Writev) use struct iovec, normally found
diff -ur xc/lib/xtrans/Xtransint.h patches/xc/lib/xtrans/Xtransint.h
--- xc/lib/xtrans/Xtransint.h	Wed Dec 31 18:00:54 1969
+++ patches/xc/lib/xtrans/Xtransint.h	Mon Feb 03 10:45:34 1997
@@ -370,7 +370,7 @@
  * systems, so they may be emulated.
  */
 
-#if defined(CRAY) || (defined(SYSV) && defined(SYSV386)) || defined(WIN32) || defined(__sxg__) || defined(sco324)
+#if defined(CRAY) || (defined(SYSV) && defined(SYSV386)) || defined(WIN32) || defined(__sxg__) || defined(sco324) || defined(__CYGWIN32__)
 
 #define READV(ciptr, iov, iovcnt)	TRANS(ReadV)(ciptr, iov, iovcnt)
 
@@ -389,7 +389,7 @@
 #endif /* CRAY || (SYSV && SYSV386) || WIN32 || __sxg__ || sco324 */

-#if defined(CRAY) || defined(WIN32) || defined(__sxg__) || defined(sco324)
+#if defined(CRAY) || defined(WIN32) || defined(__sxg__) || defined(sco324) || defined(__CYGWIN32__)
 
 #define WRITEV(ciptr, iov, iovcnt)	TRANS(WriteV)(ciptr, iov, iovcnt)
 
diff -ur xc/programs/Xserver/Xprint/ddxInit.c patches/xc/programs/Xserver/Xprint/ddxInit.c
--- xc/programs/Xserver/Xprint/ddxInit.c	Wed Dec 31 17:59:03 1969
+++ patches/xc/programs/Xserver/Xprint/ddxInit.c	Mon Feb 03 10:45:44 1997
@@ -41,6 +41,10 @@
 #include "servermd.h"
 #include "Xos.h"
 
+#ifdef __CYGWIN32__
+#define IMAGE_BYTE_ORDER LSBFirst
+#define BITMAP_BIT_ORDER LSBFirst
+#endif
 static void Exit();
 void _XpVoidNoop();
 
diff -ur xc/programs/Xserver/cfb/cfbteblt8.c patches/xc/programs/Xserver/cfb/cfbteblt8.c
--- xc/programs/Xserver/cfb/cfbteblt8.c	Wed Dec 31 18:00:44 1969
+++ patches/xc/programs/Xserver/cfb/cfbteblt8.c	Mon Feb 03 10:45:37 1997
@@ -47,6 +47,10 @@
 #include	"cfbmskbits.h"
 #include	"cfb8bit.h"
 
+#ifdef __CYGWIN32__
+#define GLYPHPADBYTES 1
+#endif
+
 /*
  * this code supports up to 5 characters at a time.  The performance
  * differences between 4 and 5 is usually small (~7% on PMAX) and
diff -ur xc/programs/Xserver/mfb/mfbtegblt.c patches/xc/programs/Xserver/mfb/mfbtegblt.c
--- xc/programs/Xserver/mfb/mfbtegblt.c	Wed Dec 31 18:00:15 1969
+++ patches/xc/programs/Xserver/mfb/mfbtegblt.c	Mon Feb 03 10:45:39 1997
@@ -60,6 +60,10 @@
 #include	"regionstr.h"
 #include	"maskbits.h"
 
+#ifdef __CYGWIN32__
+#define GLYPHPADBYTES 1
+#endif
+
 /*
     this works for fonts with glyphs <= PPW bits wide.
 
@@ -181,7 +185,6 @@
 #endif /* BITMAP_BIT_ORDER == IMAGE_BYTE_ORDER */
 
 #endif /* BITMAP_BIT_ORDER && GLYPHPADBYTES */
-
 
 #if GLYPHPADBYTES == 1
 typedef	unsigned char	*glyphPointer;
diff -ur xc/programs/Xserver/os/connection.c patches/xc/programs/Xserver/os/connection.c
--- xc/programs/Xserver/os/connection.c	Wed Dec 31 17:57:58 1969
+++ patches/xc/programs/Xserver/os/connection.c	Mon Feb 03 10:45:40 1997
@@ -62,6 +62,10 @@
  *      socket ids aren't small nums (0 - 2^8)
  *
  *****************************************************************/
+/* struct iovec is also defined in uio.h, take it out... */
+#ifdef __CYGWIN32__
+#define _UIO_H_
+#endif
 
 #ifdef WIN32
 #include <X11/Xwinsock.h>
diff -ur xc/programs/Xserver/os/io.c patches/xc/programs/Xserver/os/io.c
--- xc/programs/Xserver/os/io.c	Mon Feb 03 10:37:44 1997
+++ patches/xc/programs/Xserver/os/io.c	Mon Feb 03 10:45:41 1997
@@ -45,7 +45,7 @@
 SOFTWARE.
 
 ******************************************************************/
-/* $XConsortium: io.c /main/72 1996/12/27 15:40:56 rws $ */
+/* $XConsortium: io.c /main/71 1996/12/18 16:29:46 lehors $ */
 /*****************************************************************
  * i/o functions
  *
@@ -53,6 +53,9 @@
  *   InsertFakeRequest, ResetCurrentRequest
  *
  *****************************************************************/
+#ifdef __CYGWIN32__
+#define _UIO_H_
+#endif
 
 #ifdef WIN32
 #include <X11/Xwinsock.h>
@@ -980,11 +983,7 @@
 	    if (client->clientGone)
 		continue;
 	    oc = (OsCommPtr)client->osPrivate;
-	    if (
-#ifdef LBX
-		!oc->proxy &&
-#endif
-		FD_ISSET(oc->fd, &ClientsWithInput))
+	    if (FD_ISSET(oc->fd, &ClientsWithInput))
 	    {
 		FD_SET(oc->fd, &OutputPending); /* set the bit again */
 		NewOutputPending = TRUE;
@@ -1004,11 +1003,7 @@
 	    if (client->clientGone)
 		continue;
 	    oc = (OsCommPtr)client->osPrivate;
-	    if (
-#ifdef LBX
-		!oc->proxy &&
-#endif
-		FD_ISSET(oc->fd, &ClientsWithInput))
+	    if (FD_ISSET(oc->fd, &ClientsWithInput))
 	    {
 		FD_SET(oc->fd, &newOutputPending); /* set the bit again */
 		NewOutputPending = TRUE;
diff -ur xc/programs/Xserver/os/lbxio.c patches/xc/programs/Xserver/os/lbxio.c
--- xc/programs/Xserver/os/lbxio.c	Wed Dec 31 18:01:13 1969
+++ patches/xc/programs/Xserver/os/lbxio.c	Mon Feb 03 10:45:42 1997
@@ -23,6 +23,9 @@
 
 ******************************************************************/
 /* $XConsortium: lbxio.c /main/10 1996/12/16 23:03:30 rws $ */
+#ifdef __CYGWIN32__
+#define _UIO_H_
+#endif
 
 #include <stdio.h>
 #include <X11/Xtrans.h>
diff -ur xc/programs/xieperf/modify.c patches/xc/programs/xieperf/modify.c
--- xc/programs/xieperf/modify.c	Wed Dec 31 17:56:48 1969
+++ patches/xc/programs/xieperf/modify.c	Mon Feb 03 10:45:35 1997
@@ -820,7 +820,7 @@
 	return( 1 );
 }
 
-#ifdef WIN32
+#if defined (WIN32) || defined(__CYGWIN32__)
 #define RAND( x, y ) ( ( rand() / ((RAND_MAX + 1) / 2.0) ) * ( y - x ) + x )
 #else
 #if defined(SYSV) || defined(SVR4) || defined(__osf__)
diff -ur xc/config/cf/cygwin32.cf patches/xc/config/cf/cygwin32.cf
--- xc/config/cf/cygwin32.cf	Wed Dec 31 18:00:00 1969
+++ patches/xc/config/cf/cygwin32.cf	Wed Dec 31 17:59:35 1969
@@ -0,0 +1,116 @@
+XCOMM platform:  $XConsortium: cygwin32.cf sos 1996/02/08 18:59:31 gildea $
+
+#ifndef OSName
+#define OSName                  Windows NT
+#endif
+#ifndef OSVendor
+#define OSVendor                Cygnus
+#endif
+#ifndef OSMajorVersion
+#define OSMajorVersion          4
+#endif
+#ifndef OSMinorVersion
+#define OSMinorVersion          0
+#endif
+#ifndef OSTeenyVersion
+#define OSTeenyVersion
+#endif
+
+/*
+ * Cygwin32 shared library rules (DLL versions)
+ */
+#ifndef HasSharedLibraries
+#define HasSharedLibraries NO
+#endif
+#ifndef ForceNormalLib
+#define ForceNormalLib NO
+#endif
+#define SharedLibXaw NO
+#define SharedLibXmu NO
+#define SharedLibXt NO
+#define SharedLibSM NO
+#define SharedLibICE NO
+#define SharedLibXext NO
+#define SharedLibXie NO
+#define SharedLibXi NO
+#define SharedLibPex NO
+#define SharedLibXtst NO
+
+#ifndef UnixCpp
+#define UnixCpp
+#endif
+
+#define HasGcc                  YES
+#define HasGcc2                 YES
+#define HasGcc2ForCplusplus     YES
+#define GccUsesGas              YES
+#define UseGas                  YES
+#define GnuCpp                  YES
+#define HasShadowPasswd         NO
+#ifndef HasLibCrypt
+# define HasLibCrypt            NO
+#endif
+#define HasPutenv               YES
+#define HasShm                  NO
+#define HasSockets              YES
+
+#define AvoidNullMakeCommand    YES
+#define StripInstalledPrograms  YES
+#define CompressAllFonts        YES
+#define Malloc0ReturnsNull      YES
+#define NeedConstPrototypes     YES
+#define NeedFunctionPrototypes  YES
+#define NeedNestedPrototypes    YES
+#define NeedVarargsPrototypes   YES
+#define NeedWidePrototypes      NO
+#define SetTtyGroup             NO
+#define ExpandManNames          NO
+
+#define LnCmd                   ln -s
+#define CcCmd                   gcc
+#define AsCmd                   as
+#define LdCmd                   ld
+#define MkdirHierCmd            mkdir -p
+#define CppCmd                  cpp
+#define YaccCmd                 byacc
+#define LexCmd                  flex -l
+#define LexLib                  -lfl
+#define PreProcessCmd           CcCmd -E
+#define PostIncDir              `CcCmd --print-libgcc-file-name | sed 's/libgcc.a/include/'`
+#define LdCombineFlags          -r
+#define OptimizedCDebugFlags    -O2 -m486
+#define StandardDefines         -D__i386__ -DX_LOCALE -D_MT
+#define XawI18nDefines          -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
+#define HasWChar32              YES
+#define StandardCppDefines      -traditional StandardDefines
+#define ServerOSDefines         -DDDXTIME
+#define ExtensionOSDefines      -DXTESTEXT1
+#define ServerExtraDefines      -DGCCUSESGAS
+#define ConnectionFlags         -DTCPCONN
+#define InstUidFlags            -s -m 4711
+
+/* Some of these man page defaults are overriden in the above OS sections */
+#ifndef ManSuffix
+# define ManSuffix      1x
+#endif
+#ifndef ManDir
+# define ManDir         $(MANSOURCEPATH)1
+#endif
+#ifndef LibManSuffix
+# define LibManSuffix   3x
+#endif
+#ifndef LibmanDir
+# define LibmanDir      $(MANSOURCEPATH)3
+#endif
+#ifndef FileManSuffix
+# define FileManSuffix  5x
+#endif
+#ifndef FileManDir
+# define FileManDir     $(MANSOURCEPATH)5
+#endif
+
+#define TermcapLibrary -lncurses
+
+#include <cygwin32.rules>
+/*#include <xfree86.cf>*/
+
diff -ur xc/config/cf/cygwin32.rules patches/xc/config/cf/cygwin32.rules
--- xc/config/cf/cygwin32.rules	Wed Dec 31 18:00:00 1969
+++ patches/xc/config/cf/cygwin32.rules	Wed Dec 31 17:59:35 1969
@@ -0,0 +1,74 @@
+XCOMM $XConsortium: cygwin32.rules /main/12 1996/01/03 14:51:18 kaleb $
+
+#define ProgramTargetName(target)target.exe
+#define SharedOldX NO
+
+
+#ifndef SharedDataSeparation
+#define SharedDataSeparation NO
+#endif
+#ifndef SharedCodeDef
+#define SharedCodeDef /**/
+#endif
+#ifndef SharedLibraryDef
+#define SharedLibraryDef /**/
+#endif
+#ifndef ShLibIncludeFile
+#define ShLibIncludeFile <cygwin32.tmpl>
+#endif
+#ifndef SharedLibraryLoadFlags
+#define SharedLibraryLoadFlags /**/
+#endif
+/*
+ * SharedLibraryDataTarget - generate rules to create shared data file
+ */
+#ifndef SharedLibraryDataTarget
+#define SharedLibraryDataTarget(libname,rev,salist)
+#endif
+/*
+ * InstallSharedLibraryData - generate rules to install the shared library data
+ */
+#ifndef InstallSharedLibraryData
+#define InstallSharedLibraryData(libname,rev,dest)
+#endif /* InstallSharedLibraryData */
+
+GCCLIB = `$(CC) -print-libgcc-file-name`
+
+#define MakeDLL(libname,solist)									@@\
+#	ld -e _dll_main@12 --base-file dll.base -o dll.jnk solist -lcygwin $(GCCLIB) --dll             @@\
+	dlltool --dllname Concat3(lib,libname,.dll) --def libname.def --output-exp win.exp --output-lib LibraryTargetName(libname) @@\
+	ld -e _dll_main@12 -o Concat3(lib,libname,.dll) win.exp solist -lcygwin $(GCCLIB) --dll                   @@\
+	rm -f win.exp dll.jnk dll.base
+
+#define SharedLibraryTarget(libname,rev,solist,down,up)                 @@\
+AllTarget(Concat3(lib,libname,.dll))                                    @@\
+                                                                        @@\
+CppFileTarget(libname.def,libname-def.cpp,-DLIBRARY_VERSION=rev,$(ICONFIGFILES)) @@\
+                                                                        @@\
+junk.c:											@@\
+	echo "#include <windows.h>" 			>junk.c			@@\
+	echo "int _fmode;" 				>>junk.c			@@\
+	echo "int WINAPI dll_main(HANDLE a, DWORD reason, void *q)" >>junk.c	@@\
+	echo "{ switch (reason){"				>>junk.c				@@\
+	echo "   case DLL_PROCESS_ATTACH: break;"	>>junk.c				@@\
+	echo "   case DLL_PROCESS_DETACH: break;"	>>junk.c				@@\
+	echo "   case DLL_THREAD_ATTACH:  break;"	>>junk.c				@@\
+	echo "   case DLL_THREAD_DETACH:  break;"	>>junk.c				@@\
+	echo "  } return 1;"				>>junk.c				@@\
+	echo "}"						>>junk.c				@@\
+	echo "main(){}"					>>junk.c				@@\
+Concat3(lib,libname,.dll): solist junk.o libname.def                                  @@\
+	RemoveFile(LibraryTargetName(libname))                            @@\
+	RemoveFile(Concat3(lib,libname,.dll)) 							@@\
+	MakeDLL(libname,solist junk.o $(REQUIREDLIBS))						@@\
+                                                                        @@\
+clean::                                                                 @@\
+	RemoveFile(LibraryTargetName(libname))                            @@\
+	RemoveFile(Concat3(lib,libname,.dll))								@@\
+	RemoveFile(junk.o)								@@\
+	Removefile(junk.c)
+
+#define InstallSharedLibrary(libname,rev,dest)                          @@\
+InstallTarget(install,LibraryTargetName(libname),$(INSTLIBFLAGS),$(USRLIBDIR)) @@\
+InstallTarget(install,Concat3(lib,libname,.dll),$(INSTLIBFLAGS),$(BINDIR))
+
diff -ur xc/config/cf/cygwin32.tmpl patches/xc/config/cf/cygwin32.tmpl
--- cygwin32.tmpl	Wed Dec 31 18:00:00 1969
+++ patches/xc/config/cf/cygwin32.tmpl	Wed Dec 31 17:59:35 1969
@@ -0,0 +0,0 @@
diff -ur xc/copyfile.bat patches/xc/copyfile.bat
--- xc/copyfile	Wed Dec 31 18:00:00 1969
+++ patches/xc/copyfile.bat	Wed Dec 31 17:59:35 1969
@@ -0,0 +1,18 @@
+D:
+cd \temp\X\xc\config\cf
+copy Imake.cf Imake.cf.63
+copy Imakefile Imakefile.63
+cd ..\imake
+copy imake.c imake.c.63
+copy imakemdep.h imakemdep.h.63
+cd ..\makedepend
+copy main.c main.c.63
+cd ..\..\lib\X11
+copy X11-def.cpp X11-deff.cpp.63
+cd ..\xtrans
+copy Xtrans.c Xtrans.c.63
+copy Xtrans.h Xtrans.h.63
+copy Xtransint.h Xtransint.h.63
+cd ..\..\programs\xieperf
+copy modify.c modify.c.63
+cd ..\..
diff -ur xc/xmakefile patches/xc/xmakefile
--- xc/xmakefile	Wed Dec 31 18:00:00 1969
+++ patches/xc/xmakefile	Wed Dec 31 17:59:35 1969
@@ -0,0 +1,672 @@
+# Makefile generated by imake - do not edit!
+# $XConsortium: imake.c /main/90 1996/11/13 14:43:23 lehors $
+
+# ----------------------------------------------------------------------
+# Makefile generated from "Imake.tmpl" and <Imakefile>
+# $XConsortium: Imake.tmpl /main/243 1996/11/13 14:42:56 lehors $
+#
+
+all::
+
+.SUFFIXES: .i
+
+# $XConsortium: Imake.cf /main/26 1996/09/28 16:05:09 rws $
+
+# -----------------------------------------------------------------------
+# site-specific configuration parameters that need to come before
+# the platform-specific parameters - edit site.def to change
+
+# site:  $XConsortium: site.def /main/revisionist/4 1996/12/31 08:02:07 kaleb $
+
+# ----------------------------------------------------------------------
+# platform-specific configuration parameters - edit cygwin32.cf to change
+
+# platform:  $XConsortium: cygwin32.cf sos 1996/02/08 18:59:31 gildea $
+
+# $XConsortium: cygwin32.rules /main/12 1996/01/03 14:51:18 kaleb $
+
+GCCLIB = `$(CC) -print-libgcc-file-name`
+
+# ----------------------------------------------------------------------
+# site-specific configuration parameters that go after
+# the platform-specific parameters - edit site.def to change
+
+# site:  $XConsortium: site.def /main/revisionist/4 1996/12/31 08:02:07 kaleb $
+
+# ---------------------------------------------------------------------
+# Imake rules for building libraries, programs, scripts, and data files
+# rules:  $XConsortium: Imake.rules /main/217 1996/12/05 09:48:26 kaleb $
+
+ _NULLCMD_ = @ echo -n
+
+          PATHSEP = /
+            SHELL = /bin/sh
+
+              TOP = .
+      CURRENT_DIR = .
+
+            IMAKE = $(IMAKESRC)/imake
+           DEPEND = $(DEPENDSRC)/makedepend
+        MKDIRHIER = mkdir -p
+    EXPORTLISTGEN =
+        CONFIGSRC = $(TOP)/config
+         IMAKESRC = $(CONFIGSRC)/imake
+        DEPENDSRC = $(CONFIGSRC)/makedepend
+
+          INCROOT = /usr/X11R6.3/include
+        USRLIBDIR = /usr/X11R6.3/lib
+         SHLIBDIR = /usr/X11R6.3/lib
+       LINTLIBDIR = $(USRLIBDIR)/lint
+          MANPATH = /usr/X11R6.3/man
+    MANSOURCEPATH = $(MANPATH)/man
+           MANDIR = $(MANSOURCEPATH)1
+        LIBMANDIR = $(MANSOURCEPATH)3
+       FILEMANDIR = $(MANSOURCEPATH)5
+
+               AR = ar clq
+  BOOTSTRAPCFLAGS =
+               CC = gcc
+               AS = as
+
+.SUFFIXES: .cc
+
+              CXX = g++
+          CXXFILT = c++filt
+           CXXLIB =
+    CXXDEBUGFLAGS = -O2 -m486
+CXXDEPENDINCLUDES =
+ CXXEXTRA_DEFINES =
+CXXEXTRA_INCLUDES =
+   CXXSTD_DEFINES = -D__i386__ -DX_LOCALE -D_MT $(CXXPROJECT_DEFINES)
+       CXXOPTIONS =
+      CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
+       CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(CXXEXTRA_DEFINES) $(DEFINES)
+         CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)
+
+         COMPRESS = compress
+             GZIP = gzip
+              CPP = cpp $(STD_CPP_DEFINES)
+    PREPROCESSCMD = gcc -E $(STD_CPP_DEFINES)
+          INSTALL = install
+     INSTALLFLAGS = -c
+               LD = ld
+              LEX = flex -l
+           LEXLIB = -lfl
+             YACC = byacc
+           CCYACC = byacc
+             LINT = lint
+      LINTLIBFLAG = -C
+         LINTOPTS = -axz
+               LN = ln -s
+             MAKE = make
+               MV = mv
+               CP = cp
+
+           RANLIB = ranlib
+  RANLIBINSTFLAGS =
+
+               RM = rm -f
+        MANSUFFIX = 1x
+     LIBMANSUFFIX = 3x
+    FILEMANSUFFIX = 5x
+            TROFF = psroff
+            NROFF = nroff
+         MSMACROS = -ms
+        MANMACROS = -man
+              TBL = tbl
+              EQN = eqn
+             NEQN = neqn
+              COL = col
+
+            DVIPS = dvips
+            LATEX = latex
+
+     STD_INCLUDES =
+  STD_CPP_DEFINES = -traditional -D__i386__ -DX_LOCALE -D_MT $(PROJECT_DEFINES)
+      STD_DEFINES = -D__i386__ -DX_LOCALE -D_MT $(PROJECT_DEFINES)
+ EXTRA_LOAD_FLAGS =
+  EXTRA_LDOPTIONS =
+  EXTRA_LIBRARIES =
+             TAGS = ctags
+
+    PROTO_DEFINES = -DFUNCPROTO=15 -DNARROWPROTO
+
+     INSTPGMFLAGS = -s
+
+     INSTBINFLAGS = -m 0755
+     INSTUIDFLAGS = -s -m 4711
+     INSTLIBFLAGS = -m 0644
+     INSTINCFLAGS = -m 0444
+     INSTMANFLAGS = -m 0444
+     INSTDATFLAGS = -m 0444
+    INSTKMEMFLAGS = -s -m 4711
+
+      PROJECTROOT = /usr/X11R6.3
+
+      CDEBUGFLAGS = -O2 -m486
+        CCOPTIONS =
+
+      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES)
+       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES)
+           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(ALLDEFINES)
+        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
+         LDPRELIB = -L$(BUILDLIBDIR)
+        LDPOSTLIB = -L$(USRLIBDIR)
+        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)  $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
+     CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
+
+           LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
+
+           CCLINK = $(CC)
+
+          CXXLINK = $(CXX)
+
+     LDSTRIPFLAGS = -x
+   LDCOMBINEFLAGS = -r
+      DEPENDFLAGS =
+
+        MACROFILE = cygwin32.cf
+           RM_CMD = $(RM)
+
+    IMAKE_DEFINES =
+
+         IRULESRC = $(CONFIGSRC)/cf
+        IMAKE_CMD = $(IMAKE) -I$(IRULESRC) $(IMAKE_DEFINES)
+
+     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl 			$(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) 			 $(EXTRA_ICONFIGFILES)
+
+# $XConsortium: X11.rules /main/2 1996/12/04 10:13:00 swick $
+
+# ----------------------------------------------------------------------
+# X Window System Build Parameters and Rules
+# $XConsortium: X11.tmpl /main/290 1996/12/27 16:14:21 kaleb $
+
+# -----------------------------------------------------------------------
+# X Window System make variables; these need to be coordinated with rules
+
+             XTOP = $(TOP)
+           BINDIR = /usr/X11R6.3/bin
+     BUILDINCROOT = $(TOP)/exports
+      BUILDINCDIR = $(BUILDINCROOT)/include
+      BUILDINCTOP = ../..
+      BUILDLIBDIR = $(TOP)/exports/lib
+      BUILDLIBTOP = ../..
+      BUILDBINDIR = $(TOP)/exports/bin
+      BUILDBINTOP = ../..
+    XBUILDINCROOT = $(XTOP)/exports
+     XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
+     XBUILDINCTOP = ../../..
+     XBUILDBINDIR = $(XBUILDINCROOT)/bin
+           INCDIR = $(INCROOT)
+           ADMDIR = /usr/adm
+           LIBDIR = $(USRLIBDIR)/X11
+   TOP_X_INCLUDES = -I$(TOP)/exports/include
+
+          FONTDIR = $(LIBDIR)/fonts
+         XINITDIR = $(LIBDIR)/xinit
+           XDMDIR = $(LIBDIR)/xdm
+           TWMDIR = $(LIBDIR)/twm
+           XSMDIR = $(LIBDIR)/xsm
+           NLSDIR = $(LIBDIR)/nls
+       XLOCALEDIR = $(LIBDIR)/locale
+        PEXAPIDIR = $(LIBDIR)/PEX
+      LBXPROXYDIR = $(LIBDIR)/lbxproxy
+  PROXYMANAGERDIR = $(LIBDIR)/proxymngr
+        XPRINTDIR = $(LIBDIR)
+      XAPPLOADDIR = $(LIBDIR)/app-defaults
+       FONTCFLAGS = -t
+
+     INSTAPPFLAGS = $(INSTDATFLAGS)
+
+              RGB = $(CLIENTENVSETUP) $(XBUILDBINDIR)/rgb
+            FONTC = $(CLIENTENVSETUP) $(XBUILDBINDIR)/bdftopcf
+        MKFONTDIR = $(CLIENTENVSETUP) $(XBUILDBINDIR)/mkfontdir
+
+       DOCUTILSRC = $(XTOP)/doc/util
+       XDOCMACROS = $(DOCUTILSRC)/macros.t
+       XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
+       PROGRAMSRC = $(TOP)/programs
+           LIBSRC = $(XTOP)/lib
+          FONTSRC = $(XTOP)/fonts
+       INCLUDESRC = $(BUILDINCROOT)/include
+      XINCLUDESRC = $(INCLUDESRC)/X11
+        SERVERSRC = $(XTOP)/programs/Xserver
+       CONTRIBSRC = $(XTOP)/../contrib
+   UNSUPPORTEDSRC = $(XTOP)/unsupported
+           DOCSRC = $(XTOP)/doc
+           RGBSRC = $(XTOP)/programs/rgb
+      BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
+     MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
+    FONTSERVERSRC = $(PROGRAMSRC)/xfs
+       FONTINCSRC = $(XTOP)/include/fonts
+        EXTINCSRC = $(XTOP)/include/extensions
+     TRANSCOMMSRC = $(LIBSRC)/xtrans
+   TRANS_INCLUDES = -I$(TRANSCOMMSRC)
+
+   CLIENTENVSETUP =
+
+          XLIBSRC = $(LIBSRC)/X11
+
+DEPXONLYLIB = $(TOP)/exports/lib/libX11.a
+XONLYLIB =  -lX11
+
+LINTXONLY = $(XLIBSRC)/llib-X11.ln
+
+         XLIBONLY = $(XONLYLIB)
+
+      XEXTLIBSRC = $(LIBSRC)/Xext
+
+DEPEXTENSIONLIB = $(TOP)/exports/lib/libXext.a
+EXTENSIONLIB =  -lXext
+
+LINTEXTENSION = $(XEXTLIBSRC)/llib-Xext.ln
+
+LINTEXTENSIONLIB = $(LINTEXTENSION)
+          DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
+             XLIB = $(EXTENSIONLIB) $(XONLYLIB)
+         LINTXLIB = $(LINTXONLYLIB)
+
+         XAUTHSRC = $(LIBSRC)/Xau
+
+DEPXAUTHLIB = $(TOP)/exports/lib/libXau.a
+XAUTHLIB =  -lXau
+
+LINTXAUTH = $(XAUTHSRC)/llib-Xau.ln
+
+      XDMCPLIBSRC = $(LIBSRC)/Xdmcp
+
+DEPXDMCPLIB = $(TOP)/exports/lib/libXdmcp.a
+XDMCPLIB =  -lXdmcp
+
+LINTXDMCP = $(XDMCPLIBSRC)/llib-Xdmcp.ln
+
+           XMUSRC = $(LIBSRC)/Xmu
+
+DEPXMULIB = $(TOP)/exports/lib/libXmu.a
+XMULIB =  -lXmu
+
+LINTXMU = $(XMUSRC)/llib-Xmu.ln
+
+       OLDXLIBSRC = $(LIBSRC)/oldX
+
+DEPOLDXLIB = $(TOP)/exports/lib/liboldX.a
+OLDXLIB =  -loldX
+
+LINTOLDX = $(OLDXLIBSRC)/llib-oldX.ln
+
+         XPLIBSRC = $(LIBSRC)/Xp
+
+DEPXPLIB = $(TOP)/exports/lib/libXp.a
+XPLIB =  -lXp
+
+LINTXP = $(XPLIBSRC)/llib-Xp.ln
+
+       TOOLKITSRC = $(LIBSRC)/Xt
+
+DEPXTOOLONLYLIB = $(TOP)/exports/lib/libXt.a
+XTOOLONLYLIB =  -lXt
+
+LINTXTOOLONLY = $(TOOLKITSRC)/llib-Xt.ln
+
+      DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
+         XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
+     LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
+
+       XALIBSRC = $(LIBSRC)/Xa
+
+DEPvarLIB = $(BUILDLIBDIR)/libXa.a
+varLIB =  -lXa
+
+LINTvar = $(XALIBSRC)/llib-Xa.ln
+
+       AWIDGETSRC = $(LIBSRC)/Xaw
+
+DEPXAWLIB = $(TOP)/exports/lib/libXaw.a
+XAWLIB =  -lXaw
+
+LINTXAW = $(AWIDGETSRC)/llib-Xaw.ln
+
+         XILIBSRC = $(LIBSRC)/Xi
+
+DEPXILIB = $(TOP)/exports/lib/libXi.a
+XILIB =  -lXi
+
+LINTXI = $(XILIBSRC)/llib-Xi.ln
+
+      XTESTLIBSRC = $(LIBSRC)/Xtst
+
+DEPXTESTLIB = $(TOP)/exports/lib/libXtst.a
+XTESTLIB =  -lXtst
+
+LINTXTEST = $(XTESTLIBSRC)/llib-Xtst.ln
+
+        PEXLIBSRC = $(LIBSRC)/PEX5
+
+DEPPEXLIB = $(TOP)/exports/lib/libPEX5.a
+PEXLIB =  -lPEX5
+
+LINTPEX = $(PEXLIBSRC)/llib-PEX5.ln
+
+        XIELIBSRC = $(LIBSRC)/XIE
+
+DEPXIELIB = $(TOP)/exports/lib/libXIE.a
+XIELIB =  -lXIE
+
+LINTXIE = $(XIELIBSRC)/llib-XIE.ln
+
+      PHIGSLIBSRC = $(LIBSRC)/PHIGS
+
+DEPPHIGSLIB = $(TOP)/exports/lib/libphigs.a
+PHIGSLIB =  -lphigs
+
+LINTPHIGS = $(PHIGSLIBSRC)/llib-phigs.ln
+
+DEPXBSDLIB = $(TOP)/exports/lib/libXbsd.a
+XBSDLIB =  -lXbsd
+
+LINTXBSD = $(LIBSRC)/Xbsd/llib-Xbsd.ln
+
+           ICESRC = $(LIBSRC)/ICE
+
+DEPICELIB = $(TOP)/exports/lib/libICE.a
+ICELIB =  -lICE
+
+LINTICE = $(ICESRC)/llib-ICE.ln
+
+            SMSRC = $(LIBSRC)/SM
+
+DEPSMLIB = $(TOP)/exports/lib/libSM.a
+SMLIB =  -lSM
+
+LINTSM = $(SMSRC)/llib-SM.ln
+
+           XKEYSRC = $(LIBSRC)/Xkey
+
+DEPXKEYLIB = $(TOP)/exports/lib/libXkey.a
+XKEYLIB =  -lXkey
+
+LINTXKEY = $(XKEYSRC)/llib-Xkey.ln
+
+         FSLIBSRC = $(LIBSRC)/FS
+
+DEPFSLIB = $(TOP)/exports/lib/libFS.a
+FSLIB =  -lFS
+
+LINTFS = $(FSLIBSRC)/llib-FS.ln
+
+         FONTLIBSRC = $(LIBSRC)/font
+
+DEPFONTLIB = $(TOP)/exports/lib/libfont.a
+FONTLIB =  -lfont
+
+LINTFONT = $(FONTLIBSRC)/llib-font.ln
+
+    XKBFILELIBSRC = $(LIBSRC)/xkbfile
+
+DEPXKBFILELIB = $(TOP)/exports/lib/libxkbfile.a
+XKBFILELIB =  -lxkbfile
+
+LINTXKBFILE = $(XKBFILELIBSRC)/llib-xkbfile.ln
+
+     XKBCOMPSRC = $(PROGRAMSRC)/xkbcomp
+     XKBCOMPCMD = $(CLIENTENVSETUP) $(XKBCOMPSRC)/xkbcomp
+
+          DEPLIBS = $(LOCAL_LIBRARIES)
+
+         DEPLIBS1 = $(DEPLIBS)
+         DEPLIBS2 = $(DEPLIBS)
+         DEPLIBS3 = $(DEPLIBS)
+         DEPLIBS4 = $(DEPLIBS)
+         DEPLIBS5 = $(DEPLIBS)
+         DEPLIBS6 = $(DEPLIBS)
+         DEPLIBS7 = $(DEPLIBS)
+         DEPLIBS8 = $(DEPLIBS)
+         DEPLIBS9 = $(DEPLIBS)
+         DEPLIBS10 = $(DEPLIBS)
+
+        CONFIGDIR = $(LIBDIR)/config
+
+    USRLIBDIRPATH = $(USRLIBDIR)
+        LDPRELIBS = -L$(BUILDLIBDIR)
+       LDPOSTLIBS = -L$(USRLIBDIR)
+     TOP_INCLUDES = -I$(TOP) $(TOP_X_INCLUDES)
+  PROJECT_DEFINES =
+
+CXXPROJECT_DEFINES =
+
+# ----------------------------------------------------------------------
+# start of Imakefile
+
+# $XConsortium: Imakefile /main/137 1996/10/08 07:38:14 swick $
+
+RELEASE = "Release 6.3"
+
+        FONTSDIR = fonts
+
+        DOCSDIR = doc
+
+        SUBDIRS = include config lib nls programs $(FONTSDIR) $(DOCSDIR)
+  LNINSTALLDIRS = lib
+
+all::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "making" all "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) CDEBUGFLAGS="$(CDEBUGFLAGS)" all); \
+	done
+
+install.ln::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(LNINSTALLDIRS) ;\
+	do \
+	echo "linting" for install.ln and install.ln "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) LINTOPTS='$(LINTOPTS)' install.ln); \
+	done
+
+external.ln::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(LNINSTALLDIRS) ;\
+	do \
+	echo "linting" for external.ln and lintlib "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) LINTOPTS='$(LINTOPTS)' lintlib); \
+	done
+
+depend::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "depending" "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS)  depend); \
+	done
+
+VerifyOS::
+	@echo ""
+	@echo Building on Windows NT.
+	@echo ""
+
+includes::
+	@if [ -d $(BUILDINCDIR) ]; then set +x; \
+	else (set -x; $(MKDIRHIER) $(BUILDINCDIR)); fi
+	@if [ -d $(BUILDBINDIR) ]; then set +x; \
+	else (set -x; $(MKDIRHIER) $(BUILDBINDIR)); fi
+
+#
+# Watch out!!!  Make sure you do make includes after removing X11....
+#
+clean::
+	$(RM) -r $(BUILDINCDIR)
+	$(RM) -r $(BUILDLIBDIR)
+	$(RM) -r $(BUILDBINDIR)
+
+      MAKE_OPTS = -f xmakefile
+
+Everything::
+	@echo ""
+	@echo Rebuilding $(RELEASE) of the X Window System.
+	@echo ""
+	@date
+	@echo ""
+	cd $(IMAKESRC) && if [ -f Makefile ]; then 	    $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; 	else 	    $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; 	fi
+
+	-$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak
+	$(MAKE) $(MFLAGS) xmakefile
+	$(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles
+	$(MAKE) $(MFLAGS) $(MAKE_OPTS) includes
+	$(MAKE) $(MFLAGS) $(MAKE_OPTS) depend
+	$(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS)
+	@echo ""
+	@date
+	@echo ""
+	@echo Rebuild of $(RELEASE) of the X Window System complete.
+	@echo ""
+
+# clean out link tree looking for stuff that should get checked in
+dangerous_strip_clean::
+	$(MAKE) -k clean
+	find . -type l -exec rm {} \;
+	find . \( \! \( -type d -o -name Makefile \) \) -print
+
+# special target to determine if the xmakefile exists.
+# Works on both Unix and NMAKE.EXE
+xmakefile-exists::
+
+BOOTSTRAPSUBDIRS = imake makedepend
+
+# ----------------------------------------------------------------------
+# common rules for all Makefiles - do not edit
+
+.c.i:
+	$(RM) $@
+	 $(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@
+
+emptyrule::
+
+clean::
+	$(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut  "#"*
+
+tags::
+	$(TAGS) -w *.[ch]
+	$(TAGS) -xw *.[ch] > TAGS
+
+man_keywords::
+
+# ----------------------------------------------------------------------
+# rules for building in SUBDIRS - do not edit
+
+install::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "installing" "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) install); \
+	done
+
+install.man::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "installing man pages" "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) DESTDIR=$(DESTDIR) install.man); \
+	done
+
+clean::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "cleaning" "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) BOOTSTRAPSUBDIRS="$(BOOTSTRAPSUBDIRS)" clean); \
+	done
+
+tags::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo "tagging" "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS) TAGS='$(TAGS)' tags); \
+	done
+
+$(ONESUBDIR)/Makefile:
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[n]*) executeit="no";; esac; done; \
+	cd $(ONESUBDIR); \
+	if [ "$$executeit" != "no" ]; then \
+	$(IMAKEPREFIX)$(IMAKE) -I$(IMAKEPREFIX)$(IRULESRC) $(IMAKE_DEFINES) -DTOPDIR=$(IMAKETOP) -DCURDIR=$(ONECURDIR)$(ONESUBDIR); \
+	fi;
+
+Makefiles::
+	-@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[n]*) executeit="no";; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	case "$(CURRENT_DIR)" in \
+	.) curdir= ;; \
+	*) curdir=$(CURRENT_DIR)/ ;; \
+	esac; \
+	echo "making Makefiles in $$curdir$$i..."; \
+	itmp="$$i" \
+	curtmp="$(CURRENT_DIR)" \
+	toptmp=""; \
+	case "$$itmp" in \
+	../?*) \
+	while echo "$$itmp" | grep '^../' > /dev/null;\
+	do \
+	toptmp="/`basename $$curtmp`$$toptmp"; \
+	curtmp="`dirname $$curtmp`"; \
+	itmp="`echo $$itmp | sed 's;../;;'`"; \
+	done \
+	;; \
+	esac; \
+	case "$$itmp" in \
+	*/?*/?*/?*/?*)	newtop=../../../../..;; \
+	*/?*/?*/?*)	newtop=../../../..;; \
+	*/?*/?*)	newtop=../../..;; \
+	*/?*)		newtop=../..;; \
+	*)		newtop=..;; \
+	esac; \
+	newtop="$$newtop$$toptmp"; \
+	case "$(TOP)" in \
+	/?*) imaketop=$(TOP) \
+	imakeprefix= ;; \
+	.) imaketop=$$newtop \
+	imakeprefix=$$newtop/ ;; \
+	*) imaketop=$$newtop/$(TOP) \
+	imakeprefix=$$newtop/ ;; \
+	esac; \
+	$(RM) $$i/Makefile.bak; \
+	if [ -f $$i/Makefile ]; then \
+	echo "	$(MV) Makefile Makefile.bak"; \
+	if [ "$$executeit" != "no" ]; then \
+	$(MV) $$i/Makefile $$i/Makefile.bak; \
+	fi; \
+	fi; \
+	$(MAKE) $(MFLAGS) $(MAKE_OPTS) ONESUBDIR=$$i ONECURDIR=$$curdir IMAKETOP=$$imaketop IMAKEPREFIX=$$imakeprefix $$i/Makefile; \
+	cd $$i;	\
+	$(MAKE) $(MFLAGS) Makefiles; \
+	cd $$newtop; \
+	done
+
+includes::
+	@for flag in ${MAKEFLAGS} ''; do \
+	case "$$flag" in *=*) ;; *[ik]*) set +e;; esac; done; \
+	for i in $(SUBDIRS) ;\
+	do \
+	echo including "in $(CURRENT_DIR)/$$i..."; \
+	(cd $$i &&  $(MAKE) $(MFLAGS)  includes); \
+	done
+
+install.man:: man_keywords
+
+# ----------------------------------------------------------------------
+# dependencies generated by makedepend
+

-- 
James Dumser    972-462-5335 [email-masked]
-
For help on using this list, send a message to
"[email-masked]" with one line of text: "help".