/*
 * This configuration file contains all of the configuration
 * information for the Xorg based X Servers.
 *
 * Most of these settings can be overridden in a vendor.cf or the
 * BeforeVendor part of the site.def file.
 */

/* Get and set version information. */

#include "xorgversion.def"

#if !defined(XorgVersionString) && \
    defined(XORG_VERSION_MAJOR) && defined(XORG_VERSION_MINOR) && \
    defined(XORG_VERSION_PATCH) && defined(XORG_VERSION_SNAP)
# if XORG_VERSION_SNAP == 0
#  if XORG_VERSION_PATCH == 0
#   define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR | sed 's/ /./g'`
#  else 
#   define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH | sed 's/ /./g'`
#  endif
# else
#  define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH XORG_VERSION_SNAP | sed 's/ /./g'`
# endif
#endif

#if !defined(XORG_DATE) && defined(XF86_DATE)
# define XORG_DATE XF86_DATE
#endif

/*
 * Xorg versions are M.m.P.s, and XorgVersion is:
 *
 *    M * 10000000 + m * 100000 + P * 1000 + s
 *
 */

#ifndef XorgVersion
#  define XorgVersion (((XORG_VERSION_MAJOR) * 10000000) + ((XORG_VERSION_MINOR) * 100000) + ((XORG_VERSION_PATCH) * 1000) + XORG_VERSION_SNAP)
#endif

#ifndef VersionDefines
# define VersionDefines -DXORG_VERSION_CURRENT="$(XORG_VERSION_CURRENT)"
#endif

/* Place the version of the relevant changelog file here */
#ifndef ReleaseVersion
# define ReleaseVersion  RELEASE-1
#endif

XORG_VERSION_CURRENT = XorgVersion
RELEASE_VERSION = ReleaseVersion

#if NXAgentServer
#include "nxconfig.def"
#include "nxcompile.def"
#include "nxversion.def"

#if !defined(nxVersionString) && \
    defined(NX_VERSION_MAJOR) && defined(NX_VERSION_MINOR) && \
    defined(NX_VERSION_MICRO) && defined(NX_VERSION_PATCH)
#if defined(NX_VERSION_CUSTOM)
# define nxVersionString NX_VERSION_CUSTOM (`echo NX_VERSION_MAJOR NX_VERSION_MINOR NX_VERSION_MICRO NX_VERSION_PATCH | sed 's/ /./g'`)
#else
# define nxVersionString `echo NX_VERSION_MAJOR NX_VERSION_MINOR NX_VERSION_MICRO NX_VERSION_PATCH | sed 's/ /./g'`
#endif
#endif

/*
 * NX versions are M.m.µ.p, and NXVersion is:
 *
 *    M * 10000000 + m * 100000 + µ * 1000 + p
 *
 */

#if !defined(nxVersion) && defined(nxVersionString)
#  define nxVersion (((NX_VERSION_MAJOR) * 10000000) + ((NX_VERSION_MINOR) * 100000) + ((NX_VERSION_MICRO) * 1000) + NX_VERSION_PATCH)

NX_VERSION_CURRENT = nxVersion
NX_VERSION_CURRENT_STRING  = nxVersionString

#endif
#endif /* NXAgentServer */

#if !defined(XorgManVersionString) && \
    defined(XORG_VERSION_MAJOR) && defined(XORG_VERSION_MINOR) && \
    defined(XORG_VERSION_PATCH) && defined(XORG_VERSION_SNAP)
# if XORG_VERSION_SNAP == 0
#define XorgManVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
#else
#define XorgManVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH XORG_VERSION_SNAP | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
# endif
#endif

#if !defined(XorgDateString) && defined(XORG_DATE)
# define XorgDateString XORG_DATE
#endif

#if !defined(XFree86DateString) && defined(XorgDateString)
# define XFree86DateString XorgDateString
#endif

#ifndef BuildDateCmd
# define BuildDateCmd	date +%Y%m%d
#endif

#if !defined(BuildDate)
# define BuildDate 	`BuildDateCmd`
#endif

