111d341caSmrgXCOMM $XFree86: xc/config/cf/xfree86.cf,v 3.466 2004/01/11 18:48:11 dawes Exp $
211d341caSmrg/*
311d341caSmrg * This configuration file contains all of the configuration
411d341caSmrg * information for the XFree86 based X Servers.
511d341caSmrg *
611d341caSmrg * Most of these settings can be overridden in a vendor.cf or the
711d341caSmrg * BeforeVendor part of the site.def file.
811d341caSmrg */
911d341caSmrgXCOMM $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
1011d341caSmrg
1111d341caSmrg
1211d341caSmrg/* Get and set version information. */
1311d341caSmrg
1411d341caSmrg#include "version.def"
1511d341caSmrg#include "date.def"
1611d341caSmrg/*
1711d341caSmrg * As of the development trunk after 4.0.2, XFree86 versions are
1811d341caSmrg * M.m.P.s, and XFree86Version is:
1911d341caSmrg *
2011d341caSmrg *    M * 10000000 + m * 100000 + P * 1000 + s
2111d341caSmrg *
2211d341caSmrg * See xc/programs/Xserver/hw/xfree86/doc/Versions for further details.
2311d341caSmrg *
2411d341caSmrg * From 3.9.15 to 4.0.x, XFree86 release versions are X.Y.Z, and
2511d341caSmrg * XFree86Version is:
2611d341caSmrg *
2711d341caSmrg *    X * 1000 + Y * 100 + Z
2811d341caSmrg *
2911d341caSmrg * For the 3.3.x branch, the versions are X.Y.Z.W, with XFree86Version
3011d341caSmrg * calculated as:
3111d341caSmrg *
3211d341caSmrg *    X * 1000 + Y * 100 + Z * 10 + W
3311d341caSmrg *
3411d341caSmrg */
3511d341caSmrg#ifndef XFree86Version
3611d341caSmrg# ifdef XF86_VERSION_CURRENT
3711d341caSmrg#  define XFree86Version	XF86_VERSION_CURRENT
3811d341caSmrg# else	/* Must be defined for bootstrapping purposes */
3911d341caSmrg#  define XFree86Version	0
4011d341caSmrg# endif
4111d341caSmrg#endif
4211d341caSmrg
4311d341caSmrg#if !defined(XFree86VersionString) && \
4411d341caSmrg    defined(XF86_VERSION_MAJOR) && defined(XF86_VERSION_MINOR) && \
4511d341caSmrg    defined(XF86_VERSION_PATCH) && defined(XF86_VERSION_SNAP)
4611d341caSmrg# if XF86_VERSION_SNAP == 0
4711d341caSmrg#define XFree86VersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH | sed 's/ /./g'`
4811d341caSmrg#else
4911d341caSmrg#define XFree86VersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH XF86_VERSION_SNAP | sed 's/ /./g'`
5011d341caSmrg# endif
5111d341caSmrg#endif
5211d341caSmrg
5311d341caSmrg#if !defined(XFree86ManVersionString) && \
5411d341caSmrg    defined(XF86_VERSION_MAJOR) && defined(XF86_VERSION_MINOR) && \
5511d341caSmrg    defined(XF86_VERSION_PATCH) && defined(XF86_VERSION_SNAP)
5611d341caSmrg# if XF86_VERSION_SNAP == 0
5711d341caSmrg#define XFree86ManVersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
5811d341caSmrg#else
5911d341caSmrg#define XFree86ManVersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH XF86_VERSION_SNAP | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
6011d341caSmrg# endif
6111d341caSmrg#endif
6211d341caSmrg
6311d341caSmrg#if !defined(XFree86DateString) && defined(XF86_DATE)
6411d341caSmrg# define XFree86DateString XF86_DATE
6511d341caSmrg#endif
6611d341caSmrg
6711d341caSmrg#ifndef BuildDateCmd
6811d341caSmrg# define BuildDateCmd	date +%Y%m%d
6911d341caSmrg#endif
7011d341caSmrg
7111d341caSmrg#if !defined(BuildDate)
7211d341caSmrg# define BuildDate 	`BuildDateCmd`
7311d341caSmrg#endif
7411d341caSmrg
7511d341caSmrg#ifndef ChangelogDateCmd
7611d341caSmrg# define ChangelogDateCmd if tail $(CHANGELOGFILE) | \			@@\
7711d341caSmrg	fgrep '$$XFree86:' >/dev/null 2>&1; then \			@@\
7811d341caSmrg	  tail $(CHANGELOGFILE) | fgrep '$$XFree86:' | \		@@\
7911d341caSmrg	  sed s,'.* \([0-9][0-9]*\)/\([0-9][0-9]*\)/\([0-9][0-9]*\).*,\1\2\3,'; \ @@\
8011d341caSmrg	else echo 0; fi
8111d341caSmrg#endif
8211d341caSmrg
8311d341caSmrg#if !defined(ChangelogDate)
8411d341caSmrg# define ChangelogDate	`ChangelogDateCmd`
8511d341caSmrg#endif
8611d341caSmrg
8711d341caSmrg#ifndef XVendorString
8811d341caSmrg# define XVendorString	"The X.Org Foundation, Inc"
8911d341caSmrg#endif
9011d341caSmrg
9111d341caSmrg#ifndef XVendorRelease
9211d341caSmrg# define XVendorRelease	XFree86Version
9311d341caSmrg#endif
9411d341caSmrg
9511d341caSmrg#ifndef XVendorManVersionString
9611d341caSmrg#define XVendorManVersionString XFree86ManVersionString
9711d341caSmrg#endif
9811d341caSmrg
9911d341caSmrg#ifndef XVendorManNameString
10011d341caSmrg#define XVendorManNameString XFree86
10111d341caSmrg#endif
10211d341caSmrg
10311d341caSmrg/*
10411d341caSmrg * This enables some settings for developers.
10511d341caSmrg */
10611d341caSmrg
10711d341caSmrg#ifndef XFree86Devel
10811d341caSmrg# if !defined(PatheticCpp) || !PatheticCpp
10911d341caSmrg#  if (XFree86Version % 1000)
11011d341caSmrg#   define XFree86Devel		YES
11111d341caSmrg#  else
11211d341caSmrg#   define XFree86Devel		NO
11311d341caSmrg#  endif
11411d341caSmrg# else
11511d341caSmrg#  define XFree86Devel		NO	/* Assume the worst */
11611d341caSmrg# endif
11711d341caSmrg#endif
11811d341caSmrg
11911d341caSmrg#ifndef BuildDebug
12011d341caSmrg# define BuildDebug 		YES
12111d341caSmrg#endif
12211d341caSmrg
12311d341caSmrg/*
12411d341caSmrg * settings for the config file parser
12511d341caSmrg */
12611d341caSmrg
12711d341caSmrg#ifndef XConfigFile
12811d341caSmrg#define XConfigFile		XF86Config
12911d341caSmrg#endif
13011d341caSmrg#ifndef XConfigDir
13111d341caSmrg#define XConfigDir		$(LIBDIR)
13211d341caSmrg#endif
13311d341caSmrg#ifndef XLogFile
13411d341caSmrg#define XLogFile		XFree86
13511d341caSmrg#endif
13611d341caSmrg
13711d341caSmrg/*
13811d341caSmrg * BuildXFree86ConfigTools:
13911d341caSmrg *
14011d341caSmrg * Turning this on allows the XFree86 config tools to build when
14111d341caSmrg * BuildServersOnly is YES.  This requires more than the servonly CVS
14211d341caSmrg * module.  This cannot be used to disable building the config tools with
14311d341caSmrg * a full build.
14411d341caSmrg */
14511d341caSmrg#ifndef BuildXFree86ConfigTools
14611d341caSmrg#ifdef BuildServersOnly
14711d341caSmrg#define BuildXFree86ConfigTools		!BuildServersOnly
14811d341caSmrg#else
14911d341caSmrg#define BuildXFree86ConfigTools		YES
15011d341caSmrg#endif
15111d341caSmrg#endif
15211d341caSmrg
15311d341caSmrg#ifndef BuildLibrariesForConfigTools
15411d341caSmrg#define BuildLibrariesForConfigTools	BuildXFree86ConfigTools
15511d341caSmrg#endif
15611d341caSmrg
15711d341caSmrg#if BuildXFree86ConfigTools && BuildLibrariesForConfigTools
15811d341caSmrg#define BuildLibraries		YES
15911d341caSmrg#define BuildXF86MiscLibrary	YES
16011d341caSmrg#define BuildXF86VidModeLibrary	YES
16111d341caSmrg#define BuildXKBlib		YES
16211d341caSmrg#define BuildXKBfilelib		YES
16311d341caSmrg#define BuildXKBuilib		YES
16411d341caSmrg#endif
16511d341caSmrg
16611d341caSmrg/*
16711d341caSmrg * When this is set, modules are always built separately from the libraries
16811d341caSmrg * that statically link into an Xserver.  This is for platforms where the
16911d341caSmrg * module and native object formats are different (e.g., OS/2).
17011d341caSmrg */
17111d341caSmrg#ifndef BuildModuleInSubdir
17211d341caSmrg#define BuildModuleInSubdir	NO
17311d341caSmrg#endif
17411d341caSmrg
17511d341caSmrg#ifndef MakeDllModules
17611d341caSmrg#define MakeDllModules		NO
17711d341caSmrg#endif
17811d341caSmrg#ifndef DoLoadableServer
17911d341caSmrg#define DoLoadableServer	NO
1801c80d5b0Smrg#endif
18111d341caSmrg
18211d341caSmrg/*
18311d341caSmrg * Default settings for which X Servers to build.
18411d341caSmrg */
18511d341caSmrg
18611d341caSmrg/* OS.cf files may set this for OS-specific input drivers */
18711d341caSmrg#ifndef OSXInputDrivers
18811d341caSmrg#define OSXInputDrivers /**/
18911d341caSmrg#endif
19011d341caSmrg
19111d341caSmrg/* This may be set in host.def for 3rd party input drivers */
19211d341caSmrg#ifndef ExtraXInputDrivers
19311d341caSmrg#define ExtraXInputDrivers /**/
19411d341caSmrg#endif
19511d341caSmrg
19611d341caSmrg/* XInput drivers */
19711d341caSmrg#ifndef XInputDrivers
19811d341caSmrg#define XInputDrivers		mouse keyboard acecad calcomp citron \
19911d341caSmrg				digitaledge dmc dynapro elographics tek4957 \
20011d341caSmrg				microtouch mutouch penmount spaceorb summa \
20111d341caSmrg				wacom void magellan /* magictouch */ hyperpen \
20211d341caSmrg				jamstudio fpit \
20311d341caSmrg				palmax OSXInputDrivers ExtraXInputDrivers
20411d341caSmrg#endif
20511d341caSmrg
20611d341caSmrg/* <linux/input.h> support mainly for USB support */
20711d341caSmrg#ifndef HasLinuxInput
20811d341caSmrg# define HasLinuxInput NO
20911d341caSmrg#endif
21011d341caSmrg
21111d341caSmrg/* OS.cf files may set this for OS-specific drivers */
21211d341caSmrg#ifndef XF86OSCardDrivers
21311d341caSmrg#define XF86OSCardDrivers /**/
21411d341caSmrg#endif
21511d341caSmrg
21611d341caSmrg/* This may be set in host.def for 3rd party drivers */
21711d341caSmrg#ifndef XF86ExtraCardDrivers
21811d341caSmrg#define XF86ExtraCardDrivers /**/
21911d341caSmrg#endif
22011d341caSmrg
22111d341caSmrg/* OS.cf files may set this for OS-specific drivers */
22211d341caSmrg#ifndef HasAgpGart
22311d341caSmrg#define HasAgpGart NO
22411d341caSmrg#endif
22511d341caSmrg
22611d341caSmrg/* The glide driver only works for the loadable server at the moment */
22711d341caSmrg#ifndef HasGlide2
22811d341caSmrg#define HasGlide2 NO
22911d341caSmrg#endif
23011d341caSmrg#if HasGlide2 && DoLoadableServer
23111d341caSmrg#define GlideDriver glide
23211d341caSmrg#else
23311d341caSmrg#define GlideDriver /**/
23411d341caSmrg#endif
23511d341caSmrg
23611d341caSmrg/*
23711d341caSmrg * There are three parameters that determine where and how the Matrox HAL
23811d341caSmrg * library is used:
23911d341caSmrg *
24011d341caSmrg *   HaveMatroxHal  -- You have the HALlib.a binary library installed
24111d341caSmrg *                     in xfree86/drivers/mga/HALlib, and you want it to
24211d341caSmrg *                     be used.
24311d341caSmrg *                     Default: NO
24411d341caSmrg *
24511d341caSmrg *   BuildMatroxHal -- You have the source for the HALlib library (installed
24611d341caSmrg *                     in xfree86/drivers/mga/hallib), and want to build and
24711d341caSmrg *                     use it.
24811d341caSmrg *                     Default: NO
24911d341caSmrg *
25011d341caSmrg *   UseMatroxHal   -- You want to build support for loading/using the HAL
25111d341caSmrg *                     library into the mga driver.  For module server builds
25211d341caSmrg *                     you don't need to have the HALlib library to do this.
25311d341caSmrg *                     but you want to build support for loading it and using
25411d341caSmrg *                     it into the mga driver module.
25511d341caSmrg *                     Default: YES for loadable server build
25611d341caSmrg *                              (HaveMatroxHal || BuildMatroxHal) for static
25711d341caSmrg */
25811d341caSmrg
25911d341caSmrg#ifndef HaveMatroxHal
26011d341caSmrg#define HaveMatroxHal NO
26111d341caSmrg#endif
26211d341caSmrg
26311d341caSmrg#ifndef BuildMatroxHal
26411d341caSmrg#define BuildMatroxHal NO
26511d341caSmrg#endif
26611d341caSmrg
26711d341caSmrg#ifndef UseMatroxHal
26811d341caSmrg#if DoLoadableServer
26911d341caSmrg#define UseMatroxHal YES
27011d341caSmrg#else
27111d341caSmrg#define UseMatroxHal (HaveMatroxHal || BuildMatroxHal)
27211d341caSmrg#endif
27311d341caSmrg#endif
27411d341caSmrg
27511d341caSmrg/*
27611d341caSmrg * For Intel platforms, the default is to build all modules which
27711d341caSmrg * are supported on this platform.
27811d341caSmrg */
27911d341caSmrg#if defined(i386Architecture) || defined(ia64Architecture)
28011d341caSmrg# ifndef XF86Server
28111d341caSmrg#  define XF86Server		YES
28211d341caSmrg# endif
28311d341caSmrg/* 1bpp module */
28411d341caSmrg# ifndef XF1Bpp
28511d341caSmrg#  define XF1Bpp		YES
28611d341caSmrg# endif
28711d341caSmrg/* 4bpp module */
28811d341caSmrg# ifndef XF4Bpp
28911d341caSmrg#  define XF4Bpp		YES
29011d341caSmrg# endif
29111d341caSmrg/* 8/32bpp overlay module */
29211d341caSmrg# ifndef XF8_32Bpp
29311d341caSmrg#  define XF8_32Bpp		YES
29411d341caSmrg# endif
29511d341caSmrg/* 8/16bpp dual fb module */
29611d341caSmrg# ifndef XF8_16Bpp
29711d341caSmrg#  define XF8_16Bpp		YES
29811d341caSmrg# endif
29911d341caSmrg/* 24/32bpp conversion module */
30011d341caSmrg# ifndef XF24_32Bpp
30111d341caSmrg#  define XF24_32Bpp		YES
30211d341caSmrg# endif
30311d341caSmrg/* shadow fb module */
30411d341caSmrg# ifndef XFShadowFB
30511d341caSmrg#  define XFShadowFB		YES
30611d341caSmrg# endif
30711d341caSmrg/* vgahw module */
30811d341caSmrg# ifndef XF86VgaHw
30911d341caSmrg#  define XF86VgaHw		YES
31011d341caSmrg# endif
31111d341caSmrg/* fbdevhw module */
31211d341caSmrg# ifndef XF86FBDevHw
31311d341caSmrg#  define XF86FBDevHw		YES
31411d341caSmrg# endif
31511d341caSmrg/* XAA module */
31611d341caSmrg# ifndef XF86XAA
31711d341caSmrg#  define XF86XAA		YES
31811d341caSmrg# endif
31911d341caSmrg/* EXA module */
32011d341caSmrg# ifndef XF86EXA
32111d341caSmrg#  define XF86EXA		YES
32211d341caSmrg# endif
32311d341caSmrg/* ramdac module */
32411d341caSmrg# ifndef XF86Ramdac
32511d341caSmrg#  define XF86Ramdac		YES
32611d341caSmrg# endif
32711d341caSmrg/* I2C module */
32811d341caSmrg# ifndef XF86I2C
32911d341caSmrg#  define XF86I2C		YES
33011d341caSmrg# endif
33111d341caSmrg/* DDC module */
33211d341caSmrg# ifndef XF86DDC
33311d341caSmrg#  define XF86DDC		YES
33411d341caSmrg# endif
33511d341caSmrg/* RAC (Resource Access Control) module */
33611d341caSmrg# ifndef XF86RAC
33711d341caSmrg#  define XF86RAC		YES
33811d341caSmrg# endif
33911d341caSmrg/* int10 module */
34011d341caSmrg# ifndef XF86Int10
34111d341caSmrg#  define XF86Int10		YES
34211d341caSmrg# endif
34311d341caSmrg/* vbe module */
34411d341caSmrg# ifndef XF86VBE
34511d341caSmrg#  define XF86VBE		YES
34611d341caSmrg# endif
34711d341caSmrg
34811d341caSmrg/*
34911d341caSmrg * Amiga framebuffer module.
35011d341caSmrg * This is mostly for build testing, but the vesa driver references it.
35111d341caSmrg */
35211d341caSmrg# ifndef XF86AFB
35311d341caSmrg#  define XF86AFB		YES
35411d341caSmrg# endif
35511d341caSmrg
35611d341caSmrg# define AgpGartDrivers	/**/
35711d341caSmrg
35811d341caSmrg/*
35911d341caSmrg * Drivers under development, but not ready for binary releases, or
36011d341caSmrg * drivers included on this platform only for build testing.
36111d341caSmrg */
36211d341caSmrg# ifndef DevelDrivers
36311d341caSmrg#  if XFree86Devel
36411d341caSmrg#   define DevelDrivers		imstt newport
36511d341caSmrg#  else
36611d341caSmrg#   define DevelDrivers		/**/
36711d341caSmrg#  endif
36811d341caSmrg# endif
36911d341caSmrg
37011d341caSmrg/* Pure PCI drivers should go first */
37111d341caSmrg# ifndef XF86CardDrivers
37211d341caSmrg#  /* Don't build the nsc driver on IA64 */
37311d341caSmrg#  ifndef ia64Architecture
37411d341caSmrg#   define NscDriver		nsc
37511d341caSmrg#  else
37611d341caSmrg#   define NscDriver		/**/
37711d341caSmrg#  endif
37811d341caSmrg#  define XF86CardDrivers	mga glint nv tga s3 s3virge sis rendition \
37911d341caSmrg				neomagic i740 tdfx savage \
38011d341caSmrg				cirrus vmware tseng trident chips apm \
38111d341caSmrg				GlideDriver i128 NscDriver \
38211d341caSmrg				ati i810 AgpGartDrivers DevelDrivers ark \
38311d341caSmrg				cyrix siliconmotion via \
38411d341caSmrg				fbdev vesa vga \
38511d341caSmrg				dummy XF86OSCardDrivers XF86ExtraCardDrivers
38611d341caSmrg# endif
38711d341caSmrg
38811d341caSmrg/*
38911d341caSmrg * DRI drivers under development, or drivers included on this platform
39011d341caSmrg * only for build testing.
39111d341caSmrg */
39211d341caSmrg# ifndef DevelDRIDrivers
39311d341caSmrg#  if XFree86Devel
39411d341caSmrg#   define DevelDRIDrivers	ffb
39511d341caSmrg#  else
39611d341caSmrg#   define DevelDRIDrivers	/**/
39711d341caSmrg#  endif
39811d341caSmrg# endif
39911d341caSmrg
40011d341caSmrg# ifndef DriDrivers
40111d341caSmrg#  define DriDrivers		gamma i810 i830 mga r128 radeon r200 \
40211d341caSmrg				sis tdfx DevelDRIDrivers
40311d341caSmrg# endif
40411d341caSmrg#endif
40511d341caSmrg
40611d341caSmrg#if defined(AMD64Architecture)
40711d341caSmrg# ifndef XF86Server
40811d341caSmrg#  define XF86Server		YES
40911d341caSmrg# endif
41011d341caSmrg/* 1bpp module */
41111d341caSmrg# ifndef XF1Bpp
41211d341caSmrg#  define XF1Bpp		YES
41311d341caSmrg# endif
41411d341caSmrg/* 4bpp module */
41511d341caSmrg# ifndef XF4Bpp
41611d341caSmrg#  define XF4Bpp		YES
41711d341caSmrg# endif
41811d341caSmrg/* 8/32bpp overlay module */
41911d341caSmrg# ifndef XF8_32Bpp
42011d341caSmrg#  define XF8_32Bpp		YES
42111d341caSmrg# endif
42211d341caSmrg/* 8/16bpp dual fb module */
42311d341caSmrg# ifndef XF8_16Bpp
42411d341caSmrg#  define XF8_16Bpp		YES
42511d341caSmrg# endif
42611d341caSmrg/* 24/32bpp conversion module */
42711d341caSmrg# ifndef XF24_32Bpp
42811d341caSmrg#  define XF24_32Bpp		YES
42911d341caSmrg# endif
43011d341caSmrg/* shadow fb module */
43111d341caSmrg# ifndef XFShadowFB
43211d341caSmrg#  define XFShadowFB		YES
43311d341caSmrg# endif
43411d341caSmrg/* vgahw module */
43511d341caSmrg# ifndef XF86VgaHw
43611d341caSmrg#  define XF86VgaHw		YES
43711d341caSmrg# endif
43811d341caSmrg/* fbdevhw module */
43911d341caSmrg# ifndef XF86FBDevHw
44011d341caSmrg#  define XF86FBDevHw		YES
44111d341caSmrg# endif
44211d341caSmrg/* XAA module */
44311d341caSmrg# ifndef XF86XAA
44411d341caSmrg#  define XF86XAA		YES
44511d341caSmrg# endif
44611d341caSmrg/* EXA module */
44711d341caSmrg# ifndef XF86EXA
44811d341caSmrg#  define XF86EXA		YES
44911d341caSmrg# endif
45011d341caSmrg/* ramdac module */
45111d341caSmrg# ifndef XF86Ramdac
45211d341caSmrg#  define XF86Ramdac		YES
45311d341caSmrg# endif
45411d341caSmrg/* I2C module */
45511d341caSmrg# ifndef XF86I2C
45611d341caSmrg#  define XF86I2C		YES
45711d341caSmrg# endif
45811d341caSmrg/* DDC module */
45911d341caSmrg# ifndef XF86DDC
46011d341caSmrg#  define XF86DDC		YES
46111d341caSmrg# endif
46211d341caSmrg/* RAC (Resource Access Control) module */
46311d341caSmrg# ifndef XF86RAC
46411d341caSmrg#  define XF86RAC		YES
46511d341caSmrg# endif
46611d341caSmrg
46711d341caSmrg/* int10 module */
46811d341caSmrg# ifndef XF86Int10
46911d341caSmrg#  define XF86Int10		YES
47011d341caSmrg# endif
47111d341caSmrg/* vbe module */
47211d341caSmrg# ifndef XF86VBE
47311d341caSmrg#  define XF86VBE		YES
47411d341caSmrg# endif
47511d341caSmrg
47611d341caSmrg# define AgpGartDrivers	/**/
47711d341caSmrg
47811d341caSmrg# define DevelDrivers		/**/
47911d341caSmrg
48011d341caSmrg/* Pure PCI drivers should go first */
48111d341caSmrg# ifndef XF86CardDrivers
48211d341caSmrg#  define XF86CardDrivers	mga glint nv tga s3 s3virge sis rendition \
48311d341caSmrg				neomagic tdfx savage cirrus tseng trident \
48411d341caSmrg				chips apm i128 ati ark cyrix siliconmotion \
48511d341caSmrg				vga dummy fbdev vesa
48611d341caSmrg# endif
48711d341caSmrg
48811d341caSmrg/* DRI tdfx driver needs Glide, which is not available for AMD64 */
48911d341caSmrg# define TdfxDriDriver		/**/
49011d341caSmrg
49111d341caSmrg# define DevelDRIDrivers	/**/
49211d341caSmrg
49311d341caSmrg# define DriDrivers		gamma i810 mga r128 radeon r200 \
49411d341caSmrg				TdfxDriDriver DevelDRIDrivers
49511d341caSmrg#endif /*AMD64Arcitecture*/
49611d341caSmrg
49711d341caSmrg/* SPARC and UltraSPARC drivers */
49811d341caSmrg
49911d341caSmrg#if  (defined(SparcArchitecture) || defined(Sparc64Architecture)) && \
50011d341caSmrg    !defined(LynxOSArchitecture) && \
50111d341caSmrg    !defined(NetBSDArchitecture) && \
50211d341caSmrg    !defined(OpenBSDArchitecture)
50311d341caSmrg# ifndef XF86Server
50411d341caSmrg#  define XF86Server		YES
50511d341caSmrg# endif
50611d341caSmrg/* 1bpp module */
50711d341caSmrg# ifndef XF1Bpp
50811d341caSmrg#  define XF1Bpp		YES
50911d341caSmrg# endif
51011d341caSmrg/* 4bpp module */
51111d341caSmrg# ifndef XF4Bpp
51211d341caSmrg#  define XF4Bpp		YES
51311d341caSmrg# endif
51411d341caSmrg/* 8/32wid fb module */
51511d341caSmrg# ifndef XF8_32Wid
51611d341caSmrg#  define XF8_32Wid		YES
51711d341caSmrg# endif
51811d341caSmrg/* 8/32bpp overlay module */
51911d341caSmrg# ifndef XF8_32Bpp
52011d341caSmrg#  define XF8_32Bpp		YES
52111d341caSmrg# endif
52211d341caSmrg/* 8/16bpp dual fb module */
52311d341caSmrg# ifndef XF8_16Bpp
52411d341caSmrg#  define XF8_16Bpp		YES
52511d341caSmrg# endif
52611d341caSmrg/* 24/32bpp conversion module */
52711d341caSmrg# ifndef XF24_32Bpp
52811d341caSmrg#  define XF24_32Bpp		YES
52911d341caSmrg# endif
53011d341caSmrg/* shadow fb module */
53111d341caSmrg# ifndef XFShadowFB
53211d341caSmrg#  define XFShadowFB		YES
53311d341caSmrg# endif
53411d341caSmrg/* vgahw module */
53511d341caSmrg# ifndef XF86VgaHw
53611d341caSmrg#  define XF86VgaHw		YES
53711d341caSmrg# endif
53811d341caSmrg/* fbdevhw module */
53911d341caSmrg# ifndef XF86FBDevHw
54011d341caSmrg#  define XF86FBDevHw		YES
54111d341caSmrg# endif
54211d341caSmrg/* XAA module */
54311d341caSmrg# ifndef XF86XAA
54411d341caSmrg#  define XF86XAA		YES
54511d341caSmrg# endif
54611d341caSmrg/* EXA module */
54711d341caSmrg# ifndef XF86EXA
54811d341caSmrg#  define XF86EXA		YES
54911d341caSmrg# endif
55011d341caSmrg/* ramdac module */
55111d341caSmrg# ifndef XF86Ramdac
55211d341caSmrg#  define XF86Ramdac		YES
55311d341caSmrg# endif
55411d341caSmrg/* I2C module */
55511d341caSmrg# ifndef XF86I2C
55611d341caSmrg#  define XF86I2C		YES
55711d341caSmrg# endif
55811d341caSmrg/* DDC module */
55911d341caSmrg# ifndef XF86DDC
56011d341caSmrg#  define XF86DDC		YES
56111d341caSmrg# endif
56211d341caSmrg/* RAC (Resource Access Control) module */
56311d341caSmrg# ifndef XF86RAC
56411d341caSmrg#  define XF86RAC		YES
56511d341caSmrg# endif
56611d341caSmrg/* int10 module */
56711d341caSmrg# ifndef XF86Int10
56811d341caSmrg#  define XF86Int10		YES
56911d341caSmrg# endif
57011d341caSmrg/* vbe module */
57111d341caSmrg# ifndef XF86VBE
57211d341caSmrg#  define XF86VBE		YES
57311d341caSmrg# endif
57411d341caSmrg
57511d341caSmrg# ifndef DevelDrivers
57611d341caSmrg#  if XFree86Devel
57711d341caSmrg   /*
57811d341caSmrg    * Some of these are compiled just for the fun of it.  Undoubtedly some
57911d341caSmrg    * require changes (or even removal) for things like endianness, etc.  Move
58011d341caSmrg    * those known to work into the main XF86CardDrivers #define.
58111d341caSmrg    */
58211d341caSmrg#   define DevelDrivers		apm ark chips cirrus i128 i740 i810 imstt \
58311d341caSmrg				neomagic newport nv rendition s3virge savage \
58411d341caSmrg				siliconmotion tga trident vmware dummy
58511d341caSmrg#  else
58611d341caSmrg#   define DevelDrivers		/* */
58711d341caSmrg#  endif
58811d341caSmrg# endif
58911d341caSmrg
59011d341caSmrg/* Pure SBUS and PCI drivers should go first */
59111d341caSmrg# ifndef XF86CardDrivers
59211d341caSmrg#  define XF86CardDrivers	sunffb sunleo suncg6 suncg3 suncg14 suntcx \
59311d341caSmrg				sunbw2 glint mga tdfx ati vesa vga fbdev \
59411d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers \
59511d341caSmrg				DevelDrivers
59611d341caSmrg# endif
59711d341caSmrg# ifndef DriDrivers
59811d341caSmrg#  define DriDrivers		ffb
59911d341caSmrg# endif
60011d341caSmrg
60111d341caSmrg#endif
60211d341caSmrg
60311d341caSmrg/* Sparc64 Drivers */
60411d341caSmrg#if defined(OpenBSDArchitecture) && defined(Sparc64Architecture)
60511d341caSmrg# ifndef XF86Server
60611d341caSmrg#  define XF86Server		YES
60711d341caSmrg# endif
60811d341caSmrg/* Amiga framebuffer module */
60911d341caSmrg# ifndef XF86AFB
61011d341caSmrg#  define XF86AFB		NO
61111d341caSmrg# endif
61211d341caSmrg/* 1bpp module */
61311d341caSmrg# ifndef XF1Bpp
61411d341caSmrg#  define XF1Bpp		YES
61511d341caSmrg# endif
61611d341caSmrg/* 4bpp module */
61711d341caSmrg# ifndef XF4Bpp
61811d341caSmrg#  define XF4Bpp		YES
61911d341caSmrg# endif
62011d341caSmrg/* 8/32bpp overlay module */
62111d341caSmrg# ifndef XF8_32Bpp
62211d341caSmrg#  define XF8_32Bpp		YES
62311d341caSmrg# endif
62411d341caSmrg/* 8/16bpp dual fb module */
62511d341caSmrg# ifndef XF8_16Bpp
62611d341caSmrg#  define XF8_16Bpp		YES
62711d341caSmrg# endif
62811d341caSmrg/* 24/32bpp conversion module */
62911d341caSmrg# ifndef XF24_32Bpp
63011d341caSmrg#  define XF24_32Bpp		YES
63111d341caSmrg# endif
63211d341caSmrg/* shadow fb module */
63311d341caSmrg# ifndef XFShadowFB
63411d341caSmrg#  define XFShadowFB		YES
63511d341caSmrg# endif
63611d341caSmrg/* vgahw module */
63711d341caSmrg# ifndef XF86VgaHw
63811d341caSmrg#  define XF86VgaHw		YES
63911d341caSmrg# endif
64011d341caSmrg/* fbdevhw module */
64111d341caSmrg# ifndef XF86FBDevHw
64211d341caSmrg#  define XF86FBDevHw		YES
64311d341caSmrg# endif
64411d341caSmrg/* XAA module */
64511d341caSmrg# ifndef XF86XAA
64611d341caSmrg#  define XF86XAA		YES
64711d341caSmrg# endif
64811d341caSmrg/* EXA module */
64911d341caSmrg# ifndef XF86EXA
65011d341caSmrg#  define XF86EXA		YES
65111d341caSmrg# endif
65211d341caSmrg/* ramdac module */
65311d341caSmrg# ifndef XF86Ramdac
65411d341caSmrg#  define XF86Ramdac		YES
65511d341caSmrg# endif
65611d341caSmrg/* I2C module */
65711d341caSmrg# ifndef XF86I2C
65811d341caSmrg#  define XF86I2C		YES
65911d341caSmrg# endif
66011d341caSmrg/* DDC module */
66111d341caSmrg# ifndef XF86DDC
66211d341caSmrg#  define XF86DDC		YES
66311d341caSmrg# endif
66411d341caSmrg/* RAC (Resource Access Control) module */
66511d341caSmrg# ifndef XF86RAC
66611d341caSmrg#  define XF86RAC		YES
66711d341caSmrg# endif
66811d341caSmrg
66911d341caSmrg/* int10 module */
67011d341caSmrg# ifndef XF86Int10
67111d341caSmrg#  define XF86Int10		YES
67211d341caSmrg# endif
67311d341caSmrg# ifndef UseX86Emu
67411d341caSmrg#  define UseX86Emu		NO
67511d341caSmrg# endif
67611d341caSmrg/* vbe module */
67711d341caSmrg# ifndef XF86VBE
67811d341caSmrg#  define XF86VBE		YES
67911d341caSmrg# endif
68011d341caSmrg
68111d341caSmrg# ifndef DevelDrivers
68211d341caSmrg#  if XFree86Devel
68311d341caSmrg#   define DevelDrivers		/* */
68411d341caSmrg#  else
68511d341caSmrg#   define DevelDrivers		/* */
68611d341caSmrg#  endif
68711d341caSmrg# endif
68811d341caSmrg
68911d341caSmrg/* Pure PCI drivers should go first */
69011d341caSmrg# ifndef XF86CardDrivers
69111d341caSmrg#  define XF86CardDrivers	ati \
69211d341caSmrg				DevelDrivers \
69311d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers
69411d341caSmrg# endif
69511d341caSmrg# define TdfxDriDriver		/**/
69611d341caSmrg# ifndef DriDrivers
69711d341caSmrg#  define DriDrivers		/**/
69811d341caSmrg# endif
69911d341caSmrg#endif
70011d341caSmrg
70111d341caSmrg/* MIPS drivers */
70211d341caSmrg
70311d341caSmrg#ifdef MipsArchitecture
70411d341caSmrg# ifndef XF86Server
70511d341caSmrg#  define XF86Server		YES
70611d341caSmrg# endif
70711d341caSmrg/* 1bpp module */
70811d341caSmrg# ifndef XF1Bpp
70911d341caSmrg#  define XF1Bpp		YES
71011d341caSmrg# endif
71111d341caSmrg/* 4bpp module */
71211d341caSmrg# ifndef XF4Bpp
71311d341caSmrg#  define XF4Bpp		YES
71411d341caSmrg# endif
71511d341caSmrg/* 8/32bpp overlay module */
71611d341caSmrg# ifndef XF8_32Bpp
71711d341caSmrg#  define XF8_32Bpp		YES
71811d341caSmrg# endif
71911d341caSmrg/* 8/16bpp dual fb module */
72011d341caSmrg# ifndef XF8_16Bpp
72111d341caSmrg#  define XF8_16Bpp		YES
72211d341caSmrg# endif
72311d341caSmrg/* 24/32bpp conversion module */
72411d341caSmrg# ifndef XF24_32Bpp
72511d341caSmrg#  define XF24_32Bpp		YES
72611d341caSmrg# endif
72711d341caSmrg/* shadow fb module */
72811d341caSmrg# ifndef XFShadowFB
72911d341caSmrg#  define XFShadowFB		YES
73011d341caSmrg# endif
73111d341caSmrg/* vgahw module */
73211d341caSmrg# ifndef XF86VgaHw
73311d341caSmrg#  define XF86VgaHw		YES
73411d341caSmrg# endif
73511d341caSmrg/* fbdevhw module */
73611d341caSmrg# ifndef XF86FBDevHw
73711d341caSmrg#  define XF86FBDevHw		YES
73811d341caSmrg# endif
73911d341caSmrg/* XAA module */
74011d341caSmrg# ifndef XF86XAA
74111d341caSmrg#  define XF86XAA		YES
74211d341caSmrg# endif
74311d341caSmrg/* Exa module */
74411d341caSmrg# ifndef XF86EXA
74511d341caSmrg#  define XF86EXA		YES
74611d341caSmrg# endif
74711d341caSmrg/* ramdac module */
74811d341caSmrg# ifndef XF86Ramdac
74911d341caSmrg#  define XF86Ramdac		YES
75011d341caSmrg# endif
75111d341caSmrg/* I2C module */
75211d341caSmrg# ifndef XF86I2C
75311d341caSmrg#  define XF86I2C		YES
75411d341caSmrg# endif
75511d341caSmrg/* DDC module */
75611d341caSmrg# ifndef XF86DDC
75711d341caSmrg#  define XF86DDC		YES
75811d341caSmrg# endif
75911d341caSmrg/* RAC (Resource Access Control) module */
76011d341caSmrg# ifndef XF86RAC
76111d341caSmrg#  define XF86RAC		YES
76211d341caSmrg# endif
76311d341caSmrg
76411d341caSmrg/* int10 module */
76511d341caSmrg# ifndef XF86Int10
76611d341caSmrg#  define XF86Int10		YES
76711d341caSmrg# endif
76811d341caSmrg/* vbe module */
76911d341caSmrg# ifndef XF86VBE
77011d341caSmrg#  define XF86VBE		YES
77111d341caSmrg# endif
77211d341caSmrg
77311d341caSmrg# ifndef DevelDrivers
77411d341caSmrg#  if XFree86Devel
77511d341caSmrg#   define DevelDrivers		/* */
77611d341caSmrg#  else
77711d341caSmrg#   define DevelDrivers		/* */
77811d341caSmrg#  endif
77911d341caSmrg# endif
78011d341caSmrg
78111d341caSmrg# ifndef XF86CardDrivers
78211d341caSmrg#  define XF86CardDrivers	mga glint nv s3 s3virge sis savage \
78311d341caSmrg				trident chips tdfx fbdev ati \
78411d341caSmrg				DevelDrivers newport \
78511d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers
78611d341caSmrg# endif
78711d341caSmrg#endif
78811d341caSmrg
78911d341caSmrg/*
79011d341caSmrg * DEC Alpha drivers
79111d341caSmrg */
79211d341caSmrg#ifdef AlphaArchitecture
79311d341caSmrg# ifndef XF86Server
79411d341caSmrg#  define XF86Server		YES
79511d341caSmrg# endif
79611d341caSmrg/* 1bpp module */
79711d341caSmrg# ifndef XF1Bpp
79811d341caSmrg#  define XF1Bpp		YES
79911d341caSmrg# endif
80011d341caSmrg/* 4bpp module */
80111d341caSmrg# ifndef XF4Bpp
80211d341caSmrg#  define XF4Bpp		YES
80311d341caSmrg# endif
80411d341caSmrg/* 8/32bpp overlay module */
80511d341caSmrg# ifndef XF8_32Bpp
80611d341caSmrg#  define XF8_32Bpp		YES
80711d341caSmrg# endif
80811d341caSmrg/* 8/16bpp dual fb module */
80911d341caSmrg# ifndef XF8_16Bpp
81011d341caSmrg#  define XF8_16Bpp		YES
81111d341caSmrg# endif
81211d341caSmrg/* 24/32bpp conversion module */
81311d341caSmrg# ifndef XF24_32Bpp
81411d341caSmrg#  define XF24_32Bpp		YES
81511d341caSmrg# endif
81611d341caSmrg/* shadow fb module */
81711d341caSmrg# ifndef XFShadowFB
81811d341caSmrg#  define XFShadowFB		YES
81911d341caSmrg# endif
82011d341caSmrg/* vgahw module */
82111d341caSmrg# ifndef XF86VgaHw
82211d341caSmrg#  define XF86VgaHw		YES
82311d341caSmrg# endif
82411d341caSmrg/* fbdevhw module */
82511d341caSmrg# ifndef XF86FBDevHw
82611d341caSmrg#  define XF86FBDevHw		YES
82711d341caSmrg# endif
82811d341caSmrg/* XAA module */
82911d341caSmrg# ifndef XF86XAA
83011d341caSmrg#  define XF86XAA		YES
83111d341caSmrg# endif
83211d341caSmrg/* Exa module */
83311d341caSmrg# ifndef XF86EXA
83411d341caSmrg#  define XF86EXA		YES
83511d341caSmrg# endif
83611d341caSmrg/* ramdac module */
83711d341caSmrg# ifndef XF86Ramdac
83811d341caSmrg#  define XF86Ramdac		YES
83911d341caSmrg# endif
84011d341caSmrg/* I2C module */
84111d341caSmrg# ifndef XF86I2C
84211d341caSmrg#  define XF86I2C		YES
84311d341caSmrg# endif
84411d341caSmrg/* DDC module */
84511d341caSmrg# ifndef XF86DDC
84611d341caSmrg#  define XF86DDC		YES
84711d341caSmrg# endif
84811d341caSmrg/* RAC (Resource Access Control) module */
84911d341caSmrg# ifndef XF86RAC
85011d341caSmrg#  define XF86RAC		YES
85111d341caSmrg# endif
85211d341caSmrg/* int10 module */
85311d341caSmrg# ifndef XF86Int10
85411d341caSmrg#  define XF86Int10		YES
85511d341caSmrg# endif
85611d341caSmrg/* vbe module */
85711d341caSmrg# ifndef XF86VBE
85811d341caSmrg#  define XF86VBE		YES
85911d341caSmrg# endif
86011d341caSmrg
86111d341caSmrg# ifndef DevelDrivers
86211d341caSmrg#  if XFree86Devel
86311d341caSmrg#   define DevelDrivers		/* */
86411d341caSmrg#  else
86511d341caSmrg#   define DevelDrivers		/* */
86611d341caSmrg#  endif
86711d341caSmrg# endif
86811d341caSmrg
86911d341caSmrg/* Pure PCI drivers should go first */
87011d341caSmrg# ifndef XF86CardDrivers
87111d341caSmrg#  define XF86CardDrivers	mga tdfx glint s3 s3virge rendition tga ati \
87211d341caSmrg				savage nv cirrus DevelDrivers siliconmotion  \
87311d341caSmrg				vga XF86OSCardDrivers XF86ExtraCardDrivers
87411d341caSmrg# endif
87511d341caSmrg# ifndef DriDrivers
87611d341caSmrg#  define DriDrivers		gamma tdfx mga r128 radeon r200 /*sis*/
87711d341caSmrg# endif
87811d341caSmrg#endif
87911d341caSmrg
88011d341caSmrg/*
88111d341caSmrg * Motorola 68k and PowerPC drivers
88211d341caSmrg */
88311d341caSmrg#if defined(PpcArchitecture) || defined(Mc68020Architecture)
88411d341caSmrg# ifndef XF86Server
88511d341caSmrg#  define XF86Server		YES
88611d341caSmrg# endif
88711d341caSmrg/* Amiga framebuffer module */
88811d341caSmrg# ifndef XF86AFB
88911d341caSmrg#  define XF86AFB		YES
89011d341caSmrg# endif
89111d341caSmrg/* 1bpp module */
89211d341caSmrg# ifndef XF1Bpp
89311d341caSmrg#  define XF1Bpp		YES
89411d341caSmrg# endif
89511d341caSmrg/* 4bpp module */
89611d341caSmrg# ifndef XF4Bpp
89711d341caSmrg#  define XF4Bpp		YES
89811d341caSmrg# endif
89911d341caSmrg/* 8/32bpp overlay module */
90011d341caSmrg# ifndef XF8_32Bpp
90111d341caSmrg#  define XF8_32Bpp		YES
90211d341caSmrg# endif
90311d341caSmrg/* 8/16bpp dual fb module */
90411d341caSmrg# ifndef XF8_16Bpp
90511d341caSmrg#  define XF8_16Bpp		YES
90611d341caSmrg# endif
90711d341caSmrg/* 24/32bpp conversion module */
90811d341caSmrg# ifndef XF24_32Bpp
90911d341caSmrg#  define XF24_32Bpp		YES
91011d341caSmrg# endif
91111d341caSmrg/* shadow fb module */
91211d341caSmrg# ifndef XFShadowFB
91311d341caSmrg#  define XFShadowFB		YES
91411d341caSmrg# endif
91511d341caSmrg/* vgahw module */
91611d341caSmrg# ifndef XF86VgaHw
91711d341caSmrg#  define XF86VgaHw		YES
91811d341caSmrg# endif
91911d341caSmrg/* fbdevhw module */
92011d341caSmrg# ifndef XF86FBDevHw
92111d341caSmrg#  define XF86FBDevHw		YES
92211d341caSmrg# endif
92311d341caSmrg/* XAA module */
92411d341caSmrg# ifndef XF86XAA
92511d341caSmrg#  define XF86XAA		YES
92611d341caSmrg# endif
92711d341caSmrg/* Exa module */
92811d341caSmrg# ifndef XF86EXA
92911d341caSmrg#  define XF86EXA		YES
93011d341caSmrg# endif
93111d341caSmrg/* ramdac module */
93211d341caSmrg# ifndef XF86Ramdac
93311d341caSmrg#  define XF86Ramdac		YES
93411d341caSmrg# endif
93511d341caSmrg/* I2C module */
93611d341caSmrg# ifndef XF86I2C
93711d341caSmrg#  define XF86I2C		YES
93811d341caSmrg# endif
93911d341caSmrg/* DDC module */
94011d341caSmrg# ifndef XF86DDC
94111d341caSmrg#  define XF86DDC		YES
94211d341caSmrg# endif
94311d341caSmrg/* RAC (Resource Access Control) module */
94411d341caSmrg# ifndef XF86RAC
94511d341caSmrg#  define XF86RAC		YES
94611d341caSmrg# endif
94711d341caSmrg/* int10 module */
94811d341caSmrg# ifndef XF86Int10
94911d341caSmrg#  define XF86Int10		YES
95011d341caSmrg# endif
95111d341caSmrg/* vbe module */
95211d341caSmrg# ifndef XF86VBE
95311d341caSmrg#  define XF86VBE		YES
95411d341caSmrg# endif
95511d341caSmrg
95611d341caSmrg# ifndef DevelDrivers
95711d341caSmrg#  if XFree86Devel
95811d341caSmrg#   define DevelDrivers		imstt
95911d341caSmrg#  else
96011d341caSmrg#   define DevelDrivers		/* */
96111d341caSmrg#  endif
96211d341caSmrg# endif
96311d341caSmrg
96411d341caSmrg/* Pure PCI drivers should go first */
96511d341caSmrg# ifndef XF86CardDrivers
96611d341caSmrg#  define XF86CardDrivers	ati mga glint nv s3 s3virge sis savage\
96711d341caSmrg				trident chips tdfx fbdev \
96811d341caSmrg				DevelDrivers vga \
96911d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers
97011d341caSmrg# endif
97111d341caSmrg# ifndef DriDrivers
97211d341caSmrg#  define DriDrivers		gamma tdfx mga r128 radeon r200
97311d341caSmrg# endif
97411d341caSmrg#endif
97511d341caSmrg
97611d341caSmrg/*
97711d341caSmrg * Intel StrongARM and Hewlett-Packard PA-RISC
97811d341caSmrg */
97911d341caSmrg#if defined(Arm32Architecture) || defined(HPArchitecture)
98011d341caSmrg# ifndef XF86Server
98111d341caSmrg#  define XF86Server		YES
98211d341caSmrg# endif
98311d341caSmrg/* 1bpp module */
98411d341caSmrg# ifndef XF1Bpp
98511d341caSmrg#  define XF1Bpp		YES
98611d341caSmrg# endif
98711d341caSmrg/* 4bpp module */
98811d341caSmrg# ifndef XF4Bpp
98911d341caSmrg#  define XF4Bpp		YES
99011d341caSmrg# endif
99111d341caSmrg/* 8/32bpp overlay module */
99211d341caSmrg# ifndef XF8_32Bpp
99311d341caSmrg#  define XF8_32Bpp		YES
99411d341caSmrg# endif
99511d341caSmrg/* 8/16bpp dual fb module */
99611d341caSmrg# ifndef XF8_16Bpp
99711d341caSmrg#  define XF8_16Bpp		YES
99811d341caSmrg# endif
99911d341caSmrg/* 24/32bpp conversion module */
100011d341caSmrg# ifndef XF24_32Bpp
100111d341caSmrg#  define XF24_32Bpp		YES
100211d341caSmrg# endif
100311d341caSmrg/* shadow fb module */
100411d341caSmrg# ifndef XFShadowFB
100511d341caSmrg#  define XFShadowFB		YES
100611d341caSmrg# endif
100711d341caSmrg/* vgahw module */
100811d341caSmrg# ifndef XF86VgaHw
100911d341caSmrg#  define XF86VgaHw		YES
101011d341caSmrg# endif
101111d341caSmrg/* fbdevhw module */
101211d341caSmrg# ifndef XF86FBDevHw
101311d341caSmrg#  define XF86FBDevHw		YES
101411d341caSmrg# endif
101511d341caSmrg/* XAA module */
101611d341caSmrg# ifndef XF86XAA
101711d341caSmrg#  define XF86XAA		YES
101811d341caSmrg# endif
101911d341caSmrg/* Exa module */
102011d341caSmrg# ifndef XF86EXA
102111d341caSmrg#  define XF86EXA		YES
102211d341caSmrg# endif
102311d341caSmrg/* ramdac module */
102411d341caSmrg# ifndef XF86Ramdac
102511d341caSmrg#  define XF86Ramdac		YES
102611d341caSmrg# endif
102711d341caSmrg/* I2C module */
102811d341caSmrg# ifndef XF86I2C
102911d341caSmrg#  define XF86I2C		YES
103011d341caSmrg# endif
103111d341caSmrg/* DDC module */
103211d341caSmrg# ifndef XF86DDC
103311d341caSmrg#  define XF86DDC		YES
103411d341caSmrg# endif
103511d341caSmrg/* RAC (Resource Access Control) module */
103611d341caSmrg# ifndef XF86RAC
103711d341caSmrg#  define XF86RAC		YES
103811d341caSmrg# endif
103911d341caSmrg/* int10 module */
104011d341caSmrg# ifndef XF86Int10
104111d341caSmrg#  define XF86Int10		YES
104211d341caSmrg# endif
104311d341caSmrg/* vbe module */
104411d341caSmrg# ifndef XF86VBE
104511d341caSmrg#  define XF86VBE		YES
104611d341caSmrg# endif
104711d341caSmrg
104811d341caSmrg# ifndef DevelDrivers
104911d341caSmrg#  if XFree86Devel
105011d341caSmrg#   define DevelDrivers		/* */
105111d341caSmrg#  else
105211d341caSmrg#   define DevelDrivers		/* */
105311d341caSmrg#  endif
105411d341caSmrg# endif
105511d341caSmrg
105611d341caSmrg/* Pure PCI drivers should go first */
105711d341caSmrg# ifndef XF86CardDrivers
105811d341caSmrg#  define XF86CardDrivers	ati mga glint nv s3 s3virge sis savage\
105911d341caSmrg				trident chips tdfx fbdev \
106011d341caSmrg				DevelDrivers vga \
106111d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers
106211d341caSmrg# endif
106311d341caSmrg# if HasGlide3
106411d341caSmrg#  define TdfxDriDriver		tdfx
106511d341caSmrg# else
106611d341caSmrg#  define TdfxDriDriver		/**/
106711d341caSmrg# endif
106811d341caSmrg# ifndef DriDrivers
106911d341caSmrg#  define DriDrivers		gamma tdfx mga r128 radeon r200
107011d341caSmrg# endif
107111d341caSmrg#endif
107211d341caSmrg
107311d341caSmrg/* SuperH drivers */
107411d341caSmrg
107511d341caSmrg#if defined(SuperHArchitecture)
107611d341caSmrg# ifndef XF86Server
107711d341caSmrg#  define XF86Server		YES
107811d341caSmrg# endif
107911d341caSmrg/* 1bpp module */
108011d341caSmrg# ifndef XF1Bpp
108111d341caSmrg#  define XF1Bpp		YES
108211d341caSmrg# endif
108311d341caSmrg/* 4bpp module */
108411d341caSmrg# ifndef XF4Bpp
108511d341caSmrg#  define XF4Bpp		YES
108611d341caSmrg# endif
108711d341caSmrg/* 8/32bpp overlay module */
108811d341caSmrg# ifndef XF8_32Bpp
108911d341caSmrg#  define XF8_32Bpp		YES
109011d341caSmrg# endif
109111d341caSmrg/* 8/16bpp dual fb module */
109211d341caSmrg# ifndef XF8_16Bpp
109311d341caSmrg#  define XF8_16Bpp		YES
109411d341caSmrg# endif
109511d341caSmrg/* 24/32bpp conversion module */
109611d341caSmrg# ifndef XF24_32Bpp
109711d341caSmrg#  define XF24_32Bpp		YES
109811d341caSmrg# endif
109911d341caSmrg/* shadow fb module */
110011d341caSmrg# ifndef XFShadowFB
110111d341caSmrg#  define XFShadowFB		YES
110211d341caSmrg# endif
110311d341caSmrg/* fbdevhw module */
110411d341caSmrg# ifndef XF86FBDevHw
110511d341caSmrg#  define XF86FBDevHw		YES
110611d341caSmrg# endif
110711d341caSmrg/* XAA module */
110811d341caSmrg# ifndef XF86XAA
110911d341caSmrg#  define XF86XAA		YES
111011d341caSmrg# endif
111111d341caSmrg/* Exa module */
111211d341caSmrg# ifndef XF86EXA
111311d341caSmrg#  define XF86EXA		YES
111411d341caSmrg# endif
111511d341caSmrg/* ramdac module */
111611d341caSmrg# ifndef XF86Ramdac
111711d341caSmrg#  define XF86Ramdac		YES
111811d341caSmrg# endif
111911d341caSmrg/* I2C module */
112011d341caSmrg# ifndef XF86I2C
112111d341caSmrg#  define XF86I2C		YES
112211d341caSmrg# endif
112311d341caSmrg/* DDC module */
112411d341caSmrg# ifndef XF86DDC
112511d341caSmrg#  define XF86DDC		YES
112611d341caSmrg# endif
112711d341caSmrg/* RAC (Resource Access Control) module */
112811d341caSmrg# ifndef XF86RAC
112911d341caSmrg#  define XF86RAC		YES
113011d341caSmrg# endif
113111d341caSmrg/* int10 module */
113211d341caSmrg# ifndef XF86Int10
113311d341caSmrg#  define XF86Int10		YES
113411d341caSmrg# endif
113511d341caSmrg/* vbe module */
113611d341caSmrg# ifndef XF86VBE
113711d341caSmrg#  define XF86VBE		YES
113811d341caSmrg# endif
113911d341caSmrg
114011d341caSmrg# ifndef XF86CardDrivers
114111d341caSmrg#  define XF86CardDrivers		fbdev XF86OSCardDrivers XF86ExtraCardDrivers
114211d341caSmrg# endif
114311d341caSmrg#endif
114411d341caSmrg
114511d341caSmrg/*
114611d341caSmrg * For PowerPC 64bit systems
114711d341caSmrg * only libraries are strictly needed
114811d341caSmrg */
114911d341caSmrg#if defined(Ppc64Architecture)
115011d341caSmrg# ifndef XF86Server
115111d341caSmrg#  define XF86Server		YES
115211d341caSmrg# endif
115311d341caSmrg/* Amiga framebuffer module */
115411d341caSmrg# ifndef XF86AFB
115511d341caSmrg#  define XF86AFB		NO
115611d341caSmrg# endif
115711d341caSmrg/* 1bpp module */
115811d341caSmrg# ifndef XF1Bpp
115911d341caSmrg#  define XF1Bpp		NO
116011d341caSmrg# endif
116111d341caSmrg/* 4bpp module */
116211d341caSmrg# ifndef XF4Bpp
116311d341caSmrg#  define XF4Bpp		NO
116411d341caSmrg# endif
116511d341caSmrg/* 8/32bpp overlay module */
116611d341caSmrg# ifndef XF8_32Bpp
116711d341caSmrg#  define XF8_32Bpp		YES
116811d341caSmrg# endif
116911d341caSmrg/* 8/16bpp dual fb module */
117011d341caSmrg# ifndef XF8_16Bpp
117111d341caSmrg#  define XF8_16Bpp		YES
117211d341caSmrg# endif
117311d341caSmrg/* 24/32bpp conversion module */
117411d341caSmrg# ifndef XF24_32Bpp
117511d341caSmrg#  define XF24_32Bpp		YES
117611d341caSmrg# endif
117711d341caSmrg/* shadow fb module */
117811d341caSmrg# ifndef XFShadowFB
117911d341caSmrg#  define XFShadowFB		YES
118011d341caSmrg# endif
118111d341caSmrg/* vgahw module */
118211d341caSmrg# ifndef XF86VgaHw
118311d341caSmrg#  define XF86VgaHw		NO
118411d341caSmrg# endif
118511d341caSmrg/* fbdevhw module */
118611d341caSmrg# ifndef XF86FBDevHw
118711d341caSmrg#  define XF86FBDevHw		YES
118811d341caSmrg# endif
118911d341caSmrg/* XAA module */
119011d341caSmrg# ifndef XF86XAA
119111d341caSmrg#  define XF86XAA		YES
119211d341caSmrg# endif
119311d341caSmrg/* Exa module */
119411d341caSmrg# ifndef XF86EXA
119511d341caSmrg#  define XF86EXA		YES
119611d341caSmrg# endif
119711d341caSmrg/* ramdac module */
119811d341caSmrg# ifndef XF86Ramdac
119911d341caSmrg#  define XF86Ramdac		YES
120011d341caSmrg# endif
120111d341caSmrg/* I2C module */
120211d341caSmrg# ifndef XF86I2C
120311d341caSmrg#  define XF86I2C		YES
120411d341caSmrg# endif
120511d341caSmrg/* DDC module */
120611d341caSmrg# ifndef XF86DDC
120711d341caSmrg#  define XF86DDC		YES
120811d341caSmrg# endif
120911d341caSmrg/* RAC (Resource Access Control) module */
121011d341caSmrg# ifndef XF86RAC
121111d341caSmrg#  define XF86RAC		YES
121211d341caSmrg# endif
121311d341caSmrg
121411d341caSmrg/* int10 module */
121511d341caSmrg# ifndef XF86Int10
121611d341caSmrg#  define XF86Int10		YES
121711d341caSmrg# endif
121811d341caSmrg
121911d341caSmrg# ifndef DevelDrivers
122011d341caSmrg#  if XFree86Devel
12211c80d5b0Smrg#   define DevelDrivers
122211d341caSmrg#  else
122311d341caSmrg#   define DevelDrivers		/* */
122411d341caSmrg#  endif
122511d341caSmrg# endif
122611d341caSmrg
122711d341caSmrg/* Pure PCI drivers should go first */
122811d341caSmrg# ifndef XF86CardDrivers
122911d341caSmrg#  define XF86CardDrivers	ati mga \
123011d341caSmrg				DevelDrivers \
123111d341caSmrg				XF86OSCardDrivers XF86ExtraCardDrivers
123211d341caSmrg# endif
123311d341caSmrg# if HasGlide3
12341c80d5b0Smrg#  define TdfxDriDriver
123511d341caSmrg# else
123611d341caSmrg#  define TdfxDriDriver		/**/
123711d341caSmrg# endif
123811d341caSmrg# ifndef DriDrivers
123911d341caSmrg#  define DriDrivers		gamma r128
124011d341caSmrg# endif
124111d341caSmrg#endif
124211d341caSmrg
124311d341caSmrg/*
124411d341caSmrg * For Mips/Arc platforms, the default is to build all modules which
124511d341caSmrg * are supported on this platform.
124611d341caSmrg */
124711d341caSmrg#ifdef ArcArchitecture
124811d341caSmrg# ifndef XF86Server
124911d341caSmrg#  define XF86Server		YES
125011d341caSmrg# endif
125111d341caSmrg#endif
125211d341caSmrg
125311d341caSmrg#if BuildDebug
125411d341caSmrg# define DebugDefines -DBUILDDEBUG
125511d341caSmrg#else
125611d341caSmrg# define DebugDefines /**/
125711d341caSmrg#endif
125811d341caSmrg
125911d341caSmrg#ifndef XF86Server
126011d341caSmrg# define XF86Server		NO
126111d341caSmrg#endif
126211d341caSmrg#if !XF86Server
126311d341caSmrg# undef DoLoadableServer
126411d341caSmrg# define DoLoadableServer	NO
126511d341caSmrg#endif
126611d341caSmrg
126711d341caSmrg/*
126811d341caSmrg * Fbdev module defines.  They are set to indicate the fb types supported
126911d341caSmrg * on different architectures.
127011d341caSmrg */
127111d341caSmrg#ifndef XF86AFB
127211d341caSmrg# define XF86AFB		NO
127311d341caSmrg#endif
127411d341caSmrg#ifndef XF86ILBM
127511d341caSmrg# define XF86ILBM		NO
127611d341caSmrg#endif
127711d341caSmrg#ifndef XF86IPLAN2P2
127811d341caSmrg# define XF86IPLAN2P2		NO
127911d341caSmrg#endif
128011d341caSmrg#ifndef XF86IPLAN2P4
128111d341caSmrg# define XF86IPLAN2P4		NO
128211d341caSmrg#endif
128311d341caSmrg#ifndef XF86IPLAN2P8
128411d341caSmrg# define XF86IPLAN2P8		NO
128511d341caSmrg#endif
128611d341caSmrg#if XF86AFB
128711d341caSmrgAFB_DEFS = -DUSE_AFB
128811d341caSmrg#endif
128911d341caSmrg#if XF86ILBM
129011d341caSmrgILBM_DEFS = -DUSE_ILBM
129111d341caSmrg#endif
129211d341caSmrg#if XF86IPLAN2P2
129311d341caSmrgIPLAN2P2_DEFS = -DUSE_IPLAN2P2
129411d341caSmrg#endif
129511d341caSmrg#if XF86IPLAN2P4
129611d341caSmrgIPLAN2P4_DEFS = -DUSE_IPLAN2P4
129711d341caSmrg#endif
129811d341caSmrg#if XF86IPLAN2P8
129911d341caSmrgIPLAN2P8_DEFS = -DUSE_IPLAN2P8
130011d341caSmrg#endif
130111d341caSmrg#ifndef FbdevDefines
130211d341caSmrg# define FbdevDefines $(AFB_DEFS) $(ILBM_DEFS) $(IPLAN2P2_DEFS) \
130311d341caSmrg		     $(IPLAN2P4_DEFS) $(IPLAN2P8_DEFS)
130411d341caSmrg#endif
130511d341caSmrg
130611d341caSmrg/*
130711d341caSmrg * The default is to install the X servers setuid-root on most OSs.
130811d341caSmrg * It the servers are only started by xdm, they should not be setuid-root.
130911d341caSmrg */
131011d341caSmrg#if !defined(i386MachArchitecture) && !defined(OS2Architecture)
131111d341caSmrg# ifndef InstallXserverSetUID
131211d341caSmrg#  define InstallXserverSetUID	YES
131311d341caSmrg# endif
131411d341caSmrg#endif
131511d341caSmrg
131611d341caSmrg/*
131711d341caSmrg * Build GLX server interface
131811d341caSmrg *   --- Doesn't work for 1-bit and 4-bit servers
131911d341caSmrg */
132011d341caSmrg#ifndef BuildGlxExt
132111d341caSmrg#  define BuildGlxExt	YES
132211d341caSmrg#endif
132311d341caSmrg
132411d341caSmrg#ifndef BuildXF86DRI
132511d341caSmrg#define BuildXF86DRI	NO
132611d341caSmrg#endif
132711d341caSmrg
132811d341caSmrg#ifndef GlxUseSGISI
132911d341caSmrg#define GlxUseSGISI	NO
133011d341caSmrg#endif
133111d341caSmrg
133211d341caSmrg#if BuildXF86DRI
133311d341caSmrg
133411d341caSmrg#ifndef BuildGLXLibrary
133511d341caSmrg#  if defined (BuildServersOnly) && BuildServersOnly
133611d341caSmrg#    define BuildGLXLibrary	NO
133711d341caSmrg#  else
133811d341caSmrg#    define BuildGLXLibrary	YES
133911d341caSmrg#  endif
134011d341caSmrg#endif
134111d341caSmrg
134211d341caSmrg/*
134311d341caSmrg * One and ONLY one of the GlxBuiltIn* drivers can be defined to be YES.
134411d341caSmrg * If more than one are defined, the compilation will fail with multiply
134511d341caSmrg * defined references of GLX and OpenGL functions.
134611d341caSmrg */
134711d341caSmrg
134811d341caSmrg/*
134911d341caSmrg * The first is a built-in driver that does software rendering client-side
135011d341caSmrg * and renders to the X server via Xlib.
135111d341caSmrg */
135211d341caSmrg
135311d341caSmrg#  ifndef GlxBuiltInXMesa
135411d341caSmrg#    define GlxBuiltInXMesa         NO
135511d341caSmrg#  endif
135611d341caSmrg
135711d341caSmrg/*
135811d341caSmrg * The rest are hardware-specific DRI drivers.
135911d341caSmrg */
136011d341caSmrg#  ifndef GlxBuiltInGamma
136111d341caSmrg#    define GlxBuiltInGamma        NO
136211d341caSmrg#  endif
136311d341caSmrg#  ifndef GlxBuiltInTdfx
136411d341caSmrg#    define GlxBuiltInTdfx         NO
136511d341caSmrg#  endif
136611d341caSmrg#  ifndef GlxBuiltInMga
136711d341caSmrg#    define GlxBuiltInMga          NO
136811d341caSmrg#  endif
136911d341caSmrg#  ifndef GlxBuiltInI810
137011d341caSmrg#    define GlxBuiltInI810         NO
137111d341caSmrg#  endif
137211d341caSmrg#  ifndef GlxBuiltInI830
137311d341caSmrg#    define GlxBuiltInI830         NO
137411d341caSmrg#  endif
137511d341caSmrg#  ifndef GlxBuiltInR128
137611d341caSmrg#    define GlxBuiltInR128         NO
137711d341caSmrg#  endif
137811d341caSmrg#  ifndef GlxBuiltInRadeon
137911d341caSmrg#    define GlxBuiltInRadeon       NO
138011d341caSmrg#  endif
138111d341caSmrg#  ifndef GlxBuiltInR200
138211d341caSmrg#    define GlxBuiltInR200         NO
138311d341caSmrg#  endif
138411d341caSmrg#  ifndef GlxBuiltInFfb
138511d341caSmrg#    define GlxBuiltInFfb          NO
138611d341caSmrg#  endif
138711d341caSmrg#  ifndef GlxBuiltInSIS
138811d341caSmrg#    define GlxBuiltInSIS          NO
138911d341caSmrg#  endif
139011d341caSmrg
139111d341caSmrg#  if GlxBuiltInTdfx || \
139211d341caSmrg      GlxBuiltInMga || \
139311d341caSmrg      GlxBuiltInI810 || \
139411d341caSmrg      GlxBuiltInI830 || \
139511d341caSmrg      GlxBuiltInR128 || \
139611d341caSmrg      GlxBuiltInRadeon || \
139711d341caSmrg      GlxBuiltInR200 || \
139811d341caSmrg      GlxBuiltInFfb || \
139911d341caSmrg      GlxBuiltInSIS
140011d341caSmrg#    define GlxDriverUsesMesa      YES
140111d341caSmrg#  else
140211d341caSmrg#    define GlxDriverUsesMesa      NO
140311d341caSmrg#  endif
140411d341caSmrg
140511d341caSmrg#  if GlxBuiltInGamma || \
140611d341caSmrg      GlxBuiltInTdfx || \
140711d341caSmrg      GlxBuiltInMga || \
140811d341caSmrg      GlxBuiltInI810 || \
140911d341caSmrg      GlxBuiltInI830 || \
141011d341caSmrg      GlxBuiltInR128 || \
141111d341caSmrg      GlxBuiltInRadeon || \
141211d341caSmrg      GlxBuiltInR200 || \
141311d341caSmrg      GlxBuiltInFfb || \
141411d341caSmrg      GlxBuiltInSIS
141511d341caSmrg#    define GlxUseBuiltInDRIDriver YES
141611d341caSmrg#    define DRIDynLoadDefines /**/
141711d341caSmrg#  else
141811d341caSmrg#    define GlxUseBuiltInDRIDriver NO
141911d341caSmrg#    define DRIDynLoadDefines -DGLX_USE_DLOPEN
142011d341caSmrg#  endif
142111d341caSmrg
142211d341caSmrg#  if GlxUseBuiltInDRIDriver
142311d341caSmrg#    undef DriDrivers
142411d341caSmrg#    if GlxBuiltInGamma
142511d341caSmrg#      define DriDrivers gamma
142611d341caSmrg#    endif
142711d341caSmrg#    if GlxBuiltInTdfx
142811d341caSmrg#      define DriDrivers tdfx
142911d341caSmrg#    endif
143011d341caSmrg#    if GlxBuiltInMga
143111d341caSmrg#      define DriDrivers mga
143211d341caSmrg#    endif
143311d341caSmrg#    if GlxBuiltInI810
143411d341caSmrg#      define DriDrivers i810
143511d341caSmrg#    endif
143611d341caSmrg#    if GlxBuiltInI830
143711d341caSmrg#      define DriDrivers i830
143811d341caSmrg#    endif
143911d341caSmrg#    if GlxBuiltInR128
144011d341caSmrg#      define DriDrivers r128
144111d341caSmrg#    endif
144211d341caSmrg#    if GlxBuiltInRadeon
144311d341caSmrg#      define DriDrivers radeon
144411d341caSmrg#    endif
144511d341caSmrg#    if GlxBuiltInR200
144611d341caSmrg#      define DriDrivers r200
144711d341caSmrg#    endif
144811d341caSmrg#    if GlxBuiltInSIS
144911d341caSmrg#      define DriDrivers sis
145011d341caSmrg#    endif
145111d341caSmrg#    if GlxBuiltInFfb
145211d341caSmrg#      define DriDrivers ffb
145311d341caSmrg#    endif
145411d341caSmrg#  endif
145511d341caSmrg
145611d341caSmrg#endif
145711d341caSmrg
145811d341caSmrg/*
145911d341caSmrg * This enables building DRI support into video drivers, which can be done
146011d341caSmrg * even on platforms that don't have functional DRI support.
146111d341caSmrg *
146211d341caSmrg * Defining BuildXF86DRIDriverSupport to YES will not work until we have a
146311d341caSmrg * separate set of defines set up for building driver-only support for the
146411d341caSmrg * DRI.
146511d341caSmrg */
146611d341caSmrg#ifndef BuildXF86DRIDriverSupport
146711d341caSmrg# define BuildXF86DRIDriverSupport NO
146811d341caSmrg#endif
146911d341caSmrg
147011d341caSmrg#if BuildGlxExt
147111d341caSmrg
147211d341caSmrg#  if BuildXF86DRI
147311d341caSmrg#    define DRIDefines -DXF86DRI -DGLX_DIRECT_RENDERING DRIDynLoadDefines
147411d341caSmrg#  else
147511d341caSmrg#    define DRIDefines /**/
147611d341caSmrg#  endif
147711d341caSmrg#  if defined(GlxUseSGISI) && GlxUseSGISI
147811d341caSmrg#    define GlxCoreLibDefines -DGLX_USE_SGI_SI
147911d341caSmrg#  else
148011d341caSmrg#    define GlxCoreLibDefines -DGLX_USE_MESA
148111d341caSmrg#  endif
148211d341caSmrg
148311d341caSmrg#  if defined(SparcArchitecture)  \
148411d341caSmrg   || defined (Sparc64Architecture) \
148511d341caSmrg   || defined(ia64Architecture) \
148611d341caSmrg   || defined(s390xArchitecture) \
148711d341caSmrg   || defined(AMD64Architecture)
148811d341caSmrg#    define GlxArchDefines -D__GLX_ALIGN64
148911d341caSmrg#  elif defined(AlphaArchitecture)
149011d341caSmrg/* On the Alpha we need to ensure floating point accuracy for 3D */
149111d341caSmrg#    define GlxArchDefines -D__GLX_ALIGN64 -mieee
149211d341caSmrg#  elif defined(DarwinArchitecture)
149311d341caSmrg/* GLX contains lots of uninitialized globals, which can upset Darwin */
149411d341caSmrg#    define GlxArchDefines -fno-common
149511d341caSmrg#  else
149611d341caSmrg#    define GlxArchDefines /**/
149711d341caSmrg#  endif
149811d341caSmrg
149911d341caSmrg#  ifndef GlxExtraDefines
150011d341caSmrg#    define GlxExtraDefines DRIDefines GlxCoreLibDefines GlxArchDefines
150111d341caSmrg#  endif
150211d341caSmrg
150311d341caSmrg#else
150411d341caSmrg
150511d341caSmrg/* If we are not building GLX, then make sure the DRI is not built */
150611d341caSmrg#  undef  BuildXF86DRI
150711d341caSmrg#  define BuildXF86DRI   NO
150811d341caSmrg#  undef  BuildXF86DRIDriverSupport
150911d341caSmrg#  define BuildXF86DRIDriverSupport NO
151011d341caSmrg
151111d341caSmrg#endif
151211d341caSmrg
151311d341caSmrg#if !BuildXF86DRI
151411d341caSmrg# define GlxUseBuiltInDRIDriver NO	/* For libOSmesa */
151511d341caSmrg#endif
151611d341caSmrg
151711d341caSmrg# ifndef UseX86Emu
151811d341caSmrg#  define UseX86Emu		YES
151911d341caSmrg# endif
152011d341caSmrg
152111d341caSmrg#define X86INT10_STUB   0
152211d341caSmrg#define X86EMU_GENERIC  1
152311d341caSmrg#define X86VM           2
152411d341caSmrg#define X86EMU_OS       3
152511d341caSmrg
152611d341caSmrg#ifndef XF86INT10_BUILD
152711d341caSmrg# if UseX86Emu
152811d341caSmrg#  define XF86INT10_BUILD		X86EMU_GENERIC
152911d341caSmrg# else
153011d341caSmrg#  define XF86INT10_BUILD		X86INT10_STUB
153111d341caSmrg# endif
153211d341caSmrg#endif
153311d341caSmrg/*
153411d341caSmrg * Build the Rush extension library (non standard extension for cooperation
153511d341caSmrg * between glide library and X server). Enabled by default only for Linux.
153611d341caSmrg */
153711d341caSmrg#ifndef BuildXF86RushExt
153811d341caSmrg# define BuildXF86RushExt	NO
153911d341caSmrg#endif
154011d341caSmrg
154111d341caSmrg#ifndef BuildDBElib
154211d341caSmrg# define BuildDBElib	YES
154311d341caSmrg#endif
154411d341caSmrg
154511d341caSmrg#ifndef BuildRECORDlib
154611d341caSmrg# define BuildRECORDlib	YES
154711d341caSmrg#endif
154811d341caSmrg
154911d341caSmrg#ifndef BuildXKBlib
155011d341caSmrg# define BuildXKBlib	YES
155111d341caSmrg#endif
155211d341caSmrg
155311d341caSmrg#ifndef BuildScreenSaverExt
155411d341caSmrg# define BuildScreenSaverExt	YES
155511d341caSmrg#endif
155611d341caSmrg
155711d341caSmrg/*
155811d341caSmrg * Build XInput support
155911d341caSmrg */
156011d341caSmrg#ifndef BuildXInputExt
156111d341caSmrg# define BuildXInputExt		YES
156211d341caSmrg#endif
156311d341caSmrg
156411d341caSmrg/* Build Xinerama (aka panoramiX) extension */
156511d341caSmrg#ifndef BuildXinerama
156611d341caSmrg# define BuildXinerama		YES
156711d341caSmrg#endif
156811d341caSmrg
156911d341caSmrg/* Build Render extension */
157011d341caSmrg#ifndef BuildRender
157111d341caSmrg# define BuildRender		YES
157211d341caSmrg#endif
157311d341caSmrg
157411d341caSmrg#if 0
157511d341caSmrg#ifndef JoystickSupport
157611d341caSmrg# define JoystickSupport	NO
157711d341caSmrg#endif
157811d341caSmrg#endif
157911d341caSmrg
158011d341caSmrg#if 0
158111d341caSmrg/*
158211d341caSmrg * Build the extra extension libs even when not including the extra extensions
158311d341caSmrg * in the servers
158411d341caSmrg */
158511d341caSmrg#ifndef BuildScreenSaverLibrary
158611d341caSmrg# define BuildScreenSaverLibrary   YES
158711d341caSmrg#endif
158811d341caSmrg#ifndef BuildXF86MiscLibrary
158911d341caSmrg# define BuildXF86MiscLibrary	YES
159011d341caSmrg#endif
159111d341caSmrg#ifndef BuildXF86DGALibrary
159211d341caSmrg# define BuildXF86DGALibrary	YES
159311d341caSmrg#endif
159411d341caSmrg#ifndef BuildXF86VidModeLibrary
159511d341caSmrg# define BuildXF86VidModeLibrary YES
159611d341caSmrg#endif
159711d341caSmrg#ifndef BuildXvLibrary
159811d341caSmrg# define BuildXvLibrary		YES
159911d341caSmrg#endif
160011d341caSmrg#ifndef BuildXvMCLibrary
160111d341caSmrg# define BuildXvMCLibrary	YES
160211d341caSmrg#endif
160311d341caSmrg#ifndef BuildGLXLibrary
160411d341caSmrg# define BuildGLXLibrary	YES
160511d341caSmrg#endif
160611d341caSmrg#ifndef BuildXResLibrary
160711d341caSmrg# define BuildXResLibrary       YES
160811d341caSmrg#endif
160911d341caSmrg#endif
161011d341caSmrg
161111d341caSmrg/*
161211d341caSmrg * Build the XFree86-VidMode extension
161311d341caSmrg */
161411d341caSmrg#ifndef BuildXF86VidModeExt
161511d341caSmrg# define BuildXF86VidModeExt		YES
161611d341caSmrg#endif
161711d341caSmrg
161811d341caSmrg/* Don't build this now because the interface hasn't been done yet */
161911d341caSmrg/*
162011d341caSmrg * Build the XFree86-Misc extension
162111d341caSmrg */
162211d341caSmrg#ifndef BuildXF86MiscExt
162311d341caSmrg# define BuildXF86MiscExt		YES
162411d341caSmrg#endif
162511d341caSmrg
162611d341caSmrg/*
162711d341caSmrg * Build the XFree86-Bigfont extension
162811d341caSmrg */
162911d341caSmrg#ifndef BuildXF86BigfontExt
163011d341caSmrg# define BuildXF86BigfontExt		YES
163111d341caSmrg#endif
163211d341caSmrg
163311d341caSmrg/*
163411d341caSmrg * Build the XFree86 DGA support
163511d341caSmrg */
163611d341caSmrg#ifndef BuildXF86DGA
163711d341caSmrg# define BuildXF86DGA			YES
163811d341caSmrg#endif
163911d341caSmrg
164011d341caSmrg/*
164111d341caSmrg * Build the DPMS extension support
164211d341caSmrg */
164311d341caSmrg#ifndef BuildDPMSExt
164411d341caSmrg# define BuildDPMSExt			YES
164511d341caSmrg#endif
164611d341caSmrg
164711d341caSmrg/*
164811d341caSmrg * Build the X Video Extension
164911d341caSmrg */
165011d341caSmrg#ifndef BuildXvExt
165111d341caSmrg# define BuildXvExt			YES
165211d341caSmrg#endif
165311d341caSmrg
165411d341caSmrg/*
165511d341caSmrg * Build the X Video Motion Compensation Extension
165611d341caSmrg */
165711d341caSmrg#ifndef BuildXvMCExt
165811d341caSmrg# define BuildXvMCExt			YES
165911d341caSmrg#endif
166011d341caSmrg
166111d341caSmrg/*
16621c80d5b0Smrg * Build the X-Resource Extension
166311d341caSmrg */
166411d341caSmrg#ifndef BuildXResExt
166511d341caSmrg# define BuildXResExt                   YES
166611d341caSmrg#endif
166711d341caSmrg
166811d341caSmrg#if Malloc0ReturnsNull
166911d341caSmrg# ifndef XtMalloc0ReturnsNullDefines
167011d341caSmrg#  define XtMalloc0ReturnsNullDefines	Malloc0ReturnsNullDefines -DXTMALLOC_BC
167111d341caSmrg# endif
167211d341caSmrg#endif
167311d341caSmrg
167411d341caSmrg#ifndef UseInternalMalloc
167511d341caSmrg# define UseInternalMalloc	NO
167611d341caSmrg#endif
167711d341caSmrg
167811d341caSmrg#ifndef HasDlsymBug
167911d341caSmrg# define HasDlsymBug		NO
168011d341caSmrg#endif
168111d341caSmrg
168211d341caSmrg#ifndef HasMTRRSupport
168311d341caSmrg# define HasMTRRSupport		NO
168411d341caSmrg#endif
168511d341caSmrg
168611d341caSmrg/*
168711d341caSmrg * Build the font server
168811d341caSmrg */
168911d341caSmrg#ifndef BuildFontServer
169011d341caSmrg# define BuildFontServer	YES
169111d341caSmrg#endif
169211d341caSmrg
169311d341caSmrg/*
169411d341caSmrg * Include fonts support
169511d341caSmrg */
169611d341caSmrg#ifndef BuildSpeedo
169711d341caSmrg# define BuildSpeedo		NO
169811d341caSmrg#endif
169911d341caSmrg
170011d341caSmrg#ifndef BuildType1
170111d341caSmrg# define BuildType1		NO
170211d341caSmrg#endif
170311d341caSmrg
170411d341caSmrg#ifndef BuildCID
170511d341caSmrg# define BuildCID		YES
170611d341caSmrg#endif
170711d341caSmrg
170811d341caSmrg#ifndef BuildFreeType
170911d341caSmrg# define BuildFreeType		YES
171011d341caSmrg#endif
171111d341caSmrg
171211d341caSmrg/*
171311d341caSmrg * By default, build all of the fonts.
171411d341caSmrg */
171511d341caSmrg#ifndef Build75DpiFonts
171611d341caSmrg# define Build75DpiFonts	YES
171711d341caSmrg#endif
171811d341caSmrg#ifndef Build100DpiFonts
171911d341caSmrg# define Build100DpiFonts	YES
172011d341caSmrg#endif
172111d341caSmrg#ifndef BuildSpeedoFonts
172211d341caSmrg# define BuildSpeedoFonts	NO
172311d341caSmrg#endif
172411d341caSmrg#ifndef BuildType1Fonts
172511d341caSmrg# define BuildType1Fonts	YES
172611d341caSmrg#endif
172711d341caSmrg#ifndef BuildCIDFonts
172811d341caSmrg# define BuildCIDFonts		YES
172911d341caSmrg#endif
173011d341caSmrg#ifndef BuildTrueTypeFonts
173111d341caSmrg# define BuildTrueTypeFonts	YES
173211d341caSmrg#endif
173311d341caSmrg#ifndef BuildCyrillicFonts
173411d341caSmrg# define BuildCyrillicFonts	YES
173511d341caSmrg#endif
173611d341caSmrg
173711d341caSmrg/*
173811d341caSmrg * Build scanpci?
173911d341caSmrg */
174011d341caSmrg#ifndef SystemV
174111d341caSmrg#define SystemV			NO
174211d341caSmrg#endif
174311d341caSmrg#ifndef SystemV4
174411d341caSmrg#define SystemV4		NO
174511d341caSmrg#endif
174611d341caSmrg#ifndef BuildScanpci
174711d341caSmrg# if SystemV || SystemV4 || \
174811d341caSmrg    (defined(LinuxArchitecture) && !defined(Mc68020Architecture)) || \
174911d341caSmrg    defined(i386BsdArchitecture) || defined(LynxOSArchitecture) || \
175011d341caSmrg    defined(OS2Architecture) || defined(GNUMachArchitecture) || \
175111d341caSmrg    (defined(KFreeBSDArchitecture) && defined(i386Architecture))
175211d341caSmrg#   define BuildScanpci		YES
175311d341caSmrg# else
175411d341caSmrg#   define BuildScanpci		NO
175511d341caSmrg# endif
175611d341caSmrg#endif
175711d341caSmrg
175811d341caSmrg#ifndef CompressAllFonts
175911d341caSmrg# define CompressAllFonts	YES
176011d341caSmrg#endif
176111d341caSmrg
176211d341caSmrg#ifndef GzipFontCompression
176311d341caSmrg# define GzipFontCompression	YES
176411d341caSmrg#endif
176511d341caSmrg
176611d341caSmrg/* Disable stripping installed programs for this release. */
176711d341caSmrg#ifndef StripInstalledPrograms
176811d341caSmrg# define StripInstalledPrograms	NO
176911d341caSmrg#endif
177011d341caSmrg
177111d341caSmrg#ifndef InstallJapaneseDocs
177211d341caSmrg#define InstallJapaneseDocs	NO
177311d341caSmrg#endif
177411d341caSmrg
177511d341caSmrg#if BuildXF86DGA
177611d341caSmrg# define XFree86DGADefines	-DXFreeXDGA
177711d341caSmrg#else
177811d341caSmrg# define XFree86DGADefines	/**/
177911d341caSmrg#endif
178011d341caSmrg
178111d341caSmrg#if BuildXvExt
178211d341caSmrg# define XFree86XvDefines	-DXvExtension
178311d341caSmrg#else
178411d341caSmrg# define XFree86XvDefines	/**/
178511d341caSmrg#endif
178611d341caSmrg
178711d341caSmrg#if BuildXvMCExt
178811d341caSmrg# define XFree86XvMCDefines	-DXvMCExtension
178911d341caSmrg#else
179011d341caSmrg# define XFree86XvMCDefines	/**/
179111d341caSmrg#endif
179211d341caSmrg
179311d341caSmrg#if BuildXResExt
179411d341caSmrg# define XFree86XResDefines     -DXResExtension
179511d341caSmrg#else
179611d341caSmrg# define XFree86XResDefines     /**/
179711d341caSmrg#endif
179811d341caSmrg
179911d341caSmrg#ifndef DlopenHack
180011d341caSmrg# define DlopenHack		-DDLOPEN_HACK
180111d341caSmrg#endif
180211d341caSmrg
180311d341caSmrg#ifndef ExtraLoaderDefines
180411d341caSmrg# if MakeDllModules
180511d341caSmrg#  define ExtraLoaderDefines	DlopenHack
180611d341caSmrg# else
180711d341caSmrg#  define ExtraLoaderDefines	/**/
180811d341caSmrg# endif
180911d341caSmrg#endif
181011d341caSmrg
181111d341caSmrg#if DoLoadableServer
181211d341caSmrg# define XFree86LoaderDefines	-DXFree86LOADER ExtraLoaderDefines
181311d341caSmrg#else
181411d341caSmrg# define XFree86LoaderDefines	/**/
181511d341caSmrg#endif
181611d341caSmrg
181711d341caSmrg#ifndef HasBsdMake
181811d341caSmrg#define HasBsdMake		NO
181911d341caSmrg#endif
182011d341caSmrg
182111d341caSmrg#ifndef MakeHasPosixVariableSubstitutions
182211d341caSmrg# if !HasBsdMake && !defined(SunArchitecture)
182311d341caSmrg#  define MakeHasPosixVariableSubstitutions	NO
182411d341caSmrg# else
182511d341caSmrg#  define MakeHasPosixVariableSubstitutions	YES
182611d341caSmrg# endif
182711d341caSmrg#endif
182811d341caSmrg
182911d341caSmrg#ifndef UseSmartScheduler
183011d341caSmrg#define UseSmartScheduler YES
183111d341caSmrg#endif
183211d341caSmrg
183311d341caSmrg#if UseSmartScheduler
183411d341caSmrg#define SmartScheduleDefines -DSMART_SCHEDULE
183511d341caSmrg#else
183611d341caSmrg#define SmartScheduleDefines /**/
183711d341caSmrg#endif
183811d341caSmrg
183911d341caSmrg/* Server defines required for all OSs */
184011d341caSmrg#ifndef XFree86ServerDefines
184111d341caSmrg# define XFree86ServerDefines	-DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH \
184211d341caSmrg				XFree86DGADefines XFree86XvDefines \
184311d341caSmrg				XFree86LoaderDefines -DXFree86Server \
184411d341caSmrg				VidModeExtensionDefines \
184511d341caSmrg				XFree86XvMCDefines \
184611d341caSmrg				SmartScheduleDefines \
184711d341caSmrg				DebugDefines XFree86XResDefines \
184811d341caSmrg				-DX_BYTE_ORDER=$(X_BYTE_ORDER)
184911d341caSmrg#endif
185011d341caSmrg
185111d341caSmrg#ifndef XFree86ServerOSDefines
185211d341caSmrg# define XFree86ServerOSDefines	-DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \
185311d341caSmrg				-DDDXOSVERRORF
185411d341caSmrg#endif
185511d341caSmrg
185611d341caSmrg#ifndef XFree86ConsoleDefines
185711d341caSmrg# if defined(i386BsdArchitecture) || defined(AlphaBsdArchitecture) || (defined(KFreeBSDArchitecture) && defined(i386Architecture))
185811d341caSmrg#  define XFree86ConsoleDefines	-DPCCONS_SUPPORT -DSYSCONS_SUPPORT -DPCVT_SUPPORT
185911d341caSmrg# elif defined(KFreeBSDArchitecture)
186011d341caSmrg#  define XFree86ConsoleDefines -DSYSCONS_SUPPORT
186111d341caSmrg# else
186211d341caSmrg#  define XFree86ConsoleDefines	/**/
186311d341caSmrg# endif
186411d341caSmrg#endif
186511d341caSmrg
186611d341caSmrg/* Support for USB mouse */
186711d341caSmrg#ifndef UsbMouseSupport
186811d341caSmrg# define UsbMouseSupport NO
186911d341caSmrg#endif
187011d341caSmrg/* Does this OS have libusb ? */
187111d341caSmrg#ifndef HasLibUsb
187211d341caSmrg# define HasLibUsb	NO
187311d341caSmrg#endif
187411d341caSmrg
187511d341caSmrg#ifndef UseServerLock
187611d341caSmrg# define UseServerLock	YES
187711d341caSmrg#endif
187811d341caSmrg
187911d341caSmrg#ifndef XnestServer
188011d341caSmrg# define XnestServer		YES
188111d341caSmrg#endif
188211d341caSmrg#ifndef XVirtualFramebufferServer
188311d341caSmrg# define XVirtualFramebufferServer	YES
188411d341caSmrg#endif
188511d341caSmrg#ifndef XprtServer
188611d341caSmrg# define XprtServer			YES
188711d341caSmrg#endif
188811d341caSmrg
188911d341caSmrg#ifndef ServerExtraDefines
189011d341caSmrg# define ServerExtraDefines	XFree86ServerDefines
189111d341caSmrg#endif
189211d341caSmrg
189311d341caSmrg#ifndef ServerOSDefines
189411d341caSmrg# define ServerOSDefines	XFree86ServerOSDefines
189511d341caSmrg#endif
189611d341caSmrg
189711d341caSmrg#ifndef DriverSDKDir
189811d341caSmrg# define DriverSDKDir     $(USRLIBDIR)/Server
189911d341caSmrg#endif
190011d341caSmrg
190111d341caSmrg#ifndef DriverSDKModuleDir
190211d341caSmrg# define DriverSDKModuleDir     $(USRLIBDIR)/Server/modules
190311d341caSmrg#endif
190411d341caSmrg
190511d341caSmrg#ifndef DriverSDKIncludeDir
190611d341caSmrg# define DriverSDKIncludeDir     $(USRLIBDIR)/Server/include
190711d341caSmrg#endif
190811d341caSmrg
190911d341caSmrgDRIVERSDKDIR = DriverSDKDir
191011d341caSmrgDRIVERSDKMODULEDIR = DriverSDKModuleDir
191111d341caSmrgDRIVERSDKINCLUDEDIR = DriverSDKIncludeDir
191211d341caSmrg
191311d341caSmrg/*
1914944bff83Smrg * Some commonly referred to directories are defined here.
191511d341caSmrg */
191611d341caSmrg
191711d341caSmrg       XF86SRC = $(SERVERSRC)/hw/xfree86
191811d341caSmrg    XF86COMSRC = $(XF86SRC)/common
191911d341caSmrg XF86PARSERSRC = $(XF86SRC)/parser
192011d341caSmrg     XF86OSSRC = $(XF86SRC)/os-support
192111d341caSmrg XF86DRIVERSRC = $(XF86SRC)/drivers
192211d341caSmrg     DRIVERSRC = $(XF86DRIVERSRC)
192311d341caSmrg
192411d341caSmrg/*
192511d341caSmrg * Installed location of the XFree86 documentation
192611d341caSmrg */
192711d341caSmrg
192811d341caSmrg        XFREE86DOCDIR = $(DOCDIR)
192911d341caSmrg      XFREE86PSDOCDIR = $(DOCPSDIR)
193011d341caSmrg     XFREE86PDFDOCDIR = $(DOCPDFDIR)
193111d341caSmrg    XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
193211d341caSmrgXFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
193311d341caSmrg
193411d341caSmrg/*
193511d341caSmrg * Other stuff used in the X Server source.
193611d341caSmrg */
193711d341caSmrg
193811d341caSmrg#ifndef OtherIConfigFiles
193911d341caSmrg# define OtherIConfigFiles $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules
194011d341caSmrg#endif
194111d341caSmrg
194211d341caSmrg#ifndef UseRgbTxt
194311d341caSmrg# define UseRgbTxt	YES
194411d341caSmrg#endif
194511d341caSmrg
194611d341caSmrg#ifndef ManSuffix
194711d341caSmrg# define ManSuffix	1
194811d341caSmrg#endif
194911d341caSmrg
195011d341caSmrg/*
195111d341caSmrg * GNU Compiler stuff
195211d341caSmrg */
195311d341caSmrg#ifndef HasGcc3
195411d341caSmrg# define HasGcc3 NO
195511d341caSmrg#endif
195611d341caSmrg#ifndef HasGcc2
195711d341caSmrg# define HasGcc2 HasGcc3
195811d341caSmrg#endif
195911d341caSmrg#ifndef HasGcc
196011d341caSmrg# define HasGcc HasGcc2
196111d341caSmrg#endif
196211d341caSmrg#ifndef HasGcc2ForCplusplus
196311d341caSmrg# define HasGcc2ForCplusplus HasGcc2
196411d341caSmrg#endif
196511d341caSmrg
196611d341caSmrg#if HasGcc
196711d341caSmrg# ifndef Gcc28Warnings
196811d341caSmrg#  if (GccMajorVersion > 2) || \
196911d341caSmrg      ((GccMajorVersion == 2) && (GccMinorVersion >= 8))
197011d341caSmrg#   define Gcc28Warnings -Wundef
197111d341caSmrg#  else
197211d341caSmrg#   define Gcc28Warnings /* */
197311d341caSmrg#  endif
197411d341caSmrg# endif
197511d341caSmrg# ifndef GccWarningOptions
197611d341caSmrg#  if XFree86Devel
197711d341caSmrg#   define GccWarningOptions -Wall -Wpointer-arith -Wstrict-prototypes \
197811d341caSmrg			  -Wmissing-prototypes -Wmissing-declarations \
197911d341caSmrg			  -Wredundant-decls -Wnested-externs Gcc28Warnings
198011d341caSmrg#  else
198111d341caSmrg#   define GccWarningOptions -Wall -Wpointer-arith Gcc28Warnings
198211d341caSmrg#  endif
198311d341caSmrg# endif
198411d341caSmrg# ifndef DefaultCCOptions
198511d341caSmrg#  if defined(UseInstalled)
198611d341caSmrg#   define DefaultCCOptions /* -ansi */
198711d341caSmrg#  else
198811d341caSmrg#   define DefaultCCOptions -ansi GccWarningOptions
198911d341caSmrg#  endif
199011d341caSmrg# endif
199111d341caSmrg# if defined(UseInstalled)
199211d341caSmrg#  ifndef UseGccMakeDepend
199311d341caSmrg#   define UseGccMakeDepend YES
199411d341caSmrg#  endif
199511d341caSmrg# endif
199611d341caSmrg#endif
199711d341caSmrg
199811d341caSmrg/* Make imake noisier.  Note that this is ineffective for 3.0 <= GCC <= 3.2 */
199911d341caSmrg#ifndef ImakeWarningFlags
200011d341caSmrg# ifdef Gcc28Warnings
200111d341caSmrg#  define ImakeWarningFlags Gcc28Warnings
200211d341caSmrg# else
200311d341caSmrg#  define ImakeWarningFlags /* */
200411d341caSmrg# endif
200511d341caSmrg#endif
200611d341caSmrg
200711d341caSmrg#if  (GccMajorVersion == 3) &&  (GccMinorVersion >= 1)
200811d341caSmrg# define GccAliasingArgs      -fno-strict-aliasing
200911d341caSmrg#else
201011d341caSmrg# define GccAliasingArgs      /* */
201111d341caSmrg#endif
201211d341caSmrg
201311d341caSmrg#if HasGcc2 && defined(i386Architecture)
201411d341caSmrg# ifndef DefaultGcc2i386Opt
201511d341caSmrg#  define DefaultGcc2i386Opt -O2 -fno-strength-reduce GccAliasingArgs
201611d341caSmrg# endif
201711d341caSmrg#endif
201811d341caSmrg
201911d341caSmrg#if HasGcc2 && defined(AMD64Architecture)
202011d341caSmrg# ifndef DefaultGcc2AMD64Opt
202111d341caSmrg#  define DefaultGcc2AMD64Opt -O2 -fno-strength-reduce GccAliasingArgs
202211d341caSmrg# endif
202311d341caSmrg#endif
202411d341caSmrg
20251c80d5b0Smrg#if HasGcc2 && defined(AArch64Architecture)
20261c80d5b0Smrg# ifndef DefaultGcc2AArch64Opt
20271c80d5b0Smrg#  define DefaultGcc2AArch64Opt -O2 GccAliasingArgs
20281c80d5b0Smrg# endif
20291c80d5b0Smrg#endif
20301c80d5b0Smrg
203111d341caSmrg#if HasGcc2 && defined(AlphaArchitecture)
203211d341caSmrg# ifndef DefaultGcc2AxpOpt
203311d341caSmrg#  define DefaultGcc2AxpOpt -O2 GccAliasingArgs
203411d341caSmrg# endif
203511d341caSmrg#endif
203611d341caSmrg
203741fe0c2aSmrg#if HasGcc2 && defined(OpenRISC1000Architecture)
203841fe0c2aSmrg# ifndef DefaultGcc2OpenRISC1000Opt
203941fe0c2aSmrg#  define DefaultGcc2OpenRISC1000Opt -O2 GccAliasingArgs
204041fe0c2aSmrg# endif
204141fe0c2aSmrg#endif
204241fe0c2aSmrg
204311d341caSmrg#if HasGcc2 && defined(Ppc64Architecture)
204411d341caSmrg# ifndef DefaultGcc2Ppc64Opt
204511d341caSmrg#  define DefaultGcc2Ppc64Opt -O2 GccAliasingArgs
204611d341caSmrg# endif
204711d341caSmrg#endif
204811d341caSmrg
204911d341caSmrg#if HasGcc2 && defined(PpcArchitecture)
205011d341caSmrg# ifndef DefaultGcc2PpcOpt
205111d341caSmrg#  define DefaultGcc2PpcOpt -O2 GccAliasingArgs
205211d341caSmrg# endif
205311d341caSmrg#endif
205411d341caSmrg
205511d341caSmrg#ifndef DefaultGcc2DebugOpt
205611d341caSmrg# define DefaultGcc2DebugOpt -g
205711d341caSmrg#endif
205811d341caSmrg
205911d341caSmrg#ifndef DebuggableLibraries
206011d341caSmrg# define DebuggableLibraries NO
206111d341caSmrg#endif
206211d341caSmrg
206311d341caSmrg#if HasGcc2 && DebuggableLibraries
206411d341caSmrg# define LibraryDebugOpt DefaultGcc2DebugOpt
206511d341caSmrg#endif
206611d341caSmrg
206711d341caSmrg/*
206811d341caSmrg * Some versions of gcc have optimisation bugs that cause problems building
206911d341caSmrg * some files.  The definitions here cover those.
207011d341caSmrg */
207111d341caSmrg
207211d341caSmrg#ifndef Egcs112Bug
207311d341caSmrg  /* Not exactly precise, but it'll do for now... */
207411d341caSmrg# if HasGcc2 && defined(i386Architecture) && \
207511d341caSmrg     (GccMajorVersion == 2) && (GccMinorVersion > 8)
207611d341caSmrg#  define Egcs112Bug YES
207711d341caSmrg# else
207811d341caSmrg#  define Egcs112Bug NO
207911d341caSmrg# endif
208011d341caSmrg#endif
208111d341caSmrg
208211d341caSmrg#ifdef i386Architecture
208311d341caSmrg# ifndef HasX86Support
208411d341caSmrg#  define HasX86Support YES
208511d341caSmrg# endif
208611d341caSmrg# ifndef HasMMXSupport
208711d341caSmrg#  define HasMMXSupport YES
208811d341caSmrg# endif
208911d341caSmrg# ifndef HasSSESupport
209011d341caSmrg#  define HasSSESupport NO
209111d341caSmrg# endif
209211d341caSmrg# ifndef Has3DNowSupport
209311d341caSmrg#  define Has3DNowSupport NO
209411d341caSmrg# endif
209511d341caSmrg#elif defined (AMD64Architecture)
209611d341caSmrg# ifndef HasX86Support
209711d341caSmrg#  define HasX86Support NO
209811d341caSmrg# endif
209911d341caSmrg# ifndef HasMMXSupport
210011d341caSmrg#  define HasMMXSupport NO
210111d341caSmrg# endif
210211d341caSmrg# ifndef HasSSESupport
210311d341caSmrg#  define HasSSESupport NO
210411d341caSmrg# endif
210511d341caSmrg# ifndef Has3DNowSupport
210611d341caSmrg#  define Has3DNowSupport NO
210711d341caSmrg# endif
21081c80d5b0Smrg#else
210911d341caSmrg# ifndef HasX86Support
211011d341caSmrg#  define HasX86Support NO
211111d341caSmrg# endif
211211d341caSmrg# ifndef HasMMXSupport
211311d341caSmrg#  define HasMMXSupport NO
211411d341caSmrg# endif
211511d341caSmrg# ifndef HasSSESupport
211611d341caSmrg#  define HasSSESupport NO
211711d341caSmrg# endif
211811d341caSmrg# ifndef Has3DNowSupport
211911d341caSmrg#  define Has3DNowSupport NO
212011d341caSmrg# endif
212111d341caSmrg#endif
212211d341caSmrg
212311d341caSmrg#ifndef StaticNeedsPicForShared
212411d341caSmrg# if defined (AMD64Architecture)\
212511d341caSmrg  || defined (AlphaArchitecture) \
212611d341caSmrg  || defined (ia64Architecture) \
212711d341caSmrg  || defined (PpcArchitecture) \
212811d341caSmrg  || defined (SparcArchitecture) \
21291c80d5b0Smrg  || defined (s390xArchitecture)
213011d341caSmrg#  define StaticNeedsPicForShared YES
213111d341caSmrg# else
213211d341caSmrg#  define StaticNeedsPicForShared NO
213311d341caSmrg# endif
213411d341caSmrg#endif
213511d341caSmrg
213611d341caSmrg#ifndef XF8_32Wid
213711d341caSmrg# define XF8_32Wid		NO
213811d341caSmrg#endif
213911d341caSmrg
214011d341caSmrg#if CrossCompiling
214111d341caSmrg#include <cross.def>
214211d341caSmrg#endif
214311d341caSmrg#include <xf86.rules>
214411d341caSmrg
2145