home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / lib / X11 / config / xorg.cf < prev    next >
Encoding:
Text File  |  2006-07-10  |  37.7 KB  |  1,707 lines

  1. XCOMM $XdotOrg: xc/config/cf/xorg.cf,v 1.53 2005/10/03 16:08:44 alanc Exp $
  2. /*
  3.  * This configuration file contains all of the configuration
  4.  * information for the Xorg based X Servers.
  5.  *
  6.  * Most of these settings can be overridden in a vendor.cf or the
  7.  * BeforeVendor part of the site.def file.
  8.  */
  9. XCOMM $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
  10.  
  11. /* Get and set version information. */
  12.  
  13. #include "date.def"
  14. #include "xorgversion.def"
  15.  
  16. #if !defined(XorgVersionString) && \
  17.     defined(XORG_VERSION_MAJOR) && defined(XORG_VERSION_MINOR) && \
  18.     defined(XORG_VERSION_PATCH) && defined(XORG_VERSION_SNAP)
  19. # if XORG_VERSION_SNAP == 0
  20. #  if XORG_VERSION_PATCH == 0
  21. #   define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR | sed 's/ /./g'`
  22. #  else 
  23. #   define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH | sed 's/ /./g'`
  24. #  endif
  25. # else
  26. #  define XorgVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH XORG_VERSION_SNAP | sed 's/ /./g'`
  27. # endif
  28. #endif
  29.  
  30. #if !defined(XORG_DATE) && defined(XF86_DATE)
  31. # define XORG_DATE XF86_DATE
  32. #endif
  33.  
  34. /*
  35.  * Xorg versions are M.m.P.s, and XorgVersion is:
  36.  *
  37.  *    M * 10000000 + m * 100000 + P * 1000 + s
  38.  *
  39.  */
  40.  
  41. #ifndef XorgVersion
  42. #  define XorgVersion (((XORG_VERSION_MAJOR) * 10000000) + ((XORG_VERSION_MINOR) * 100000) + ((XORG_VERSION_PATCH) * 1000) + XORG_VERSION_SNAP)
  43. #endif
  44.  
  45. #ifndef VersionDefines
  46. # define VersionDefines -DXORG_VERSION_CURRENT="$(XORG_VERSION_CURRENT)"
  47. #endif
  48.  
  49. /* Place the version of the relevant changelog file here */
  50. #ifndef ReleaseVersion
  51. # define ReleaseVersion  RELEASE-1
  52. #endif
  53.  
  54. XORG_VERSION_CURRENT = XorgVersion
  55. RELEASE_VERSION = ReleaseVersion
  56.  
  57. #if !defined(XorgManVersionString) && \
  58.     defined(XORG_VERSION_MAJOR) && defined(XORG_VERSION_MINOR) && \
  59.     defined(XORG_VERSION_PATCH) && defined(XORG_VERSION_SNAP)
  60. # if XORG_VERSION_SNAP == 0
  61. #define XorgManVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
  62. #else
  63. #define XorgManVersionString `echo XORG_VERSION_MAJOR XORG_VERSION_MINOR XORG_VERSION_PATCH XORG_VERSION_SNAP | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
  64. # endif
  65. #endif
  66.  
  67. #if !defined(XorgDateString) && defined(XORG_DATE)
  68. # define XorgDateString XORG_DATE
  69. #endif
  70.  
  71. #if !defined(XFree86DateString) && defined(XorgDateString)
  72. # define XFree86DateString XorgDateString
  73. #endif
  74.  
  75. #ifndef BuildDateCmd
  76. # define BuildDateCmd    date +%Y%m%d
  77. #endif
  78.  
  79. #if !defined(BuildDate)
  80. # define BuildDate     `BuildDateCmd`
  81. #endif
  82.  
  83. #ifndef ChangelogDateCmd
  84. # define ChangelogDateCmd if tail $(CHANGELOGFILE) 2>/dev/null | \    @@\
  85.     fgrep '$$XdotOrg:' >/dev/null 2>&1; then \            @@\
  86.       tail $(CHANGELOGFILE) | fgrep '$$XdotOrg:' | \        @@\
  87.       sed s,'.* \([0-9][0-9]*\)/\([0-9][0-9]*\)/\([0-9][0-9]*\).*,\1\2\3,'; \ @@\
  88.     else echo 0; fi
  89. #endif
  90.  
  91. #if !defined(ChangelogDate)
  92. # define ChangelogDate    `ChangelogDateCmd`
  93. #endif
  94.  
  95. #ifndef XVendorString
  96. # define XVendorString    "The X.Org Foundation"
  97. #endif
  98.  
  99. #ifndef XVendorRelease
  100. # define XVendorRelease    XorgVersion
  101. #endif
  102.  
  103. #ifndef XVendorManVersionString
  104. #define XVendorManVersionString XorgManVersionString
  105. #endif
  106.  
  107. #ifndef XVendorManNameString
  108. #define XVendorManNameString X.Org
  109. #endif
  110.  
  111. /*
  112.  * This enables some settings for developers.
  113.  */
  114.  
  115. #ifndef XFree86Devel
  116. # if !defined(PatheticCpp) || !PatheticCpp
  117. #  if (XorgVersion % 1000)
  118. #   define XFree86Devel        YES
  119. #  else
  120. #   define XFree86Devel        NO
  121. #  endif
  122. # else
  123. #  define XFree86Devel        NO    /* Assume the worst */
  124. # endif
  125. #endif
  126.  
  127. #ifndef BuildDebug
  128. # define BuildDebug         YES
  129. #endif
  130.  
  131. /*
  132.  * settings for the config file parser
  133.  */
  134.  
  135. #ifndef XConfigFile
  136. #define XConfigFile        xorg.conf
  137. #endif
  138. #ifndef XConfigDir
  139. #define XConfigDir        $(LIBDIR)
  140. #endif
  141. #ifndef XLogFile
  142. #define XLogFile        Xorg
  143. #endif
  144. #ifndef XServerName
  145. # define XServerName        Xorg
  146. #endif
  147.  
  148. /*
  149.  * BuildXFree86ConfigTools:
  150.  *
  151.  * Turning this on allows the XFree86 config tools to build when
  152.  * BuildServersOnly is YES.  This requires more than the servonly CVS
  153.  * module.  This cannot be used to disable building the config tools with
  154.  * a full build.
  155.  */
  156. #ifndef BuildXFree86ConfigTools
  157. #ifdef BuildServersOnly
  158. #define BuildXFree86ConfigTools        !BuildServersOnly
  159. #else
  160. #define BuildXFree86ConfigTools        YES
  161. #endif
  162. #endif
  163.  
  164. #ifndef BuildLibrariesForConfigTools
  165. #define BuildLibrariesForConfigTools    BuildXFree86ConfigTools
  166. #endif
  167.  
  168. #if BuildXFree86ConfigTools && BuildLibrariesForConfigTools
  169. #define BuildLibraries        YES
  170. #define BuildXF86MiscLibrary    YES
  171. #define BuildXF86VidModeLibrary    YES
  172. #define BuildXKBlib        YES
  173. #define BuildXKBfilelib        YES
  174. #define BuildXKBuilib        YES
  175. #endif
  176.  
  177. /*
  178.  * When this is set, modules are always built separately from the libraries
  179.  * that statically link into an Xserver.  This is for platforms where the
  180.  * module and native object formats are different (e.g., OS/2).
  181.  */
  182. #ifndef BuildModuleInSubdir
  183. #define BuildModuleInSubdir    NO
  184. #endif
  185.  
  186. #ifndef DoLoadableServer
  187. #define DoLoadableServer    NO
  188. #endif
  189.  
  190. #ifndef MakeDllModules
  191. #if DoLoadableServer
  192. #define MakeDllModules        YES
  193. #else
  194. #define MakeDllModules        NO
  195. #endif
  196. #endif 
  197.  
  198. /*
  199.  * Default settings for which X Servers to build.
  200.  */
  201.  
  202. /* OS.cf files may set this for OS-specific input drivers */
  203. #ifndef OSXInputDrivers
  204. #define OSXInputDrivers /**/
  205. #endif
  206.  
  207. /* This may be set in host.def for 3rd party input drivers */
  208. #ifndef ExtraXInputDrivers
  209. #define ExtraXInputDrivers /**/
  210. #endif
  211.  
  212. /* XInput drivers */
  213. #ifndef XInputDrivers
  214. #define XInputDrivers        mouse keyboard acecad calcomp citron \
  215.                 digitaledge dmc dynapro elographics tek4957 \
  216.                 microtouch mutouch penmount spaceorb summa \
  217.                 wacom void magellan /* magictouch */ hyperpen \
  218.                 jamstudio fpit \
  219.                 palmax OSXInputDrivers ExtraXInputDrivers
  220. #endif
  221.  
  222.  
  223. /* Deprecated keyboard driver */
  224. #ifndef UseDeprecatedKeyboardDriver
  225. #define UseDeprecatedKeyboardDriver NO
  226. #endif
  227.  
  228. /* <linux/input.h> support mainly for USB support */
  229. #ifndef HasLinuxInput
  230. # define HasLinuxInput NO
  231. #endif
  232.  
  233. /* OS.cf files may set this for OS-specific drivers */
  234. #ifndef XF86OSCardDrivers
  235. #define XF86OSCardDrivers /**/
  236. #endif
  237.  
  238. /* This may be set in host.def for 3rd party drivers */
  239. #ifndef XF86ExtraCardDrivers
  240. #define XF86ExtraCardDrivers /**/
  241. #endif
  242.  
  243. /* OS.cf files may set this for OS-specific drivers */
  244. #ifndef HasAgpGart
  245. #define HasAgpGart NO
  246. #endif
  247.  
  248. /* Some DRI drivers are disabled because they are either insecure or unusable on
  249.  * this architecture.  This switch allows you to enable building these drivers.
  250.  */
  251. #ifndef BuildDevelDRIDrivers
  252. #define BuildDevelDRIDrivers NO
  253. #endif
  254.  
  255. /* The glide driver only works for the loadable server at the moment */
  256. #ifndef HasGlide2
  257. #define HasGlide2 NO
  258. #endif
  259. #if HasGlide2 && DoLoadableServer
  260. #define GlideDriver glide
  261. #else
  262. #define GlideDriver /**/
  263. #endif
  264.  
  265. /* The tdfx DRI driver can only be built if glide3 is available. */
  266. #ifndef HasGlide3
  267. #define HasGlide3 NO
  268. #endif
  269.  
  270. /*
  271.  * There are three parameters that determine where and how the Matrox HAL
  272.  * library is used:
  273.  *
  274.  *   HaveMatroxHal  -- You have the HALlib.a binary library installed
  275.  *                     in xfree86/drivers/mga/HALlib, and you want it to
  276.  *                     be used.
  277.  *                     Default: NO
  278.  *
  279.  *   BuildMatroxHal -- You have the source for the HALlib library (installed
  280.  *                     in xfree86/drivers/mga/hallib), and want to build and
  281.  *                     use it.
  282.  *                     Default: NO
  283.  *
  284.  *   UseMatroxHal   -- You want to build support for loading/using the HAL
  285.  *                     library into the mga driver.  For module server builds
  286.  *                     you don't need to have the HALlib library to do this.
  287.  *                     but you want to build support for loading it and using
  288.  *                     it into the mga driver module.
  289.  *                     Default: YES for loadable server build
  290.  *                              (HaveMatroxHal || BuildMatroxHal) for static
  291.  */
  292.  
  293. #ifndef HaveMatroxHal
  294. #define HaveMatroxHal NO
  295. #endif
  296.  
  297. #ifndef BuildMatroxHal
  298. #define BuildMatroxHal NO
  299. #endif
  300.  
  301. #ifndef UseMatroxHal
  302. #if DoLoadableServer
  303. #define UseMatroxHal YES
  304. #else
  305. #define UseMatroxHal (HaveMatroxHal || BuildMatroxHal)
  306. #endif
  307. #endif
  308.  
  309. /*
  310.  * Many architectures share common X Server pieces.  List them here.
  311.  */
  312. #if defined(i386Architecture) || defined(ia64Architecture) || \
  313.     defined(AMD64Architecture) || defined(SparcArchitecture) || \
  314.     defined(Sparc64Architecture) || defined(MipsArchitecture) || \
  315.     defined(AlphaArchitecture) || defined(PpcArchitecture) || \
  316.     defined(Mc68020Architecture) || defined(Arm32Architecture) || \
  317.     defined(HPArchitecture) || defined(SuperHArchitecture)
  318. # ifndef XorgServer
  319. #  define XorgServer        YES
  320. # endif
  321. /* 1bpp module */
  322. # ifndef XF1Bpp
  323. #  define XF1Bpp        YES
  324. # endif
  325. /* 4bpp module */
  326. # ifndef XF4Bpp
  327. #  define XF4Bpp        YES
  328. # endif
  329. /* 8/32bpp overlay module */
  330. # ifndef XF8_32Bpp
  331. #  define XF8_32Bpp        YES
  332. # endif
  333. /* 8/16bpp dual fb module */
  334. # ifndef XF8_16Bpp
  335. #  define XF8_16Bpp        YES
  336. # endif
  337. /* shadow fb module */
  338. # ifndef XFShadowFB
  339. #  define XFShadowFB        YES
  340. # endif
  341. /* fbdevhw module */
  342. # ifndef XF86FBDevHw
  343. #  define XF86FBDevHw        YES
  344. # endif
  345. /* XAA module */
  346. # ifndef XF86XAA
  347. #  define XF86XAA        YES
  348. # endif
  349. /* Exa module */
  350. # ifndef XF86EXA
  351. #  define XF86EXA        YES
  352. # endif
  353. /* ramdac module */
  354. # ifndef XF86Ramdac
  355. #  define XF86Ramdac        YES
  356. # endif
  357. /* I2C module */
  358. # ifndef XF86I2C
  359. #  define XF86I2C        YES
  360. # endif
  361. /* DDC module */
  362. # ifndef XF86DDC
  363. #  define XF86DDC        YES
  364. # endif
  365. /* RAC (Resource Access Control) module */
  366. # ifndef XF86RAC
  367. #  define XF86RAC        YES
  368. # endif
  369. /* int10 module */
  370. # ifndef XF86Int10
  371. #  define XF86Int10        YES
  372. # endif
  373. /* vbe module */
  374. # ifndef XF86VBE
  375. #  define XF86VBE        YES
  376. # endif
  377. #endif
  378.  
  379. /*
  380.  * Intel x86 and ia64 drivers
  381.  */
  382. #if defined(i386Architecture) || defined(ia64Architecture)
  383. /* vgahw module */
  384. # ifndef XF86VgaHw
  385. #  define XF86VgaHw        YES
  386. # endif
  387. /* Amiga framebuffer module.  Required by vesa module. */
  388. # ifndef XF86AFB
  389. #  define XF86AFB        YES
  390. # endif
  391.  
  392. /*
  393.  * Drivers under development, but not ready for binary releases, or
  394.  * drivers included on this platform only for build testing.
  395.  */
  396. # ifndef DevelDrivers
  397. #  if XFree86Devel
  398. #   define DevelDrivers        imstt newport
  399. #  else
  400. #   define DevelDrivers        /**/
  401. #  endif
  402. # endif
  403.  
  404. /* Pure PCI drivers should go first */
  405. # ifndef XF86CardDrivers
  406. #  /* Don't build the nsc driver on IA64 */
  407. #  ifndef ia64Architecture
  408. #   define i386Drivers        nsc i810
  409. #  else
  410. #   define i386Drivers        /**/
  411. #  endif
  412. #  define XF86CardDrivers    mga glint nv tga s3 s3virge sis rendition \
  413.                 neomagic i740 tdfx savage \
  414.                 cirrus vmware tseng trident chips apm \
  415.                 GlideDriver i128 i386Drivers \
  416.                 ati DevelDrivers ark \
  417.                 cyrix siliconmotion via \
  418.                 vesa vga \
  419.                 dummy XF86OSCardDrivers XF86ExtraCardDrivers
  420. # endif
  421.  
  422. # ifndef DevelDRIDrivers
  423. #  define DevelDRIDrivers    ffb mach64 unichrome
  424. # endif
  425.  
  426. # ifndef DriDrivers
  427. #  ifndef ia64Architecture
  428. #   define i386DRIDrivers i810 i915 sis
  429. #  else
  430.    /* SiS is 64-bit unclean as of this writing. */
  431. #   define i386DRIDrivers /**/
  432. #  endif
  433. #  if HasGlide3
  434. #   define TdfxDriDriver   tdfx
  435. #  else
  436. #   define TdfxDriDriver   /**/
  437. #  endif
  438. #  define DriDrivers       i386DRIDrivers mga r128 radeon r200 \
  439.                TdfxDriDriver
  440. # endif
  441. #endif /* i386Architecture || ia64Architecture */
  442.  
  443. #if defined(AMD64Architecture)
  444. /* vgahw module */
  445. # ifndef XF86VgaHw
  446. #  define XF86VgaHw        YES
  447. # endif
  448. /* Amiga framebuffer module.  Required by vesa module. */
  449. # ifndef XF86AFB
  450. #  define XF86AFB        YES
  451. # endif
  452.  
  453. /*
  454.  * Drivers under development, but not ready for binary releases, or
  455.  * drivers included on this platform only for build testing.
  456.  */
  457. # ifndef DevelDrivers
  458. #  if XFree86Devel
  459. #   define DevelDrivers         /**/
  460. #  else
  461. #   define DevelDrivers         /**/
  462. #  endif
  463. # endif
  464.  
  465. /* Pure PCI drivers should go first */
  466. # ifndef XF86CardDrivers
  467. #  define XF86CardDrivers    mga glint nv tga s3 s3virge sis rendition \
  468.                 neomagic tdfx savage cirrus tseng trident \
  469.                 chips apm i128 ati ark cyrix siliconmotion \
  470.                 vga dummy vesa i810 vmware \
  471.                 XF86OSCardDrivers XF86ExtraCardDrivers DevelDrivers
  472. # endif
  473.  
  474. /* SiS is 64-bit unclean as of this writing. */
  475. #  if HasGlide3
  476. #   define TdfxDriDriver   tdfx
  477. #  else
  478. #   define TdfxDriDriver   /**/
  479. #  endif
  480. # ifndef DriDrivers
  481. #  define DriDrivers       i915 mga r128 radeon r200 TdfxDriDriver
  482. # endif
  483. #endif /*AMD64Arcitecture*/
  484.  
  485. /* SPARC and UltraSPARC drivers */
  486.  
  487. #if  (defined(SparcArchitecture) || defined(Sparc64Architecture)) && \
  488.     !defined(LynxOSArchitecture) && \
  489.     !defined(NetBSDArchitecture) && \
  490.     !defined(OpenBSDArchitecture)
  491. /* 8/32wid fb module */
  492. # ifndef XF8_32Wid
  493. #  define XF8_32Wid        YES
  494. # endif
  495. /* vgahw module */
  496. # ifndef XF86VgaHw
  497. #  define XF86VgaHw        YES
  498. # endif
  499. /* Amiga framebuffer module.  Required by vesa module. */
  500. # ifndef XF86AFB
  501. #  define XF86AFB        YES
  502. # endif
  503.  
  504. # ifndef DevelDrivers
  505. #  if XFree86Devel
  506.    /*
  507.     * Some of these are compiled just for the fun of it.  Undoubtedly some
  508.     * require changes (or even removal) for things like endianness, etc.  Move
  509.     * those known to work into the main XF86CardDrivers #define.
  510.     */
  511. #   define DevelDrivers        apm ark chips cirrus i128 i740 i810 imstt \
  512.                 neomagic newport nv rendition s3virge savage \
  513.                 siliconmotion tga trident vmware dummy
  514. #  else
  515. #   define DevelDrivers        /* */
  516. #  endif
  517. # endif
  518.  
  519. /* Pure SBUS and PCI drivers should go first */
  520. # ifndef XF86CardDrivers
  521. #  ifdef SunArchitecture
  522. #   define XF86CardDrivers    /* sunffb */ sunleo suncg6 suncg3 suncg14 \
  523.                 suntcx sunbw2 glint mga tdfx ati vesa vga \
  524.                 dummy XF86OSCardDrivers XF86ExtraCardDrivers \
  525.                 DevelDrivers
  526. #  else
  527. #   define XF86CardDrivers    sunffb sunleo suncg6 suncg3 suncg14 suntcx \
  528.                 sunbw2 glint mga tdfx ati vesa vga dummy \
  529.                 XF86OSCardDrivers XF86ExtraCardDrivers \
  530.                 DevelDrivers
  531. #  endif
  532. # endif
  533. # ifndef DriDrivers
  534. #  define DriDrivers        ffb
  535. # endif
  536.  
  537. #endif
  538.  
  539. /* Sparc64 Drivers */
  540. #if defined(OpenBSDArchitecture) && defined(Sparc64Architecture)
  541. /* Amiga framebuffer module */
  542. # ifndef XF86AFB
  543. #  define XF86AFB        NO
  544. # endif
  545. /* vgahw module */
  546. # ifndef XF86VgaHw
  547. #  define XF86VgaHw        YES
  548. # endif
  549. # ifndef UseX86Emu
  550. #  define UseX86Emu        NO
  551. # endif
  552.  
  553. # ifndef DevelDrivers
  554. #  if XFree86Devel
  555. #   define DevelDrivers        /* */
  556. #  else
  557. #   define DevelDrivers        /* */
  558. #  endif
  559. # endif
  560.  
  561. /* Pure PCI drivers should go first */
  562. # ifndef XF86CardDrivers
  563. #  define XF86CardDrivers    ati dummy \
  564.                 DevelDrivers \
  565.                 XF86OSCardDrivers XF86ExtraCardDrivers
  566. # endif
  567. #endif /* OpenBSDArchitecture && Sparc64Architecture */
  568.  
  569. /* MIPS drivers */
  570.  
  571. #ifdef MipsArchitecture
  572. /* vgahw module */
  573. # ifndef XF86VgaHw
  574. #  define XF86VgaHw        YES
  575. # endif
  576.  
  577. # ifndef DevelDrivers
  578. #  if XFree86Devel
  579. #   define DevelDrivers        /* */
  580. #  else
  581. #   define DevelDrivers        /* */
  582. #  endif
  583. # endif
  584.  
  585. # ifndef XF86CardDrivers
  586. #  define XF86CardDrivers    mga glint nv s3 s3virge sis savage \
  587.                 trident chips tdfx ati dummy \
  588.                 DevelDrivers newport \
  589.                 XF86OSCardDrivers XF86ExtraCardDrivers
  590. # endif
  591. #endif /* MipsArchitecture */
  592.  
  593. /*
  594.  * DEC Alpha drivers
  595.  */
  596. #ifdef AlphaArchitecture
  597. /* vgahw module */
  598. # ifndef XF86VgaHw
  599. #  define XF86VgaHw        YES
  600. # endif
  601.  
  602. # ifndef DevelDrivers
  603. #  if XFree86Devel
  604. #   define DevelDrivers        /* */
  605. #  else
  606. #   define DevelDrivers        /* */
  607. #  endif
  608. # endif
  609.  
  610. /* Pure PCI drivers should go first */
  611. # ifndef XF86CardDrivers
  612. #  define XF86CardDrivers    mga tdfx glint s3 s3virge rendition tga ati \
  613.                 savage nv cirrus DevelDrivers siliconmotion  \
  614.                 vga dummy XF86OSCardDrivers \
  615.                 XF86ExtraCardDrivers
  616. # endif
  617. /*
  618.  *  Glide is available for Alpha, therefore build tdfx DRM module.
  619.  *  SiS is 64-bit unclean as of this writing. 
  620.  */  
  621. #  if HasGlide3
  622. #   define TdfxDriDriver   tdfx
  623. #  else
  624. #   define TdfxDriDriver   /**/
  625. #  endif
  626. # ifndef DriDrivers
  627. #  define DriDrivers       TdfxDriDriver mga r128 radeon r200
  628. # endif
  629. #endif /* AlphaArchitecture */
  630.  
  631. /*
  632.  * Motorola 68k and PowerPC drivers
  633.  */
  634. #if defined(PpcArchitecture) || defined(Mc68020Architecture)
  635. /* Amiga framebuffer module */
  636. # ifndef XF86AFB
  637. #  define XF86AFB        YES
  638. # endif
  639. /* vgahw module */
  640. # ifndef XF86VgaHw
  641. #  define XF86VgaHw        YES
  642. # endif
  643.  
  644. # ifndef DevelDrivers
  645. #  if XFree86Devel
  646. #   define DevelDrivers        imstt
  647. #  else
  648. #   define DevelDrivers        /* */
  649. #  endif
  650. # endif
  651.  
  652. /* Pure PCI drivers should go first */
  653. # ifndef XF86CardDrivers
  654. #  define XF86CardDrivers    ati mga glint nv s3 s3virge sis savage\
  655.                 trident chips tdfx \
  656.                 DevelDrivers vga dummy \
  657.                 XF86OSCardDrivers XF86ExtraCardDrivers
  658. # endif
  659. /*  The tdfx driver needs Glide, which is not available for PPC. */
  660. # ifndef DriDrivers
  661. #  define DriDrivers        mga r128 radeon r200
  662. # endif
  663. #endif  /* PpcArchitecture || Mc68020Architecture */
  664.  
  665. /*
  666.  * Intel StrongARM and Hewlett-Packard PA-RISC
  667.  */
  668. #if defined(Arm32Architecture) || defined(HPArchitecture)
  669. /* vgahw module */
  670. # ifndef XF86VgaHw
  671. #  define XF86VgaHw        YES
  672. # endif
  673.  
  674. # ifndef DevelDrivers
  675. #  if XFree86Devel
  676. #   define DevelDrivers        /* */
  677. #  else
  678. #   define DevelDrivers        /* */
  679. #  endif
  680. # endif
  681.  
  682. /* Pure PCI drivers should go first */
  683. # ifndef XF86CardDrivers
  684. #  define XF86CardDrivers    ati mga glint nv s3 s3virge sis savage\
  685.                 trident chips tdfx \
  686.                 DevelDrivers vga dummy \
  687.                 XF86OSCardDrivers XF86ExtraCardDrivers
  688. # endif
  689. # ifndef DriDrivers
  690. #  define DriDrivers        mga r128 radeon r200
  691. # endif
  692. #endif
  693.  
  694. /* SuperH drivers */
  695. #if defined(SuperHArchitecture)
  696. # ifndef XF86CardDrivers
  697. #  define XF86CardDrivers        XF86OSCardDrivers XF86ExtraCardDrivers
  698. # endif
  699. #endif
  700.  
  701. /*
  702.  * For PowerPC 64bit systems
  703.  * only libraries are strictly needed
  704.  */
  705. #if defined(Ppc64Architecture)
  706. # ifndef XorgServer
  707. #  define XorgServer        YES
  708. # endif
  709. /* 1bpp module */
  710. # ifndef XF1Bpp
  711. #  define XF1Bpp        NO
  712. # endif
  713. /* 4bpp module */
  714. # ifndef XF4Bpp
  715. #  define XF4Bpp        NO
  716. # endif
  717. /* 8/32bpp overlay module */
  718. # ifndef XF8_32Bpp
  719. #  define XF8_32Bpp        YES
  720. # endif
  721. /* 8/16bpp dual fb module */
  722. # ifndef XF8_16Bpp
  723. #  define XF8_16Bpp        YES
  724. # endif
  725. /* shadow fb module */
  726. # ifndef XFShadowFB
  727. #  define XFShadowFB        YES
  728. # endif
  729. /* fbdevhw module */
  730. # ifndef XF86FBDevHw
  731. #  define XF86FBDevHw        YES
  732. # endif
  733. /* XAA module */
  734. # ifndef XF86XAA
  735. #  define XF86XAA        YES
  736. # endif
  737. /* Exa module */
  738. # ifndef XF86EXA
  739. #  define XF86EXA        YES
  740. # endif
  741. /* ramdac module */
  742. # ifndef XF86Ramdac
  743. #  define XF86Ramdac        YES
  744. # endif
  745. /* I2C module */
  746. # ifndef XF86I2C
  747. #  define XF86I2C        YES
  748. # endif
  749. /* DDC module */
  750. # ifndef XF86DDC
  751. #  define XF86DDC        YES
  752. # endif
  753. /* RAC (Resource Access Control) module */
  754. # ifndef XF86RAC
  755. #  define XF86RAC        YES
  756. # endif
  757. /* int10 module */
  758. # ifndef XF86Int10
  759. #  define XF86Int10        YES
  760. # endif
  761. /* vbe module */
  762. # ifndef XF86VBE
  763. #  define XF86VBE        YES
  764. # endif
  765.  
  766. /* vgahw module */
  767. # ifndef XF86VgaHw
  768. #  define XF86VgaHw        YES
  769. # endif
  770. /* Amiga framebuffer module */
  771. # ifndef XF86AFB
  772. #  define XF86AFB        NO
  773. # endif
  774.  
  775. # ifndef DevelDrivers
  776. #  if XFree86Devel
  777. #   define DevelDrivers        
  778. #  else
  779. #   define DevelDrivers        /* */
  780. #  endif
  781. # endif
  782.  
  783. /* Pure PCI drivers should go first */
  784. # ifndef XF86CardDrivers
  785. #  define XF86CardDrivers    ati mga dummy \
  786.                 DevelDrivers \
  787.                 XF86OSCardDrivers XF86ExtraCardDrivers
  788. # endif
  789. # define TdfxDriDriver        /**/
  790. # ifndef DriDrivers
  791. #  define DriDrivers        r128 TdfxDriDriver
  792. # endif
  793. #endif /* Ppc64Architecture */
  794.  
  795. /*
  796.  * For Mips/Arc platforms, the default is to build all modules which
  797.  * are supported on this platform.
  798.  */
  799. #ifdef ArcArchitecture
  800. # ifndef XorgServer
  801. #  define XorgServer        YES
  802. # endif
  803. #endif
  804.  
  805. #if BuildDebug
  806. # define DebugDefines -DBUILDDEBUG
  807. #else
  808. # define DebugDefines /**/
  809. #endif
  810.  
  811. #ifndef XorgServer
  812. # define XorgServer        NO
  813. #endif
  814. #if !XorgServer
  815. # undef DoLoadableServer
  816. # define DoLoadableServer    NO
  817. #endif
  818.  
  819. /*
  820.  * Fbdev module defines.  They are set to indicate the fb types supported
  821.  * on different architectures.
  822.  */
  823. #ifndef XF86AFB
  824. # define XF86AFB        NO
  825. #endif
  826. #ifndef XF86ILBM
  827. # define XF86ILBM        NO
  828. #endif
  829. #ifndef XF86IPLAN2P2
  830. # define XF86IPLAN2P2        NO
  831. #endif
  832. #ifndef XF86IPLAN2P4
  833. # define XF86IPLAN2P4        NO
  834. #endif
  835. #ifndef XF86IPLAN2P8
  836. # define XF86IPLAN2P8        NO
  837. #endif
  838. #if XF86AFB
  839. AFB_DEFS = -DUSE_AFB
  840. #endif
  841. #if XF86ILBM
  842. ILBM_DEFS = -DUSE_ILBM
  843. #endif
  844. #if XF86IPLAN2P2
  845. IPLAN2P2_DEFS = -DUSE_IPLAN2P2
  846. #endif
  847. #if XF86IPLAN2P4
  848. IPLAN2P4_DEFS = -DUSE_IPLAN2P4
  849. #endif
  850. #if XF86IPLAN2P8
  851. IPLAN2P8_DEFS = -DUSE_IPLAN2P8
  852. #endif
  853. #ifndef FbdevDefines
  854. # define FbdevDefines $(AFB_DEFS) $(ILBM_DEFS) $(IPLAN2P2_DEFS) \
  855.              $(IPLAN2P4_DEFS) $(IPLAN2P8_DEFS)
  856. #endif
  857.  
  858. /*
  859.  * The default is to install the X servers setuid-root on most OSs.
  860.  * It the servers are only started by xdm, they should not be setuid-root.
  861.  */
  862. #if !defined(i386MachArchitecture) && !defined(OS2Architecture)
  863. # ifndef InstallXserverSetUID
  864. #  define InstallXserverSetUID    YES
  865. # endif
  866. #endif
  867.  
  868. /*
  869.  * Build GLX server interface
  870.  *   --- Doesn't work for 1-bit and 4-bit servers
  871.  */
  872. #ifndef BuildGlxExt
  873. #  define BuildGlxExt    YES
  874. #endif
  875.  
  876. #ifndef BuildXF86DRI
  877. #define BuildXF86DRI    NO
  878. #endif
  879.  
  880. #ifndef GlxUseSGISI
  881. #define GlxUseSGISI    NO
  882. #endif
  883.  
  884. #if BuildXF86DRI
  885.  
  886. #ifndef DriDrivers
  887. #define DriDrivers /**/
  888. #endif
  889.  
  890. #ifndef DevelDRIDrivers
  891. #define DevelDRIDrivers /**/
  892. #endif
  893.  
  894. #ifndef BuildGLXLibrary
  895. #  if defined (BuildServersOnly) && BuildServersOnly
  896. #    define BuildGLXLibrary    NO
  897. #  else
  898. #    define BuildGLXLibrary    YES
  899. #  endif
  900. #endif
  901.  
  902. /*
  903.  * One and ONLY one of the GlxBuiltIn* drivers can be defined to be YES.
  904.  * If more than one are defined, the compilation will fail with multiply
  905.  * defined references of GLX and OpenGL functions.
  906.  */
  907.  
  908. /*
  909.  * The first is a built-in driver that does software rendering client-side
  910.  * and renders to the X server via Xlib.
  911.  */
  912.  
  913. #  ifndef GlxBuiltInXMesa
  914. #    define GlxBuiltInXMesa         NO
  915. #  endif
  916.  
  917. /*
  918.  * The rest are hardware-specific DRI drivers.
  919.  */
  920. #  ifndef GlxBuiltInGamma
  921. #    define GlxBuiltInGamma        NO
  922. #  endif
  923. #  ifndef GlxBuiltInTdfx
  924. #    define GlxBuiltInTdfx         NO
  925. #  endif
  926. #  ifndef GlxBuiltInMga
  927. #    define GlxBuiltInMga          NO
  928. #  endif
  929. #  ifndef GlxBuiltInI810
  930. #    define GlxBuiltInI810         NO
  931. #  endif
  932. #  ifndef GlxBuiltInI915
  933. #    define GlxBuiltInI915         NO
  934. #  endif
  935. #  ifndef GlxBuiltInR128
  936. #    define GlxBuiltInR128         NO
  937. #  endif
  938. #  ifndef GlxBuiltInRadeon
  939. #    define GlxBuiltInRadeon       NO
  940. #  endif
  941. #  ifndef GlxBuiltInR200
  942. #    define GlxBuiltInR200         NO
  943. #  endif
  944. #  ifndef GlxBuiltInFfb
  945. #    define GlxBuiltInFfb          NO
  946. #  endif
  947. #  ifndef GlxBuiltInSIS
  948. #    define GlxBuiltInSIS          NO
  949. #  endif
  950.  
  951. #  if GlxBuiltInTdfx || \
  952.       GlxBuiltInMga || \
  953.       GlxBuiltInI810 || \
  954.       GlxBuiltInI915 || \
  955.       GlxBuiltInR128 || \
  956.       GlxBuiltInRadeon || \
  957.       GlxBuiltInR200 || \
  958.       GlxBuiltInFfb || \
  959.       GlxBuiltInSIS
  960. #    define GlxDriverUsesMesa      YES
  961. #  else
  962. #    define GlxDriverUsesMesa      NO
  963. #  endif
  964.  
  965. #  if GlxBuiltInGamma || \
  966.       GlxBuiltInTdfx || \
  967.       GlxBuiltInMga || \
  968.       GlxBuiltInI810 || \
  969.       GlxBuiltInI915 || \
  970.       GlxBuiltInR128 || \
  971.       GlxBuiltInRadeon || \
  972.       GlxBuiltInR200 || \
  973.       GlxBuiltInFfb || \
  974.       GlxBuiltInSIS
  975. #    define GlxUseBuiltInDRIDriver YES
  976. #    define DRIDynLoadDefines /**/
  977. #  else
  978. #    define GlxUseBuiltInDRIDriver NO
  979. #    define DRIDynLoadDefines -DGLX_USE_DLOPEN
  980. #  endif
  981.  
  982. #  if GlxUseBuiltInDRIDriver
  983. #    undef DriDrivers
  984. #    if GlxBuiltInGamma
  985. #      define DriDrivers gamma
  986. #    endif
  987. #    if GlxBuiltInTdfx
  988. #      define DriDrivers tdfx
  989. #    endif
  990. #    if GlxBuiltInMga
  991. #      define DriDrivers mga
  992. #    endif
  993. #    if GlxBuiltInI810
  994. #      define DriDrivers i810
  995. #    endif
  996. #    if GlxBuiltInI915
  997. #      define DriDrivers i915
  998. #    endif
  999. #    if GlxBuiltInR128
  1000. #      define DriDrivers r128
  1001. #    endif
  1002. #    if GlxBuiltInRadeon
  1003. #      define DriDrivers radeon
  1004. #    endif
  1005. #    if GlxBuiltInR200
  1006. #      define DriDrivers r200
  1007. #    endif
  1008. #    if GlxBuiltInSIS
  1009. #      define DriDrivers sis
  1010. #    endif
  1011. #    if GlxBuiltInFfb
  1012. #      define DriDrivers ffb
  1013. #    endif
  1014. #  endif
  1015.  
  1016. #endif
  1017.  
  1018. /*
  1019.  * This enables building DRI support into video drivers, which can be done
  1020.  * even on platforms that don't have functional DRI support.
  1021.  *
  1022.  * Defining BuildXF86DRIDriverSupport to YES will not work until we have a
  1023.  * separate set of defines set up for building driver-only support for the
  1024.  * DRI.
  1025.  */
  1026. #ifndef BuildXF86DRIDriverSupport
  1027. # define BuildXF86DRIDriverSupport NO
  1028. #endif
  1029.  
  1030. #if BuildGlxExt
  1031.  
  1032. #  if BuildXF86DRI
  1033. #    define DRIDefines -DXF86DRI -DGLX_DIRECT_RENDERING DRIDynLoadDefines
  1034. #  else
  1035. #    define DRIDefines /**/
  1036. #  endif
  1037. #  if defined(GlxUseSGISI) && GlxUseSGISI
  1038. #    define GlxCoreLibDefines -DGLX_USE_SGI_SI
  1039. #  else
  1040. #    define GlxCoreLibDefines -DGLX_USE_MESA
  1041. #  endif
  1042.  
  1043. #  if defined(SparcArchitecture)  \
  1044.    || defined (Sparc64Architecture) \
  1045.    || defined(ia64Architecture) \
  1046.    || defined(s390xArchitecture) \
  1047.    || defined(AMD64Architecture)
  1048. #    define GlxArchDefines -D__GLX_ALIGN64
  1049. #  elif defined(AlphaArchitecture)
  1050. /* On the Alpha we need to ensure floating point accuracy for 3D */
  1051. #    define GlxArchDefines -D__GLX_ALIGN64 -mieee
  1052. #  elif defined(DarwinArchitecture)
  1053. /* GLX contains lots of uninitialized globals, which can upset Darwin */
  1054. #    define GlxArchDefines -fno-common
  1055. #  else
  1056. #    define GlxArchDefines /**/
  1057. #  endif
  1058.  
  1059. #  ifndef GlxExtraDefines
  1060. #    define GlxExtraDefines DRIDefines GlxCoreLibDefines GlxArchDefines
  1061. #  endif
  1062.  
  1063. #else
  1064.  
  1065. /* If we are not building GLX, then make sure the DRI is not built */
  1066. #  undef  BuildXF86DRI
  1067. #  define BuildXF86DRI   NO
  1068. #  undef  BuildXF86DRIDriverSupport
  1069. #  define BuildXF86DRIDriverSupport NO
  1070.  
  1071. #endif
  1072.  
  1073. #if !BuildXF86DRI
  1074. # define GlxUseBuiltInDRIDriver NO    /* For libOSmesa */
  1075. #endif
  1076.  
  1077. # ifndef UseX86Emu
  1078. #  define UseX86Emu        YES
  1079. # endif
  1080.  
  1081. #define X86INT10_STUB   0
  1082. #define X86EMU_GENERIC  1
  1083. #define X86VM           2
  1084. #define X86EMU_OS       3
  1085.  
  1086. #ifndef XF86INT10_BUILD
  1087. # if UseX86Emu
  1088. #  define XF86INT10_BUILD        X86EMU_GENERIC
  1089. # else
  1090. #  define XF86INT10_BUILD        X86INT10_STUB
  1091. # endif
  1092. #endif
  1093. /*
  1094.  * Build the Rush extension library (non standard extension for cooperation
  1095.  * between glide library and X server). Enabled by default only for Linux.
  1096.  */
  1097. #ifndef BuildXF86RushExt
  1098. # define BuildXF86RushExt    NO
  1099. #endif
  1100.  
  1101. #ifndef BuildDBElib
  1102. # define BuildDBElib    YES
  1103. #endif
  1104.  
  1105. #ifndef BuildRECORDlib
  1106. # define BuildRECORDlib    YES
  1107. #endif
  1108.  
  1109. #ifndef BuildXKBlib
  1110. # define BuildXKBlib    YES
  1111. #endif
  1112.  
  1113. #ifndef BuildScreenSaverExt
  1114. # define BuildScreenSaverExt    YES
  1115. #endif
  1116.  
  1117. /*
  1118.  * Build XInput support
  1119.  */
  1120. #ifndef BuildXInputExt
  1121. # define BuildXInputExt        YES
  1122. #endif
  1123.  
  1124. /* Build Xinerama (aka panoramiX) extension */
  1125. #ifndef BuildXinerama
  1126. # define BuildXinerama        YES
  1127. #endif
  1128.  
  1129. /* Build Render extension */
  1130. #ifndef BuildRender
  1131. # define BuildRender        YES
  1132. #endif
  1133.  
  1134. #if 0
  1135. #ifndef JoystickSupport
  1136. # define JoystickSupport    NO
  1137. #endif
  1138. #endif
  1139.  
  1140. #if 0
  1141. /*
  1142.  * Build the extra extension libs even when not including the extra extensions
  1143.  * in the servers
  1144.  */
  1145. #ifndef BuildScreenSaverLibrary
  1146. # define BuildScreenSaverLibrary   YES
  1147. #endif
  1148. #ifndef BuildXF86MiscLibrary
  1149. # define BuildXF86MiscLibrary    YES
  1150. #endif
  1151. #ifndef BuildXF86DGALibrary
  1152. # define BuildXF86DGALibrary    YES
  1153. #endif
  1154. #ifndef BuildXF86VidModeLibrary
  1155. # define BuildXF86VidModeLibrary YES
  1156. #endif
  1157. #ifndef BuildXvLibrary
  1158. # define BuildXvLibrary        YES
  1159. #endif
  1160. #ifndef BuildXvMCLibrary
  1161. # define BuildXvMCLibrary    YES
  1162. #endif
  1163. #ifndef BuildGLXLibrary
  1164. # define BuildGLXLibrary    YES
  1165. #endif
  1166. #ifndef BuildXResLibrary
  1167. # define BuildXResLibrary       YES
  1168. #endif
  1169. #endif
  1170.  
  1171. /*
  1172.  * Build the XFree86-VidMode extension
  1173.  */
  1174. #ifndef BuildXF86VidModeExt
  1175. # define BuildXF86VidModeExt        YES
  1176. #endif
  1177.  
  1178. /* Don't build this now because the interface hasn't been done yet */
  1179. /*
  1180.  * Build the XFree86-Misc extension
  1181.  */
  1182. #ifndef BuildXF86MiscExt
  1183. # define BuildXF86MiscExt        YES
  1184. #endif
  1185.  
  1186. /*
  1187.  * Build the XFree86-Bigfont extension
  1188.  */
  1189. #ifndef BuildXF86BigfontExt
  1190. # define BuildXF86BigfontExt        YES
  1191. #endif
  1192.  
  1193. /*
  1194.  * Build the XFree86 DGA support
  1195.  */
  1196. #ifndef BuildXF86DGA
  1197. # define BuildXF86DGA            YES
  1198. #endif
  1199.  
  1200. /*
  1201.  * Build the DPMS extension support
  1202.  */
  1203. #ifndef BuildDPMSExt
  1204. # define BuildDPMSExt            YES
  1205. #endif
  1206.  
  1207. /*
  1208.  * Build the X Video Extension
  1209.  */
  1210. #ifndef BuildXvExt
  1211. # define BuildXvExt            YES
  1212. #endif
  1213.  
  1214. /*
  1215.  * Build the X Video Motion Compensation Extension
  1216.  */
  1217. #ifndef BuildXvMCExt
  1218. # define BuildXvMCExt            YES
  1219. #endif
  1220.  
  1221. /*
  1222.  * Build the X-Resource Extension 
  1223.  */
  1224. #ifndef BuildXResExt
  1225. # define BuildXResExt                   YES
  1226. #endif
  1227.  
  1228. #if Malloc0ReturnsNull
  1229. # ifndef XtMalloc0ReturnsNullDefines
  1230. #  define XtMalloc0ReturnsNullDefines    Malloc0ReturnsNullDefines -DXTMALLOC_BC
  1231. # endif
  1232. #endif
  1233.  
  1234. #ifndef UseInternalMalloc
  1235. # define UseInternalMalloc    NO
  1236. #endif
  1237.  
  1238. #ifndef HasDlsymBug
  1239. # define HasDlsymBug        NO
  1240. #endif
  1241.  
  1242. #ifndef HasMTRRSupport
  1243. # define HasMTRRSupport        NO
  1244. #endif
  1245.  
  1246. /*
  1247.  * Build the font server
  1248.  */
  1249. #ifndef BuildFontServer
  1250. # define BuildFontServer    YES
  1251. #endif
  1252.  
  1253. /*
  1254.  * Include fonts support
  1255.  */
  1256. #ifndef BuildSpeedo
  1257. # define BuildSpeedo        NO
  1258. #endif
  1259.  
  1260. #ifndef BuildType1
  1261. # define BuildType1        NO
  1262. #endif
  1263.  
  1264. #ifndef BuildCID
  1265. # define BuildCID        YES
  1266. #endif
  1267.  
  1268. #ifndef BuildFreeType
  1269. # define BuildFreeType        YES
  1270. #endif
  1271.  
  1272. /*
  1273.  * By default, build all of the fonts.
  1274.  */
  1275. #ifndef Build75DpiFonts
  1276. # define Build75DpiFonts    YES
  1277. #endif
  1278. #ifndef Build100DpiFonts
  1279. # define Build100DpiFonts    YES
  1280. #endif
  1281. #ifndef BuildSpeedoFonts
  1282. # define BuildSpeedoFonts    NO
  1283. #endif
  1284. #ifndef BuildType1Fonts
  1285. # define BuildType1Fonts    YES
  1286. #endif
  1287. #ifndef BuildCIDFonts
  1288. # define BuildCIDFonts        YES
  1289. #endif
  1290. #ifndef BuildTrueTypeFonts
  1291. # define BuildTrueTypeFonts    YES
  1292. #endif
  1293. #ifndef BuildCyrillicFonts
  1294. # define BuildCyrillicFonts    YES
  1295. #endif
  1296.  
  1297. /*
  1298.  * Build scanpci?
  1299.  */
  1300. #ifndef SystemV
  1301. #define SystemV            NO
  1302. #endif
  1303. #ifndef SystemV4
  1304. #define SystemV4        NO
  1305. #endif
  1306. #ifndef BuildScanpci
  1307. # if SystemV || SystemV4 || \
  1308.     (defined(LinuxArchitecture) && !defined(Mc68020Architecture)) || \
  1309.     defined(i386BsdArchitecture) || defined(LynxOSArchitecture) || \
  1310.     defined(OS2Architecture) || defined(GNUMachArchitecture) || \
  1311.     (defined(KFreeBSDArchitecture) && defined(i386Architecture))
  1312. #   define BuildScanpci        YES
  1313. # else
  1314. #   define BuildScanpci        NO
  1315. # endif
  1316. #endif
  1317.  
  1318. #ifndef CompressAllFonts
  1319. # define CompressAllFonts    YES
  1320. #endif
  1321.  
  1322. #ifndef GzipFontCompression
  1323. # define GzipFontCompression    YES
  1324. #endif
  1325.  
  1326. /* Disable stripping installed programs for this release. */
  1327. #ifndef StripInstalledPrograms
  1328. # define StripInstalledPrograms    NO
  1329. #endif
  1330.  
  1331. #ifndef InstallJapaneseDocs
  1332. #define InstallJapaneseDocs    NO
  1333. #endif
  1334.  
  1335. #if BuildXF86DGA
  1336. # define XFree86DGADefines    -DXFreeXDGA
  1337. #else
  1338. # define XFree86DGADefines    /**/
  1339. #endif
  1340.  
  1341. #if BuildXvExt
  1342. # define XFree86XvDefines    -DXvExtension
  1343. #else
  1344. # define XFree86XvDefines    /**/
  1345. #endif
  1346.  
  1347. #if BuildXvMCExt
  1348. # define XFree86XvMCDefines    -DXvMCExtension
  1349. #else
  1350. # define XFree86XvMCDefines    /**/
  1351. #endif
  1352.  
  1353. #if BuildXResExt
  1354. # define XFree86XResDefines     -DXResExtension
  1355. #else
  1356. # define XFree86XResDefines     /**/
  1357. #endif
  1358.  
  1359. #ifndef DlopenHack
  1360. # define DlopenHack        -DDLOPEN_HACK
  1361. #endif
  1362.  
  1363. #ifndef ExtraLoaderDefines
  1364. # if MakeDllModules
  1365. #  define ExtraLoaderDefines    DlopenHack
  1366. # else
  1367. #  define ExtraLoaderDefines    /**/
  1368. # endif
  1369. #endif
  1370.  
  1371. #if DoLoadableServer
  1372. # define XFree86LoaderDefines    -DXFree86LOADER ExtraLoaderDefines
  1373. #else
  1374. # define XFree86LoaderDefines    /**/
  1375. #endif
  1376.  
  1377. #ifndef HasBsdMake
  1378. #define HasBsdMake        NO
  1379. #endif
  1380.  
  1381. #ifndef MakeHasPosixVariableSubstitutions
  1382. # if !HasBsdMake && !defined(SunArchitecture)
  1383. #  define MakeHasPosixVariableSubstitutions    NO
  1384. # else
  1385. #  define MakeHasPosixVariableSubstitutions    YES
  1386. # endif
  1387. #endif
  1388.  
  1389. #ifndef UseSmartScheduler
  1390. #define UseSmartScheduler YES
  1391. #endif
  1392.  
  1393. #if UseSmartScheduler
  1394. #define SmartScheduleDefines -DSMART_SCHEDULE
  1395. #else
  1396. #define SmartScheduleDefines /**/
  1397. #endif
  1398.  
  1399. /* Server defines required for all OSs */
  1400. #ifndef XFree86ServerDefines
  1401. # define XFree86ServerDefines    -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH \
  1402.                 XFree86DGADefines XFree86XvDefines \
  1403.                 XFree86LoaderDefines -DXFree86Server \
  1404.                 VidModeExtensionDefines \
  1405.                 XFree86XvMCDefines \
  1406.                 SmartScheduleDefines \
  1407.                 DebugDefines XFree86XResDefines \
  1408.                 -DX_BYTE_ORDER=$(X_BYTE_ORDER) \
  1409.                 VersionDefines
  1410. #endif
  1411.  
  1412. #ifndef XFree86ServerOSDefines
  1413. # define XFree86ServerOSDefines    -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \
  1414.                 -DDDXOSVERRORF
  1415. #endif
  1416.  
  1417. #ifndef XFree86ConsoleDefines
  1418. # if defined(i386BsdArchitecture) || defined(AlphaBsdArchitecture) || (defined(KFreeBSDArchitecture) && defined(i386Architecture))
  1419. #  define XFree86ConsoleDefines    -DPCCONS_SUPPORT -DSYSCONS_SUPPORT -DPCVT_SUPPORT
  1420. # elif defined(KFreeBSDArchitecture)
  1421. #  define XFree86ConsoleDefines -DSYSCONS_SUPPORT
  1422. # else
  1423. #  define XFree86ConsoleDefines    /**/
  1424. # endif
  1425. #endif
  1426.  
  1427. /* Support for USB mouse */
  1428. #ifndef UsbMouseSupport
  1429. # define UsbMouseSupport NO
  1430. #endif
  1431. /* Does this OS have libusb ? */
  1432. #ifndef HasLibUsb
  1433. # define HasLibUsb    NO
  1434. #endif
  1435.  
  1436. #ifndef UseServerLock
  1437. # define UseServerLock    YES
  1438. #endif
  1439.  
  1440. #ifndef XnestServer
  1441. # define XnestServer        YES
  1442. #endif
  1443. #ifndef XVirtualFramebufferServer
  1444. # define XVirtualFramebufferServer    YES
  1445. #endif
  1446.  
  1447. #ifndef ServerExtraDefines
  1448. # define ServerExtraDefines    XFree86ServerDefines
  1449. #endif
  1450.  
  1451. #ifndef ServerOSDefines
  1452. # define ServerOSDefines    XFree86ServerOSDefines
  1453. #endif
  1454.  
  1455. #ifndef DriverSDKDir
  1456. # define DriverSDKDir     $(USRLIBDIR)/Server
  1457. #endif
  1458.  
  1459. #ifndef DriverSDKModuleDir
  1460. # define DriverSDKModuleDir     $(USRLIBDIR)/Server/modules
  1461. #endif
  1462.  
  1463. #ifndef DriverSDKIncludeDir
  1464. # define DriverSDKIncludeDir     $(USRLIBDIR)/Server/include
  1465. #endif
  1466.  
  1467. DRIVERSDKDIR = DriverSDKDir
  1468. DRIVERSDKMODULEDIR = DriverSDKModuleDir
  1469. DRIVERSDKINCLUDEDIR = DriverSDKIncludeDir
  1470.  
  1471. /*
  1472.  * Some commonly refered to directories are defined here.
  1473.  */
  1474.  
  1475.        XF86SRC = $(SERVERSRC)/hw/xfree86
  1476.     XF86COMSRC = $(XF86SRC)/common
  1477.  XF86PARSERSRC = $(XF86SRC)/parser
  1478.      XF86OSSRC = $(XF86SRC)/os-support
  1479.  XF86DRIVERSRC = $(XF86SRC)/drivers
  1480.      DRIVERSRC = $(XF86DRIVERSRC)
  1481.  
  1482. /*
  1483.  * Installed location of the XFree86 documentation
  1484.  */
  1485.  
  1486.         XFREE86DOCDIR = $(DOCDIR)
  1487.       XFREE86PSDOCDIR = $(DOCPSDIR)
  1488.      XFREE86PDFDOCDIR = $(DOCPDFDIR)
  1489.     XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
  1490. XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
  1491.  
  1492. /*
  1493.  * Other stuff used in the X Server source.
  1494.  */
  1495.  
  1496. #ifndef OtherIConfigFiles
  1497. # define OtherIConfigFiles $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules
  1498. #endif
  1499.  
  1500. #ifndef UseRgbTxt
  1501. # define UseRgbTxt    YES
  1502. #endif
  1503.  
  1504. /*
  1505.  * GNU Compiler stuff
  1506.  */
  1507. #ifndef HasGcc3
  1508. # define HasGcc3 NO
  1509. #endif
  1510. #ifndef HasGcc2
  1511. # define HasGcc2 HasGcc3
  1512. #endif
  1513. #ifndef HasGcc
  1514. # define HasGcc HasGcc2
  1515. #endif
  1516. #ifndef HasGcc2ForCplusplus
  1517. # define HasGcc2ForCplusplus HasGcc2
  1518. #endif
  1519.  
  1520. #if HasGcc
  1521. # ifndef Gcc28Warnings
  1522. #  if (GccMajorVersion > 2) || \
  1523.       ((GccMajorVersion == 2) && (GccMinorVersion >= 8))
  1524. #   define Gcc28Warnings -Wundef
  1525. #  else
  1526. #   define Gcc28Warnings /* */
  1527. #  endif
  1528. # ifndef HasGcc34
  1529. #  if (((GccMajorVersion == 3) && (GccMinorVersion >= 4)) ||    \
  1530.      (GccMajorVersion > 3))
  1531. #   define HasGcc34 YES
  1532. #  else
  1533. #   define HasGcc34 NO
  1534. #  endif
  1535. # endif
  1536. # endif
  1537. # ifndef GccWarningOptions
  1538. #  if XFree86Devel
  1539. #   define GccWarningOptions -Wall -Wpointer-arith -Wstrict-prototypes \
  1540.               -Wmissing-prototypes -Wmissing-declarations \
  1541.               -Wredundant-decls -Wnested-externs Gcc28Warnings
  1542. #  else
  1543. #   define GccWarningOptions -Wall -Wpointer-arith Gcc28Warnings
  1544. #  endif
  1545. # endif
  1546. # ifndef DefaultCCOptions
  1547. #  if defined(UseInstalled)
  1548. #   define DefaultCCOptions /* -ansi */
  1549. #  else
  1550. #   define DefaultCCOptions -ansi GccWarningOptions
  1551. #  endif
  1552. # endif
  1553. # if defined(UseInstalled)
  1554. #  ifndef UseGccMakeDepend
  1555. #   define UseGccMakeDepend YES
  1556. #  endif
  1557. # endif
  1558. #endif
  1559.  
  1560. /* Make imake noisier.  Note that this is ineffective for 3.0 <= GCC <= 3.2 */
  1561. #ifndef ImakeWarningFlags
  1562. # ifdef Gcc28Warnings
  1563. #  define ImakeWarningFlags Gcc28Warnings
  1564. # else
  1565. #  define ImakeWarningFlags /* */
  1566. # endif
  1567. #endif
  1568.  
  1569. #if  ((GccMajorVersion == 3) &&  (GccMinorVersion >= 1)) || (GccMajorVersion > 3)
  1570. # define GccAliasingArgs      -fno-strict-aliasing
  1571. #else
  1572. # define GccAliasingArgs      /* */
  1573. #endif
  1574.  
  1575. #if HasGcc2 && defined(i386Architecture)
  1576. # ifndef DefaultGcc2i386Opt
  1577. #  define DefaultGcc2i386Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  1578. # endif
  1579. #endif
  1580.  
  1581. #if HasGcc2 && defined(AMD64Architecture)
  1582. # ifndef DefaultGcc2AMD64Opt
  1583. #  define DefaultGcc2AMD64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  1584. # endif
  1585. #endif
  1586.  
  1587. #if HasGcc2 && defined(AlphaArchitecture)
  1588. # ifndef DefaultGcc2AxpOpt
  1589. #  define DefaultGcc2AxpOpt DefaultGcc2OptimizeOpt GccAliasingArgs
  1590. # endif
  1591. #endif
  1592.  
  1593. #if HasGcc2 && defined(Ppc64Architecture)
  1594. # ifndef DefaultGcc2Ppc64Opt
  1595. #  define DefaultGcc2Ppc64Opt DefaultGcc2OptimizeOpt GccAliasingArgs
  1596. # endif
  1597. #endif
  1598.  
  1599. #if HasGcc2 && defined(MipsArchitecture)
  1600. # ifndef DefaultGcc2MipsOpt
  1601. #  define DefaultGcc2MipsOpt DefaultGcc2OptimizeOpt GccAliasingArgs
  1602. # endif
  1603. #endif
  1604.  
  1605. #if HasGcc2 && defined(PpcArchitecture)
  1606. # ifndef DefaultGcc2PpcOpt
  1607. #  define DefaultGcc2PpcOpt DefaultGcc2OptimizeOpt GccAliasingArgs
  1608. # endif
  1609. #endif
  1610.  
  1611. #ifndef DefaultGcc2DebugOpt
  1612. # define DefaultGcc2DebugOpt -g
  1613. #endif
  1614.  
  1615. #ifndef DebuggableLibraries
  1616. # define DebuggableLibraries NO
  1617. #endif
  1618.  
  1619. #if HasGcc2 && DebuggableLibraries
  1620. # define LibraryDebugOpt DefaultGcc2DebugOpt
  1621. #endif
  1622.  
  1623. /*
  1624.  * Some versions of gcc have optimisation bugs that cause problems building
  1625.  * some files.  The definitions here cover those.
  1626.  */
  1627.  
  1628. #ifndef Egcs112Bug
  1629.   /* Not exactly precise, but it'll do for now... */
  1630. # if HasGcc2 && defined(i386Architecture) && \
  1631.      (GccMajorVersion == 2) && (GccMinorVersion > 8)
  1632. #  define Egcs112Bug YES
  1633. # else
  1634. #  define Egcs112Bug NO
  1635. # endif
  1636. #endif
  1637.  
  1638. #ifdef i386Architecture
  1639. # ifndef HasX86Support
  1640. #  define HasX86Support YES
  1641. # endif
  1642. # ifndef HasMMXSupport
  1643. #  define HasMMXSupport YES
  1644. # endif
  1645. # ifndef HasSSESupport
  1646. #  define HasSSESupport NO
  1647. # endif
  1648. # ifndef Has3DNowSupport
  1649. #  define Has3DNowSupport NO
  1650. # endif
  1651. #elif defined (AMD64Architecture)
  1652. # ifndef HasX86Support
  1653. #  define HasX86Support NO
  1654. # endif
  1655. # ifndef HasMMXSupport
  1656. #  define HasMMXSupport NO
  1657. # endif
  1658. # ifndef HasSSESupport
  1659. #  define HasSSESupport NO
  1660. # endif
  1661. # ifndef Has3DNowSupport
  1662. #  define Has3DNowSupport NO
  1663. # endif
  1664. #else 
  1665. # ifndef HasX86Support
  1666. #  define HasX86Support NO
  1667. # endif
  1668. # ifndef HasMMXSupport
  1669. #  define HasMMXSupport NO
  1670. # endif
  1671. # ifndef HasSSESupport
  1672. #  define HasSSESupport NO
  1673. # endif
  1674. # ifndef Has3DNowSupport
  1675. #  define Has3DNowSupport NO
  1676. # endif
  1677. #endif
  1678.  
  1679. #ifndef StaticNeedsPicForShared
  1680. # if defined (AMD64Architecture)\
  1681.   || defined (AlphaArchitecture) \
  1682.   || defined (ia64Architecture) \
  1683.   || defined (PpcArchitecture) \
  1684.   || defined (SparcArchitecture) \
  1685.   || defined (s390xArchitecture) 
  1686. #  define StaticNeedsPicForShared YES
  1687. # else
  1688. #  define StaticNeedsPicForShared NO
  1689. # endif
  1690. #endif
  1691.  
  1692. #if (defined(SparcArchitecture) || defined(Sparc64Architecture)) \
  1693.     && !defined(LargePositionIndependentCFlags) \
  1694.     && defined(HasGcc)
  1695. # define LargePositionIndependentCFlags -fPIC
  1696. #endif
  1697.  
  1698. #ifndef XF8_32Wid
  1699. # define XF8_32Wid        NO
  1700. #endif
  1701.  
  1702. #if CrossCompiling
  1703. #include <cross.def>
  1704. #endif
  1705. #include <xf86.rules>
  1706.  
  1707.