#ifndef ChangelogDateCmd
# define ChangelogDateCmd if tail $(CHANGELOGFILE) 2>/dev/null | \	@@\
	fgrep '$$XdotOrg:' >/dev/null 2>&1; then \			@@\
	  tail $(CHANGELOGFILE) | fgrep '$$XdotOrg:' | \		@@\
	  sed s,'.* \([0-9][0-9]*\)/\([0-9][0-9]*\)/\([0-9][0-9]*\).*,\1\2\3,'; \ @@\
	else echo 0; fi
#endif

#if !defined(ChangelogDate)
# define ChangelogDate	`ChangelogDateCmd`
#endif

#ifndef XVendorString
# define XVendorString	"The X.Org Foundation"
#endif

#ifndef XVendorRelease
# define XVendorRelease	XorgVersion
#endif

#ifndef XVendorManVersionString
#define XVendorManVersionString XorgManVersionString
#endif

#ifndef XVendorManNameString
#define XVendorManNameString X.Org
#endif

/*
 * This enables some settings for developers.
 */

#ifndef XFree86Devel
# if !defined(PatheticCpp) || !PatheticCpp
#  if (XorgVersion % 1000)
#   define XFree86Devel		YES
#  else
#   define XFree86Devel		NO
#  endif
# else
#  define XFree86Devel		NO	/* Assume the worst */
# endif
#endif

#ifndef BuildDebug
# define BuildDebug 		YES
#endif

/*
 * settings for the config file parser
 */

#ifndef XConfigFile
#define XConfigFile		xorg.conf
#endif
#ifndef XConfigDir
#define XConfigDir		$(LIBDIR)
#endif
#ifndef XLogFile
#define XLogFile		Xorg
#endif
#ifndef XServerName
# define XServerName		Xorg
#endif

/*
 * BuildXFree86ConfigTools:
 *
 * Turning this on allows the XFree86 config tools to build when
 * BuildServersOnly is YES.  This requires more than the servonly CVS
 * module.  This cannot be used to disable building the config tools with
 * a full build.
 */
#ifndef BuildXFree86ConfigTools
#ifdef BuildServersOnly
#define BuildXFree86ConfigTools		!BuildServersOnly
#else
#define BuildXFree86ConfigTools		YES
#endif
#endif

#ifndef BuildLibrariesForConfigTools
#define BuildLibrariesForConfigTools	BuildXFree86ConfigTools
#endif

#if BuildXFree86ConfigTools && BuildLibrariesForConfigTools
#define BuildLibraries		YES
#define BuildXKBlib		YES
#endif

/*
 * When this is set, modules are always built separately from the libraries
 * that statically link into an Xserver.  This is for platforms where the
 * module and native object formats are different (e.g., OS/2).
 */
#ifndef BuildModuleInSubdir
#define BuildModuleInSubdir	NO
#endif

/*
 * Default settings for which X Servers to build.
 */

/* OS.cf files may set this for OS-specific input drivers */
#ifndef OSXInputDrivers
#define OSXInputDrivers /**/
#endif

/* This may be set in host.def for 3rd party input drivers */
#ifndef ExtraXInputDrivers
#define ExtraXInputDrivers /**/
#endif

/* XInput drivers */
#ifndef XInputDrivers
#define XInputDrivers		mouse keyboard acecad calcomp citron \
				digitaledge dmc dynapro elographics tek4957 \
				microtouch mutouch penmount spaceorb summa \
				wacom void magellan /* magictouch */ hyperpen \
				jamstudio fpit \
				palmax OSXInputDrivers ExtraXInputDrivers
#endif


/* Deprecated keyboard driver */
#ifndef UseDeprecatedKeyboardDriver
#define UseDeprecatedKeyboardDriver NO
#endif

/* <linux/input.h> support mainly for USB support */
#ifndef HasLinuxInput
# define HasLinuxInput NO
#endif

/*
 * Many architectures share common X Server pieces.  List them here.
 */
#if defined(i386Architecture) || defined(ia64Architecture) || \
    defined(AMD64Architecture) || defined(SparcArchitecture) || \
    defined(Sparc64Architecture) || defined(MipsArchitecture) || \
    defined(AlphaArchitecture) || defined(PpcArchitecture) || \
    defined(Ppc64Architecture) || defined(Ppc64LeArchitecture) || \
    defined(Mc68020Architecture) || defined(Arm32Architecture) || \
    defined(HPArchitecture) || defined(SuperHArchitecture)
