552 lines
13 KiB
CFEngine3
552 lines
13 KiB
CFEngine3
/* 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
|