From: dumser AT ti DOT com (James Dumser) Subject: Re: precompiled X11 libs 3 Feb 1997 16:03:20 -0800 Approved: cygnus DOT gnu-win32 AT cygnus DOT com Distribution: cygnus Message-ID: <199702032016.OAA08389.cygnus.gnu-win32@lesol1.dseg.ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Original-To: dahms AT ifk20 DOT mach DOT uni-karlsruhe DOT de Original-Cc: gnu-win32 AT cygnus DOT com In-Reply-To: <009AF383.16D58B80.8872@ifk20.mach.uni-karlsruhe.de> from "dahms@ifk20.mach.uni-karlsruhe.de" 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: owner-gnu-win32 AT cygnus DOT com On Sat, 01 Feb 1997 04:44:36 EST, Heribert 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 +# define MacroFile cygwin32.cf +# define LinuxArchitecture +# define i386Architecture +#endif /* __CYGWIN32__ */ + #ifdef __uxp__ # define MacroIncludeFile # 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 */ @@ -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 +/* # endif # ifndef ProjectTmplFile +*/ # define ProjectTmplFile +/* # 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 +#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 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 @@ -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 #include 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 +/*#include */ + 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 +#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 AT 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 AT 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 " >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 +# $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 dumser AT ti DOT com - For help on using this list, send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".