# ifndef XorgServer
#  define XorgServer		YES
# endif
/* 1bpp module */
# ifndef XF1Bpp
#  define XF1Bpp		YES
# endif
/* 4bpp module */
# ifndef XF4Bpp
#  define XF4Bpp		YES
# endif
/* 8/32bpp overlay module */
# ifndef XF8_32Bpp
#  define XF8_32Bpp		YES
# endif
/* 8/16bpp dual fb module */
# ifndef XF8_16Bpp
#  define XF8_16Bpp		YES
# endif
/* shadow fb module */
# ifndef XFShadowFB
#  define XFShadowFB		YES
# endif
/* fbdevhw module */
# ifndef XF86FBDevHw
#  define XF86FBDevHw		YES
# endif
/* XAA module */
# ifndef XF86XAA
#  define XF86XAA		YES
# endif
/* Exa module */
# ifndef XF86EXA
#  define XF86EXA		YES
# endif
/* ramdac module */
# ifndef XF86Ramdac
#  define XF86Ramdac		YES
# endif
/* I2C module */
# ifndef XF86I2C
#  define XF86I2C		YES
# endif
/* DDC module */
# ifndef XF86DDC
#  define XF86DDC		YES
# endif
/* RAC (Resource Access Control) module */
# ifndef XF86RAC
#  define XF86RAC		YES
# endif
/* int10 module */
# ifndef XF86Int10
#  define XF86Int10		YES
# endif
/* vbe module */
# ifndef XF86VBE
#  define XF86VBE		YES
# endif
#endif

/*
 * For Mips/Arc platforms, the default is to build all modules which
 * are supported on this platform.
 */
#ifdef ArcArchitecture
# ifndef XorgServer
#  define XorgServer		YES
# endif
#endif

#if BuildDebug
# define DebugDefines -DBUILDDEBUG
#else
# define DebugDefines /**/
#endif

#ifndef XorgServer
# define XorgServer		NO
#endif

/*
 * Fbdev module defines.  They are set to indicate the fb types supported
 * on different architectures.
 */
#ifndef XF86AFB
# define XF86AFB		NO
#endif
#ifndef XF86ILBM
# define XF86ILBM		NO
#endif
#ifndef XF86IPLAN2P2
# define XF86IPLAN2P2		NO
#endif
#ifndef XF86IPLAN2P4
# define XF86IPLAN2P4		NO
#endif
#ifndef XF86IPLAN2P8
# define XF86IPLAN2P8		NO
#endif
#if XF86AFB
AFB_DEFS = -DUSE_AFB
#endif
#if XF86ILBM
ILBM_DEFS = -DUSE_ILBM
#endif
#if XF86IPLAN2P2
IPLAN2P2_DEFS = -DUSE_IPLAN2P2
#endif
#if XF86IPLAN2P4
IPLAN2P4_DEFS = -DUSE_IPLAN2P4
#endif
#if XF86IPLAN2P8
IPLAN2P8_DEFS = -DUSE_IPLAN2P8
#endif
#ifndef FbdevDefines
# define FbdevDefines $(AFB_DEFS) $(ILBM_DEFS) $(IPLAN2P2_DEFS) \
		     $(IPLAN2P4_DEFS) $(IPLAN2P8_DEFS)
#endif

/*
 * Build GLX server interface
 *   --- Doesn't work for 1-bit and 4-bit servers
 */
#ifndef BuildGlxExt
#  define BuildGlxExt	YES
#endif

#if BuildGlxExt

# define GlxCoreLibDefines -DGLX_USE_MESA

# if defined(SparcArchitecture)  \
   || defined (Sparc64Architecture) \
   || defined(ia64Architecture) \
   || defined(s390xArchitecture) \
   || defined(AMD64Architecture)
#  define GlxArchDefines -D__GLX_ALIGN64
# elif defined(AlphaArchitecture)
/* On the Alpha we need to ensure floating point accuracy for 3D */
#   define GlxArchDefines -D__GLX_ALIGN64 -mieee
# elif defined(DarwinArchitecture)
/* GLX contains lots of uninitialized globals, which can upset Darwin */
#   define GlxArchDefines -fno-common
# else
#   define GlxArchDefines /**/
# endif

