home *** CD-ROM | disk | FTP | other *** search
- /* MingGW vendor strings and version */
- #include "xorgversion.def"
-
- #ifndef CygxVersionMajor
- # define CygxVersionMajor XORG_VERSION_MAJOR
- #endif
- #ifndef CygxVersionMinor
- # define CygxVersionMinor XORG_VERSION_MINOR
- #endif
- #ifndef CygxVersionPatch
- # define CygxVersionPatch XORG_VERSION_PATCH
- #endif
- #ifndef CygxVersionSnap
- # define CygxVersionSnap XORG_VERSION_SNAP
- #endif
- #ifndef CygxVersionServer
- # define CygxVersionServer 0
- #endif
-
- #ifndef CygxVersion
- # define CygxVersion (10000000 * CygxVersionMajor + 100000 * CygxVersionMinor + 1000 * CygxVersionPatch + CygxVersionSnap)
- #endif
-
- #ifndef CygxVersionString
- # define CygxVersionString `echo CygxVersionMajor CygxVersionMinor CygxVersionPatch CygxVersionSnap%CygxVersionServer| sed -e 's/ /./g' -e 's/%/-/g'`
- #endif
-
- #ifndef CygxManVersionString
- # define CygxManVersionString `echo CygxVersionMajor CygxVersionMinor CygxVersionPatch CygxVersionSnap| sed -e 's/ /./g' -e 's/^/Version\\\ /'`
- #endif
-
- #ifndef XVendorString
- # define XVendorString "The Cygwin/X Project"
- #endif
- #ifndef XVendorRelease
- # define XVendorRelease CygxVersion
- #endif
- #ifndef XVendorManVersionString
- # define XVendorManVersionString CygxManVersionString
- #endif
- #ifndef XVendorManNameString
- # define XVendorManNameString "Xming"
- #endif
- #ifndef XVendorContact
- # define XVendorContact "win32-x11@sources.redhat.com"
- #endif
-
- /* Operating system strings and version */
- #ifndef OSName
- # define OSName Windows
- #endif
- #ifndef OSVendor
- # define OSVendor Microsoft
- #endif
- #ifndef OSMajorVersion
- # define OSMajorVersion DefaultOSMajorVersion
- #endif
- #ifndef OSMinorVersion
- # define OSMinorVersion DefaultOSMinorVersion
- #endif
- #ifndef OSTeenyVersion
- # define OSTeenyVersion DefaultOSTeenyVersion
- #endif
-
- #ifndef ProjectRoot
- # define ProjectRoot /usr/X11R6
- #endif
-
- /*
- * GNU Compiler stuff
- */
- #ifndef HasGcc3
- # define HasGcc3 NO
- #endif
- #ifndef HasGcc2
- # define HasGcc2 HasGcc3
- #endif
- #ifndef HasGcc
- # define HasGcc HasGcc2
- #endif
- #ifndef HasGcc2ForCplusplus
- # define HasGcc2ForCplusplus HasGcc2
- #endif
-
- #if HasGcc
- # ifndef Gcc28Warnings
- # if (GccMajorVersion > 2) || \
- ((GccMajorVersion == 2) && (GccMinorVersion >= 8))
- # define Gcc28Warnings -Wundef
- # else
- # define Gcc28Warnings /* */
- # endif
- # ifndef HasGcc33
- # if (((GccMajorVersion == 3) && (GccMinorVersion >= 3)) || \
- (GccMajorVersion > 3))
- # define HasGcc33 YES
- # else
- # define HasGcc33 NO
- # endif
- # endif
- # ifndef HasGcc34
- # if (((GccMajorVersion == 3) && (GccMinorVersion >= 4)) || \
- (GccMajorVersion > 3))
- # define HasGcc34 YES
- # else
- # define HasGcc34 NO
- # endif
- # endif
- # endif
- # ifndef GccWarningOptions
- # if XFree86Devel
- # define GccWarningOptions -Wall -Wpointer-arith -Wstrict-prototypes \
- -Wmissing-prototypes -Wmissing-declarations \
- -Wredundant-decls -Wnested-externs Gcc28Warnings
- # else
- # define GccWarningOptions -Wall -Wpointer-arith Gcc28Warnings
- # endif
- # endif
- # ifndef DefaultCCOptions
- # if defined(UseInstalled)
- # define DefaultCCOptions
- # else
- # define DefaultCCOptions GccWarningOptions
- # endif
- # endif
- # if defined(UseInstalled)
- # ifndef UseGccMakeDepend
- # define UseGccMakeDepend YES
- # endif
- # endif
- #endif
-
- #define GccUsesGas YES
- #define UseGas YES
- #define GnuCpp YES
- #define UnixCpp /* Just a flag that affects Concat macros in Imake.rules */
- #define HasShadowPasswd NO
- #define HasLibCrypt YES
- #define HasPutenv YES
- #define HasFchown NO
- #define HasPoll NO
- #if (OSMajorVersion > 1) || (OSMajorVersion == 1 && OSMinorVersion >= 5)
- # define HasStrlcat YES
- #endif
- #define HasShm NO
-
- /* snprintf from windows runtime does return -1 if the buffer is to small */
- #define HasSnprintf NO
-
- #define HasFfs NO
-
- #ifndef HasMakefileSafeInclude
- # define HasMakefileSafeInclude YES
- #endif
-
- #define Hastcl NO
- #define Hastk NO
-
- #define HasSockets NO
- #define GzipFontCompression YES
- #define HasZlib NO
- #define HasFreetype2 NO
-
- /* We don't need -lm */
- #define MathLibrary /**/
-
- /*
- * /lib/libtermcap.a doesn't have tgetent, which is needed for
- * xc/programs/xterm/resize.exe
- */
- #define TermcapLibrary -lncurses.dll
-
- #define AvoidNullMakeCommand YES
- #define StripInstalledPrograms YES
- #define CompressAllFonts YES
- #define Malloc0ReturnsNull NO
- #define NeedConstPrototypes YES
- #define NeedFunctionPrototypes YES
- #define NeedNestedPrototypes YES
- #define NeedVarargsPrototypes YES
- #define NeedWidePrototypes NO
- #define SetTtyGroup YES
- #define ExpandManNames YES
- #define HasDlopen NO
- #define HasGnuMake YES
- #define UseGccMakeDepend NO
- #define ThreadedX YES
- #define HasThreadSafeAPI YES
- #if !CrossCompiling
- #define CaseSensitiveFileSystem NO
- #endif
- #define HasWChar32 YES
- #define HasBasename NO /* basename() in libc */
-
- #define LnCmd ln -s
- #ifndef CcCmd
- # define CcCmd gcc
- #endif /* CcCmd */
- #ifndef CplusplusCmd
- # define CplusplusCmd g++
- #endif /* CplusplusCmd */
- #ifndef AsCmd
- # define AsCmd as
- #endif /* AsCmd */
-
- #define GccGasOption -DGCCUSESGAS
- #define AsmDefines -DUSE_GAS -DGCCUSESGAS
-
- #ifndef LdCmd
- # define LdCmd gcc -lautomode
- #endif /* LdCmd */
-
- #define MkdirHierCmd mkdir -p
-
- #ifndef CppCmd
- # define CppCmd cpp
- #endif /* CppCmd */
- #ifndef YaccCmd
- # define YaccCmd bison -y
- #endif /* YaccCmd */
-
- #define LexCmd flex -l
- #define LexLib -lfl
- #define HasFlex YES
- #ifndef CrossCompileDir
- # ifndef HasExpat
- # define HasExpat YES
- # endif
- # ifndef HasFreetype2
- # define HasFreetype2 YES
- # endif
- # ifndef HasFontconfig
- # define HasFontconfig YES
- # endif
- #endif
-
- /* Cygwin-specific Windows resource compiler command */
- #ifdef CrossCompileDir
- # ifndef WindresCmd
- # define WindresCmd Concat3(CrossCompileDir,/,windres)
- # endif
- #else
- # ifndef WindresCmd
- # define WindresCmd windres
- # endif
- #endif
-
- #define PreProcessCmd CcCmd -E
-
- #ifndef PostIncDir
- # ifdef CrossCompileDir
- # define PostIncDir `CrossCompileDir/CcCmd --print-libgcc-file-name | sed 's,\\\\,/,g' | sed 's,libgcc.a,include,'`
- # else
- # define PostIncDir `CcCmd --print-libgcc-file-name | sed 's,\\\\,/,g' | sed 's,libgcc.a,include,'`
- # endif
- #endif
- #ifndef ExtraIncDir
- # ifdef CrossCompileDir
- # define ExtraIncDir CrossCompileDir/../include/w32api
- # else
- # define ExtraIncDir /usr/include/w32api
- # endif
- #endif
-
- #ifndef BourneShell
- /*
- * This will cause builds/installs to terminate on errors, as on other
- * platforms.
- */
- #define BourneShell /bin/sh -e
- #endif
-
- #define LdCombineFlags -r
-
- #ifndef DefaultCCOptions
- # define DefaultCCOptions -Wall -Wpointer-arith
- #endif
-
- /* Cygwin 1.5.x now includes alloca */
- #if OSMinorVersion >= 5
- # define AllocateLocalDefines -DINCLUDE_ALLOCA_H
- #else
- # define AllocateLocalDefines -DNO_ALLOCA
- #endif
-
- #ifndef OptimizedCDebugFlags
- # define OptimizedCDebugFlags -O2 -fno-strength-reduce
- #endif
-
- /*
- * -DFD_SETSIZE=256 is needed for xfs and the xserver. cygwin defines the
- * FD_SETSIZE as 64 but some code expects it to be larger.
- */
- #define StandardDefines -D__i386__ -DWIN32_LEAN_AND_MEAN -DX_LOCALE \
- -D_X86_ -DWIN32 -D_XOPEN_SOURCE \
- -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE \
- -D_SVID_SOURCE -D_GNU_SOURCE -DFD_SETSIZE=1024 \
- -DXResExtension
- #define XawI18nDefines -DHAS_WCHAR_H -DHAS_WCTYPE_H \
- -DHAS_ISW_FUNCS -DNO_WIDEC_H
- #define StandardCppOptions -traditional
-
- /* Cygwin shared memory requires cygipc package or cygserver. */
- #if UseCygIPC
- # if ThreadedX
- # define StandardCppDefines -DHAS_THREADS -DHAS_SHM StandardDefines
- # else
- # define StandardCppDefines -DHAS_SHM StandardDefines
- # endif
- #else
- # if ThreadedX
- # define StandardCppDefines -DHAS_THREADS StandardDefines
- # else
- # define StandardCppDefines StandardDefines
- # endif
- #endif
-
- #define BuildIPv6 NO
- #define BuildLBX NO
-
- /*
- * This requires the pthreads-win32 library
- * It is available from http://www.sourceware.org/pthreads-win32
- */
- #ifndef HasPThreads
- # define HasPThreads YES
- #endif
-
- /* Most libraries do not compile with mingw. Build only the servers. */
- #ifndef BuildServersOnly
- # define BuildServersOnly YES
- #endif
-
- /* Enable those parts that do work and are required for running Xming */
- #ifndef BuildXextLib
- # define BuildXextLib YES
- #endif
- #ifndef BuildXkbcomp
- # define BuildXkbcomp YES
- #endif
-
- /* XWin Server specific build flags */
- #ifndef GlxUseWindows
- # define GlxUseWindows YES
- #endif
- #if !GlxUseWindows
- # define GlxExtraDefines -DAPIENTRY=GLAPIENTRY
- #endif
-
- #ifndef BuildXWinClipboard
- # define BuildXWinClipboard HasPThreads
- #endif
- #ifndef BuildXWinEmulatePseudo
- # define BuildXWinEmulatePseudo NO
- #endif
- #ifndef BuildXWinMultiWindow
- # define BuildXWinMultiWindow HasPThreads
- #endif
- #ifndef BuildXWinMultiWindowExtWM
- # define BuildXWinMultiWindowExtWM HasPThreads
- #endif
- #ifndef BuildXWinNativeGDI
- # define BuildXWinNativeGDI NO
- #endif
- #ifndef BuildXWinPrimaryFB
- # define BuildXWinPrimaryFB NO
- #endif
- #ifndef BuildXWinUpdateStats
- # define BuildXWinUpdateStats NO
- #endif
- #ifndef BuildXWinXF86Config
- # define BuildXWinXF86Config NO
- #endif
-
- /* XWin specific build flags - 1st order dependency */
- #if BuildXWinMultiWindowExtWM && !defined(BuildWindowsWMLibrary)
- # define BuildWindowsWMLibrary YES
- #elif !defined(BuildWindowsWMLibrary)
- # define BuildWindowsWMLibrary NO
- #endif /* BuildXWinMultiWindowExtWM && BuildWindowsWMLibrary */
-
- #if (BuildXWinClipboard || BuildXWinMultiWindow || BuildXWinMultiWindowExtWM) && !defined(BuildX11Lib)
- # define BuildX11Lib YES
- #endif
-
- /* XWin Server specific defines */
- #if BuildXWinClipboard
- # define XWinClipboardDefines -DXWIN_CLIPBOARD
- #else
- # define XWinClipboardDefines
- #endif /* BuildXWinClipboard */
- #if BuildXWinEmulatePseudo
- # define XWinEmulatePseudoDefines -DXWIN_EMULATEPSEUDO
- #else
- # define XWinEmulatePseudoDefines
- #endif /* BuildXWinEmulatePseudo */
- #if BuildXWinMultiWindow
- # define XWinMultiWindowDefines -DXWIN_MULTIWINDOW
- #else
- # define XWinMultiWindowDefines
- #endif /* BuildXWinMultiWindow */
- #if BuildXWinMultiWindowExtWM
- # define BuildRootless YES
- # define XWinMultiWindowExtWMDefines -DXWIN_MULTIWINDOWEXTWM
- #else /* BuildXWinMultiWindowExtWM */
- # define XWinMultiWindowExtWMDefines
- #endif /* BuildXWinMultiWindowExtWM */
- #if BuildXWinNativeGDI
- # define XWinNativeGDIDefines -DXWIN_NATIVEGDI
- #else
- # define XWinNativeGDIDefines
- #endif /* BuildXWinNativeGDI */
- #if BuildXWinPrimaryFB
- # define XWinPrimaryFBDefines -DXWIN_PRIMARYFB
- #else
- # define XWinPrimaryFBDefines
- #endif /* BuildXWinPrimaryFB */
- #if BuildXWinUpdateStats
- # define XWinUpdateStatsDefines -DXWIN_UPDATESTATS
- #else
- # define XWinUpdateStatsDefines
- #endif /* BuildXWinUpdateStats */
- #if BuildXWinXF86Config
- # define XWinXF86ConfigDefines -DXWIN_XF86CONFIG
- #else
- # define XWinXF86ConfigDefines
- #endif /* BuildXWinXF86Config */
-
- #if HasPThreads
- # define XWinPThreadsDefines -DPTW32_DLLPORT=
- #else
- # define XWinPThreadsDefines
- #endif /* HasPThreads */
-
- /*
- * XFree86Server is defined for the w32api headers, which protects some
- * colliding names with #ifdef XFree86Server.
- */
- #define XWinServerDefines -DPIXPRIV \
- -DXFree86Server \
- -DX_BYTE_ORDER=ByteOrder \
- XvExtensionDefines \
- XWinXF86ConfigDefines XWinNativeGDIDefines \
- XWinPrimaryFBDefines \
- XWinEmulatePseudoDefines \
- XWinUpdateStatsDefines \
- XWinClipboardDefines XWinMultiWindowDefines \
- XWinMultiWindowExtWMDefines \
- XWinPThreadsDefines \
- -DDDXBEFORERESET
- #define ServerOSDefines -DDDXTIME -DDDXOSINIT \
- -DDDXOSVERRORF -DDDXOSFATALERROR
- #define XkbServerDefines -DXKB_ALWAYS_USES_SOFT_REPEAT
- #define ServerExtraDefines -DGCCUSESGAS XWinServerDefines \
- AllocateLocalDefines
- #define ConnectionFlags -DTCPCONN
- #define ExtraLibraries
- #define InstUidFlags -m 4711
- #define UseRgbTxt YES
- #define ExtraFilesToClean *.obj *.orig *.rej junk.c *.exe *.dll *.lib *~
-
- /* Flags for which the default in X11.tmpl is not what we want. */
- #ifndef BuildXinerama
- # define BuildXinerama NO /* Not supported by XWin Server */
- #endif
- #ifndef BuildXIE
- # define BuildXIE NO /* Deprecated */
- #endif
- #ifndef BuildDPMS
- # define BuildDPMS NO /* Not supported by XWin Server */
- #endif
- #ifndef BuildXInputExt
- # define BuildXInputExt YES /* Not enabled by default */
- #endif
- #ifndef BuildRandR
- # define BuildRandR YES /* Not supported by XWin Server */
- #endif
- #ifndef BuildXF86BigfontExt
- # define BuildXF86BigfontExt NO
- #endif
- #ifndef BuildGlxExt
- # define BuildGlxExt YES
- #endif
- #ifndef BuildXprintLib
- # define BuildXprintLib NO
- #endif
- #ifndef BuildXprint
- # define BuildXprint NO
- #endif
- #ifndef BuildXterm
- # define BuildXterm NO /* Built separately on Cygwin */
- #endif
- #ifndef BuildXResExt
- # define BuildXResExt YES /* Not enabled by default */
- #endif
- #ifndef BuildFreeType
- # define BuildFreeType YES /* Not enabled by default */
- #endif
- #ifndef BuildXTrueType
- # define BuildXTrueType YES /* Not enabled by default */
- #endif
-
- /* Server build rules */
- #ifndef XnestServer
- # define XnestServer NO
- #endif
- #ifndef XprtServer
- # define XprtServer NO
- #endif
- #ifndef XVirtualFramebufferServer
- # define XVirtualFramebufferServer NO
- #endif
- #ifndef XWinServer
- # define XWinServer YES
- #endif
-
- /*
- * --unix option of Cygwin make fools the standard MakeFlagsToShellFlags macro
- */
- #define MakeFlagsToShellFlags(makeflags,shellcmd) \
- for flag in ${MAKEFLAGS} ''; do \ @@\
- case "$$flag" in *=*) ;;--*) ;; *[makeflags]*) shellcmd;; esac; done
-
- #define MakeNamedTargetSubdir(dir,flags,subname)\
- $(MAKE) -C dir $(MFLAGS) $(PARALLELMFLAGS) flags subname
-
- #ifndef ManSuffix
- # define ManSuffix 1
- #endif
-
- #ifndef XtransFailSoft
- #define XtransFailSoft YES
- #endif
-
- #ifndef HasDevWindows
- # define HasDevWindows NO
- #endif
-
- #ifndef RelocateProjectRoot
- # define RelocateProjectRoot YES
- #endif
-
- #ifndef UseInstalledOnCrossCompile
- # define UseInstalledOnCrossCompile YES
- #endif
-
- #include <mingw.rules>
-
- #if CrossCompiling
- #include <cross.def>
- #endif
-