# ifndef GlxExtraDefines
#   define GlxExtraDefines GlxCoreLibDefines GlxArchDefines
# endif

#endif

# ifndef UseX86Emu
#  define UseX86Emu		YES
# endif

#define X86INT10_STUB   0
#define X86EMU_GENERIC  1
#define X86VM           2
#define X86EMU_OS       3

#ifndef XF86INT10_BUILD
# if UseX86Emu
#  define XF86INT10_BUILD		X86EMU_GENERIC
# else
#  define XF86INT10_BUILD		X86INT10_STUB
# endif
#endif

#ifndef BuildRECORDlib
# define BuildRECORDlib	YES
#endif

#ifndef BuildXKBlib
# define BuildXKBlib	YES
#endif

#ifndef HasXfont2
# define HasXfont2	NO
#endif

#ifndef HasLegacyXfont1
# define HasLegacyXfont1	NO
#endif

#ifndef HasLegacyXextProto
# define HasLegacyXextProto	NO
#endif

#ifndef BuildScreenSaverExt
# define BuildScreenSaverExt	YES
#endif

/*
 * Build XInput support
 */
#ifndef BuildXInputExt
# define BuildXInputExt		YES
#endif

/* Build Xinerama (aka panoramiX) extension */
#ifndef BuildXinerama
# define BuildXinerama		YES
#endif

/* Build Render extension */
#ifndef BuildRender
# define BuildRender		YES
#endif

#if 0
#ifndef JoystickSupport
# define JoystickSupport	NO
#endif
#endif

/*
 * Build the XFree86-Bigfont extension
 */
#ifndef BuildXF86BigfontExt
# define BuildXF86BigfontExt		YES
#endif

/*
 * Build the DPMS extension support
 */
#ifndef BuildDPMSExt
# define BuildDPMSExt			YES
#endif

/*
 * Build the X Video Extension
 */
#ifndef BuildXvExt
# define BuildXvExt			YES
#endif

/*
 * Build the X Video Motion Compensation Extension
 */
#ifndef BuildXvMCExt
# define BuildXvMCExt			YES
#endif

/*
 * Build the X-Resource Extension 
 */
#ifndef BuildXResExt
# define BuildXResExt                   YES
#endif

#if Malloc0ReturnsNull
# ifndef XtMalloc0ReturnsNullDefines
#  define XtMalloc0ReturnsNullDefines	Malloc0ReturnsNullDefines -DXTMALLOC_BC
# endif
#endif

#ifndef HasDlsymBug
# define HasDlsymBug		NO
#endif

#ifndef HasMTRRSupport
# define HasMTRRSupport		NO
#endif

/*
 * Build scanpci?
 */
#ifndef SystemV
#define SystemV			NO
#endif
#ifndef SystemV4
#define SystemV4		NO
#endif
#ifndef BuildScanpci
# if SystemV || SystemV4 || \
    (defined(LinuxArchitecture) && !defined(Mc68020Architecture)) || \
    defined(i386BsdArchitecture) || \
    defined(GNUMachArchitecture) || \
    (defined(KFreeBSDArchitecture) && defined(i386Architecture))
#   define BuildScanpci		YES
# else
#   define BuildScanpci		NO
# endif
#endif

/* Disable stripping installed programs for this release. */
#ifndef StripInstalledPrograms
# define StripInstalledPrograms	NO
#endif

#ifndef InstallJapaneseDocs
#define InstallJapaneseDocs	NO
#endif

#if BuildXvExt
# define XFree86XvDefines	-DXvExtension
#else
# define XFree86XvDefines	/**/
#endif

#if BuildXvMCExt
# define XFree86XvMCDefines	-DXvMCExtension
#else
# define XFree86XvMCDefines	/**/
#endif

#if BuildXResExt
# define XFree86XResDefines     -DXResExtension
#else
# define XFree86XResDefines     /**/
#endif

#ifndef DlopenHack
# define DlopenHack		-DDLOPEN_HACK
#endif

#ifndef ExtraLoaderDefines
#  define ExtraLoaderDefines	/**/
#endif

#ifndef HasBsdMake
#define HasBsdMake		NO
#endif

#ifndef MakeHasPosixVariableSubstitutions
# if !HasBsdMake && !defined(SunArchitecture)
#  define MakeHasPosixVariableSubstitutions	NO
# else
#  define MakeHasPosixVariableSubstitutions	YES
# endif
#endif

/* Server defines required for all OSs */
#ifndef XFree86ServerDefines
# define XFree86ServerDefines	-DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH \
				XFree86XvDefines \
				-DXFree86Server \
				XFree86XvMCDefines \
				DebugDefines XFree86XResDefines \
				-DX_BYTE_ORDER=$(X_BYTE_ORDER) \
				VersionDefines
#endif

#ifndef XFree86ServerOSDefines
# define XFree86ServerOSDefines	-DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \
				-DDDXOSVERRORF -DCLIENTIDS
#endif

#ifndef XFree86ConsoleDefines
# if defined(i386BsdArchitecture) || defined(AlphaBsdArchitecture) || (defined(KFreeBSDArchitecture) && defined(i386Architecture))
#  define XFree86ConsoleDefines	-DPCCONS_SUPPORT -DSYSCONS_SUPPORT -DPCVT_SUPPORT
# elif defined(KFreeBSDArchitecture)
#  define XFree86ConsoleDefines -DSYSCONS_SUPPORT
# else
#  define XFree86ConsoleDefines	/**/
# endif
#endif

/* Support for USB mouse */
#ifndef UsbMouseSupport
# define UsbMouseSupport NO
#endif
/* Does this OS have libusb ? */
#ifndef HasLibUsb
# define HasLibUsb	NO
#endif

#ifndef UseServerLock
# define UseServerLock	YES
#endif

#ifndef ServerExtraDefines
# define ServerExtraDefines	XFree86ServerDefines
#endif

#ifndef ServerOSDefines
# define ServerOSDefines	XFree86ServerOSDefines
#endif

#ifndef DriverSDKDir
# define DriverSDKDir     $(USRLIBDIR)/Server
#endif

#ifndef DriverSDKModuleDir
# define DriverSDKModuleDir     $(USRLIBDIR)/Server/modules
#endif

#ifndef DriverSDKIncludeDir
# define DriverSDKIncludeDir     $(USRLIBDIR)/Server/include
#endif

DRIVERSDKDIR = DriverSDKDir
DRIVERSDKMODULEDIR = DriverSDKModuleDir
DRIVERSDKINCLUDEDIR = DriverSDKIncludeDir

/*
 * Some commonly referred to directories are defined here.
 */

       XF86SRC = $(SERVERSRC)/hw/xfree86
    XF86COMSRC = $(XF86SRC)/common
 XF86PARSERSRC = $(XF86SRC)/parser
     XF86OSSRC = $(XF86SRC)/os-support
 XF86DRIVERSRC = $(XF86SRC)/drivers
     DRIVERSRC = $(XF86DRIVERSRC)

/*
 * Installed location of the XFree86 documentation
 */

        XFREE86DOCDIR = $(DOCDIR)
      XFREE86PSDOCDIR = $(DOCPSDIR)
     XFREE86PDFDOCDIR = $(DOCPDFDIR)
    XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese

/*
 * Other stuff used in the X Server source.
 */

#ifndef OtherIConfigFiles
# define OtherIConfigFiles $(IRULESRC)/xf86.rules
#endif

#ifndef ManSuffix
# define ManSuffix	1
#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 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 -Wpedantic -Wpointer-arith -Wstrict-prototypes \
			  -Wmissing-prototypes -Wmissing-declarations \
			  -Wredundant-decls -Wnested-externs -Wshadow Gcc28Warnings
#  else
#   define GccWarningOptions -Wall -Wpedantic -Wpointer-arith -Wshadow Gcc28Warnings
#  endif
# endif
# ifndef DefaultCCOptions
#  if defined(UseInstalled)
#   define DefaultCCOptions /* -std=c99 */
#  else
#   define DefaultCCOptions -std=c99 GccWarningOptions
#  endif
# endif
# if defined(UseInstalled)
#  ifndef UseGccMakeDepend
#   define UseGccMakeDepend YES
#  endif
# endif
#endif

/* Make imake noisier.  Note that this is ineffective for 3.0 <= GCC <= 3.2 */
#ifndef ImakeWarningFlags
# ifdef Gcc28Warnings
#  define ImakeWarningFlags Gcc28Warnings
# else
#  define ImakeWarningFlags /* */
# endif
#endif

#if  ((GccMajorVersion == 3) &&  (GccMinorVersion >= 1)) || (GccMajorVersion > 3)
# define GccAliasingArgs      -fno-strict-aliasing
#else
# define GccAliasingArgs      /* */
#endif

#if HasGcc2 && defined(i386Architecture)
# ifndef DefaultGcc2i386Opt
#  define DefaultGcc2i386Opt -O2 -fno-strength-reduce GccAliasingArgs
# endif
#endif

#if HasGcc2 && defined(AMD64Architecture)
# ifndef DefaultGcc2AMD64Opt
#  define DefaultGcc2AMD64Opt -O2 -fno-strength-reduce GccAliasingArgs
# endif
#endif

#if HasGcc2 && defined(AlphaArchitecture)
# ifndef DefaultGcc2AxpOpt
#  define DefaultGcc2AxpOpt -O2 GccAliasingArgs
# endif
#endif

#if HasGcc2 && (defined(Ppc64Architecture) || defined(Ppc64LeArchitecture))
# ifndef DefaultGcc2Ppc64Opt
#  define DefaultGcc2Ppc64Opt -O2 GccAliasingArgs
# endif
#endif

#if HasGcc2 && defined(MipsArchitecture)
# ifndef DefaultGcc2MipsOpt
#  define DefaultGcc2MipsOpt -O2 GccAliasingArgs
# endif
#endif

#if HasGcc2 && defined(PpcArchitecture)
# ifndef DefaultGcc2PpcOpt
#  define DefaultGcc2PpcOpt -O2 GccAliasingArgs
# endif
#endif

#ifndef DefaultGcc2DebugOpt
# define DefaultGcc2DebugOpt -g
#endif

#ifndef DebuggableLibraries
# define DebuggableLibraries NO
#endif

#if HasGcc2 && DebuggableLibraries
# define LibraryDebugOpt DefaultGcc2DebugOpt
#endif

/*
 * Some versions of gcc have optimisation bugs that cause problems building
 * some files.  The definitions here cover those.
 */

#ifndef Egcs112Bug
  /* Not exactly precise, but it'll do for now... */
# if HasGcc2 && defined(i386Architecture) && \
     (GccMajorVersion == 2) && (GccMinorVersion > 8)
#  define Egcs112Bug YES
# else
#  define Egcs112Bug NO
# endif
#endif

#ifdef i386Architecture
# ifndef HasX86Support
#  define HasX86Support YES
# endif
# ifndef HasMMXSupport
#  define HasMMXSupport YES
# endif
# ifndef HasSSESupport
#  define HasSSESupport NO
# endif
# ifndef Has3DNowSupport
#  define Has3DNowSupport NO
# endif
#elif defined (AMD64Architecture)
# ifndef HasX86Support
#  define HasX86Support NO
# endif
# ifndef HasMMXSupport
#  define HasMMXSupport NO
# endif
# ifndef HasSSESupport
#  define HasSSESupport NO
# endif
# ifndef Has3DNowSupport
#  define Has3DNowSupport NO
# endif
#else 
# ifndef HasX86Support
#  define HasX86Support NO
# endif
# ifndef HasMMXSupport
#  define HasMMXSupport NO
# endif
# ifndef HasSSESupport
#  define HasSSESupport NO
# endif
# ifndef Has3DNowSupport
#  define Has3DNowSupport NO
# endif
#endif

#ifndef StaticNeedsPicForShared
# if defined (AMD64Architecture)\
  || defined (AlphaArchitecture) \
  || defined (ia64Architecture) \
  || defined (PpcArchitecture) \
  || defined (SparcArchitecture) \
  || defined (s390xArchitecture) 
#  define StaticNeedsPicForShared YES
# else
#  define StaticNeedsPicForShared NO
# endif
#endif

#if (defined(SparcArchitecture) || defined(Sparc64Architecture)) \
    && !defined(LargePositionIndependentCFlags) \
    && defined(HasGcc)
# define LargePositionIndependentCFlags -fPIC
#endif


#ifndef XF8_32Wid
# define XF8_32Wid		NO
#endif

#if CrossCompiling
#include <cross.def>
#endif
#include <xf86.rules>