home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / lib / X11 / config / X11.tmpl < prev    next >
Encoding:
Text File  |  2006-12-20  |  118.3 KB  |  4,914 lines

  1. XCOMM ----------------------------------------------------------------------
  2. XCOMM X Window System Build Parameters and Rules
  3. XCOMM $XdotOrg: util/cf/X11.tmpl,v 1.54 2006/04/15 15:55:25 herrb Exp $
  4. XCOMM $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
  5. XCOMM
  6. XCOMM
  7. XCOMM
  8. XCOMM
  9. XCOMM $XFree86: xc/config/cf/X11.tmpl,v 1.248 2004/02/16 04:07:37 dawes Exp $
  10.  
  11. /***************************************************************************
  12.  *                                                                         *
  13.  *                            DEFAULT DEFINITIONS                          *
  14.  *                                                                         *
  15.  * The following section contains defaults for things that can             *
  16.  * overridden in the various *.cf and site.def files.  DO NOT EDIT!        *
  17.  *                                                                         *
  18.  **************************************************************************/
  19.  
  20. #define ProjectX        604    /* do *not* change this line */
  21.  
  22. /* The following project-specific rules are defined at the end of this file:
  23.  *
  24.  * InstallAppDefaults        (class)
  25.  * InstallAppDefaultsLong    (file,class)
  26.  * MakeFontsDir            (deplist)
  27.  * MakeFcCache            (deplist)
  28.  * MakeFonts            ()
  29.  * InstallFontObjs        (objs,dest)
  30.  * InstallFonts            (dest)
  31.  * InstallFontAliases        (dest)
  32.  * InstallFcCache        (dest)
  33.  * FontSrc            (basename)
  34.  * FontBaseObj            (basename)
  35.  * InstallFontScale        (dest)
  36.  * UncompressedFontTarget    (basename)
  37.  * CompressedFontTarget        (basename)
  38.  * FontTarget            (basename)
  39.  * FontObj            (basename)
  40.  * MakeXkbDir            (basedir,subdir)
  41.  */
  42.  
  43. /* X.Org release string */
  44. #ifndef XOrgReleaseString
  45. # if defined XorgVersionString
  46. #   define XOrgReleaseString    Release XorgVersionString
  47. # else
  48. #   define XOrgReleaseString    Release 6.9
  49. # endif
  50. #endif
  51.  
  52. #ifndef XOrgManNameString
  53. #define XOrgManNameString    X Version 11
  54. #endif
  55. #ifndef XOrgNameString
  56. # define XOrgNameString   The X.Org Foundation
  57. #endif
  58. #ifndef XOrgNameStringShort
  59. # define XOrgNameStringShort   X.Org
  60. #endif
  61. #ifndef XOrgStdFilePrefix
  62. # define XOrgStdFilePrefix     xorg
  63. #endif
  64. #ifndef XOrgWebSupportAddress
  65. # define XOrgWebSupportAddress http://wiki.X.Org
  66. #endif
  67.  
  68. XORGRELSTRING = XorgManVersionString      
  69.   XORGMANNAME = XOrgManNameString
  70.  
  71. #ifndef XOrgManDefs
  72. #define XOrgManDefs -D__xorgversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\""
  73. #endif
  74.  
  75. #ifndef XVendorManNameString
  76. #define XVendorManNameString XOrgManNameString
  77. #endif
  78. #ifndef XVendorManVersionString
  79. #define XVendorManVersionString XOrgReleaseString
  80. #endif
  81. #ifndef XVendorNameString
  82. # define XVendorNameString XOrgNameString
  83. #endif
  84. #ifndef XVendorNameStringShort
  85. # define XVendorNameStringShort XOrgNameStringShort
  86. #endif
  87. #ifndef XVendorWebSupport
  88. # define XVendorWebSupport XOrgWebSupportAddress
  89. #endif
  90. #ifndef XVendorStdFilePrefix
  91. # define XVendorStdFilePrefix XOrgStdFilePrefix
  92. #endif
  93.  
  94. #ifndef VendorManDefs
  95. #define VendorManDefs -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"
  96. #endif
  97.  
  98. #ifndef VendorDefines
  99. #define VendorDefines -DXVENDORNAME='"$(VENDORNAME)"' -DXVENDORNAMESHORT='"$(VENDORNAMESHORT)"'
  100. #endif
  101.  
  102. #ifndef VendorSupportDefines
  103. # if defined XVendorWebSupport
  104. #  define VendorSupportDefines -D__VENDORDWEBSUPPORT__='"$(VENDORWEBSUPPORT)"'
  105. # endif
  106. #endif
  107. /*
  108.  * X-specific things
  109.  */
  110. #if CrossCompiling && !defined(UseInstalledOnCrossCompile)
  111. # if defined(UseInstalled)
  112. #  define UseInstalledOnCrossCompile YES
  113. # else
  114. #  define UseInstalledOnCrossCompile NO
  115. # endif
  116. #endif
  117.  
  118. #ifndef HasXServer
  119. #define HasXServer        YES
  120. #endif
  121. /* xorg.cf sets XorgServer to YES - to build Xorg you must include xorg.cf 
  122.  * from the .cf file for your platform.
  123.  */
  124. #ifndef XorgServer
  125. #define XorgServer        NO  
  126. #endif
  127. #ifndef BuildServer
  128. #define BuildServer        HasXServer
  129. #endif
  130. #ifndef BuildServersOnly
  131. #define BuildServersOnly    NO
  132. #endif
  133. #ifndef BuildClients
  134. #define BuildClients        !BuildServersOnly
  135. #endif
  136. #ifndef BuildDocs
  137. #define BuildDocs        !BuildServersOnly
  138. #endif
  139. #ifndef BuildDmx
  140. #define BuildDmx        NO
  141. #endif
  142. #ifndef XdmxServer
  143. #define XdmxServer        BuildDmx
  144. #endif
  145. #ifndef BuildLibrariesForDmx
  146. #define BuildLibrariesForDmx    XdmxServer
  147. #endif
  148. #ifndef BuildLibraries
  149. #define BuildLibraries        (!BuildServersOnly || BuildClients || \
  150.                  BuildLibrariesForDmx)
  151. #endif
  152. #ifndef BuildLibrariesForXServers
  153. #define BuildLibrariesForXServers    BuildServer
  154. #endif
  155. #ifndef BuildFontServer
  156. #define BuildFontServer        YES
  157. #endif
  158. #ifndef XserverStaticFontLib
  159. #define XserverStaticFontLib    YES
  160. #endif
  161. #ifndef BuildSpeedo
  162. #define BuildSpeedo        NO
  163. #endif
  164. #ifndef BuildType1
  165. #define BuildType1        NO
  166. #endif
  167. #ifndef BuildCID
  168. #define BuildCID        YES
  169. #endif
  170. #ifndef BuildFreeType
  171. #define BuildFreeType        NO
  172. #endif
  173. #ifndef BuildBuiltinFonts
  174. #define BuildBuiltinFonts    NO
  175. #endif
  176. #ifndef BuildFonts
  177. #define BuildFonts        (BuildServer | BuildFontServer)
  178. #endif
  179. #ifndef Build75DpiFonts
  180. #define Build75DpiFonts        YES
  181. #endif
  182. #ifndef Build100DpiFonts
  183. #define Build100DpiFonts    YES
  184. #endif
  185. #ifndef BuildSpeedoFonts
  186. #define BuildSpeedoFonts    NO
  187. #endif
  188. #ifndef BuildType1Fonts
  189. #define BuildType1Fonts        YES
  190. #endif
  191. #ifndef BuildCIDFonts
  192. #define BuildCIDFonts        YES
  193. #endif
  194. #ifndef BuildTrueTypeFonts
  195. #define BuildTrueTypeFonts    YES
  196. #endif
  197. #ifndef BuildBethMarduthoFonts
  198. #define BuildBethMarduthoFonts    NO
  199. #endif
  200. #ifndef BuildEthiopicFonts
  201. #define BuildEthiopicFonts    NO
  202. #endif
  203. #ifndef BuildCyrillicFonts
  204. #define BuildCyrillicFonts    YES
  205. #endif
  206. /* Some bdf font generation details.  The scripts for this require perl. */
  207. #ifndef TruncateUCSFonts
  208. #define TruncateUCSFonts    HasPerl5
  209. #endif
  210. #ifndef MaxUCSChar
  211. #define MaxUCSChar        0x3200
  212. #endif
  213. #ifndef DerivedUCSFonts
  214. #define DerivedUCSFonts        YES
  215. #endif
  216. /* These primarily control generation of derived 8-bit fonts. */
  217. #ifndef BuildUCSFonts
  218. #define BuildUCSFonts        YES
  219. #endif
  220. /* Setting BuildISO8859_1Fonts to NO may result in problems. */
  221. #ifndef BuildISO8859_1Fonts
  222. #define BuildISO8859_1Fonts    YES
  223. #endif
  224. #ifndef BuildISO8859_2Fonts
  225. #define BuildISO8859_2Fonts    YES
  226. #endif
  227. #ifndef BuildISO8859_3Fonts
  228. #define BuildISO8859_3Fonts    YES
  229. #endif
  230. #ifndef BuildISO8859_4Fonts
  231. #define BuildISO8859_4Fonts    YES
  232. #endif
  233. #ifndef BuildISO8859_5Fonts
  234. #define BuildISO8859_5Fonts    BuildCyrillicFonts
  235. #endif
  236. #ifndef BuildArabicFonts
  237. #define BuildArabicFonts    YES
  238. #endif
  239. #ifndef BuildISO8859_6Fonts
  240. #define BuildISO8859_6Fonts    BuildArabicFonts
  241. #endif
  242. #ifndef BuildGreekFonts
  243. #define BuildGreekFonts        YES
  244. #endif
  245. #ifndef BuildISO8859_7Fonts
  246. #define BuildISO8859_7Fonts    BuildGreekFonts
  247. #endif
  248. #ifndef BuildHebrewFonts
  249. #define BuildHebrewFonts    YES
  250. #endif
  251. #ifndef BuildISO8859_8Fonts
  252. #define BuildISO8859_8Fonts    BuildHebrewFonts
  253. #endif
  254. #ifndef BuildISO8859_9Fonts
  255. #define BuildISO8859_9Fonts    YES
  256. #endif
  257. #ifndef BuildISO8859_10Fonts
  258. #define BuildISO8859_10Fonts    YES
  259. #endif
  260. #ifndef BuildThaiFonts
  261. #define BuildThaiFonts        YES
  262. #endif
  263. #ifndef BuildISO8859_11Fonts
  264. #define BuildISO8859_11Fonts    BuildThaiFonts
  265. #endif
  266. #ifndef BuildISO8859_13Fonts
  267. #define BuildISO8859_13Fonts    YES
  268. #endif
  269. #ifndef BuildISO8859_14Fonts
  270. #define BuildISO8859_14Fonts    YES
  271. #endif
  272. #ifndef BuildISO8859_15Fonts
  273. #define BuildISO8859_15Fonts    YES
  274. #endif
  275. #ifndef BuildISO8859_16Fonts
  276. #define BuildISO8859_16Fonts    YES
  277. #endif
  278. #ifndef BuildKOI8_RFonts
  279. #define BuildKOI8_RFonts    BuildCyrillicFonts
  280. #endif
  281. #ifndef BuildJapaneseFonts
  282. #define BuildJapaneseFonts    YES
  283. #endif
  284. #ifndef BuildJISX0201Fonts
  285. #define BuildJISX0201Fonts    BuildJapaneseFonts
  286. #endif
  287. #ifndef BuildKoreanFonts
  288. #define BuildKoreanFonts    YES
  289. #endif
  290. #ifndef BuildChineseFonts
  291. #define BuildChineseFonts    YES
  292. #endif
  293. #ifndef MakeLocalFontDir
  294. #define MakeLocalFontDir    YES
  295. #endif
  296. #ifndef HasXAudio
  297. #define HasXAudio        NO
  298. #endif
  299. #ifndef BuildXAudio
  300. #define BuildXAudio        (HasXAudio & HasCplusplus)
  301. #endif
  302. #ifndef HasXAServer
  303. #define HasXAServer        NO
  304. #endif
  305. #ifndef BuildXAServer
  306. #define BuildXAServer        (HasXAServer & HasCplusplus)
  307. #endif
  308. #ifndef BuildX11Lib
  309. #define BuildX11Lib        BuildLibraries
  310. #endif
  311.  
  312. #ifndef BuildLoadableXlibI18n
  313. #define BuildLoadableXlibI18n    (HasDlopen && SharedLibX11)
  314. #endif
  315. #ifndef InstallXcmsTxt
  316. #define InstallXcmsTxt        YES
  317. #endif
  318. /*
  319.  * This disables XLOCALEDIR.  Set it if you're using BuildLoadableXlibI18n,
  320.  * don't have either issetugid() or getresuid(), and you need to protect
  321.  * clients that are setgid or setuid to an id other than 0.
  322.  */
  323. #ifndef DisableXLocaleDirEnv
  324. #define DisableXLocaleDirEnv    BuildLoadableXlibI18n && \
  325.                     !(HasIssetugid || HasGetresuid)
  326. #endif
  327. #ifndef BuildLoadableXlibXcursor
  328. #define BuildLoadableXlibXcursor (HasDlopen && SharedLibX11)
  329. #endif
  330. #ifndef BuildXextLib
  331. #define BuildXextLib        BuildLibraries
  332. #endif
  333. #ifndef BuildXauLib
  334. #define BuildXauLib        (BuildLibraries || BuildLibrariesForXServers)
  335. #endif
  336. #define UseInstalledXauLib    (defined(UseInstalled) || !BuildXauLib)
  337. #ifndef BuildXdmcpLib
  338. #define BuildXdmcpLib        (BuildLibraries || BuildLibrariesForXServers)
  339. #endif
  340. #define UseInstalledXdmcpLib    (defined(UseInstalled) || !BuildXdmcpLib)
  341. #ifndef BuildMITMiscExt
  342. #define BuildMITMiscExt        YES
  343. #endif
  344. #ifndef BuildTestExt
  345. #define BuildTestExt        YES
  346. #endif
  347. #ifndef BuildSyncExt
  348. #define BuildSyncExt        YES
  349. #endif
  350. #ifndef BuildXCMiscExt
  351. #define BuildXCMiscExt        YES
  352. #endif
  353. #ifndef BuildShapeExt
  354. #define BuildShapeExt        YES
  355. #endif
  356. #ifndef BuildBigReqsExt
  357. #define BuildBigReqsExt        YES
  358. #endif
  359. #ifndef BuildXInputExt
  360. #define BuildXInputExt        NO
  361. #endif
  362. #ifndef BuildXInputLib
  363. #define BuildXInputLib        (BuildXInputExt && \
  364.                  (!BuildServersOnly || BuildLibrariesForDmx))
  365. #endif
  366. #ifndef BuildEVI
  367. #define BuildEVI        YES
  368. #endif
  369. #ifndef BuildDBE
  370. #define BuildDBE        YES
  371. #endif
  372. #ifndef BuildDBElib
  373. #define BuildDBElib        BuildDBE
  374. #endif
  375. #ifndef BuildDIS
  376. #define BuildDIS        NO
  377. #endif
  378. #ifndef BuildDPMS
  379. #define BuildDPMS        YES
  380. #endif
  381. #ifndef BuildFontLib
  382. #if (!defined(XF86Server) || !XF86Server) && (!defined (XorgServer) || !XorgServer)
  383. #define BuildFontLib        (BuildLibraries || BuildServer)
  384. #else
  385. #define BuildFontLib        (BuildLibraries || \
  386.                  (BuildServer && !DoLoadableServer) || \
  387.                  XnestServer || XVirtualFramebufferServer || \
  388.                  XprtServer || XdmxServer)
  389. #endif
  390. #endif
  391. #ifndef BuildFontCache
  392. #define BuildFontCache        NO
  393. #endif
  394. #ifndef BuildFontCacheLib
  395. #define BuildFontCacheLib    (BuildFontCache && !BuildServersOnly)
  396. #endif
  397. #ifndef BuildFontEncLib
  398. #define BuildFontEncLib        BuildLibraries
  399. #endif
  400. /*
  401.  * This enables binary compatibility with the older (XFree86 <= 4.1) fontenc
  402.  * entry points in the Xfont library (and X server).  If this is turned off,
  403.  * then SharedFontRev should have it's major revision bumped, and the
  404.  * XFree86 font module ABI (in xfree86/common/xf86Module.h) should have it's
  405.  * major revision bumped.
  406.  *
  407.  * Note: this does not enable those older functions in the separate libfontenc
  408.  * library (which didn't exist previously).
  409.  */
  410. #ifndef FontencCompatibility
  411. #define FontencCompatibility    YES
  412. #endif
  413. #ifndef BuildLBX
  414. #define BuildLBX        YES
  415. #endif
  416. #ifndef BuildXKB
  417. #define BuildXKB        YES
  418. #endif
  419. #ifndef BuildXKBlib
  420. #define BuildXKBlib        (BuildXKB && (!BuildServersOnly || \
  421.                           XnestServer || XdmxServer || \
  422.                           BuildXkbcomp ))
  423. #endif
  424. #ifndef BuildXKBuilib
  425. #define BuildXKBuilib        (BuildXKB && !BuildServersOnly)
  426. #endif
  427. #ifndef BuildXKBfilelib
  428. #define BuildXKBfilelib        (BuildXKB && (!BuildServersOnly || \
  429.                           BuildXkbcomp ))
  430. #endif
  431. #ifndef BuildXTrap
  432. #define BuildXTrap        YES
  433. #endif
  434. #ifndef BuildXTrapLibrary
  435. #define BuildXTrapLibrary    (BuildXTrap && !BuildServersOnly)
  436. #endif
  437.  
  438.     /*
  439.      * WARNING: Setting UseXKBInClients to YES cause incompatibilities
  440.      *          between many clients (such as xterm) and pre-XKB shared
  441.      *          libraries.
  442.      */
  443. #ifndef UseXKBInClients
  444. #define    UseXKBInClients        NO    /* use XKB in "normal" clients? */
  445. #endif
  446. #ifndef BuildMultibuffer
  447. #define BuildMultibuffer    NO
  448. #endif
  449. #ifndef BuildRECORD
  450. #define BuildRECORD        YES
  451. #endif
  452. #ifndef BuildRECORDlib
  453. #define BuildRECORDlib        BuildRECORD
  454. #endif
  455. #ifndef BuildXinerama
  456. #define BuildXinerama        NO
  457. #endif
  458. #ifndef BuildXineramaLibrary
  459. #define BuildXineramaLibrary    (BuildXinerama && !BuildServersOnly)
  460. #endif
  461. #ifndef BuildDmxDevelTools
  462. #define BuildDmxDevelTools    NO
  463. #endif
  464. #ifndef BuildDmxLibrary
  465. #define BuildDmxLibrary        (BuildDmx && \
  466.                  (!BuildServersOnly || BuildDmxDevelTools))
  467. #endif
  468. #ifndef BuildXCSecurity
  469. #define BuildXCSecurity        YES
  470. #endif
  471. #ifndef BuildAppgroup
  472. #define BuildAppgroup        YES
  473. #endif
  474. #if BuildAppgroup && !BuildXCSecurity
  475. #define BuildXCSecurity         YES
  476. #endif
  477. #ifndef BuildCup
  478. #define BuildCup        YES
  479. #endif
  480. #ifndef HasPlugin
  481. /* Browser plugins are shared libraries - only build them if the OS
  482.  * supports shared libs.
  483.  */
  484. #define HasPlugin        HasSharedLibraries
  485. #endif
  486. #ifndef BuildPlugin
  487. #define BuildPlugin        HasPlugin
  488. #endif
  489. #ifndef XpRasterDDX
  490. #define XpRasterDDX             YES
  491. #endif
  492. #ifndef XpColorPclDDX
  493. #define XpColorPclDDX           YES
  494. #endif
  495. #ifndef XpMonoPclDDX
  496. #define XpMonoPclDDX            YES
  497. #endif
  498. #ifndef XpPostScriptDDX
  499. #define XpPostScriptDDX         YES
  500. #endif
  501. #ifndef XpPdfDDX
  502. #define XpPdfDDX                YES
  503. #endif
  504. #ifndef XpSvgDDX
  505. #define XpSvgDDX                YES
  506. #endif
  507.  
  508. #ifndef BuildXprint
  509. #define BuildXprint        YES
  510. #endif
  511. #ifndef XprtServer
  512. #define XprtServer        (BuildServer && BuildXprint)
  513. #endif
  514. #ifndef BuildXprintLib
  515. #define BuildXprintLib        (!BuildServersOnly && BuildXprint)
  516. #endif
  517. #ifndef BuildXprintClients
  518. #define BuildXprintClients    BuildXprintLib
  519. #endif
  520.  
  521. #ifndef BuildScreenSaverExt
  522. #define BuildScreenSaverExt    NO
  523. #endif
  524. #ifndef BuildScreenSaverLibrary
  525. #define BuildScreenSaverLibrary    (BuildScreenSaverExt && !BuildServersOnly)
  526. #endif
  527. #ifndef BuildXF86VidModeExt
  528. #define BuildXF86VidModeExt    NO
  529. #endif
  530. #ifndef BuildXF86VidModeLibrary
  531. #define BuildXF86VidModeLibrary (BuildXF86VidModeExt && !BuildServersOnly)
  532. #endif
  533. #ifndef BuildXF86MiscExt
  534. #define BuildXF86MiscExt    NO
  535. #endif
  536. #ifndef BuildXF86MiscLibrary
  537. #define BuildXF86MiscLibrary    (BuildXF86MiscExt && !BuildServersOnly)
  538. #endif
  539. #ifndef BuildXF86BigfontExt
  540. #define BuildXF86BigfontExt    NO
  541. #endif
  542. #ifndef BuildXF86DGA
  543. #define BuildXF86DGA        NO
  544. #endif
  545. #ifndef BuildXF86DGALibrary
  546. #define BuildXF86DGALibrary    (BuildXF86DGA && !BuildServersOnly)
  547. #endif
  548. #ifndef BuildXResExt
  549. #define BuildXResExt            NO
  550. #endif
  551. #ifndef BuildXResLibrary
  552. #define BuildXResLibrary        (BuildXResExt && \
  553.                  (!BuildServersOnly || BuildDmxDevelTools))
  554. #endif
  555. #ifndef BuildXvExt
  556. #define BuildXvExt        NO
  557. #endif
  558. #ifndef BuildXvLibrary
  559. #define BuildXvLibrary        (BuildXvExt && !BuildServersOnly)
  560. #endif
  561. #ifndef BuildXvMCExt
  562. #define BuildXvMCExt        NO
  563. #endif
  564. #ifndef BuildXvMCLibrary
  565. #define BuildXvMCLibrary    (BuildXvMCExt && !BuildServersOnly)
  566. #endif
  567. #ifndef BuildGlxExt
  568. #define BuildGlxExt        NO
  569. #else
  570. #if     BuildGlxExt && !defined(XFree86Version) && !defined(XorgVersion)
  571. #undef  BuildXF86DRI
  572. #undef  BuildXF86DRIDriverSupport
  573. #define BuildXF86DRI            NO
  574. #define BuildXF86DRIDriverSupport    NO
  575. #endif
  576. #endif
  577. #ifndef BuildGLXLibrary
  578. #define BuildGLXLibrary        (BuildGlxExt && !BuildServersOnly)
  579. #endif
  580. #ifndef BuildOSMesaLib
  581. #define BuildOSMesaLib        BuildGlxExt
  582. #endif
  583. #ifndef BuildGLULibrary
  584. #define BuildGLULibrary        (BuildGLXLibrary && BuildLibraries && \
  585.                  HasCplusplus)
  586. #endif
  587. #ifndef BuildGLwLibrary
  588. #define BuildGLwLibrary        (BuildGLXLibrary && BuildLibraries)
  589. #endif
  590. #ifndef BuildXDriInfo
  591. #define BuildXDriInfo        (BuildGLXLibrary && !BuildServersOnly)
  592. #endif
  593. #ifndef BuildXF86RushExt
  594. #define BuildXF86RushExt    NO
  595. #endif
  596. #ifndef BuildXF86RushLibrary
  597. #define BuildXF86RushLibrary    (BuildXF86RushExt && !BuildServersOnly)
  598. #endif
  599. #ifndef BuildDPSLibraries
  600. #define BuildDPSLibraries    NO
  601. #endif
  602. #ifndef BuildDPSLibrary
  603. #define BuildDPSLibrary        BuildDPSLibraries
  604. #endif
  605. #ifndef BuildDPSTkLibrary
  606. #define BuildDPSTkLibrary    BuildDPSLibraries
  607. #endif
  608. #ifndef BuildPSResLibrary
  609. #define BuildPSResLibrary    BuildDPSLibraries
  610. #endif
  611. #ifndef BuildDPSClients
  612. #define BuildDPSClients         BuildDPSLibraries
  613. #endif
  614. #ifndef BuildRender
  615. #define BuildRender        YES
  616. #endif
  617. #ifndef HasRenderLibrary
  618. #define HasRenderLibrary    NO
  619. #endif
  620. #ifndef BuildRenderLibrary
  621. #define BuildRenderLibrary    (XdmxServer || (!HasRenderLibrary && BuildLibraries))
  622. #endif
  623. #ifndef HasXftLibrary
  624. #define HasXftLibrary        NO
  625. #endif
  626. #ifndef BuildXftLibrary
  627. #define BuildXftLibrary        ((BuildRenderLibrary || HasRenderLibrary) && BuildLibraries)
  628. #endif
  629. #ifndef BuildXft1Library
  630. #define BuildXft1Library    BuildRenderLibrary
  631. #endif
  632. #ifndef UseFontconfig
  633. #define UseFontconfig        (BuildXftLibrary || HasXftLibrary)
  634. #endif
  635. #ifndef BuildFontconfigLibrary
  636. #define BuildFontconfigLibrary    (UseFontconfig && !HasFontconfig)
  637. #endif
  638. #ifndef UseFreetype2
  639. #define UseFreetype2        (BuildXftLibrary || HasXftLibrary || BuildXft1Library || \
  640.                  UseFontconfig || BuildFreeType)
  641. #endif
  642. #ifndef InstallFontconfigLibrary
  643. # define InstallFontconfigLibrary  YES
  644. #endif
  645. #ifndef HasExpat
  646. #define HasExpat        YES
  647. #endif
  648. #ifndef UseExpat
  649. #define UseExpat        (UseFontconfig || BuildXF86DRI)
  650. #endif
  651. #ifndef BuildExpatLibrary
  652. #define BuildExpatLibrary    (UseExpat && !HasExpat)
  653. #endif
  654. #ifndef BuildFreetype2Library
  655. #define BuildFreetype2Library    (UseFreetype2 && !HasFreetype2)
  656. #endif
  657. #ifndef Freetype2BuildDefines
  658. #define Freetype2BuildDefines    /**/
  659. #endif
  660.  
  661. #ifndef BuildRandR
  662. #define BuildRandR        YES
  663. #endif
  664. #ifndef BuildRandRLibrary
  665. #define BuildRandRLibrary    !BuildServersOnly
  666. #endif
  667.  
  668. #ifndef BuildXfixes
  669. #define BuildXfixes        YES
  670. #endif
  671. #ifndef BuildXfixesLibrary
  672. #define BuildXfixesLibrary    !BuildServersOnly
  673. #endif
  674.  
  675. #ifndef BuildDamage
  676. #define BuildDamage        BuildXfixes
  677. #endif
  678. #ifndef BuildDamageLibrary
  679. #define BuildDamageLibrary    !BuildServersOnly
  680. #endif
  681.  
  682. #ifndef BuildComposite
  683. #define BuildComposite        (BuildXfixes && BuildDamage)
  684. #endif
  685. #ifndef BuildCompositeLibrary
  686. #define BuildCompositeLibrary    !BuildServersOnly && (BuildXfixesLibrary && \
  687.                 BuildDamageLibrary)
  688. #endif
  689.  
  690. #ifndef BuildXevie
  691. #define BuildXevie        YES
  692. #endif
  693. #ifndef BuildXevieLibrary
  694. #define BuildXevieLibrary    !BuildServersOnly
  695. #endif
  696.  
  697. #ifndef BuildRootless
  698. #define BuildRootless    NO
  699. #endif
  700.  
  701. #ifndef BuildXterm
  702. #define BuildXterm        NO
  703. #endif
  704.  
  705. #ifndef BuildXkbcomp
  706. #define BuildXkbcomp        BuildClients
  707. #endif
  708.  
  709. #ifndef HasXcursorLibrary
  710. #define HasXcursorLibrary    NO
  711. #endif
  712.  
  713. #ifndef BuildXcursorLibrary
  714. #define BuildXcursorLibrary    ((BuildRenderLibrary || HasRenderLibrary) && !HasXcursorLibrary && BuildLibraries)
  715. #endif
  716.  
  717. #ifndef BuildXcursorgen
  718. #define BuildXcursorgen        HasLibpng
  719. #endif
  720.  
  721. #ifndef DefaultCursorTheme
  722. #define DefaultCursorTheme    core
  723. #endif
  724.  
  725. #ifndef BuildAppleWMLibrary
  726. #define BuildAppleWMLibrary    NO
  727. #endif
  728.  
  729. #ifndef BuildWindowsWMLibrary
  730. #define BuildWindowsWMLibrary    NO
  731. #endif
  732.  
  733. #ifndef BuildMiscDocs
  734. #define BuildMiscDocs        NO
  735. #endif
  736. #ifndef BuildSpecsDocs
  737. #define BuildSpecsDocs        NO
  738. #endif
  739. #ifndef BuildAllSpecsDocs
  740. #define BuildAllSpecsDocs    NO
  741. #endif
  742.  
  743. #ifndef InstallHardcopyDocs
  744. #define InstallHardcopyDocs    YES
  745. #endif
  746.  
  747. #ifndef InstallMiscManPages
  748. #define InstallMiscManPages    YES
  749. #endif
  750.  
  751. #ifndef FSUseSyslog
  752. #define FSUseSyslog        NO
  753. #endif
  754.  
  755. #ifndef InstallLibManPages
  756. #define InstallLibManPages    YES
  757. #endif
  758. #ifndef InstallXtermSetUID
  759. #define InstallXtermSetUID    YES    /* xterm needs to be set uid */
  760. #endif
  761. #ifndef InstallXloadSetGID
  762. #define InstallXloadSetGID    YES    /* xload often needs set gid kmem */
  763. #endif
  764. #ifndef InstallXinitConfig
  765. #define InstallXinitConfig    NO    /* install sample xinit config */
  766. #endif
  767. #ifndef InstallXdmConfig
  768. #define InstallXdmConfig    NO    /* install sample xdm config */
  769. #endif
  770. #ifndef XdmServersType            /* what Xservers files to use */
  771. #if BuildServer
  772. #define XdmServersType ws
  773. #else
  774. #define XdmServersType fs
  775. #endif
  776. #endif
  777. #ifndef InstallFSConfig
  778. #define InstallFSConfig        NO    /* install sample fs config */
  779. #endif
  780. #ifndef InstallAppDefFiles
  781. #define InstallAppDefFiles    YES    /* install application defaults */
  782. #endif
  783. #ifndef UseConfDirForAppDefaults
  784. #define UseConfDirForAppDefaults YES
  785. #endif
  786. #ifndef UseConfDirForXkb
  787. #define UseConfDirForXkb    YES
  788. #endif
  789. #ifndef CompressAllFonts
  790. #define CompressAllFonts    NO
  791. #endif
  792. #ifndef ThreadedX
  793. #if HasPosixThreads || HasCThreads
  794. #define ThreadedX        YES    /* multi-threaded libraries */
  795. #else
  796. #define ThreadedX        NO
  797. #endif
  798. #endif
  799. #ifndef ThreadedProject
  800. #define ThreadedProject ThreadedX
  801. #endif
  802. #ifndef NeedUIThrStubs
  803. #define NeedUIThrStubs        NO
  804. #endif
  805. #ifndef HasWChar32
  806. #define HasWChar32        SystemV4
  807. #endif
  808. #ifndef HasXdmAuth
  809. #define HasXdmAuth        NO    /* if you can not use XDM-AUTH* */
  810. #endif
  811. #ifndef PrimaryScreenResolution
  812. #define PrimaryScreenResolution 72        /* a common resolution */
  813. #endif
  814. #ifndef DefaultFontPath
  815. # if PrimaryScreenResolution < 88        /* (75 + 100) / 2 */
  816. #  define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/TTF/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/75dpi/,$(FONTDIR)/100dpi/
  817. # else
  818. #  define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/TTF/,$(FONTDIR)/Type1/,$(FONTDIR)/CID/,$(FONTDIR)/100dpi/,$(FONTDIR)/75dpi/
  819. # endif
  820. #endif
  821. #ifndef DefaultFSFontPath
  822. # define DefaultFSFontPath DefaultFontPath
  823. #endif
  824. #ifndef DefaultRGBDatabase
  825. #define DefaultRGBDatabase $(SHAREDIR)/rgb
  826. #endif
  827. #ifndef UseRgbTxt
  828. #define UseRgbTxt        NO    /* default is to compile with dbm */
  829. #endif
  830. #ifndef UseMemLeak
  831. #define UseMemLeak        NO
  832. #endif
  833. #ifndef SpecialMalloc
  834. #define SpecialMalloc        NO
  835. #endif
  836. #ifndef UseInternalMalloc
  837. #define UseInternalMalloc    NO
  838. #endif
  839. #ifndef XallocDefines
  840. #define XallocDefines        /**/
  841. #endif
  842. #ifndef ServerErrorDefines
  843. #define ServerErrorDefines    /**/
  844. #endif
  845. #ifndef FontCompilerFlags
  846. #define FontCompilerFlags -t
  847. #endif
  848. /*
  849.  * NOTE:  IPv6Flags could be tacked on to either ConnectionFlags or
  850.  *        ExtraConnectionDefs.  Here, we choose the later in order to
  851.  *        maximise exposure of the IPv6 code (a number of <OS>.def files
  852.  *        contain ConnectionFlags overrides).  Mind you, this might not
  853.  *        the right thing to do when HasStreams is asserted.
  854.  */
  855. #ifndef BuildIPv6        /* If the OS also #define's AF_INET6 */
  856. #define BuildIPv6        YES
  857. #endif
  858. #ifndef IPv6Flags
  859. #if BuildIPv6
  860. #define IPv6Flags -DIPv6
  861. #else
  862. #define IPv6Flags /**/
  863. #endif
  864. #endif
  865. /*
  866.  * Assume by default that IPv6 sockets also listen for IPv4 connections.
  867.  * XDMCP support currently only works for both IPv4 and IPv6 when this is
  868.  * true.
  869.  */
  870. #ifndef IPv6SocketsAlsoIPv4
  871. #define IPv6SocketsAlsoIPv4    YES
  872. #endif
  873. #ifndef DECnetFlags
  874. #if HasDECnet
  875. #define DECnetFlags -DDNETCONN
  876. #else
  877. #define DECnetFlags
  878. #endif
  879. #endif
  880. #ifndef ConnectionFlags
  881. #if HasStreams
  882. #define ConnectionFlags -DSTREAMSCONN
  883. #else
  884. #define ConnectionFlags -DTCPCONN -DUNIXCONN DECnetFlags
  885. #endif
  886. #endif
  887. #if HasStickyDirBit
  888. STICKY_DEFINES = -DHAS_STICKY_DIR_BIT
  889. #endif
  890. #if HasFchown
  891. FCHOWN_DEFINES = -DHAS_FCHOWN
  892. #endif
  893. #ifndef ExtraConnectionDefs
  894. #define ExtraConnectionDefs $(STICKY_DEFINES) $(FCHOWN_DEFINES) IPv6Flags
  895. #endif
  896. #ifndef ProjectThreadsDefines
  897. #define ProjectThreadsDefines -DXTHREADS
  898. #endif
  899. #ifndef FontOSDefines
  900. #define FontOSDefines /**/
  901. #endif
  902. #ifndef FontDefines
  903. #define FontDefines -DFONT_SNF -DFONT_BDF -DFONT_PCF -DCOMPRESSED_FONTS FontOSDefines
  904. #endif
  905. #ifndef XawI18nDefines
  906. #if SystemV4
  907. #define XawI18nDefines -DHAS_WCTYPE_H
  908. #else
  909. #define XawI18nDefines -DUSE_XWCHAR_STRING
  910. #endif
  911. #endif
  912. #if Malloc0ReturnsNull
  913. #ifndef XMalloc0ReturnsNullDefines
  914. #define XMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines
  915. #endif
  916. #ifndef XtMalloc0ReturnsNullDefines
  917. #define XtMalloc0ReturnsNullDefines Malloc0ReturnsNullDefines -DXTMALLOC_BC
  918. #endif
  919. #endif
  920. #ifndef ExtensionOSDefines
  921. #define ExtensionOSDefines /**/
  922. #endif
  923.  
  924. #ifndef ExtensionDefines
  925. #ifndef MITMiscDefines
  926. #if BuildMITMiscExt
  927. #define MITMiscDefines -DMITMISC
  928. #else
  929. #define MITMiscDefines /**/
  930. #endif
  931. #endif
  932. #ifndef XTestDefines
  933. #if BuildTestExt
  934. #define XTestDefines -DXTEST
  935. #else
  936. #define XTestDefines /**/
  937. #endif
  938. #endif
  939. #ifndef XTrapDefines
  940. #if BuildXTrap
  941. #define XTrapDefines -DXTRAP
  942. #else
  943. #define XTrapDefines /**/
  944. #endif
  945. #endif
  946. #ifndef XSyncDefines
  947. #if BuildSyncExt
  948. #define XSyncDefines -DXSYNC
  949. #else
  950. #define XSyncDefines /**/
  951. #endif
  952. #endif
  953. #ifndef XCMiscDefines
  954. #if BuildXCMiscExt
  955. #define XCMiscDefines -DXCMISC
  956. #else
  957. #define XCMiscDefines /**/
  958. #endif
  959. #endif
  960. #ifndef ShapeDefines
  961. #if BuildShapeExt
  962. #define ShapeDefines -DSHAPE
  963. #else
  964. #define ShapeDefines /**/
  965. #endif
  966. #endif
  967. #ifndef GlxDefines
  968. #if BuildGlxExt
  969. #ifdef GlxExtraDefines
  970. #define GlxDefines -DGLXEXT GlxExtraDefines
  971. #else
  972. #define GlxDefines -DGLXEXT
  973. #endif
  974. #else
  975. #define GlxDefines /**/
  976. #endif
  977. #endif
  978. #ifndef DRMSrcDir
  979. #define DRMSrcDir $(TOP)/extras/drm
  980. #endif
  981. #ifndef MesaSrcDir
  982. #define MesaSrcDir $(TOP)/extras/Mesa
  983. #endif
  984. #ifndef OglSampleSrcDir
  985. #define OglSampleSrcDir $(TOP)/extras/ogl-sample
  986. #endif
  987. #ifndef ShmDefines
  988. #if HasShm
  989. #define ShmDefines -DMITSHM
  990. #else
  991. #define ShmDefines /**/
  992. #endif
  993. #endif
  994. #ifndef XInputDefines
  995. #if BuildXInputExt
  996. #define XInputDefines -DXINPUT
  997. #else
  998. #define XInputDefines /**/
  999. #endif
  1000. #endif
  1001. #ifndef XineramaDefines
  1002. #if BuildXinerama
  1003. #define XineramaDefines -DPANORAMIX
  1004. #else
  1005. #define XineramaDefines /**/
  1006. #endif
  1007. #endif
  1008. #ifndef PrintOnlyServer
  1009. #define PrintOnlyServer YES
  1010. #endif
  1011. #ifndef XprintDefines
  1012. #if BuildXprint
  1013. #if PrintOnlyServer
  1014. #define XprintDefines -DXPRINT -DPIXPRIV
  1015. #else
  1016. #define XprintDefines -DXPRINT -DLOADABLEPRINTDDX -DPIXPRIV
  1017. #endif
  1018. #else
  1019. #define XprintDefines /**/
  1020. #endif
  1021. #endif
  1022. #ifndef XkbDefines
  1023. #if BuildXKB
  1024. #define XkbDefines -DXKB
  1025. #else
  1026. #define XkbDefines /**/
  1027. #endif
  1028. #endif
  1029. #ifndef XkbClientDefines
  1030. #if UseXKBInClients
  1031. #define XkbClientDefines -DXKB
  1032. #else
  1033. #define XkbClientDefines /**/
  1034. #endif
  1035. #endif
  1036. #ifndef XkbServerDefines
  1037. #define XkbServerDefines /**/
  1038. #endif
  1039. #ifndef XkbDefRulesDefines
  1040. #define XkbDefRulesDefines  -D__XKBDEFRULES__='"$(XKBDEFRULES)"'
  1041. #endif
  1042. # ifndef XkbDefaultRulesFile
  1043. # define XkbDefaultRulesFile  XVendorStdFilePrefix
  1044. #endif
  1045. #ifndef LbxDefines
  1046. #if BuildLBX
  1047. #define LbxDefines -DLBX
  1048. #else
  1049. #define LbxDefines /**/
  1050. #endif
  1051. #endif
  1052. #ifndef BigReqDefines
  1053. #if BuildBigReqsExt
  1054. #define BigReqDefines -DBIGREQS
  1055. #else
  1056. #define BigReqDefines /**/
  1057. #endif
  1058. #endif
  1059.  
  1060. #ifndef EVIDefines
  1061. #if BuildEVI
  1062. #define EVIDefines -DEVI
  1063. #else
  1064. #define EVIDefines /**/
  1065. #endif
  1066. #endif
  1067.  
  1068. #ifndef DBEDefines
  1069. #if BuildDBE
  1070. #define DBEDefines -DDBE
  1071. #else
  1072. #define DBEDefines /**/
  1073. #endif
  1074. #endif
  1075.  
  1076. #ifndef PervasiveDBEDefines
  1077. #define PervasiveDBEDefines /* -DNEED_DBE_BUF_BITS -DNEED_DBE_BUF_VALIDATE */
  1078. #endif
  1079.  
  1080. #ifndef MultibufferDefines
  1081. #if BuildMultibuffer
  1082. #define MultibufferDefines -DMULTIBUFFER
  1083. #else
  1084. #define MultibufferDefines /**/
  1085. #endif
  1086. #endif
  1087.  
  1088. #ifndef ScreenSaverExtensionDefines
  1089. #if BuildScreenSaverExt
  1090. #define ScreenSaverExtensionDefines -DSCREENSAVER
  1091. #else
  1092. #define ScreenSaverExtensionDefines /**/
  1093. #endif
  1094. #endif
  1095. #ifndef VidModeExtensionDefines
  1096. #if BuildXF86VidModeExt
  1097. #define VidModeExtensionDefines -DXF86VIDMODE
  1098. #else
  1099. #define VidModeExtensionDefines /**/
  1100. #endif
  1101. #endif
  1102. #ifndef XF86MiscExtensionDefines
  1103. #if BuildXF86MiscExt
  1104. #define XF86MiscExtensionDefines -DXF86MISC
  1105. #else
  1106. #define XF86MiscExtensionDefines /**/
  1107. #endif
  1108. #endif
  1109.  
  1110. #ifndef XF86BigfontExtensionDefines
  1111. #if BuildXF86BigfontExt
  1112. #define XF86BigfontExtensionDefines -DXF86BIGFONT
  1113. #else
  1114. #define XF86BigfontExtensionDefines /**/
  1115. #endif
  1116. #endif
  1117.  
  1118. #ifndef XvExtensionDefines
  1119. #if BuildXvExt
  1120. #define XvExtensionDefines -DXV
  1121. #else
  1122. #define XvExtensionDefines /**/
  1123. #endif
  1124. #endif
  1125.  
  1126. #ifndef XvMCExtensionDefines
  1127. #if BuildXvMCExt
  1128. #define XvMCExtensionDefines -DXVMC
  1129. #else
  1130. #define XvMCExtensionDefines /**/
  1131. #endif
  1132. #endif
  1133.  
  1134. #ifndef XResExtensionDefines
  1135. #if BuildXResExt
  1136. #define XResExtensionDefines -DRES
  1137. #else
  1138. #define XResExtensionDefines /**/
  1139. #endif
  1140. #endif
  1141.  
  1142. #ifndef RECORDDefines
  1143. #if BuildRECORD
  1144. #define RECORDDefines -DXRECORD
  1145. #else
  1146. #define RECORDDefines /**/
  1147. #endif
  1148. #endif
  1149.  
  1150. #ifndef AppgroupDefines
  1151. #if BuildAppgroup
  1152. #define AppgroupDefines -DXAPPGROUP
  1153. #else
  1154. #define AppgroupDefines /**/
  1155. #endif
  1156. #endif
  1157.  
  1158. #ifndef XCSecurityDefines
  1159. #if BuildXCSecurity
  1160. #define XCSecurityDefines -DXCSECURITY
  1161. #else
  1162. #define XCSecurityDefines /**/
  1163. #endif
  1164. #endif
  1165.  
  1166. #ifndef CupDefines
  1167. #if BuildCup
  1168. #define CupDefines -DTOGCUP
  1169. #else
  1170. #define CupDefines /**/
  1171. #endif
  1172. #endif
  1173.  
  1174. #ifndef DPMSDefines
  1175. #if BuildDPMS
  1176. #define DPMSDefines -DDPMSExtension
  1177. #else
  1178. #define DPMSDefines /**/
  1179. #endif
  1180. #endif
  1181.  
  1182. #ifndef RenderDefines
  1183. #if BuildRender || HasRenderLibrary
  1184. #define RenderDefines -DRENDER
  1185. #else
  1186. #define RenderDefines /**/
  1187. #endif
  1188. #endif
  1189.  
  1190. #ifndef RandRDefines
  1191. #if BuildRandR
  1192. #define RandRDefines -DRANDR
  1193. #else
  1194. #define RandRDefines /**/
  1195. #endif
  1196. #endif
  1197.  
  1198. #ifndef FontCacheExtentionDefines
  1199. #if BuildFontCache
  1200. #define FontCacheExtensionDefines    -DFONTCACHE
  1201. #else
  1202. #define FontCacheExtensionDefines    /**/
  1203. #endif
  1204. #endif
  1205.  
  1206. #ifndef XfixesDefines
  1207. #if BuildXfixes
  1208. #define XfixesDefines -DXFIXES
  1209. #else
  1210. #define XfixesDefines /**/
  1211. #endif
  1212. #endif
  1213.  
  1214. #ifndef XDamageDefines
  1215. #if BuildDamage
  1216. #define XDamageDefines -DDAMAGE
  1217. #else
  1218. #define XDamageDefines /**/
  1219. #endif
  1220. #endif
  1221.  
  1222. #ifndef CompositeDefines
  1223. #if BuildComposite
  1224. #define CompositeDefines -DCOMPOSITE
  1225. #else
  1226. #define CompositeDefines /**/
  1227. #endif
  1228. #endif
  1229.  
  1230. #ifndef XevieDefines
  1231. #if BuildXevie
  1232. #define XevieDefines -DXEVIE
  1233. #else
  1234. #define XevieDefines /**/
  1235. #endif
  1236. #endif
  1237.  
  1238. #ifndef RootlessDefines
  1239. #if BuildRootless
  1240. #define RootlessDefines -DROOTLESS
  1241. #else
  1242. #define RootlessDefines /**/
  1243. #endif
  1244. #endif
  1245.  
  1246. #ifndef SitePervasiveExtensionDefines
  1247. #define SitePervasiveExtensionDefines /**/
  1248. #endif
  1249. #ifndef PervasiveExtensionDefines
  1250. #define PervasiveExtensionDefines \
  1251.     ShapeDefines XInputDefines XkbDefines LbxDefines AppgroupDefines \
  1252.     XCSecurityDefines CupDefines PervasiveDBEDefines \
  1253.     XF86BigfontExtensionDefines DPMSDefines \
  1254.     XprintDefines XineramaDefines \
  1255.     SitePervasiveExtensionDefines RenderDefines RandRDefines \
  1256.     XfixesDefines XDamageDefines CompositeDefines XevieDefines \
  1257.     RootlessDefines
  1258. #endif
  1259. #ifndef SiteExtensionDefines
  1260. #define SiteExtensionDefines /**/
  1261. #endif
  1262. #ifndef BaseExtensionDefines
  1263. #define BaseExtensionDefines \
  1264.     MultibufferDefines MITMiscDefines XTestDefines XTrapDefines \
  1265.     XSyncDefines XCMiscDefines RECORDDefines \
  1266.     ShmDefines BigReqDefines VidModeExtensionDefines \
  1267.     XF86MiscExtensionDefines DBEDefines DPMSDefines EVIDefines \
  1268.     ScreenSaverExtensionDefines XvExtensionDefines XvMCExtensionDefines \
  1269.     GlxDefines FontCacheExtensionDefines SiteExtensionDefines \
  1270.         XResExtensionDefines
  1271. #endif
  1272. #define ExtensionDefines BaseExtensionDefines ExtensionOSDefines
  1273. #endif /* ExtensionDefines */
  1274.  
  1275. #ifndef HasStrcasecmp
  1276. #define HasStrcasecmp YES
  1277. #endif
  1278.  
  1279. #ifndef StrcasecmpDefines
  1280. # if HasStrcasecmp
  1281. #  define StrcasecmpDefines /**/
  1282. # else
  1283. #  define StrcasecmpDefines -DNEED_STRCASECMP
  1284. # endif
  1285. #endif
  1286.  
  1287. #ifndef HasDevRandom
  1288. #define HasDevRandom NO
  1289. #endif
  1290.  
  1291. #ifndef HasArc4Random
  1292. #define HasArc4Random NO
  1293. #endif
  1294.  
  1295. #ifndef RandomDefines
  1296. # if HasDevRandom
  1297. #  ifndef RandomDeviceFile
  1298. #   define RandomDeviceFile /dev/random
  1299. #  endif
  1300. #  ifndef ExtraRandomDefines
  1301. #   ifdef PollDevRandom /* Set if can poll() /dev/random to avoid blocking */
  1302. #    define ExtraRandomDefines -DPOLL_DEV_RANDOM
  1303. #   else
  1304. #    define ExtraRandomDefines /**/
  1305. #   endif
  1306. #  endif
  1307. #  define RandomDefines -DDEV_RANDOM=\"RandomDeviceFile\" ExtraRandomDefines
  1308. # elif HasArc4Random
  1309. #  define RandomDefines -DARC4_RANDOM
  1310. # else
  1311. #  define RandomDefines /**/
  1312. # endif
  1313. #endif
  1314.  
  1315. #ifndef PreferXdmcpIPv6
  1316. #define PreferXdmcpIPv6 NO
  1317. #endif
  1318. #ifndef ServerXdmcpIPv6Defines
  1319. #if BuildIPv6 && !IPv6SocketsAlsoIPv4 && !PreferXdmcpIPv6
  1320. #define ServerXdmcpIPv6Defines -DXDMCP_NO_IPV6
  1321. #else
  1322. #define ServerXdmcpIPv6Defines /**/
  1323. #endif
  1324. #endif
  1325.  
  1326. #ifndef ServerXdmcpDefines
  1327. #define ServerXdmcpDefines -DXDMCP ServerXdmcpIPv6Defines
  1328. #endif
  1329. #ifndef ServerOSDefines
  1330. #define ServerOSDefines /**/
  1331. #endif
  1332. #if HasKrbIV
  1333. #ifndef KrbIVDefines
  1334. #define KrbIVDefines -DKERBEROS
  1335. #endif
  1336. #else
  1337. #define KrbIVDefines /**/
  1338. #endif
  1339. #if HasKrb5
  1340. #ifndef Krb5Defines
  1341. #define Krb5Defines -DK5AUTH
  1342. #endif
  1343. #else
  1344. #define Krb5Defines /**/
  1345. #endif
  1346. #ifndef ServerExtraDefines
  1347. #define ServerExtraDefines /* -DPIXPRIV */
  1348. #endif
  1349. #ifndef ServerAssertDefines
  1350. #define ServerAssertDefines -DNDEBUG
  1351. #endif
  1352. #ifndef ServerSnprintfDefines
  1353. #if !HasSnprintf
  1354. #define ServerSnprintfDefines -DNEED_SNPRINTF
  1355. #else
  1356. #define ServerSnprintfDefines /**/
  1357. #endif
  1358. #endif
  1359. #ifndef ServerDefines
  1360. #define ServerDefines StandardDefines PervasiveExtensionDefines ServerExtraDefines ServerAssertDefines ServerSnprintfDefines
  1361. #endif
  1362.  
  1363. #ifndef MesaUseX86Asm
  1364. /* The current Mesa X86 ASM code doesn't work well with SVR4 shared libs. */
  1365. # if HasX86Support && !SystemV4
  1366. #  define MesaUseX86Asm YES
  1367. # else
  1368. #  define MesaUseX86Asm NO
  1369. # endif
  1370. #endif
  1371.  
  1372. #ifndef MesaUseMMX
  1373. #ifdef HasMMXSupport
  1374. #define MesaUseMMX HasMMXSupport
  1375. #else
  1376. #define MesaUseMMX NO
  1377. #endif
  1378. #endif
  1379.  
  1380. #ifndef MesaUse3DNow
  1381. #ifdef Has3DNowSupport
  1382. #define MesaUse3DNow Has3DNowSupport
  1383. #else
  1384. #define MesaUse3DNow NO
  1385. #endif
  1386. #endif
  1387.  
  1388. #ifndef MesaUseSSE
  1389. #ifdef HasSSESupport
  1390. #define MesaUseSSE HasSSESupport
  1391. #else
  1392. #define MesaUseSSE NO
  1393. #endif
  1394. #endif
  1395.  
  1396. /* For compatibility */
  1397. #ifdef HasSSESupport
  1398. #undef HasKatmaiSupport
  1399. #define HasKatmaiSupport HasSSESupport
  1400. #endif
  1401. #undef MesaUseKatmai
  1402. #define MesaUseKatmai MesaUseSSE
  1403.  
  1404. #ifndef UsbMouseSupport
  1405. # define UsbMouseSupport NO
  1406. #endif
  1407.  
  1408. #ifndef DefaultFSConfigFile
  1409. #define DefaultFSConfigFile $(LIBDIR)/fs/config
  1410. #endif
  1411.  
  1412. #ifndef BinDir
  1413. #ifdef ProjectRoot
  1414. #define BinDir Concat(ProjectRoot,/bin)
  1415. #else
  1416. #define BinDir /usr/bin/X11
  1417. #endif
  1418. #endif
  1419. #ifndef BuildIncRoot
  1420. #define BuildIncRoot $(TOP)/exports
  1421. #endif
  1422. #ifndef BuildIncDir
  1423. #define BuildIncDir $(BUILDINCROOT)/include
  1424. #endif
  1425. #ifndef BuildIncTop
  1426. #define BuildIncTop ../..    /* relative to BuildIncDir */
  1427. #endif
  1428. #ifndef XTop
  1429. # if ImportX11
  1430. #  define XTop $(TOP)/imports/x11
  1431. # else
  1432. #  define XTop $(TOP)
  1433. # endif
  1434. #endif
  1435. #ifndef XBuildIncRoot
  1436. # if ImportX11
  1437. #  define XBuildIncRoot    $(XTOP)
  1438. # else
  1439. #  define XBuildIncRoot    $(XTOP)/exports
  1440. # endif
  1441. #endif
  1442. #ifndef XBuildIncDir
  1443. # define XBuildIncDir    $(XBUILDINCROOT)/include/X11
  1444. #endif
  1445. #ifndef XBuildIncTop
  1446. # define XBuildIncTop    ../../..
  1447. #endif
  1448. #ifndef XBuildBinDir
  1449. # define XBuildBinDir    $(XBUILDINCROOT)/bin
  1450. #endif
  1451. #ifndef BuildBinDir
  1452. #define BuildBinDir $(TOP)/exports/bin
  1453. #endif
  1454. #ifndef BuildBinTop
  1455. #define BuildBinTop ../..    /* relative to BuildBinDir */
  1456. #endif
  1457. #ifndef BuildLibDir
  1458. #define BuildLibDir $(TOP)/exports/lib
  1459. #endif
  1460. #ifndef BuildLibTop
  1461. #define BuildLibTop ../..    /* relative to BuildLibDir */
  1462. #endif
  1463. #ifndef BuildModuleDir
  1464. #define BuildModuleDir $(BUILDLIBDIR)/modules
  1465. #endif
  1466. #ifndef BuildI18NDir
  1467. # define BuildI18NDir $(BUILDLIBDIR)/locale
  1468. #endif
  1469. #ifndef BuildModuleTop
  1470. #define BuildModuleTop $(BUILDLIBTOP)/..
  1471. #endif
  1472. #ifndef LibDir
  1473. # ifdef ProjectRoot
  1474. #  define LibDir Concat(ProjectRoot,/lib/X11)
  1475. # else
  1476. #  define LibDir /usr/lib/X11
  1477. # endif
  1478. #endif
  1479. #ifndef ModuleDir
  1480. #define ModuleDir $(USRLIBDIR)/modules
  1481. #endif
  1482. #ifndef ShareDir
  1483. # ifdef ProjectRoot
  1484. #  define ShareDir Concat(ProjectRoot,/share/X11)
  1485. # else
  1486. #  define ShareDir /usr/share/X11
  1487. # endif
  1488. #endif
  1489. #ifndef InstSrcDir
  1490. #define InstSrcDir Concat(ProjectRoot,/src)
  1491. #endif
  1492. #ifndef LibexecDir
  1493. #ifdef ProjectRoot
  1494. #define LibexecDir Concat(ProjectRoot,/libexec)
  1495. #else
  1496. #define LibexecDir /usr/X11/libexec
  1497. #endif
  1498. #endif
  1499. #ifndef ConfigDir
  1500. #define ConfigDir $(LIBDIR)/config
  1501. #endif
  1502. #ifndef DocDir
  1503. #define DocDir $(LIBDIR)/doc
  1504. #endif
  1505. #ifndef DocHtmlDir
  1506. #define DocHtmlDir $(DOCDIR)/html
  1507. #endif
  1508. #ifndef DocPsDir
  1509. #define DocPsDir $(DOCDIR)/PostScript
  1510. #endif
  1511. #ifndef DocPdfDir
  1512. #define DocPdfDir $(DOCDIR)/PDF
  1513. #endif
  1514. #ifndef FontDir
  1515. #define FontDir /usr/share/fonts/X11
  1516. #endif
  1517. #ifndef FontEncDir
  1518. #define FontEncDir /usr/share/fonts/X11/encodings
  1519. #endif
  1520. #ifndef AdmDir
  1521. #define AdmDir /usr/adm
  1522. #endif
  1523. #ifndef XinitDir
  1524. #define XinitDir $(LIBDIR)/xinit
  1525. #endif
  1526. #ifndef XdmDir
  1527. #define XdmDir $(LIBDIR)/xdm
  1528. #endif
  1529. #ifndef XdmVarDir
  1530. #define XdmVarDir $(VARLIBDIR)/xdm
  1531. #endif
  1532. #ifndef XdmAuthDir
  1533. #define XdmAuthDir $(LIBDIR)/xdm
  1534. #endif
  1535. #ifndef XdmConfigurationSubdirectory        /* under xdm sources */
  1536. #define XdmConfigurationSubdirectory config
  1537. #endif
  1538. #ifndef TwmDir
  1539. #define TwmDir $(LIBDIR)/twm
  1540. #endif
  1541. #ifndef XsmDir
  1542. #define XsmDir $(LIBDIR)/xsm
  1543. #endif
  1544. #ifndef NlsDir
  1545. #define NlsDir $(LIBDIR)/nls
  1546. #endif
  1547. #ifndef XLocaleDir
  1548. #define XLocaleDir $(LIBDIR)/locale
  1549. #endif
  1550. #ifndef LbxproxyDir
  1551. #define LbxproxyDir $(LIBDIR)/lbxproxy
  1552. #endif
  1553. #ifndef LbxproxyConfigSubdir        /* under lbxproxy sources */
  1554. #define LbxproxyConfigSubdir config
  1555. #endif
  1556. #ifndef ProxyManagerDir
  1557. #define ProxyManagerDir $(LIBDIR)/proxymngr
  1558. #endif
  1559. #ifndef ServerConfigDir
  1560. #define ServerConfigDir $(LIBDIR)/xserver
  1561. #endif
  1562. #ifndef XPrintDir
  1563. #define XPrintDir ServerConfigDir
  1564. #endif
  1565. #ifndef EtcX11Directory
  1566. #define EtcX11Directory /etc/X11
  1567. #endif
  1568. #ifndef InstallSecurityConfig
  1569. #define InstallSecurityConfig YES    /* Install sample security policy */
  1570. #endif
  1571. #ifndef XFileSearchPathBase
  1572. /* avoid SCCS keyword */
  1573. #define XFileSearchPathBase Concat4($(LIBDIR)/%L/%T/%N%C,%S:$(LIBDIR)/%l/%T/%N%C,%S:$(LIBDIR)/%T/%N%C,%S:$(LIBDIR)/%L/%T/%N%S:$(LIBDIR)/%l/%T/%N%S:$(LIBDIR)/%T/%N%S)
  1574. #endif
  1575. #ifndef XFileSearchPathDefault
  1576. #ifdef XAppLoadDir
  1577. /* avoid SCCS keyword */
  1578. #define XFileSearchPathDefault XAppLoadDir/Concat(%N%C,%S):XAppLoadDir/%N%S:XFileSearchPathBase
  1579. #else
  1580. #define XFileSearchPathDefault XFileSearchPathBase
  1581. #endif
  1582. #endif
  1583. #ifndef XAppLoadDir
  1584. #define XAppLoadDir $(LIBDIR)/app-defaults
  1585. #endif
  1586. #ifndef XtErrorPrefix
  1587. #define XtErrorPrefix /* as empty string */
  1588. #endif
  1589. #ifndef XtExtraDefines
  1590. #define XtExtraDefines /* as empty string */
  1591. #endif
  1592. #ifndef XtWarningPrefix
  1593. #define XtWarningPrefix /* as empty string */
  1594. #endif
  1595. #ifndef OsNameDefines
  1596. #define OsNameDefines /* as nothing */
  1597. #endif
  1598. #ifndef DefaultUserPath            /* for xdm */
  1599. #define DefaultUserPath :/bin:/usr/bin:$(BINDIR):/usr/ucb
  1600. #endif
  1601. #ifndef DefaultSystemPath        /* for xdm */
  1602. #define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR):/usr/ucb
  1603. #endif
  1604. #ifndef DefaultSystemShell        /* for xdm to set in SHELL */
  1605. #define DefaultSystemShell BourneShell
  1606. #endif
  1607. #ifndef ContribDir
  1608. #define ContribDir $(XTOP)/../contrib    /* contrib is outside core tree */
  1609. #endif
  1610. #ifndef UnsupportedDir
  1611. #define UnsupportedDir $(XTOP)/unsupported
  1612. #endif
  1613. #ifndef AllocateLocalDefines
  1614. #define AllocateLocalDefines /**/
  1615. #endif
  1616.  
  1617. #ifndef ForceNormalLib
  1618. #define ForceNormalLib (HasGcc && !HasGcc2)
  1619. #endif
  1620.  
  1621. #ifndef XkbComp
  1622. #define XkbComp xkbcomp
  1623. #endif
  1624.  
  1625. #ifndef PsWrap
  1626. # ifndef UseInstalled
  1627. #  define PsWrap $(PSWRAPSRC)/pswrap
  1628. # else
  1629. #  define PsWrap pswrap
  1630. # endif
  1631. #endif
  1632.  
  1633. #ifndef ResourceConfigurationManagement
  1634. #define ResourceConfigurationManagement YES
  1635. #endif
  1636.  
  1637. #ifndef XtPopdownConformance
  1638. #define XtPopdownConformance YES
  1639. #endif
  1640.  
  1641. XCOMM -----------------------------------------------------------------------
  1642. XCOMM X Window System make variables; these need to be coordinated with rules
  1643.  
  1644. /*
  1645.  * This list must be reflected in the DIRS_TO_BUILD list in the top-level
  1646.  * Makefile.
  1647.  */
  1648.              XTOP = XTop
  1649.            BINDIR = BinDir        /* programs */
  1650.      BUILDINCROOT = BuildIncRoot    /* base of build loc */
  1651.       BUILDINCDIR = BuildIncDir        /* built headers */
  1652.       BUILDINCTOP = BuildIncTop        /* top relative to BUILDINCDIR */
  1653.       BUILDLIBDIR = BuildLibDir        /* built libraries */
  1654.       BUILDLIBTOP = BuildLibTop        /* top relative to BUILDLIBDIR */
  1655.       BUILDBINDIR = BuildBinDir        /* built binaries */
  1656.       BUILDBINTOP = BuildBinTop        /* top relative to BUILDBINDIR */
  1657.    BUILDMODULEDIR = BuildModuleDir    /* built server modules */
  1658.      BUILDI18NDIR = BuildI18NDir    /* built i81n modules */
  1659.    BUILDMODULETOP = BuildModuleTop    /* top relative to BUILDMODULEDIR */
  1660.     XBUILDINCROOT = XBuildIncRoot    /* base of X build loc */
  1661.      XBUILDINCDIR = XBuildIncDir
  1662.      XBUILDINCTOP = XBuildIncTop
  1663.      XBUILDBINDIR = XBuildBinDir
  1664.            INCDIR = $(INCROOT)        /* header files */
  1665.            ADMDIR = AdmDir        /* server log files */
  1666.            LIBDIR = LibDir        /* configs for xdm, xinit, etc. */
  1667.          SHAREDIR = ShareDir        /* rgb, XErrorDB, etc. */
  1668.        LIBEXECDIR = LibexecDir
  1669.         MODULEDIR = ModuleDir
  1670.    TOP_X_INCLUDES = TopXInclude
  1671.           XBINDIR = XBinDir        /* BINDIR for X11ProjectRoot */
  1672.  
  1673.        INSTSRCDIR = InstSrcDir        /* Installed source (kernel modules). */
  1674.  
  1675. #ifdef EtcX11Directory
  1676.         ETCX11DIR = EtcX11Directory
  1677. #endif
  1678. #if UseEtcX11
  1679.           CONFDIR = $(ETCX11DIR)
  1680. #elif HasVarDirectory
  1681.           CONFDIR = $(VARDIR)
  1682. #endif
  1683.            DOCDIR = DocDir
  1684.        DOCHTMLDIR = DocHtmlDir
  1685.          DOCPSDIR = DocPsDir
  1686.         DOCPDFDIR = DocPdfDir
  1687.           FONTDIR = FontDir        /* font directories */
  1688.      ENCODINGSDIR = FontEncDir          /* font encodings directory */
  1689.          XINITDIR = XinitDir        /* xinit config files */
  1690.            XDMDIR = XdmDir        /* xdm config files */
  1691.         XDMVARDIR = XdmVarDir        /* xdm config files */
  1692.            TWMDIR = TwmDir        /* twm config files */
  1693.            XSMDIR = XsmDir        /* xsm config files */
  1694.            NLSDIR = NlsDir        /* nls files */
  1695.        XLOCALEDIR = XLocaleDir        /* locale files */
  1696.       LBXPROXYDIR = LbxproxyDir        /* lbxproxy files */
  1697.   PROXYMANAGERDIR = ProxyManagerDir    /* proxy manager config files */
  1698.         XPRINTDIR = XPrintDir        /* print config file root */
  1699.       XAPPLOADDIR = XAppLoadDir        /* application default resource dir */
  1700.        FONTCFLAGS = FontCompilerFlags
  1701.  
  1702.      INSTAPPFLAGS = $(INSTDATFLAGS)    /* XXX - this should go away - XXX */
  1703.  
  1704. #if UseInstalledX11
  1705.               RGB = $(XBINDIR)/rgb
  1706.             FONTC = $(XBINDIR)/bdftopcf
  1707.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1708.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1709.       MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
  1710.           UCS2ANY = $(XBINDIR)/ProgramTargetName(ucs2any)
  1711.       BDFTRUNCATE = $(XBINDIR)/bdftruncate
  1712.      UCSMAPPREFIX = $(FONTDIR)/util/map-
  1713.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1714. #else
  1715.               RGB = $(CLIENTENVSETUP) $(XBUILDBINDIR)/rgb
  1716. # if !CrossCompiling
  1717.             FONTC = $(CLIENTENVSETUP) $(PRELOADFONTSETUP) $(XBUILDBINDIR)/bdftopcf
  1718.       MKFONTSCALE = $(CLIENTENVSETUP) $(PRELOADFREETYPESETUP) $(XBUILDBINDIR)/mkfontscale
  1719.         MKFONTDIR = $(MKFONTSCALE) -b -s -l
  1720.        XCURSORGEN = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/xcursorgen
  1721.           UCS2ANY = $(XBUILDBINDIR)/ProgramTargetName(ucs2any)
  1722. # elif UseInstalledOnCrossCompile
  1723.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1724.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1725.             FONTC = $(XBINDIR)/bdftopcf
  1726.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1727.           UCS2ANY = $(XBINDIR)/ucs2any
  1728. # endif
  1729. # if HasPerl
  1730.       MKHTMLINDEX = RunPerlScript($(CONFIGSRC)/util/mkhtmlindex.pl,)
  1731. # else
  1732.       MKHTMLINDEX = $(SHELL) $(CONFIGSRC)/util/mkhtmlindex.sh
  1733. # endif
  1734.       BDFTRUNCATE = $(FONTSRC)/util/bdftruncate.pl
  1735.      UCSMAPPREFIX = $(FONTSRC)/util/map-
  1736. #endif
  1737.  
  1738.      HTMLINDEXCMD = HtmlIndexCmd
  1739.  
  1740.        DOCUTILSRC = $(XTOP)/doc/util
  1741.         CLIENTSRC = $(TOP)/clients
  1742.           DEMOSRC = $(TOP)/demos
  1743.        XDOCMACROS = $(DOCUTILSRC)/macros.t
  1744.        XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
  1745.        PROGRAMSRC = $(TOP)/programs
  1746.            LIBSRC = $(XTOP)/lib
  1747.           FONTSRC = $(XTOP)/fonts
  1748.      ENCODINGSSRC = $(FONTSRC)/encodings
  1749.        INCLUDESRC = BuildIncDir
  1750.       XINCLUDESRC = $(INCLUDESRC)/X11
  1751.         SERVERSRC = $(XTOP)/programs/Xserver
  1752.        CONTRIBSRC = ContribDir
  1753.    UNSUPPORTEDSRC = UnsupportedDir
  1754.            DOCSRC = $(XTOP)/doc
  1755.            RGBSRC = $(XTOP)/programs/rgb
  1756.       BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
  1757.      MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
  1758.     FONTSERVERSRC = $(PROGRAMSRC)/xfs
  1759.        FONTINCSRC = $(XTOP)/include/fonts
  1760.         EXTINCSRC = $(XTOP)/include/extensions
  1761.       FTSOURCEDIR = FreeTypeSrcDir
  1762.         DRMSRCDIR = DRMSrcDir
  1763.        MESASRCDIR = MesaSrcDir
  1764.   OGLSAMPLESRCDIR = OglSampleSrcDir
  1765.         PSWRAPSRC = $(XTOP)/config/pswrap
  1766.      TRANSCOMMSRC = $(LIBSRC)/xtrans
  1767.    TRANS_INCLUDES = -I$(TRANSCOMMSRC)
  1768.  CONNECTION_FLAGS = ConnectionFlags ExtraConnectionDefs
  1769. XTRANS_FAILDEFINES = XtransFailDefine 
  1770. #ifdef X11ProjectRoot
  1771.      XPROJECTROOT = X11ProjectRoot
  1772. #endif
  1773.     VENDORMANNAME = XVendorManNameString
  1774.  VENDORMANVERSION = XVendorManVersionString
  1775.       XORGMANDEFS = XOrgManDefs
  1776.     VENDORMANDEFS = VendorManDefs
  1777.        VENDORNAME = XVendorNameString
  1778.   VENDORNAMESHORT = XVendorNameStringShort
  1779.  
  1780. #if defined (XVendorWebSupport)
  1781.  VENDORWEBSUPPORT = XVendorWebSupport
  1782. #endif
  1783. VENDORSUPPORTDEFS = VendorSupportDefines
  1784.  
  1785.       XKBDEFRULES = XkbDefaultRulesFile
  1786.   XKBDEFRULESDEFS = XkbDefRulesDefines
  1787.   
  1788.      XCONFIGFILE = XConfigFile
  1789.       XCONFIGDIR = XConfigDir
  1790.         XLOGFILE = XLogFile
  1791.      XSERVERNAME = XServerName
  1792.  
  1793. #if HasSharedLibraries
  1794. #ifndef DontUseLibPathVar
  1795. #ifndef BuildLibPathVar
  1796. #define BuildLibPathVar LD_LIBRARY_PATH
  1797. #endif
  1798. #endif
  1799. #endif
  1800. #ifdef BuildLibPathVar
  1801. # ifdef SystemBuildLibPath
  1802.   SYSTEMENVLIBDIR = SystemBuildLibPath
  1803. # endif
  1804. #define XlocaleClientSetup Concat3(XLOCALEDIR,=,BuildI18NDir)
  1805.        XENVLIBDIR = X11BuildLibPath
  1806.    CLIENTENVSETUP = Concat3(BuildLibPathVar,=,BuildLibPath) XlocaleClientSetup
  1807. #else
  1808.    CLIENTENVSETUP =
  1809. #endif
  1810.  
  1811. #ifdef PreloadSetup
  1812.      PRELOADSETUP = PreloadSetup
  1813. #endif
  1814. #ifdef PreloadFontSetup
  1815.  PRELOADFONTSETUP = PreloadFontSetup
  1816. #endif
  1817. #ifdef PreloadFreetypeSetup
  1818.  PRELOADFREETYPESETUP = PreloadFreetypeSetup
  1819. #endif
  1820. #ifdef PreloadXFTSetup
  1821.      PRELOADXFTSETUP = PreloadXFTSetup
  1822. #endif
  1823.  
  1824. #ifndef ShLibIncludeFile
  1825. /* need this to make ANSI-style preprocessors happy */
  1826. #define ShLibIncludeFile <noop.rules>
  1827. #endif
  1828.  
  1829. #include ShLibIncludeFile
  1830.  
  1831. #ifndef XBuildLibDir
  1832. # define XBuildLibDir    BuildLibDir
  1833. #endif
  1834.  
  1835. #ifndef NeedLibInsideFlag
  1836. #define NeedLibInsideFlag    NO
  1837. #endif
  1838.  
  1839. #ifndef SharedLibX11
  1840. #define SharedLibX11 HasSharedLibraries
  1841. #endif
  1842. #ifndef NormalLibX11
  1843. #define NormalLibX11 (!SharedLibX11 | ForceNormalLib)
  1844. #endif
  1845. #ifndef DebugLibX11
  1846. #define DebugLibX11        NO    /* debugged X library */
  1847. #endif
  1848. #ifndef ProfileLibX11
  1849. #define ProfileLibX11        NO    /* profiled X library */
  1850. #endif
  1851.           XLIBSRC = $(LIBSRC)/X11
  1852. #if SharedLibX11
  1853. #ifndef SharedX11Rev
  1854. #define SharedX11Rev 6.2
  1855. #endif
  1856. SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev)
  1857. #else
  1858. ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir)
  1859. #endif
  1860.       /* Common alternate spellings */
  1861.       DEPXLIBONLY = $(DEPXONLYLIB)
  1862.          XLIBONLY = $(XONLYLIB)
  1863.      LINTXONLYLIB = $(LINTXONLY)
  1864.  
  1865. #if BuildScreenSaverLibrary
  1866. #ifndef SharedLibXss
  1867. #define SharedLibXss    HasSharedLibraries
  1868. #endif
  1869. #ifndef NormalLibXss
  1870. #define NormalLibXss    (!SharedLibXss || ForceNormalLib)
  1871. #endif
  1872. #ifndef DebugLibXss
  1873. #define DebugLibXss    NO
  1874. #endif
  1875. #ifndef ProfileLibXss
  1876. #define ProfileLibXss    NO
  1877. #endif
  1878. #else
  1879. #undef  SharedLibXss
  1880. #define SharedLibXss    NO
  1881. #undef  NormalLibXss
  1882. #define NormalLibXss    NO
  1883. #undef  DebugLibXss
  1884. #define DebugLibXss    NO
  1885. #undef  ProfileLibXss
  1886. #define ProfileLibXss    NO
  1887. #endif
  1888.  
  1889. #if BuildXF86MiscLibrary
  1890. #ifndef SharedLibXxf86misc
  1891. #define SharedLibXxf86misc    HasSharedLibraries
  1892. #endif
  1893. #ifndef NormalLibXxf86misc
  1894. #define NormalLibXxf86misc    (!SharedLibXxf86misc || ForceNormalLib)
  1895. #endif
  1896. #ifndef DebugLibXxf86misc
  1897. #define DebugLibXxf86misc    NO
  1898. #endif
  1899. #ifndef ProfileLibXxf86misc
  1900. #define ProfileLibXxf86misc    NO
  1901. #endif
  1902. #else
  1903. #undef  SharedLibXxf86misc
  1904. #define SharedLibXxf86misc    NO
  1905. #undef  NormalLibXxf86misc
  1906. #define NormalLibXxf86misc    NO
  1907. #undef  DebugLibXxf86misc
  1908. #define DebugLibXxf86misc    NO
  1909. #undef  ProfileLibXxf86misc
  1910. #define ProfileLibXxf86misc    NO
  1911. #endif
  1912.  
  1913. #if BuildXF86VidModeLibrary
  1914. #ifndef SharedLibXxf86vm
  1915. #define SharedLibXxf86vm    HasSharedLibraries
  1916. #endif
  1917. #ifndef NormalLibXxf86vm
  1918. #define NormalLibXxf86vm    (!SharedLibXxf86vm || ForceNormalLib)
  1919. #endif
  1920. #ifndef DebugLibXxf86vm
  1921. #define DebugLibXxf86vm        NO
  1922. #endif
  1923. #ifndef ProfileLibXxf86vm
  1924. #define ProfileLibXxf86vm    NO
  1925. #endif
  1926. #else
  1927. #undef  SharedLibXxf86vm
  1928. #define SharedLibXxf86vm    NO
  1929. #undef  NormalLibXxf86vm
  1930. #define NormalLibXxf86vm    NO
  1931. #undef  DebugLibXxf86vm
  1932. #define DebugLibXxf86vm        NO
  1933. #undef  ProfileLibXxf86vm
  1934. #define ProfileLibXxf86vm    NO
  1935. #endif
  1936.  
  1937. #if BuildXF86DGALibrary
  1938. #ifndef SharedLibXxf86dga
  1939. #define SharedLibXxf86dga    HasSharedLibraries
  1940. #endif
  1941. #ifndef NormalLibXxf86dga
  1942. #define NormalLibXxf86dga    (!SharedLibXxf86dga || ForceNormalLib)
  1943. #endif
  1944. #ifndef DebugLibXxf86dga
  1945. #define DebugLibXxf86dga    NO
  1946. #endif
  1947. #ifndef ProfileLibXxf86dga
  1948. #define ProfileLibXxf86dga    NO
  1949. #endif
  1950. #else
  1951. #undef  SharedLibXxf86dga
  1952. #define SharedLibXxf86dga    NO
  1953. #undef  NormalLibXxf86dga
  1954. #define NormalLibXxf86dga    NO
  1955. #undef  DebugLibXxf86dga
  1956. #define DebugLibXxf86dga    NO
  1957. #undef  ProfileLibXxf86dga
  1958. #define ProfileLibXxf86dga    NO
  1959. #endif
  1960.  
  1961. #if BuildXF86RushLibrary
  1962. #ifndef SharedLibXxf86rush
  1963. #define SharedLibXxf86rush    HasSharedLibraries
  1964. #endif
  1965. #ifndef NormalLibXxf86rush
  1966. #define NormalLibXxf86rush    (!SharedLibXxf86rush || ForceNormalLib)
  1967. #endif
  1968. #ifndef DebugLibXxf86rush
  1969. #define DebugLibXxf86rush    NO
  1970. #endif
  1971. #ifndef ProfileLibXxf86rush
  1972. #define ProfileLibXxf86rush    NO
  1973. #endif
  1974. #else
  1975. #undef  SharedLibXxf86rush
  1976. #define SharedLibXxf86rush    NO
  1977. #undef  NormalLibXxf86rush
  1978. #define NormalLibXxf86rush    NO
  1979. #undef  DebugLibXxf86rush
  1980. #define DebugLibXxf86rush    NO
  1981. #undef  ProfileLibXxf86rush
  1982. #define ProfileLibXxf86rush    NO
  1983. #endif
  1984.  
  1985. #if BuildXvLibrary
  1986. #ifndef SharedLibXv
  1987. #define SharedLibXv        HasSharedLibraries
  1988. #endif
  1989. #ifndef NormalLibXv
  1990. #define NormalLibXv        (!SharedLibXv || ForceNormalLib)
  1991. #endif
  1992. #ifndef DebugLibXv
  1993. #define DebugLibXv        NO
  1994. #endif
  1995. #ifndef ProfileLibXv
  1996. #define ProfileLibXv        NO
  1997. #endif
  1998. #else
  1999. #undef  SharedLibXv
  2000. #define SharedLibXv        NO
  2001. #undef  NormalLibXv
  2002. #define NormalLibXv        NO
  2003. #undef  DebugLibXv
  2004. #define DebugLibXv        NO
  2005. #undef  ProfileLibXv
  2006. #define ProfileLibXv        NO
  2007. #endif
  2008.  
  2009. #if BuildXvMCLibrary
  2010. #ifndef SharedLibXvMC
  2011. #define SharedLibXvMC        HasSharedLibraries
  2012. #endif
  2013. #ifndef NormalLibXvMC
  2014. #define NormalLibXvMC        (!SharedLibXvMC || ForceNormalLib)
  2015. #endif
  2016. #ifndef DebugLibXvMC
  2017. #define DebugLibXvMC        NO
  2018. #endif
  2019. #ifndef ProfileLibXvMC
  2020. #define ProfileLibXvMC        NO
  2021. #endif
  2022. #else
  2023. #undef  SharedLibXvMC
  2024. #define SharedLibXvMC        NO
  2025. #undef  NormalLibXvMC
  2026. #define NormalLibXvMC        NO
  2027. #undef  DebugLibXvMC
  2028. #define DebugLibXvMC        NO
  2029. #undef  ProfileLibXvMC
  2030. #define ProfileLibXvMC        NO
  2031. #endif
  2032.  
  2033. #if BuildXineramaLibrary
  2034. #ifndef SharedLibXinerama
  2035. #define SharedLibXinerama    HasSharedLibraries
  2036. #endif
  2037. #ifndef NormalLibXinerama
  2038. #define NormalLibXinerama    (!SharedLibXinerama || ForceNormalLib)
  2039. #endif
  2040. #ifndef DebugLibXinerama
  2041. #define DebugLibXinerama    NO
  2042. #endif
  2043. #ifndef ProfileLibXinerama
  2044. #define ProfileLibXinerama    NO
  2045. #endif
  2046. #else
  2047. #undef  SharedLibXinerama
  2048. #define SharedLibXinerama    NO
  2049. #undef  NormalLibXinerama
  2050. #define NormalLibXinerama    NO
  2051. #undef  DebugLibXinerama
  2052. #define DebugLibXinerama    NO
  2053. #undef  ProfileLibXinerama
  2054. #define ProfileLibXinerama    NO
  2055. #endif
  2056.  
  2057. #if BuildXResLibrary
  2058. #ifndef SharedLibXRes
  2059. #define SharedLibXRes           HasSharedLibraries
  2060. #endif
  2061. #ifndef NormalLibXRes
  2062. #define NormalLibXRes           (!SharedLibXRes || ForceNormalLib)
  2063. #endif
  2064. #ifndef DebugLibXRes
  2065. #define DebugLibXRes            NO
  2066. #endif
  2067. #ifndef ProfileLibXRes
  2068. #define ProfileLibXRes          NO
  2069. #endif
  2070. #else
  2071. #undef  SharedLibXRes
  2072. #define SharedLibXRes        NO
  2073. #undef  NormalLibXRes
  2074. #define NormalLibXRes        NO
  2075. #undef  DebugLibXRes
  2076. #define DebugLibXRes        NO
  2077. #undef  ProfileLibXRes
  2078. #define ProfileLibXRes        NO
  2079. #endif
  2080.  
  2081. #if BuildDPSLibrary
  2082. #ifndef SharedLibDps
  2083. #define SharedLibDps        HasSharedLibraries
  2084. #endif
  2085. #ifndef NormalLibDps
  2086. #define NormalLibDps        (!SharedLibDps || ForceNormalLib)
  2087. #endif
  2088. #ifndef DebugLibDps
  2089. #define DebugLibDps        NO
  2090. #endif
  2091. #ifndef ProfileLibDps
  2092. #define ProfileLibDps        NO
  2093. #endif
  2094. #else
  2095. #undef  SharedLibDps
  2096. #define SharedLibDps        NO
  2097. #undef  NormalLibDps
  2098. #define NormalLibDps        NO
  2099. #undef  DebugLibDps
  2100. #define DebugLibDps        NO
  2101. #undef  ProfileLibDps
  2102. #define ProfileLibDps        NO
  2103. #endif
  2104.  
  2105. #if BuildDPSTkLibrary
  2106. #ifndef SharedLibDpsTk
  2107. #define SharedLibDpsTk        HasSharedLibraries
  2108. #endif
  2109. #ifndef NormalLibDpsTk
  2110. #define NormalLibDpsTk        (!SharedLibDpsTk || ForceNormalLib)
  2111. #endif
  2112. #ifndef DebugLibDpsTk
  2113. #define DebugLibDpsTk        NO
  2114. #endif
  2115. #ifndef ProfileLibDpsTk
  2116. #define ProfileLibDpsTk        NO
  2117. #endif
  2118. #else
  2119. #undef  SharedLibDpsTk
  2120. #define SharedLibDpsTk        NO
  2121. #undef  NormalLibDpsTk
  2122. #define NormalLibDpsTk        NO
  2123. #undef  DebugLibDpsTk
  2124. #define DebugLibDpsTk        NO
  2125. #undef  ProfileLibDpsTk
  2126. #define ProfileLibDpsTk        NO
  2127. #endif
  2128.  
  2129. #if BuildPSResLibrary
  2130. #ifndef SharedLibPSRes
  2131. #define SharedLibPSRes        HasSharedLibraries
  2132. #endif
  2133. #ifndef NormalLibPSRes
  2134. #define NormalLibPSRes        (!SharedLibPSRes || ForceNormalLib)
  2135. #endif
  2136. #ifndef DebugLibPSRes
  2137. #define DebugLibPSRes        NO
  2138. #endif
  2139. #ifndef ProfileLibPSRes
  2140. #define ProfileLibPSRes        NO
  2141. #endif
  2142. #else
  2143. #undef  SharedLibPSRes
  2144. #define SharedLibPSRes        NO
  2145. #undef  NormalLibPSRes
  2146. #define NormalLibPSRes        NO
  2147. #undef  DebugLibPSRes
  2148. #define DebugLibPSRes        NO
  2149. #undef  ProfileLibPSRes
  2150. #define ProfileLibPSRes        NO
  2151. #endif
  2152.  
  2153. #if BuildRenderLibrary
  2154. #ifndef SharedLibXrender
  2155. #define SharedLibXrender    HasSharedLibraries
  2156. #endif
  2157. #ifndef NormalLibXrender
  2158. #define NormalLibXrender    (!SharedLibXrender || ForceNormalLib)
  2159. #endif
  2160. #ifndef DebugLibXrender
  2161. #define DebugLibXrender        NO
  2162. #endif
  2163. #ifndef ProfileLibXrender
  2164. #define ProfileLibXrender    NO
  2165. #endif
  2166. #else
  2167. #undef  SharedLibXrender
  2168. #define SharedLibXrender    NO
  2169. #undef  NormalLibXrender
  2170. #define NormalLibXrender    NO
  2171. #undef  DebugLibXrender
  2172. #define DebugLibXrender        NO
  2173. #undef  ProfileLibXrender
  2174. #define ProfileLibXrender    NO
  2175. #endif
  2176.  
  2177. #if BuildRandRLibrary
  2178. # ifndef SharedLibXrandr
  2179. #  define SharedLibXrandr        HasSharedLibraries
  2180. # endif
  2181. # ifndef NormalLibXrandr
  2182. #  define NormalLibXrandr        (!SharedLibXrandr || ForceNormalLib)
  2183. # endif
  2184. # ifndef DebugLibXrandr
  2185. #  define DebugLibXrandr    NO
  2186. # endif
  2187. # ifndef ProfileLibXrandr
  2188. #  define ProfileLibXrandr    NO
  2189. # endif
  2190. #else
  2191. # undef  SharedLibXrandr
  2192. # define SharedLibXrandr    NO
  2193. # undef  NormalLibXrandr
  2194. # define NormalLibXrandr    NO
  2195. # undef  DebugLibXrandr
  2196. # define DebugLibXrandr        NO
  2197. # undef  ProfileLibXrandr
  2198. # define ProfileLibXrandr    NO
  2199. #endif
  2200.  
  2201. #if BuildXfixesLibrary
  2202. #ifndef SharedLibXfixes
  2203. #define SharedLibXfixes        HasSharedLibraries
  2204. #endif
  2205. #ifndef NormalLibXfixes
  2206. #define NormalLibXfixes        (!SharedLibXfixes || ForceNormalLib)
  2207. #endif
  2208. #ifndef DebugLibXfixes
  2209. #define DebugLibXfixes        NO
  2210. #endif
  2211. #ifndef ProfileLibXfixes
  2212. #define ProfileLibXfixes    NO
  2213. #endif
  2214. #else
  2215. #undef  SharedLibXfixes
  2216. #define SharedLibXfixes        NO
  2217. #undef  NormalLibXfixes
  2218. #define NormalLibXfixes        NO
  2219. #undef  DebugLibXfixes
  2220. #define DebugLibXfixes        NO
  2221. #undef  ProfileLibXfixes
  2222. #define ProfileLibXfixes    NO
  2223. #endif
  2224.  
  2225. #if BuildDamageLibrary
  2226. #ifndef SharedLibXdamage
  2227. #define SharedLibXdamage    HasSharedLibraries
  2228. #endif
  2229. #ifndef NormalLibXdamage
  2230. #define NormalLibXdamage    (!SharedLibXdamage || ForceNormalLib)
  2231. #endif
  2232. #ifndef DebugLibXdamage
  2233. #define DebugLibXdamage        NO
  2234. #endif
  2235. #ifndef ProfileLibXdamage
  2236. #define ProfileLibXdamage    NO
  2237. #endif
  2238. #else
  2239. #undef  SharedLibXdamage
  2240. #define SharedLibXdamage    NO
  2241. #undef  NormalLibXdamage
  2242. #define NormalLibXdamage    NO
  2243. #undef  DebugLibXdamage
  2244. #define DebugLibXdamage        NO
  2245. #undef  ProfileLibXdamage
  2246. #define ProfileLibXdamage    NO
  2247. #endif
  2248.  
  2249. #if BuildCompositeLibrary
  2250. #ifndef SharedLibXcomposite
  2251. #define SharedLibXcomposite    HasSharedLibraries
  2252. #endif
  2253. #ifndef NormalLibXcomposite
  2254. #define NormalLibXcomposite    (!SharedLibXcomposite || ForceNormalLib)
  2255. #endif
  2256. #ifndef DebugLibXcomposite
  2257. #define DebugLibXcomposite    NO
  2258. #endif
  2259. #ifndef ProfileLibXcomposite
  2260. #define ProfileLibXcomposite    NO
  2261. #endif
  2262. #else
  2263. #undef  SharedLibXcomposite
  2264. #define SharedLibXcomposite    NO
  2265. #undef  NormalLibXcomposite
  2266. #define NormalLibXcomposite    NO
  2267. #undef  DebugLibXcomposite
  2268. #define DebugLibXcomposite    NO
  2269. #undef  ProfileLibXcomposite
  2270. #define ProfileLibXcomposite    NO
  2271. #endif
  2272.  
  2273. #if BuildXevieLibrary
  2274. #ifndef SharedLibXevie
  2275. #define SharedLibXevie        HasSharedLibraries
  2276. #endif
  2277. #ifndef NormalLibXevie
  2278. #define NormalLibXevie        (!SharedLibXevie || ForceNormalLib)
  2279. #endif
  2280. #ifndef DebugLibXevie
  2281. #define DebugLibXevie        NO
  2282. #endif
  2283. #ifndef ProfileLibXevie
  2284. #define ProfileLibXevie        NO
  2285. #endif
  2286. #else
  2287. #undef  SharedLibXevie
  2288. #define SharedLibXevie        NO
  2289. #undef  NormalLibXevie
  2290. #define NormalLibXevie        NO
  2291. #undef  DebugLibXevie
  2292. #define DebugLibXevie        NO
  2293. #undef  ProfileLibXevie
  2294. #define ProfileLibXevie        NO
  2295. #endif
  2296.  
  2297. #if BuildXcursorLibrary
  2298. #ifndef SharedLibXcursor
  2299. #define SharedLibXcursor    HasSharedLibraries
  2300. #endif
  2301. #ifndef NormalLibXcursor
  2302. #define NormalLibXcursor    (!SharedLibXcursor || ForceNormalLib)
  2303. #endif
  2304. #ifndef DebugLibXcursor
  2305. #define DebugLibXcursor        NO
  2306. #endif
  2307. #ifndef ProfileLibXcursor
  2308. #define ProfileLibXcursor    NO
  2309. #endif
  2310. #else
  2311. #undef  SharedLibXcursor
  2312. #define SharedLibXcursor    NO
  2313. #undef  NormalLibXcursor
  2314. #define NormalLibXcursor    NO
  2315. #undef  DebugLibXcursor
  2316. #define DebugLibXcursor        NO
  2317. #undef  ProfileLibXcursor
  2318. #define ProfileLibXcursor    NO
  2319. #endif
  2320.  
  2321. #if BuildAppleWMLibrary
  2322. #ifndef SharedLibAppleWM
  2323. #define SharedLibAppleWM    HasSharedLibraries
  2324. #endif
  2325. #ifndef NormalLibAppleWM
  2326. #define NormalLibAppleWM    (!SharedLibAppleWM || ForceNormalLib)
  2327. #endif
  2328. #ifndef DebugLibAppleWM
  2329. #define DebugLibAppleWM        NO
  2330. #endif
  2331. #ifndef ProfileLibAppleWM
  2332. #define ProfileLibAppleWM    NO
  2333. #endif
  2334. #else
  2335. #undef  SharedLibAppleWM
  2336. #define SharedLibAppleWM    NO
  2337. #undef  NormalLibAppleWM
  2338. #define NormalLibAppleWM    NO
  2339. #undef  DebugLibAppleWM
  2340. #define DebugLibAppleWM        NO
  2341. #undef  ProfileLibAppleWM
  2342. #define ProfileLibAppleWM    NO
  2343. #endif
  2344.  
  2345. #if BuildWindowsWMLibrary
  2346. #ifndef SharedLibWindowsWM
  2347. #define SharedLibWindowsWM    HasSharedLibraries
  2348. #endif
  2349. #ifndef NormalLibWindowsWM
  2350. #define NormalLibWindowsWM    (!SharedLibWindowsWM || ForceNormalLib)
  2351. #endif
  2352. #ifndef DebugLibWindowsWM
  2353. #define DebugLibWindowsWM    NO
  2354. #endif
  2355. #ifndef ProfileLibWindowsWM
  2356. #define ProfileLibWindowsWM    NO
  2357. #endif
  2358. #else
  2359. #undef  SharedLibWindowsWM
  2360. #define SharedLibWindowsWM    NO
  2361. #undef  NormalLibWindowsWM
  2362. #define NormalLibWindowsWM    NO
  2363. #undef  DebugLibWindowsWM
  2364. #define DebugLibWindowsWM    NO
  2365. #undef  ProfileLibWindowsWM
  2366. #define ProfileLibWindowsWM    NO
  2367. #endif
  2368.  
  2369. #if BuildGLULibrary
  2370. #ifndef SharedLibGlu
  2371. #define SharedLibGlu        HasSharedLibraries
  2372. #endif
  2373. #ifndef NormalLibGlu
  2374. #define NormalLibGlu        (!SharedLibX11 | ForceNormalLib)
  2375. #endif
  2376. #ifndef DebugLibGlu
  2377. #define DebugLibGlu        NO
  2378. #endif
  2379. #ifndef ProfileLibGlu
  2380. #define ProfileLibGlu        NO
  2381. #endif
  2382. #else
  2383. #undef  SharedLibGlu
  2384. #define SharedLibGlu        NO
  2385. #undef  NormalLibGlu
  2386. #define NormalLibGlu        NO
  2387. #undef  DebugLibGlu
  2388. #define DebugLibGlu        NO
  2389. #undef  ProfileLibGlu
  2390. #define ProfileLibGlu        NO
  2391. #endif
  2392.  
  2393. #if BuildGLXLibrary
  2394. #ifndef SharedLibGlx
  2395. #define SharedLibGlx        HasSharedLibraries
  2396. #endif
  2397. #ifndef NormalLibGlx
  2398. #define NormalLibGlx        (!SharedLibX11 | ForceNormalLib)
  2399. #endif
  2400. #ifndef DebugLibGlx
  2401. #define DebugLibGlx        NO
  2402. #endif
  2403. #ifndef ProfileLibGlx
  2404. #define ProfileLibGlx        NO
  2405. #endif
  2406. #ifndef BuildLibGlxWithoutPIC
  2407. #define BuildLibGlxWithoutPIC    NO
  2408. #endif
  2409. #if BuildLibGlxWithoutPIC && SharedLibGlx
  2410. #define SharedLibGlxWithoutPIC    YES
  2411. #else
  2412. #define SharedLibGlxWithoutPIC    NO
  2413. #endif
  2414. #ifndef LinkGLToUsrLib
  2415. #define LinkGLToUsrLib        NO
  2416. #endif
  2417. #if NothingOutsideProjectRoot
  2418. #undef LinkGLToUsrLib
  2419. #define LinkGLToUsrLib        NO
  2420. #endif
  2421. #ifndef LinkGLToUsrInclude
  2422. #define LinkGLToUsrInclude    NO
  2423. #endif
  2424. #if NothingOutsideProjectRoot
  2425. #undef LinkGLToUsrInclude
  2426. #define LinkGLToUsrInclude    NO
  2427. #endif
  2428. #else
  2429. #undef  SharedLibGlx
  2430. #define SharedLibGlx        NO
  2431. #undef  NormalLibGlx
  2432. #define NormalLibGlx        NO
  2433. #undef  DebugLibGlx
  2434. #define DebugLibGlx        NO
  2435. #undef  ProfileLibGlx
  2436. #define ProfileLibGlx        NO
  2437. #endif
  2438. /*
  2439.  * Only make a shared GLw library on systems with Weak symbols 
  2440.  * because it depends on Motif. See xc/lib/GLw/README.txt for details
  2441.  */
  2442. #if BuildGLwLibrary
  2443. #ifndef SharedLibGLw
  2444. #define SharedLibGLw        HasSharedLibraries && HasWeakSymbols
  2445. #endif
  2446. #ifndef NormalLibGLw
  2447. #define NormalLibGLw        (!SharedLibGLw || ForceNormalLib)
  2448. #endif
  2449. #ifndef DebugLibGLw
  2450. #define DebugLibGLw        NO    /* debugged widget library */
  2451. #endif
  2452. #ifndef ProfileLibGLw
  2453. #define ProfileLibGLw        NO    /* profiled widget library */
  2454. #endif
  2455. #ifndef GLwUseXmStubs
  2456.     /* create stub (weak) Motif symbols */
  2457. #define GLwUseXmStubs        SharedLibGLw && HasWeakSymbols
  2458. #endif
  2459. #else
  2460. #undef  SharedLibGLw
  2461. #define SharedLibGLw        NO
  2462. #undef  NormalLibGLw
  2463. #define NormalLibGLw        NO
  2464. #undef  DebugLibGLw
  2465. #define DebugLibGLw        NO
  2466. #undef  ProfileLibGLw
  2467. #define ProfileLibGLw        NO
  2468. #endif
  2469.  
  2470. #ifndef SharedLibXext
  2471. #define SharedLibXext HasSharedLibraries
  2472. #endif
  2473. #ifndef NormalLibXext
  2474. #define NormalLibXext (!SharedLibXext | ForceNormalLib)
  2475. #endif
  2476. #ifndef DebugLibXext
  2477. #define DebugLibXext        NO    /* debugged Xext library */
  2478. #endif
  2479. #ifndef ProfileLibXext
  2480. #define ProfileLibXext        NO    /* profiled Xext library */
  2481. #endif
  2482.       XEXTLIBSRC = $(LIBSRC)/Xext
  2483. #if SharedLibXext
  2484. #ifndef SharedXextRev
  2485. #define SharedXextRev 6.4
  2486. #endif
  2487. SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev)
  2488. #else
  2489. ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir)
  2490. #endif
  2491. LINTEXTENSIONLIB = $(LINTEXTENSION)
  2492.           DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
  2493.              XLIB = $(EXTENSIONLIB) $(XONLYLIB)
  2494.          LINTXLIB = $(LINTXONLYLIB)
  2495.  
  2496.     XSSLIBSRC = $(LIBSRC)/Xss
  2497. #if SharedLibXss
  2498. #ifndef SharedXssRev
  2499. #define SharedXssRev 1.0
  2500. #endif
  2501. SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev)
  2502. #else
  2503. ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir)
  2504. #endif
  2505.  
  2506.     XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
  2507. #if SharedLibXxf86misc
  2508. #ifndef SharedXxf86miscRev
  2509. #define SharedXxf86miscRev 1.1
  2510. #endif
  2511. SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev)
  2512. #else
  2513. ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir)
  2514. #endif
  2515.  
  2516.     XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
  2517. #if SharedLibXxf86vm
  2518. #ifndef SharedXxf86vmRev
  2519. #define SharedXxf86vmRev 1.0
  2520. #endif
  2521. SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev)
  2522. #else
  2523. ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir)
  2524. #endif
  2525.  
  2526.     XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
  2527. #if SharedLibXxf86dga
  2528. #ifndef SharedXxf86dgaRev
  2529. #define SharedXxf86dgaRev 1.0
  2530. #endif
  2531. SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev)
  2532. #else
  2533. ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir)
  2534. #endif
  2535.  
  2536. #if BuildDmxLibrary
  2537. #ifndef SharedLibDmx
  2538. #define SharedLibDmx        NO
  2539. #endif
  2540. #ifndef NormalLibDmx
  2541. #define NormalLibDmx        YES
  2542. #endif
  2543. #ifndef DebugLibDmx
  2544. #define DebugLibDmx        NO
  2545. #endif
  2546. #ifndef ProfileLibDmx
  2547. #define ProfileLibDmx        NO
  2548. #endif
  2549. #else /* BuildDmxLibrary */
  2550. #undef SharedLibDmx
  2551. #define SharedLibDmx        NO
  2552. #undef NormalLibDmx
  2553. #define NormalLibDmx        NO
  2554. #undef DebugLibDmx
  2555. #define DebugLibDmx        NO
  2556. #undef ProfileLibDmx
  2557. #define ProfileLibDmx        NO
  2558. #endif /* BuildDmxLibrary */
  2559.  
  2560.     XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
  2561. #if SharedLibXxf86rush
  2562. #ifndef SharedXxf86rushRev
  2563. #define SharedXxf86rushRev 1.0
  2564. #endif
  2565. SharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev)
  2566. #else
  2567. ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir)
  2568. #endif
  2569.  
  2570.  
  2571.     XVLIBSRC = $(LIBSRC)/Xv
  2572. #if SharedLibXv
  2573. #ifndef SharedXvRev
  2574. #define SharedXvRev 1.0
  2575. #endif
  2576. SharedLibReferences(XV,Xv,$(XVLIBSRC),SOXVREV,SharedXvRev)
  2577. #else
  2578. ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir)
  2579. #endif
  2580.  
  2581.  
  2582.     XVMCLIBSRC = $(LIBSRC)/XvMC
  2583. #if SharedLibXvMC
  2584. #ifndef SharedXvMCRev
  2585. #define SharedXvMCRev 1.0
  2586. #endif
  2587. SharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev)
  2588. #else
  2589. ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir)
  2590. #endif
  2591.  
  2592.     XINERAMALIBSRC = $(LIBSRC)/Xinerama
  2593. #if SharedLibXinerama
  2594. #ifndef SharedXineramaRev
  2595. #define SharedXineramaRev 1.0
  2596. #endif
  2597. SharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev)
  2598. #else
  2599. ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir)
  2600. #endif
  2601.  
  2602.     XRESLIBSRC = $(LIBSRC)/XRes
  2603. #if SharedLibXRes
  2604. #ifndef SharedXResRev
  2605. #define SharedXResRev 1.0
  2606. #endif
  2607. SharedLibReferences(XRES,XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev)
  2608. #else
  2609. ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir)
  2610. #endif
  2611.  
  2612.     DMXLIBSRC = $(LIBSRC)/dmx
  2613. #if SharedLibDmx
  2614. #ifndef SharedDmxRev
  2615. #define SharedDmxRev 1.0
  2616. #endif
  2617. SharedLibReferences(DMX,dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev)
  2618. #else
  2619. ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir)
  2620. #endif
  2621.  
  2622.     DPSLIBSRC = $(LIBSRC)/dps
  2623. #if SharedLibDps
  2624. #ifndef SharedDpsRev
  2625. #define SharedDpsRev 1.0
  2626. #endif
  2627. SharedLibReferences(DPS,dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev)
  2628. #else
  2629. ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir)
  2630. #endif
  2631.  
  2632.     DPSTKLIBSRC = $(LIBSRC)/dpstk
  2633. #if SharedLibDpsTk
  2634. #ifndef SharedDpsTkRev
  2635. #define SharedDpsTkRev 1.0
  2636. #endif
  2637. SharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev)
  2638. #else
  2639. ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir)
  2640. #endif
  2641.  
  2642.     PSRESLIBSRC = $(LIBSRC)/psres
  2643. #if SharedLibPSRes
  2644. #ifndef SharedPSResRev
  2645. #define SharedPSResRev 1.0
  2646. #endif
  2647. SharedLibReferences(PSRES,psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev)
  2648. #else
  2649. ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir)
  2650. #endif
  2651.  
  2652.     GLULIBSRC = $(LIBSRC)/GLU
  2653. #if SharedLibGlu
  2654. #ifndef SharedGluRev
  2655. #define SharedGluRev 1.3
  2656. #endif
  2657. SharedLibReferences(GLU,GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev)
  2658. #else
  2659. ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir)
  2660. #endif
  2661.  
  2662.     GLXLIBSRC = $(LIBSRC)/GL
  2663. #if SharedLibGlx
  2664. #ifndef SharedGlxRev
  2665. #define SharedGlxRev 1.2
  2666. #endif
  2667. SharedLibReferences(GLX,GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev)
  2668. #else
  2669. ProjectUnsharedLibReferences(GLX,GL,$(GLXLIBSRC),XBuildLibDir)
  2670. #endif
  2671.     GLWIDGETSRC = $(LIBSRC)/GLw
  2672. #if SharedLibGLw
  2673. #ifndef SharedGLwRev
  2674. #define SharedGLwRev 1.0        /* used to name the shared library */
  2675. #endif
  2676. SharedDSLibReferences(GLW,GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev)
  2677. #else
  2678. ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir)
  2679. #endif
  2680.  
  2681. #if BuildRenderLibrary
  2682.     XRENDERLIBSRC = $(LIBSRC)/Xrender
  2683. #if SharedLibXrender
  2684. #ifndef SharedXrenderRev
  2685. #define SharedXrenderRev 1.2.2
  2686. #endif
  2687. SharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev)
  2688. #else
  2689. ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir)
  2690. #endif
  2691.  
  2692. #ifdef UseInstalled
  2693. XRENDERINCDIR=$(INCDIR)
  2694. #else
  2695. XRENDERINCDIR=$(BUILDINCDIR)
  2696. #endif
  2697.  
  2698. XRENDERINCLUDES = -I$(XRENDERINCDIR)
  2699.  
  2700. #else /* BuildRenderLibrary */
  2701.  
  2702. #if HasRenderLibrary
  2703.  
  2704. #ifndef RenderLibraryDir
  2705. #define RenderLibraryDir /usr/X11R6
  2706. #endif
  2707.  
  2708. #ifndef RenderLibraryLibDir
  2709. #define RenderLibraryLibDir RenderLibraryDir/LibDirName
  2710. #endif
  2711.  
  2712. #ifndef RenderLibraryIncDir
  2713. #define RenderLibraryIncDir RenderLibraryDir/include
  2714. #endif
  2715.  
  2716. XRENDERDIR = RenderLibraryDir
  2717. XRENDERLIBDIR = RenderLibraryLibDir
  2718. XRENDERINCDIR = RenderLibraryIncDir
  2719. XRENDERLIB = -L$(XRENDERLIBDIR) -lXrender
  2720. DEPXRENDERLIB =
  2721.  
  2722. XRENDERINCLUDES = -I$(XRENDERINCDIR)
  2723.  
  2724. #endif /* HasRenderLibrary */
  2725.  
  2726. #endif /* else BuildRenderLibrary */
  2727.  
  2728.     XRANDRLIBSRC = $(LIBSRC)/Xrandr
  2729. #if SharedLibXrandr
  2730. #ifndef SharedXrandrRev
  2731. #define SharedXrandrRev 2.0
  2732. #endif
  2733. SharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev)
  2734. #else
  2735. ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir)
  2736. #endif
  2737.  
  2738.     XFIXESLIBSRC = $(LIBSRC)/Xfixes
  2739. #if SharedLibXfixes
  2740. #ifndef SharedXfixesRev
  2741. #define SharedXfixesRev 3.0
  2742. #endif
  2743. SharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev)
  2744. #else
  2745. ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir)
  2746. #endif
  2747.  
  2748.    XDAMAGELIBSRC = $(LIBSRC)/Xdamage
  2749. #if SharedLibXdamage
  2750. #ifndef SharedXdamageRev
  2751. #define SharedXdamageRev 1.0
  2752. #endif
  2753. SharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev)
  2754. #else
  2755. ProjectUnsharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),XBuildLibDir)
  2756. #endif
  2757.  
  2758. XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
  2759. #if SharedLibXcomposite
  2760. #ifndef SharedXcompositeRev
  2761. #define SharedXcompositeRev 1.0
  2762. #endif
  2763. SharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev)
  2764. #else
  2765. ProjectUnsharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir)
  2766. #endif
  2767.  
  2768. XEVIELIBSRC = $(LIBSRC)/Xevie
  2769. #if SharedLibXevie
  2770. #ifndef SharedXevieRev
  2771. #define SharedXevieRev 1.0
  2772. #endif
  2773. SharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev)
  2774. #else
  2775. ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir)
  2776. #endif
  2777.  
  2778. #if BuildXcursorLibrary
  2779.    XCURSORLIBSRC = $(LIBSRC)/Xcursor
  2780. #if SharedLibXcursor
  2781. #ifndef SharedXcursorRev
  2782. #define SharedXcursorRev 1.0.2
  2783. #endif
  2784. SharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev)
  2785. #else
  2786. ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir)
  2787. #endif
  2788.  
  2789. #ifdef UseInstalled
  2790. XCURSORINCDIR=$(INCDIR)
  2791. #else
  2792. XCURSORINCDIR=$(BUILDINCDIR)
  2793. #endif
  2794.  
  2795. XCURSORINCLUDES=-I$(XCURSORINCDIR) $(XRENDERINCLUDES)
  2796.  
  2797. #else /* BuildXcursorLibrary */
  2798.  
  2799. #if HasXcursorLibrary
  2800.  
  2801. #ifndef XcursorLibraryDir
  2802. #define XcursorLibraryDir /usr/X11R6
  2803. #endif
  2804.  
  2805. #ifndef XcursorLibraryLibDir
  2806. #define XcursorLibraryLibDir XcursorLibraryDir/LibDirName
  2807. #endif
  2808.  
  2809. #ifndef XcursorLibraryIncDir
  2810. #define XcursorLibraryIncDir XcursorLibraryDir/include
  2811. #endif
  2812.  
  2813. XCURSORDIR = XcursorLibraryDir
  2814. XCURSORLIBDIR = XcursorLibraryLibDir
  2815. XCURSORINCDIR = XcursorLibraryIncDir
  2816. XCURSORLIB = -L$(XCURSORLIBDIR) -lXcursor
  2817.  
  2818. XCURSORINCLUDES=-I$(XCURSORINCDIR) $(XRENDERINCLUDES)
  2819.  
  2820. #endif /* HasXcursorLibrary */
  2821.  
  2822. #endif /* else BuildXcursorLibrary */
  2823.  
  2824.    APPLEWMLIBSRC = $(LIBSRC)/apple
  2825. #if SharedLibAppleWM
  2826. #ifndef SharedAppleWMRev
  2827. #define SharedAppleWMRev 1.0
  2828. #endif
  2829. SharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev)
  2830. #else
  2831. ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir)
  2832. #endif
  2833.  
  2834.    WINDOWSWMLIBSRC = $(LIBSRC)/windows
  2835. #if SharedLibWindowsWM
  2836. #ifndef SharedWindowsWMRev
  2837. #define SharedWindowsWMRev 1.0
  2838. #endif
  2839. SharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev)
  2840. #else
  2841. ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir)
  2842. #endif
  2843.  
  2844. # ifndef SharedLibXfontcache
  2845. #  define SharedLibXfontcache    HasSharedLibraries
  2846. # endif
  2847. # ifndef NormalLibXfontcache
  2848. #  define NormalLibXfontcache    (!SharedLibXfontcache || ForceNormalLib)
  2849. # endif
  2850. # ifndef DebugLibXfontcache
  2851. #  define DebugLibXfontcache    NO
  2852. # endif
  2853. # ifndef ProfileLibXfontcache
  2854. #  define ProfileLibXfontcache    NO
  2855. # endif
  2856.  
  2857.     XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
  2858. #if SharedLibXfontcache
  2859. #ifndef SharedXfontcacheRev
  2860. #define SharedXfontcacheRev 1.2
  2861. #endif
  2862. SharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev)
  2863. #else
  2864. ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir)
  2865. #endif
  2866.  
  2867. #ifndef SharedLibXau
  2868. #define SharedLibXau        YES
  2869. #endif
  2870. #ifndef NormalLibXau
  2871. #define NormalLibXau (!SharedLibXau | ForceNormalLib)
  2872. #endif
  2873. #ifndef DebugLibXau
  2874. #define DebugLibXau        NO    /* debugged auth library */
  2875. #endif
  2876. #ifndef ProfileLibXau
  2877. #define ProfileLibXau        NO    /* profiled auth library */
  2878. #endif
  2879.          XAUTHSRC = $(LIBSRC)/Xau
  2880. #if SharedLibXau
  2881. #ifndef SharedXauRev
  2882. #define SharedXauRev 6.0
  2883. #endif
  2884. SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev)
  2885. #else
  2886. #if !UseInstalledXauLib
  2887. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir)
  2888. #else
  2889. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR))
  2890. #endif
  2891. #endif
  2892.  
  2893. #ifndef SharedLibXdmcp
  2894. #define SharedLibXdmcp        YES
  2895. #endif
  2896. #ifndef NormalLibXdmcp
  2897. #define NormalLibXdmcp (!SharedLibXdmcp | ForceNormalLib)
  2898. #endif
  2899. #ifndef DebugLibXdmcp
  2900. #define DebugLibXdmcp        NO    /* debugged XDMCP library */
  2901. #endif
  2902. #ifndef ProfileLibXdmcp
  2903. #define ProfileLibXdmcp        NO    /* profiled XDMCP library */
  2904. #endif
  2905.       XDMCPLIBSRC = $(LIBSRC)/Xdmcp
  2906. #if SharedLibXdmcp
  2907. #ifndef SharedXdmcpRev
  2908. #define SharedXdmcpRev 6.0
  2909. #endif
  2910. SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev)
  2911. #else
  2912. #if !UseInstalledXdmcpLib
  2913. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir)
  2914. #else
  2915. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR))
  2916. #endif
  2917. #endif
  2918.  
  2919. #ifndef SharedLibXmu
  2920. #define SharedLibXmu HasSharedLibraries
  2921. #endif
  2922. #ifndef NormalLibXmu
  2923. #define NormalLibXmu (!SharedLibXmu | ForceNormalLib)
  2924. #endif
  2925. #ifndef DebugLibXmu
  2926. #define DebugLibXmu        NO    /* debugged Xmu library */
  2927. #endif
  2928. #ifndef ProfileLibXmu
  2929. #define ProfileLibXmu        NO    /* profiled Xmu library */
  2930. #endif
  2931.            XMUSRC = $(LIBSRC)/Xmu
  2932. #if SharedLibXmu
  2933. #ifndef SharedXmuRev
  2934. #define SharedXmuRev 6.2
  2935. #endif
  2936. SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev)
  2937. #else
  2938. ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir)
  2939. #endif
  2940.  
  2941. #ifndef SharedLibXmuu
  2942. #define SharedLibXmuu HasSharedLibraries
  2943. #endif
  2944. #ifndef NormalLibXmuu
  2945. #define NormalLibXmuu        (!SharedLibXmuu | ForceNormalLib)
  2946. #endif
  2947. #ifndef DebugLibXmuu
  2948. #define DebugLibXmuu        NO    /* debugged Xmuu library */
  2949. #endif
  2950. #ifndef ProfileLibXmuu
  2951. #define ProfileLibXmuu        NO    /* profiled Xmuu library */
  2952. #endif
  2953.            XMUUSRC = $(LIBSRC)/Xmuu
  2954. #if SharedLibXmuu
  2955. #ifndef SharedXmuuRev
  2956. #define SharedXmuuRev 1.0
  2957. #endif
  2958. SharedLibReferences(XMUU,Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev)
  2959. #else
  2960. ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir)
  2961. #endif
  2962.  
  2963. #ifndef SharedOldX
  2964. #define SharedOldX HasSharedLibraries
  2965. #endif
  2966. #ifndef NormalOldX
  2967. #define NormalOldX (!SharedOldX | ForceNormalLib)
  2968. #endif
  2969. #ifndef DebugOldX
  2970. #define DebugOldX        NO    /* debugged old X library */
  2971. #endif
  2972. #ifndef ProfileOldX
  2973. #define ProfileOldX        NO    /* profiled old X library */
  2974. #endif
  2975.        OLDXLIBSRC = $(LIBSRC)/oldX
  2976. #if SharedOldX
  2977. #ifndef SharedOldXRev
  2978. #define SharedOldXRev 6.0
  2979. #endif
  2980. SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev)
  2981. #else
  2982. ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir)
  2983. #endif
  2984.  
  2985. #ifndef SharedLibXp
  2986. #define SharedLibXp HasSharedLibraries
  2987. #endif
  2988. #ifndef NormalLibXp
  2989. #define NormalLibXp (!SharedLibXp | ForceNormalLib)
  2990. #endif
  2991. #ifndef DebugLibXp
  2992. #define DebugLibXp              NO      /* debugged Xp library */
  2993. #endif
  2994. #ifndef ProfileLibXp
  2995. #define ProfileLibXp            NO      /* profiled Xp library */
  2996. #endif
  2997.          XPLIBSRC = $(LIBSRC)/Xp
  2998. #if SharedLibXp
  2999. #ifndef SharedXpRev
  3000. #define SharedXpRev 6.2
  3001. #endif
  3002. SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev)
  3003. #else
  3004. ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir)
  3005. #endif
  3006.  
  3007. #ifndef SharedLibXt
  3008. #define SharedLibXt HasSharedLibraries
  3009. #endif
  3010. #ifndef NormalLibXt
  3011. #define NormalLibXt (!SharedLibXt | ForceNormalLib)
  3012. #endif
  3013. #ifndef DebugLibXt
  3014. #define DebugLibXt        NO    /* debugged toolkit library */
  3015. #endif
  3016. #ifndef ProfileLibXt
  3017. #define ProfileLibXt        NO    /* profiled toolkit library */
  3018. #endif
  3019.        TOOLKITSRC = $(LIBSRC)/Xt
  3020. #if SharedLibXt
  3021. #ifndef SharedXtRev
  3022. #define SharedXtRev 6.0
  3023. #endif
  3024. SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev)
  3025. #else
  3026. ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir)
  3027. #endif
  3028.       DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
  3029.          XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
  3030.      LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
  3031.  
  3032. #ifndef SharedLibXa
  3033. #define SharedLibXa    (HasSharedLibraries & HasCplusplus)
  3034. #endif
  3035. #ifndef NormalLibXa
  3036. /* #define NormalLibXa    ((!SharedLibXa | ForceNormalLib) & HasCplusplus) */
  3037. #define NormalLibXa    YES /* needed for current tests, will correct later */
  3038. #endif
  3039. #ifndef DebugLibXa
  3040. #define DebugLibXa    NO    /* debugged audio library */
  3041. #endif
  3042. #ifndef ProfileLibXa
  3043. #define ProfileLibXa    NO    /* profiled audio library */
  3044. #endif
  3045.        XALIBSRC = $(LIBSRC)/Xa
  3046. #if SharedLibXa
  3047. #ifndef SharedXaRev
  3048. #define SharedXaRev 1.0
  3049. #endif
  3050. SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev)
  3051. #else
  3052. UnsharedLibReferences(XA,Xa,$(XALIBSRC))
  3053. #endif
  3054.  
  3055. #ifndef BuildXaw
  3056. #define BuildXaw (BuildXprintLib && !BuildServersOnly)
  3057. #endif
  3058.  
  3059.        /* AWIDGETSRC is needed by libXaw6 and libXaw7 */
  3060.        AWIDGETSRC = $(LIBSRC)/Xaw
  3061.  
  3062. #if BuildXaw
  3063. #ifndef SharedLibXaw
  3064. #define SharedLibXaw HasSharedLibraries
  3065. #endif
  3066. #ifndef NormalLibXaw
  3067. #define NormalLibXaw (!SharedLibXaw | ForceNormalLib)
  3068. #endif
  3069. #ifndef DebugLibXaw
  3070. #define DebugLibXaw        NO    /* debugged widget library */
  3071. #endif
  3072. #ifndef ProfileLibXaw
  3073. #define ProfileLibXaw        NO    /* profiled widget library */
  3074. #endif
  3075. #if SharedLibXaw
  3076. #ifndef SharedXawRev
  3077. #define SharedXawRev 8.0
  3078. #endif
  3079. SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev)
  3080. #else
  3081. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir)
  3082. #endif
  3083. #endif
  3084.  
  3085. #ifndef BuildXaw7
  3086. #define BuildXaw7 (HasSharedLibraries && !BuildServersOnly)
  3087. #endif
  3088.  
  3089. #if BuildXaw7
  3090. #ifndef SharedLibXaw7
  3091. #define SharedLibXaw7 HasSharedLibraries
  3092. #endif
  3093. #ifndef NormalLibXaw7
  3094. #define NormalLibXaw7        NO
  3095. #endif
  3096. #ifndef DebugLibXaw7
  3097. #define DebugLibXaw7        NO    /* debugged widget library */
  3098. #endif
  3099. #ifndef ProfileLibXaw7
  3100. #define ProfileLibXaw7        NO    /* profiled widget library */
  3101. #endif
  3102.        AWIDGET7SRC = $(LIBSRC)/Xaw7
  3103. #if SharedLibXaw7
  3104. #ifndef SharedXaw7Rev
  3105. #define SharedXaw7Rev 7.0
  3106. #endif
  3107. SharedDSLibReferences(XAW7,Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev)
  3108. #if !BuildXaw
  3109. SharedDSLibReferences(XAW,Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev)
  3110. #endif
  3111. #else
  3112. ProjectUnsharedLibReferences(XAW7,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3113. #if !BuildXaw
  3114. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3115. #endif
  3116. #endif
  3117. #endif
  3118.  
  3119.  
  3120. #ifndef BuildXaw6
  3121. #define BuildXaw6 (HasSharedLibraries && !BuildServersOnly)
  3122. #endif
  3123.  
  3124. #if BuildXaw6
  3125. #ifndef SharedLibXaw6
  3126. #define SharedLibXaw6 HasSharedLibraries
  3127. #endif
  3128. #ifndef NormalLibXaw6
  3129. #define NormalLibXaw6        NO
  3130. #endif
  3131. #ifndef DebugLibXaw6
  3132. #define DebugLibXaw6        NO    /* debugged widget library */
  3133. #endif
  3134. #ifndef ProfileLibXaw6
  3135. #define ProfileLibXaw6        NO    /* profiled widget library */
  3136. #endif
  3137.        AWIDGET6SRC = $(LIBSRC)/Xaw6
  3138. #if SharedLibXaw6
  3139. #ifndef SharedXaw6Rev
  3140. #define SharedXaw6Rev 6.1
  3141. #endif
  3142. SharedDSLibReferences(XAW6,Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev)
  3143. #if !BuildXaw && !BuildXaw7
  3144. SharedDSLibReferences(XAW,Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev)
  3145. #endif
  3146. #else
  3147. ProjectUnsharedLibReferences(XAW6,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3148. #if !BuildXaw && !BuildXaw7
  3149. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3150. #endif
  3151. #endif
  3152. #endif
  3153.  
  3154. #ifndef SharedLibXi
  3155. #define SharedLibXi HasSharedLibraries
  3156. #endif
  3157. #ifndef NormalLibXi
  3158. #define NormalLibXi (!SharedLibXi | ForceNormalLib)
  3159. #endif
  3160. #ifndef DebugLibXi
  3161. #define DebugLibXi        NO    /* debugged Xi library */
  3162. #endif
  3163. #ifndef ProfileLibXi
  3164. #define ProfileLibXi        NO    /* profiled Xi library */
  3165. #endif
  3166.          XILIBSRC = $(LIBSRC)/Xi
  3167. #if SharedLibXi
  3168. #ifndef SharedXiRev
  3169. #define SharedXiRev 6.0
  3170. #endif
  3171. SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev)
  3172. #else
  3173. ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir)
  3174. #endif
  3175.  
  3176. #ifndef SharedLibXtst
  3177. #define SharedLibXtst HasSharedLibraries
  3178. #endif
  3179. #ifndef NormalLibXtst
  3180. #define NormalLibXtst (!SharedLibXtst | ForceNormalLib)
  3181. #endif
  3182. #ifndef DebugLibXtst
  3183. #define DebugLibXtst        NO    /* debugged Xtst library */
  3184. #endif
  3185. #ifndef ProfileLibXtst
  3186. #define ProfileLibXtst        NO    /* profiled Xtst library */
  3187. #endif
  3188.       XTESTLIBSRC = $(LIBSRC)/Xtst
  3189. #if SharedLibXtst
  3190. #ifndef SharedXtstRev
  3191. #define SharedXtstRev 6.1
  3192. #endif
  3193. SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev)
  3194. #else
  3195. ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir)
  3196. #endif
  3197.  
  3198. ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir)
  3199.  
  3200. #ifndef SharedLibICE
  3201. #define SharedLibICE HasSharedLibraries
  3202. #endif
  3203. #ifndef NormalLibICE
  3204. #define NormalLibICE (!SharedLibICE | ForceNormalLib)
  3205. #endif
  3206. #ifndef DebugLibICE
  3207. #define DebugLibICE        NO    /* debugged ICE library */
  3208. #endif
  3209. #ifndef ProfileLibICE
  3210. #define ProfileLibICE        NO    /* profiled ICE library */
  3211. #endif
  3212.            ICESRC = $(LIBSRC)/ICE
  3213. #if SharedLibICE
  3214. #ifndef SharedICERev
  3215. #define SharedICERev 6.4
  3216. #endif
  3217. SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev)
  3218. #else
  3219. ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir)
  3220. #endif
  3221.  
  3222. #ifndef SharedLibSM
  3223. #define SharedLibSM HasSharedLibraries
  3224. #endif
  3225. #ifndef NormalLibSM
  3226. #define NormalLibSM (!SharedLibSM | ForceNormalLib)
  3227. #endif
  3228. #ifndef DebugLibSM
  3229. #define DebugLibSM        NO    /* debugged SM library */
  3230. #endif
  3231. #ifndef ProfileLibSM
  3232. #define ProfileLibSM        NO    /* profiled SM library */
  3233. #endif
  3234.             SMSRC = $(LIBSRC)/SM
  3235. #if SharedLibSM
  3236. #ifndef SharedSMRev
  3237. #define SharedSMRev 6.0
  3238. #endif
  3239. SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev)
  3240. #else
  3241. ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir)
  3242. #endif
  3243.  
  3244. #ifndef SharedLibXkey
  3245. #define SharedLibXkey HasSharedLibraries
  3246. #endif
  3247. #ifndef NormalLibXkey
  3248. #define NormalLibXkey (!SharedLibXkey | ForceNormalLib)
  3249. #endif
  3250. #ifndef DebugLibXkey
  3251. #define DebugLibXkey        NO    /* debugged Xkey library */
  3252. #endif
  3253. #ifndef ProfileLibXkey
  3254. #define ProfileLibXkey        NO    /* profiled Xkey library */
  3255. #endif
  3256.            XKEYSRC = $(LIBSRC)/Xkey
  3257. #if SharedLibXkey
  3258. #ifndef SharedXkeyRev
  3259. #define SharedXkeyRev 6.0
  3260. #endif
  3261. SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev)
  3262. #else
  3263. ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir)
  3264. #endif
  3265.  
  3266. #ifndef SharedLibFS
  3267. #define SharedLibFS        HasSharedLibraries
  3268. #endif
  3269. #ifndef NormalLibFS
  3270. #define NormalLibFS (!SharedLibFS | ForceNormalLib)
  3271. #endif
  3272. #ifndef DebugLibFS
  3273. #define DebugLibFS        NO    /* debugged FS library */
  3274. #endif
  3275. #ifndef ProfileLibFS
  3276. #define ProfileLibFS        NO    /* profiled FS library */
  3277. #endif
  3278.          FSLIBSRC = $(LIBSRC)/FS
  3279. #if SharedLibFS
  3280. #ifndef SharedFSRev
  3281. #define SharedFSRev 6.0
  3282. #endif
  3283. SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev)
  3284. #else
  3285. ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir)
  3286. #endif
  3287.  
  3288. #ifndef SharedLibFont
  3289. #define SharedLibFont HasSharedLibraries
  3290. #endif
  3291. #ifndef NormalLibFont
  3292. #define NormalLibFont (!SharedLibFont | ForceNormalLib | XserverStaticFontLib)
  3293. #endif
  3294. #ifndef DebugLibFont
  3295. #define DebugLibFont        NO    /* debugged Font library */
  3296. #endif
  3297. #ifndef ProfileLibFont
  3298. #define ProfileLibFont        NO    /* profiled Font library */
  3299. #endif
  3300.          FONTLIBSRC = $(LIBSRC)/font
  3301. #if SharedLibFont
  3302. #ifndef SharedFontRev
  3303. #define SharedFontRev 1.5
  3304. #endif
  3305. SharedFontLibReferences()
  3306. XCOMM SharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev)
  3307. #else
  3308. ProjectUnsharedFontLibReferences()
  3309. XCOMM ProjectUnsharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),XBuildLibDir)
  3310. #endif
  3311.  
  3312.      FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs
  3313. ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir)
  3314.          DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
  3315.             FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB)
  3316.  
  3317.  
  3318. #ifndef SharedLibFontEnc
  3319. #define SharedLibFontEnc    HasSharedLibraries
  3320. #endif
  3321. #ifndef NormalLibFontEnc
  3322. #define NormalLibFontEnc (!SharedLibFontEnc | ForceNormalLib)
  3323. #endif
  3324. #ifndef DebugLibFontEnc
  3325. #define DebugLibFontEnc        NO    /* debugged fontenc library */
  3326. #endif
  3327. #ifndef ProfileLibFontEnc
  3328. #define ProfileLibFontEnc    NO    /* profiled fontenc library */
  3329. #endif
  3330.          FONTENCLIBSRC = $(LIBSRC)/fontenc
  3331. #if SharedLibFontEnc
  3332. #ifndef SharedFontEncRev
  3333. #define SharedFontEncRev 1.0
  3334. #endif
  3335. SharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev)
  3336. #else
  3337. ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir)
  3338. #endif
  3339.  
  3340. #ifndef SharedLibXpm
  3341. #define SharedLibXpm HasSharedLibraries
  3342. #endif
  3343. #ifndef NormalLibXpm
  3344. #define NormalLibXpm (!SharedLibXpm | ForceNormalLib)
  3345. #endif
  3346. #ifndef DebugLibXpm
  3347. #define DebugLibXpm        NO
  3348. #endif
  3349. #ifndef ProfileLibXpm
  3350. #define ProfileLibXpm        NO
  3351. #endif
  3352.           XPMLIBSRC = $(LIBSRC)/Xpm
  3353. #if SharedLibXpm
  3354. #ifndef SharedXpmRev
  3355. #define SharedXpmRev 4.11
  3356. #endif
  3357. SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev)
  3358. #else
  3359. ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir)
  3360. #endif
  3361.  
  3362. #if UseFreetype2
  3363.  
  3364. #if BuildFreetype2Library
  3365.  
  3366. #ifndef SharedLibFreetype2
  3367. #define SharedLibFreetype2 HasSharedLibraries
  3368. #endif
  3369. #ifndef NormalLibFreetype2
  3370. #define NormalLibFreetype2 (!SharedLibFreetype2 | ForceNormalLib)
  3371. #endif
  3372. #ifndef DebugLibFreetype2
  3373. #define DebugLibFreetype2        NO
  3374. #endif
  3375. #ifndef ProfileLibFreetype2
  3376. #define ProfileLibFreetype2        NO
  3377. #endif
  3378.           FREETYPE2LIBSRC = $(LIBSRC)/freetype2
  3379.  
  3380. /*
  3381.  * FreeType 2.1.9
  3382.  *
  3383.  * Get the library version information from version_info in
  3384.  * in xc/extras/freetype2/builds/unix/configure.ac.
  3385.  *
  3386.  * current:revision:age = 9:7:3
  3387.  *
  3388.  * The LibtoolMinorVersions revision is "(current - age).age".
  3389.  * The !LibtoolMinorVersions revision is "current.0".
  3390.  * Freetype2Version should be set to "current.revision.age"
  3391.  */
  3392. #ifndef Freetype2Version
  3393. #define Freetype2Version 9.7.3
  3394. #endif
  3395.  
  3396. #if SharedLibFreetype2
  3397. #ifndef SharedLibtoolFreetype2Rev
  3398. #define SharedLibtoolFreetype2Rev    9:7:3
  3399. #endif
  3400. #ifndef SharedFreetype2Rev
  3401. #if LibtoolMinorVersions
  3402. #define SharedFreetype2Rev 6.3.8
  3403. #else
  3404. #define SharedFreetype2Rev 9.0
  3405. #endif
  3406. #endif
  3407. SharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev)
  3408. #else
  3409. ProjectUnsharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),XBuildLibDir)
  3410. #endif
  3411.  
  3412. #ifdef UseInstalled
  3413. FREETYPE2INCDIR=$(INCDIR)
  3414. #else
  3415. FREETYPE2INCDIR=$(BUILDINCDIR)
  3416. #endif
  3417.  
  3418. #else /* BuildFreetype2Library */
  3419.  
  3420. #if HasFreetype2
  3421.  
  3422. #ifndef Freetype2Dir
  3423. #define Freetype2Dir /usr
  3424. #ifndef Freetype2DirStandard
  3425. # define Freetype2DirStandard YES
  3426. #endif
  3427. #endif
  3428. #ifndef Freetype2DirStandard
  3429. #define Freetype2DirStandard NO
  3430. #endif
  3431.  
  3432. #ifndef Freetype2LibDir
  3433. #define Freetype2LibDir Freetype2Dir/LibDirName
  3434. # if Freetype2DirStandard
  3435. #  define Freetype2LibDirStandard YES
  3436. # endif
  3437. #endif
  3438. #ifndef Freetype2LibDirStandard
  3439. # define Freetype2LibDirStandard NO
  3440. #endif
  3441.  
  3442. #ifndef Freetype2IncDir
  3443. #define Freetype2IncDir Freetype2Dir/include
  3444. # if Freetype2DirStandard
  3445. #  define Freetype2IncDirStandard YES
  3446. # endif
  3447. #endif
  3448.  
  3449. FREETYPE2DIR = Freetype2Dir
  3450. FREETYPE2LIBDIR = Freetype2LibDir
  3451. FREETYPE2INCDIR = Freetype2IncDir
  3452. #if Freetype2LibDirStandard
  3453. FREETYPE2LIB = -lfreetype
  3454. #else
  3455. FREETYPE2LIB = -L$(FREETYPE2LIBDIR) LinkerRuntimeLibraryPathFlag($(FREETYPE2LIBDIR)) -lfreetype
  3456. #endif
  3457.  
  3458. #endif /* HasFreetype2 */
  3459.  
  3460. #endif /* else BuildFreetype2Library */
  3461.  
  3462. #ifndef Freetype2IncDirStandard
  3463. # define Freetype2IncDirStandard NO
  3464. #endif
  3465.  
  3466. #if BuildFreetype2Library || HasFreetype2
  3467. #if Freetype2IncDirStandard
  3468. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3469. #else
  3470. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR) -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3471. #endif
  3472. FREETYPE2DEFINES = -DFREETYPE2
  3473. #endif
  3474.  
  3475. #endif /* UseFreetype2 */
  3476.  
  3477. #if HasMotif
  3478.  
  3479. #ifndef MotifDir
  3480. #define MotifDir /usr/X11R6
  3481. #endif
  3482. #ifndef MotifDirStandard
  3483. #define MotifDirStandard NO
  3484. #endif
  3485.  
  3486. #ifndef MotifLibDir
  3487. # define MotifLibDir MotifDir/LibDirName
  3488. # if MotifDirStandard
  3489. #  define MotifLibDirStandard YES
  3490. # endif
  3491. #endif
  3492. #ifndef MotifLibDirStandard
  3493. # define MotifLibDirStandard NO
  3494. #endif
  3495.  
  3496. #ifndef MotifIncDir
  3497. # define MotifIncDir MotifDir/include
  3498. # if MotifDirStandard
  3499. #  define MotifIncDirStandard YES
  3500. # endif
  3501. #endif
  3502. #ifndef MotifIncDirStandard
  3503. # define MotifIncDirStandard NO
  3504. #endif
  3505.  
  3506. MOTIFDIR = MotifDir
  3507. MOTIFLIBDIR = MotifLibDir
  3508. MOTIFINCDIR = MotifIncDir
  3509.  
  3510. #if MotifLibDirStandard
  3511. MOTIFLIB = -lXm
  3512. #else
  3513. MOTIFLIB = -L$(MOTIFLIBDIR) LinkerRuntimeLibraryPathFlag($(MOTIFLIBDIR)) -lXm
  3514. #endif
  3515.  
  3516. #if MotifIncDirStandard
  3517. MOTIFINCLUDES = 
  3518. #else
  3519. MOTIFINCLUDES = -I$(MOTIFINCDIR)
  3520. #endif
  3521.  
  3522. #endif /* HasMotif */
  3523.  
  3524. #ifndef SharedLibExpat
  3525. #define SharedLibExpat HasSharedLibraries
  3526. #endif
  3527. #ifndef NormalLibExpat
  3528. #define NormalLibExpat (!SharedLibExpat | ForceNormalLib)
  3529. #endif
  3530. #ifndef DebugLibExpat
  3531. #define DebugLibExpat        NO
  3532. #endif
  3533. #ifndef ProfileLibExpat
  3534. #define ProfileLibExpat        NO
  3535. #endif
  3536.           EXPATLIBSRC = $(LIBSRC)/expat
  3537.  
  3538. /*
  3539.  * Expat 1.95.6.
  3540.  *
  3541.  * Get the library version information from LIBCURRENT, LIBREVISION and LIBAGE
  3542.  * in xc/extras/expat/configure.
  3543.  *
  3544.  * LIBCURRENT:LIBREVISION:LIBAGE = 4:0:4
  3545.  *
  3546.  * The LibtoolMinorVersions revision is "(LIBCURRENT - LIBAGE).LIBAGE".
  3547.  * The !LibtoolMinorVersions revision is "LIBCURRENT.0".
  3548.  */
  3549. #ifndef ExpatVersion
  3550. #define ExpatVersion 1.95.6
  3551. #endif
  3552.  
  3553. #if SharedLibExpat
  3554. #ifndef SharedLibtoolExpatRev
  3555. #define SharedLibtoolExpatRev    4:0:4
  3556. #endif
  3557. #ifndef SharedExpatRev
  3558. #if LibtoolMinorVersions
  3559. #define SharedExpatRev 0.4
  3560. #else
  3561. #define SharedExpatRev 4.0
  3562. #endif
  3563. #endif
  3564. SharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev)
  3565. #else
  3566. ProjectUnsharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),XBuildLibDir)
  3567. #endif
  3568.  
  3569. #if UseExpat
  3570.  
  3571. #if BuildExpatLibrary
  3572. EXPATINCLUDES=$(TOP_X_INCLUDES)
  3573. EXPATDEFINES=-DEXPAT
  3574. #else    /* BuildExpatLibrary */
  3575.  
  3576. #if HasExpat
  3577.  
  3578. #ifndef ExpatDir
  3579. #define ExpatDir /usr
  3580. #define ExpatDirStandard YES
  3581. #endif
  3582. #ifndef ExpatDirStandard
  3583. #define ExpatDirStandard NO
  3584. #endif
  3585.  
  3586. #ifndef ExpatLibDir
  3587. #define ExpatLibDir ExpatDir/LibDirName
  3588. # if ExpatDirStandard
  3589. #  define ExpatLibDirStandard YES
  3590. # endif
  3591. #endif
  3592. #ifndef ExpatLibDirStandard
  3593. #define ExpatLibDirStandard NO
  3594. #endif
  3595.  
  3596. #ifndef ExpatIncDir
  3597. #define ExpatIncDir ExpatDir/include
  3598. # if ExpatDirStandard
  3599. #  define ExpatIncDirStandard YES
  3600. # endif
  3601. #endif
  3602. #ifndef ExpatIncDirStandard
  3603. #define ExpatIncDirStandard NO
  3604. #endif
  3605.  
  3606. EXPATDIR = ExpatDir
  3607. EXPATLIBDIR = ExpatLibDir
  3608. EXPATINCDIR = ExpatIncDir
  3609. #if ExpatIncDirStandard
  3610. EXPATINCLUDES =
  3611. #else
  3612. EXPATINCLUDES = -I$(EXPATINCDIR)
  3613. #endif
  3614. #if ExpatLibDirStandard
  3615. EXPATLIB = -lexpat
  3616. #else
  3617. EXPATLIB = -L$(EXPATLIBDIR) LinkerRuntimeLibraryPathFlag($(EXPATLIBDIR)) -lexpat
  3618. #endif
  3619. EXPATDEFINES = -DEXPAT
  3620. #endif /* HasExpat */
  3621.  
  3622. #endif /* else BuildExpatLibrary */
  3623.  
  3624. #define ExpatClientLibs $(EXPATLIB)
  3625. #define ExpatClientDepLibs $(DEPEXPATLIB)
  3626.  
  3627. #endif /* UseExpat */
  3628.  
  3629. #if BuildXftLibrary
  3630. #ifndef SharedLibXft1
  3631. #define SharedLibXft1 HasSharedLibraries
  3632. #endif
  3633. #ifndef NormalLibXft1
  3634. #define NormalLibXft1        NO
  3635. #endif
  3636. #ifndef DebugLibXft1
  3637. #define DebugLibXft1        NO
  3638. #endif
  3639. #ifndef ProfileLibXft1
  3640. #define ProfileLibXft1        NO
  3641. #endif
  3642. #else
  3643. #undef  SharedLibXft
  3644. #define SharedLibXft        NO
  3645. #undef  NormalLibXft
  3646. #define NormalLibXft        NO
  3647. #undef  DebugLibXft
  3648. #define DebugLibXft        NO
  3649. #undef  ProfileLibXft
  3650. #define ProfileLibXft        NO
  3651. #endif
  3652.  
  3653. #if BuildXftLibrary
  3654.           XFT1LIBSRC = $(LIBSRC)/Xft1
  3655. #if SharedLibXft1
  3656. #ifndef SharedXft1Rev
  3657. #define SharedXft1Rev 1.1
  3658. #endif
  3659. SharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev)
  3660. #else
  3661. ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir)
  3662. #endif
  3663.  
  3664. #ifndef Xft1ClientDepLibs
  3665. #if UseFreetype2
  3666. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPFREETYPE2LIB) $(DEPXRENDERLIB)
  3667. #else
  3668. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPXRENDERLIB)
  3669. #endif
  3670. #endif
  3671. #ifndef Xft1ClientLibs
  3672. #if UseFreetype2
  3673. #define Xft1ClientLibs $(XFT1LIB) $(FREETYPE2LIB) $(XRENDERLIB)
  3674. #else
  3675. #define Xft1ClientLibs $(XFT1LIB) $(XRENDERLIB)
  3676. #endif
  3677. #endif
  3678.  
  3679. #ifndef SharedLibXft
  3680. #define SharedLibXft HasSharedLibraries
  3681. #endif
  3682. #ifndef NormalLibXft
  3683. #define NormalLibXft (!SharedLibXft | ForceNormalLib)
  3684. #endif
  3685. #ifndef DebugLibXft
  3686. #define DebugLibXft        NO
  3687. #endif
  3688. #ifndef ProfileLibXft
  3689. #define ProfileLibXft        NO
  3690. #endif
  3691.           XFTLIBSRC = $(LIBSRC)/Xft
  3692. #if SharedLibXft
  3693. #ifndef SharedXftRev
  3694. #define SharedXftRev 2.1.2
  3695. #endif
  3696. SharedLibReferences(XFT,Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev)
  3697. #else
  3698. ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir)
  3699. #endif
  3700.  
  3701. #ifndef XftClientDepLibs
  3702. #define XftClientDepLibs $(DEPXFTLIB) FontconfigClientDepLibs $(DEPXRENDERLIB)
  3703. #endif
  3704. #ifndef XftClientLibs
  3705. #define XftClientLibs $(XFTLIB) FontconfigClientLibs $(XRENDERLIB)
  3706. #endif
  3707.  
  3708. XFTINCLUDES=$(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES) $(XRENDERINCLUDES)
  3709.  
  3710. #else /* BuildXftLibrary */
  3711.  
  3712. #if HasXftLibrary
  3713.  
  3714. #ifndef XftLibraryDir
  3715. #define XftLibraryDir /usr/X11R6
  3716. #endif
  3717.  
  3718. #ifndef XftLibraryLibDir
  3719. #define XftLibraryLibDir XftLibraryDir/LibDirName
  3720. #endif
  3721.  
  3722. #ifndef XftLibraryIncDir
  3723. #define XftLibraryIncDir XftLibraryDir/include
  3724. #endif
  3725.  
  3726. XFTDIR = XftLibraryDir
  3727. XFTLIBDIR = XftLibraryLibDir
  3728. XFTINCDIR = XftLibraryIncDir
  3729. XFTLIB = -L$(XFTLIBDIR) -lXft
  3730.  
  3731. #ifndef XftClientDepLibs
  3732. #define XftClientDepLibs FontconfigClientDepLibs $(DEPXRENDERLIB)
  3733. #endif
  3734. #ifndef XftClientLibs
  3735. #define XftClientLibs $(XFTLIB) FontconfigClientLibs $(XRENDERLIB)
  3736. #endif
  3737.  
  3738. XFTINCLUDES= -I$(XFTINCDIR) $(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES) $(XRENDERINCLUDES)
  3739.  
  3740. #endif /* HasXftLibrary */
  3741.  
  3742. #endif /* else BuildXftLibrary */
  3743.  
  3744. #if UseFontconfig
  3745.  
  3746. #if BuildFontconfigLibrary
  3747.  
  3748. #ifndef SharedLibFontconfig
  3749. #define SharedLibFontconfig HasSharedLibraries
  3750. #endif
  3751. #ifndef NormalLibFontconfig
  3752. #define NormalLibFontconfig (!SharedLibFontconfig | ForceNormalLib)
  3753. #endif
  3754. #ifndef DebugLibFontconfig
  3755. #define DebugLibFontconfig        NO
  3756. #endif
  3757. #ifndef ProfileLibFontconfig
  3758. #define ProfileLibFontconfig        NO
  3759. #endif
  3760.           FONTCONFIGLIBSRC = $(LIBSRC)/fontconfig
  3761. #if SharedLibFontconfig
  3762. #ifndef SharedFontconfigRev
  3763. #define SharedFontconfigRev 1.0.4
  3764. #endif
  3765. SharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev)
  3766. #else
  3767. ProjectUnsharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir)
  3768. #endif
  3769.  
  3770. #ifdef UseInstalled
  3771. FONTCONFIGINCDIR=$(INCDIR)
  3772. #else
  3773. FONTCONFIGINCDIR=$(BUILDINCDIR)
  3774. #endif
  3775.  
  3776. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3777.  
  3778. #if UseInstalledX11
  3779. FCCACHE = $(BINDIR)/fc-cache
  3780. #else
  3781. FCCACHE = set -x; $(CLIENTENVSETUP) $(PRELOADXFTSETUP) FONTCONFIG_PATH=$(FONTCONFIGLIBSRC) $(XBUILDBINDIR)/fc-cache
  3782. #endif
  3783.  
  3784. #else /* BuildFontconfigLibrary */
  3785.  
  3786. #if HasFontconfig
  3787.  
  3788. #ifndef FontconfigDir
  3789. # define FontconfigDir /usr
  3790. # ifndef FontconfigDirStandard
  3791. #  define FontconfigDirStandard YES
  3792. # endif
  3793. #endif
  3794.  
  3795. #ifndef FontconfigDirStandard
  3796. # define FontconfigDirStandard NO
  3797. #endif
  3798.  
  3799. #ifndef FontconfigLibDir
  3800. # define FontconfigLibDir FontconfigDir/LibDirName
  3801. # if FontconfigDirStandard
  3802. #  define FontconfigLibDirStandard YES
  3803. # endif
  3804. #endif
  3805. #ifndef FontconfigLibDirStandard
  3806. # define FontconfigLibDirStandard NO
  3807. #endif
  3808.  
  3809. #ifndef FontconfigBinDir
  3810. # define FontconfigBinDir FontconfigDir/bin
  3811. #endif
  3812.  
  3813. #ifndef FontconfigIncDir
  3814. # define FontconfigIncDir FontconfigDir/include
  3815. # if FontconfigDirStandard
  3816. #  define FontconfigIncDirStandard YES
  3817. # endif
  3818. #endif
  3819.  
  3820. #ifndef FontconfigIncDirStandard
  3821. # define FontconfigIncDirStandard NO
  3822. #endif
  3823.  
  3824. FONTCONFIGDIR = FontconfigDir
  3825. FONTCONFIGLIBDIR = FontconfigLibDir
  3826. FONTCONFIGINCDIR = FontconfigIncDir
  3827. FONTCONFIGBINDIR = FontconfigBinDir
  3828. #if FontconfigLibDirStandard
  3829. FONTCONFIGLIB = -lfontconfig
  3830. #else
  3831. FONTCONFIGLIB = -L$(FONTCONFIGLIBDIR) LinkerRuntimeLibraryPathFlag($(FONTCONFIGLIBDIR)) -lfontconfig
  3832. #endif
  3833.  
  3834. #if FontconfigIncDirStandard
  3835. FONTCONFIGINCLUDES =
  3836. #else
  3837. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3838. #endif
  3839.  
  3840. FCCACHE = $(FONTCONFIGBINDIR)/fc-cache
  3841.  
  3842. #endif /* HasFontconfig */
  3843.  
  3844. #endif /* else BuildFontconfigLibrary */
  3845.  
  3846. #if BuildFontconfigLibrary || HasFontconfig
  3847. FONTCONFIGDEFINES = -DFONTCONFIG
  3848. #endif
  3849.  
  3850. #ifndef FontconfigClientDepLibs
  3851. #define FontconfigClientDepLibs $(DEPFONTCONFIGLIB) $(DEPFREETYPE2LIB) ExpatClientDepLibs
  3852. #endif
  3853. #ifndef FontconfigClientLibs
  3854. #define FontconfigClientLibs $(FONTCONFIGLIB) $(FREETYPE2LIB) ExpatClientLibs
  3855. #endif
  3856.  
  3857. #endif /* UseFontconfig */
  3858.  
  3859. #ifdef HasLibpng
  3860.  
  3861. /*
  3862.  * Libpng controls:
  3863.  *
  3864.  *    LibpngDir        prefix for all libpng files
  3865.  *    LibpngDirStandard    Boolean - whether png headers/libs are
  3866.  *                in default compile/link paths
  3867.  *    LibpngLibDir        Directory holding png library
  3868.  *    LibpngLibDirStandard    Boolean - whether png libs are
  3869.  *                in default link path
  3870.  *    LibpngIncDir        Directory holding png includes
  3871.  *    LibpngIncDirStandard    Boolean - whether png includes are
  3872.  *                in default compile path
  3873.  *
  3874.  * Make sure that *Standard is set correctly, if not, the
  3875.  * standard compile/link paths will be added *before* the
  3876.  * local X directorys and installed versions of the standard
  3877.  * X headers will end up getting used.
  3878.  */
  3879.  
  3880. #ifndef LibpngDir
  3881. #define LibpngDir /usr
  3882. #define LibpngDirStandard YES
  3883. #endif
  3884. #ifndef LibpngDirStandard
  3885. #define LibpngDirStandard NO
  3886. #endif
  3887.  
  3888. #ifndef LibpngLibDir
  3889. #define LibpngLibDir LibpngDir/LibDirName
  3890. #if LibpngDirStandard
  3891. #define LibpngLibDirStandard YES
  3892. #endif
  3893. #endif
  3894. #ifndef LibpngLibDirStandard
  3895. #define LibpngLibDirStandard NO
  3896. #endif
  3897.  
  3898. #ifndef LibpngIncDir
  3899. #define LibpngIncDir LibpngDir/include
  3900. #if LibpngDirStandard
  3901. #define LibpngIncDirStandard YES
  3902. #endif
  3903. #endif
  3904. #ifndef LibpngIncDirStandard
  3905. #define LibpngIncDirStandard NO
  3906. #endif
  3907.  
  3908. LIBPNGINCDIR = LibpngIncDir
  3909. #if LibpngIncDirStandard
  3910. LIBPNGINC=
  3911. #else
  3912. LIBPNGINC = -I$(LIBPNGINCDIR)
  3913. #endif
  3914. LIBPNGDIR = LibpngDir
  3915. LIBPNGLIBDIR = LibpngLibDir
  3916. LIBPNGINCDIR = LibpngIncDir
  3917. #if LibpngLibDirStandard
  3918. LIBPNGLIB = -lpng
  3919. #else
  3920. LIBPNGLIB = -L$(LIBPNGLIBDIR) LinkerRuntimeLibraryPathFlag($(LIBPNGLIBDIR)) -lpng
  3921. #endif
  3922.  
  3923. #endif
  3924.  
  3925. #ifndef XmuuClientDepLibs
  3926. #define XmuuClientDepLibs $(DEPXMUULIB) $(DEPXLIB)
  3927. #endif
  3928. #ifndef XmuuClientLibs
  3929. #define XmuuClientLibs $(XMUULIB) $(XLIB)
  3930. #endif
  3931.  
  3932. #ifndef LdLibraryPath
  3933. #define LdLibraryPath LD_LIBRARY_PATH
  3934. #endif
  3935.  
  3936. #if BuildXKBlib
  3937. # ifndef SharedLibxkbfile
  3938. #  define SharedLibxkbfile    HasSharedLibraries
  3939. # endif
  3940. # ifndef NormalLibxkbfile
  3941. #  define NormalLibxkbfile    (!SharedLibxkbfile | ForceNormalLib)
  3942. # endif
  3943. # ifndef DebugLibxkbfile
  3944. #  define DebugLibxkbfile    NO
  3945. # endif
  3946. # ifndef ProfileLibxkbfile
  3947. #  define ProfileLibxkbfile    NO
  3948. # endif
  3949. #else
  3950. # ifndef SharedLibxkbfile
  3951. #  define SharedLibxkbfile    NO
  3952. # endif
  3953. # ifndef NormalLibxkbfile
  3954. #  define NormalLibxkbfile    NO
  3955. # endif
  3956. # ifndef DebugLibxkbfile
  3957. #  define DebugLibxkbfile    NO
  3958. # endif
  3959. # ifndef ProfileLibxkbfile
  3960. #  define ProfileLibxkbfile    NO
  3961. # endif
  3962. #endif
  3963.     XKBFILELIBSRC = $(LIBSRC)/xkbfile
  3964. #if SharedLibxkbfile
  3965. # ifndef SharedxkbfileRev
  3966. #  define SharedxkbfileRev    1.0
  3967. # endif
  3968. SharedLibReferences(XKBFILE,xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev)
  3969. #else
  3970. ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir)
  3971. #endif
  3972.  
  3973. #if BuildXKBlib
  3974. # ifndef XkbClientDepLibs
  3975. #  if UseXKBInClients
  3976. #   define XkbClientDepLibs    $(DEPXKBFILELIB)
  3977. #  else
  3978. #   define XkbClientDepLibs    /**/
  3979. #  endif
  3980. # endif
  3981. # ifndef XkbClientLibs
  3982. #  if UseXKBInClients
  3983. #   define XkbClientLibs    $(XKBFILELIB)
  3984. #  else
  3985. #   define XkbClientLibs    /**/
  3986. #  endif
  3987. # endif
  3988.  
  3989. # if defined(UseInstalled) || (CrossCompiling &&  UseInstalledOnCrossCompile)
  3990.      XKBCOMPCMD = $(XBINDIR)/XkbComp
  3991. # else
  3992.      XKBCOMPSRC = $(PROGRAMSRC)/XkbComp
  3993. #  if CrossCompiling
  3994.      XKBCOMPCMD = $(PROGRAMSRC)/XkbComp/cross/XkbComp
  3995. #  else
  3996.      XKBCOMPCMD = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/XkbComp
  3997. #  endif
  3998. # endif
  3999. #else /* !BuildXKBlib */
  4000. # ifndef XkbClientDepLibs
  4001. #  define XkbClientDepLibs
  4002. # endif
  4003. # ifndef XkbClientLibs
  4004. #  define XkbClientLibs
  4005. # endif
  4006. #endif /* BuildXKBlib */
  4007.  
  4008. #if BuildXKBlib
  4009. # ifndef SharedLibxkbui
  4010. #  define SharedLibxkbui    HasSharedLibraries
  4011. # endif
  4012. # ifndef NormalLibxkbui
  4013. #  define NormalLibxkbui    (!SharedLibxkbui || ForceNormalLib)
  4014. # endif
  4015. # ifndef DebugLibxkbui
  4016. #  define DebugLibxkbui        NO
  4017. # endif
  4018. # ifndef ProfileLibxkbui
  4019. #  define ProfileLibxkbui    NO
  4020. # endif
  4021. #else
  4022. # ifndef SharedLibxkbui
  4023. #  define SharedLibxkbui    NO
  4024. # endif
  4025. # ifndef NormalLibxkbui
  4026. #  define NormalLibxkbui    NO
  4027. # endif
  4028. # ifndef DebugLibxkbui
  4029. #  define DebugLibxkbui        NO
  4030. # endif
  4031. # ifndef ProfileLibxkbui
  4032. #  define ProfileLibxkbui    NO
  4033. # endif
  4034. #endif
  4035.     XKBUILIBSRC = $(LIBSRC)/xkbui
  4036. #if SharedLibxkbui
  4037. # ifndef SharedxkbuiRev
  4038. #  define SharedxkbuiRev    1.0
  4039. # endif
  4040. SharedLibReferences(XKBUI,xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev)
  4041. #else
  4042. ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir)
  4043. #endif
  4044.  
  4045. #ifndef XkbuiLibs
  4046. # define    XkbuiLibs $(XKBUILIB)
  4047. #endif
  4048. #ifndef XkbuiDepLibs
  4049. # define    XkbuiDepLibs $(DEPXKBFILELIB)
  4050. #endif
  4051.  
  4052. #ifndef SharedxrxRev
  4053. # define SharedxrxRev        6.8
  4054. #endif 
  4055.  
  4056. #ifndef SharedxrxnestRev
  4057. # define SharedxrxnestRev    6.8
  4058. #endif
  4059.  
  4060. #ifndef ExtraXawReqs
  4061. # if BuildXaw
  4062. #  define ExtraXawReqs $(XPLIB)
  4063. # else
  4064. #  define ExtraXawReqs /**/
  4065. # endif
  4066. #endif
  4067.  
  4068. EXTRAXAWREQS = ExtraXawReqs
  4069.  
  4070. #ifndef ExtraXawClientDepLibs
  4071. # if BuildXaw
  4072. #  define ExtraXawClientDepLibs $(DEPXPLIB)
  4073. # else
  4074. #  define ExtraXawClientDepLibs /**/
  4075. # endif
  4076. #endif
  4077.  
  4078. EXTRAXAWCLIENTDEPLIBS = ExtraXawClientDepLibs
  4079.  
  4080. #ifndef XawClientDepLibs
  4081. #define XawClientDepLibs $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
  4082. #endif
  4083.  
  4084. #ifndef ExtraXawClientLibs
  4085. # if BuildXaw
  4086. #  define ExtraXawClientLibs $(XPLIB)
  4087. # else
  4088. #  define ExtraXawClientLibs /**/
  4089. # endif
  4090. #endif
  4091.  
  4092. EXTRAXAWCLIENTLIBS = ExtraXawClientLibs
  4093.  
  4094. #ifndef XawClientLibs
  4095. #define XawClientLibs $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)
  4096. #endif
  4097.  
  4098. #ifndef SharedLibXTrap
  4099. #define SharedLibXTrap HasSharedLibraries
  4100. #endif
  4101. #ifndef NormalLibXTrap
  4102. #define NormalLibXTrap (!SharedLibXTrap | ForceNormalLib)
  4103. #endif
  4104. #ifndef DebugLibXTrap
  4105. #define DebugLibXTrap        NO    /* debugged XTrap library */
  4106. #endif
  4107. #ifndef ProfileLibXTrap
  4108. #define ProfileLibXTrap        NO    /* profiled XTrap library */
  4109. #endif
  4110.         XTRAPLIBSRC = $(LIBSRC)/XTrap
  4111. #if SharedLibXTrap
  4112. #ifndef SharedXTrapRev
  4113. #define SharedXTrapRev 6.4
  4114. #endif
  4115. SharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev)
  4116. #else
  4117. ProjectUnsharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),XBuildLibDir)
  4118. #endif
  4119.  
  4120. #ifndef NeedDefaultDepLibs
  4121. #define NeedDefaultDepLibs YES
  4122. #endif
  4123.  
  4124. #if NeedDefaultDepLibs
  4125. /*
  4126.  * Individual libraries should override this
  4127.  */
  4128. #if HasSharedLibraries || defined(UseInstalled)
  4129.           DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
  4130. #else
  4131.           DEPLIBS = $(LOCAL_LIBRARIES)
  4132. #endif
  4133.          DEPLIBS1 = $(DEPLIBS)
  4134.          DEPLIBS2 = $(DEPLIBS)
  4135.          DEPLIBS3 = $(DEPLIBS)
  4136.          DEPLIBS4 = $(DEPLIBS)
  4137.          DEPLIBS5 = $(DEPLIBS)
  4138.          DEPLIBS6 = $(DEPLIBS)
  4139.          DEPLIBS7 = $(DEPLIBS)
  4140.          DEPLIBS8 = $(DEPLIBS)
  4141.          DEPLIBS9 = $(DEPLIBS)
  4142.          DEPLIBS10 = $(DEPLIBS)
  4143. #endif /* NeedDefaultDepLibs */
  4144.  
  4145.  
  4146. /*
  4147.  * InstallAppDefaults - simple rules to install application default file
  4148.  */
  4149. #ifndef InstallAppDefaults
  4150. #define InstallAppDefaults(class) InstallAppDefaultsLong(class,class)
  4151. #endif /* InstallAppDefaults */
  4152.  
  4153. /*
  4154.  * InstallAppDefaultsLong - general rule to install application default file
  4155.  * if the InstallAppDefFiles configuration parameter is set.
  4156.  */
  4157. #ifndef InstallAppDefaultsLong
  4158. #if UseConfDirForAppDefaults
  4159. #if InstallAppDefFiles
  4160. #define InstallAppDefaultsLong(file,class)                @@\
  4161. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4162. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4163. #else
  4164. #define InstallAppDefaultsLong(file,class)                @@\
  4165. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4166. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4167. #endif /* InstallAppDefFiles */
  4168. #else /* UseConfDirForAppDefaults */
  4169. #if InstallAppDefFiles
  4170. #define InstallAppDefaultsLong(file,class)                @@\
  4171. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4172. #else
  4173. #define InstallAppDefaultsLong(file,class)                @@\
  4174. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4175. #endif /* InstallAppDefFiles */
  4176. #endif /* UseConfDirForAppDefaults */
  4177. #endif /* InstallAppDefaultsLong */
  4178.  
  4179. /*
  4180.  * MakeFcCache - generate rules to build fontconfig cache database
  4181.  */
  4182.  
  4183. #if defined UseFreetype2 && !CrossCompiling
  4184.  
  4185. # ifndef MakeFcCache
  4186. #  define MakeFcCache(deplist)                        @@\
  4187. all:: fonts.cache                            @@\
  4188.                                     @@\
  4189. fonts.cache: deplist                            @@\
  4190.     RunProgram(FCCACHE, $(FCCACHEOPTS) .)                @@\
  4191.                                     @@\
  4192. clean::                                    @@\
  4193.     RemoveFiles(fonts.cache*)
  4194. # endif /* MakeFcCache */
  4195.  
  4196. # ifndef InstallFcCache
  4197. #  define InstallFcCache(dest)                        @@\
  4198. install::                                @@\
  4199.     RunProgram(FCCACHE, $(FCCACHEOPTS) $(DESTDIR)dest)
  4200. # endif /* InstallFcCache */
  4201.  
  4202. #else
  4203.  
  4204. #ifndef MakeFcCache
  4205. #define MakeFcCache(deplist)
  4206. #endif
  4207.  
  4208. #ifndef InstallFcCache
  4209. #define InstallFcCache(dest)
  4210. #endif
  4211.  
  4212. #endif
  4213.  
  4214. /*
  4215.  * MakeFontsScale - generate rules to build fonts.scale database.
  4216.  */
  4217. #ifndef MakeFontsScale
  4218. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4219. #  define MakeFontsScale(deplist)                    @@\
  4220. all:: fonts.scale                            @@\
  4221.                                     @@\
  4222. fonts.scale:  deplist                            @@\
  4223.     RemoveFile(fonts.scale)                        @@\
  4224.     RunProgram(MKFONTSCALE, .)                    @@\
  4225.                                     @@\
  4226. clean::                                    @@\
  4227.     RemoveFile(fonts.scale)
  4228. # else
  4229. #  define MakeFontsScale(deplist)                    @@\
  4230. clean::                                    @@\
  4231.     RemoveFile(fonts.scale)
  4232. # endif
  4233. #endif /* MakeFontsScale */
  4234.  
  4235. /*
  4236.  * MakeFontsDir - generate rules to build fonts.dir database.
  4237.  */
  4238. #ifndef MakeFontsDir
  4239. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4240. #  define MakeFontsDir(deplist)                        @@\
  4241. all:: fonts.dir                                @@\
  4242.                                     @@\
  4243. fonts.dir:  deplist                            @@\
  4244.     RemoveFile(fonts.dir)                        @@\
  4245.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) .)            @@\
  4246.                                     @@\
  4247. clean::                                    @@\
  4248.     RemoveFile(fonts.dir)
  4249. # else
  4250. #  define MakeFontsDir(deplist)                        @@\
  4251. clean::                                    @@\
  4252.     RemoveFile(fonts.dir)
  4253. # endif
  4254. #endif /* MakeFontsDir */
  4255.  
  4256.  
  4257. /*
  4258.  * MakeFonts - generate rules to build font database.
  4259.  */
  4260. #ifndef MakeFonts
  4261. # if !CrossCompiling || UseInstalledOnCrossCompile
  4262. #  define MakeFonts()                            @@\
  4263. all::  $(OBJS)                                @@\
  4264.                                     @@\
  4265. MakeFontsDir($(OBJS))                            @@\
  4266.                                     @@\
  4267. clean::                                    @@\
  4268.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4269. # else
  4270. #  define MakeFonts()                            @@\
  4271. MakeFontsDir($(OBJS))                            @@\
  4272.                                     @@\
  4273. clean::                                    @@\
  4274.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4275. # endif
  4276. #endif /* MakeFonts */
  4277.  
  4278. #ifndef InstallFontsDir
  4279. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4280. #  define InstallFontsDir(dest)                        @@\
  4281. install::                                @@\
  4282.     MakeDir($(DESTDIR)dest)                        @@\
  4283.     @if [ X$(STATIC_FONTS_SCALE) = X ]; then (set -x; \        @@\
  4284.       RemoveFile($(DESTDIR)dest/fonts.scale); \            @@\
  4285.       RunProgram(MKFONTSCALE, $(DESTDIR)dest)); \            @@\
  4286.     else (set -x; \                            @@\
  4287.       InstallInline(fonts.scale,$(INSTDATFLAGS),dest)); \        @@\
  4288.     fi                                @@\
  4289.     RemoveFile($(DESTDIR)dest/fonts.dir)                @@\
  4290.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) $(DESTDIR)dest)
  4291. # else
  4292. #  define InstallFontsDir(dest)
  4293. # endif
  4294. #endif
  4295.  
  4296. /*
  4297.  * InstallFontObjs - generate rules to install font files
  4298.  */
  4299. #ifndef InstallFontObjs
  4300. # if !CrossCompiling || UseInstalledOnCrossCompile
  4301. #  define InstallFontObjs(objs,dest)                    @@\
  4302. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4303.                                     @@\
  4304. InstallFontsDir(dest)
  4305. # else
  4306. #  define InstallFontObjs(objs,dest)
  4307. # endif
  4308. #endif /* InstallFontObjs */
  4309.  
  4310.  
  4311. /*
  4312.  * InstallFonts - generate rules to install font files
  4313.  */
  4314. #ifndef InstallFonts
  4315. #define InstallFonts(dest)                        @@\
  4316. InstallFontObjs($(OBJS),dest)
  4317. #endif /* InstallFonts */
  4318.  
  4319.  
  4320. /*
  4321.  * InstallFontAliases - generate rules to install font aliases databases.
  4322.  */
  4323. #ifndef InstallFontAliases
  4324. #define InstallFontAliases(dest)                    @@\
  4325. InstallTarget(install,fonts.alias,$(INSTDATFLAGS),dest)
  4326. #endif /* InstallFontAliases */
  4327.  
  4328. #ifndef InstallNamedFontAliases
  4329. #define InstallNamedFontAliases(src,dest)                @@\
  4330. InstallNamedTarget(install,src,$(INSTDATFLAGS),dest,fonts.alias)
  4331. #endif /* InstallNamedFontAliases */
  4332.  
  4333. #ifndef FontSrc
  4334. #define FontSrc(basename) basename.bdf
  4335. #endif
  4336.  
  4337. #ifndef FontBaseObj
  4338. #define FontBaseObj(basename)basename.pcf
  4339. #endif
  4340.  
  4341. /*
  4342.  * InstallFontScale - generate rules to install font scale database.
  4343.  */
  4344. #ifndef InstallFontScale
  4345. #define InstallFontScale(dest)                        @@\
  4346. InstallTarget(install,fonts.scale,$(INSTDATFLAGS),dest)
  4347. #endif /* InstallFontScale */
  4348.  
  4349. /*
  4350.  * UncompressedFontTargetLong
  4351.  */
  4352. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4353. # ifndef UncompressedFontTargetLong
  4354. #  define UncompressedFontTargetLong(sname,tname)            @@\
  4355. FontBaseObj(tname):  FontSrc(sname)                    @@\
  4356.     RunProgram(FONTC,$(FONTCFLAGS) $? -o $@)
  4357. # endif /* UncompressedFontTargetLong */
  4358. #else
  4359. # ifndef UncompressedFontTargetLong
  4360. #  define UncompressedFontTargetLong(sname,tname)
  4361. # endif
  4362. #endif
  4363.  
  4364. /*
  4365.  * CompressedFontTarget
  4366.  */
  4367. #ifndef GzipFontCompression
  4368. #define GzipFontCompression NO
  4369. #endif
  4370.  
  4371. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4372. # ifndef CompressedFontTargetLong
  4373. #  if GzipFontCompression
  4374. #   define CompressedFontTargetLong(sname,tname)            @@\
  4375. FontBaseObj(tname).gz:  FontSrc(sname)                    @@\
  4376.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(GZIPCMD) > $@
  4377. #  else
  4378. #   define CompressedFontTargetLong(sname,tname)            @@\
  4379. FontBaseObj(tname).Z:  FontSrc(sname)                    @@\
  4380.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(COMPRESS) > $@
  4381. #  endif
  4382. # endif /* CompressedFontTargetLong */
  4383. #else
  4384. #   define CompressedFontTargetLong(sname,tname)
  4385. #endif
  4386.  
  4387. /*
  4388.  * UncompressedFontTarget
  4389.  */
  4390. #ifndef UncompressedFontTarget
  4391. #define UncompressedFontTarget(basename) UncompressedFontTargetLong(basename,basename)
  4392. #endif /* UncompressedFontTarget */
  4393.  
  4394. #ifndef CompressedFontTarget
  4395. #define CompressedFontTarget(basename) CompressedFontTargetLong(basename,basename)
  4396. #endif /* CompressedFontTarget */
  4397.  
  4398. #if !defined(FontTarget) && !defined(FontObj)
  4399. #if CompressAllFonts
  4400. #define FontTargetLong(sname,tname) CompressedFontTargetLong(sname,tname)
  4401. #define FontTarget(basename) CompressedFontTarget(basename)
  4402. #if GzipFontCompression
  4403. #define FontObj(basename) FontBaseObj(basename).gz
  4404. #else
  4405. #define FontObj(basename) FontBaseObj(basename).Z
  4406. #endif
  4407. #else
  4408. #define FontTargetLong(sname,tname) UncompressedFontTargetLong(sname,tname)
  4409. #define FontTarget(basename) UncompressedFontTarget(basename)
  4410. #define FontObj(basename) FontBaseObj(basename)
  4411. #endif /* CompressAllFonts */
  4412. #endif
  4413.  
  4414.  
  4415. #ifndef EncObj
  4416. #define EncObj(basename) basename.enc
  4417. #endif
  4418. #ifndef EncObjComp
  4419. #if GzipFontCompression
  4420. #define EncObjComp(basename) basename.enc.gz
  4421. #else
  4422. #define EncObjComp(basename) basename.enc.Z
  4423. #endif
  4424. #endif
  4425.  
  4426. #ifndef EncodingTarget
  4427. #define EncodingTarget(basename) /**/
  4428. #endif
  4429.  
  4430. #ifndef CompEncodingTarget
  4431. #if GzipFontCompression
  4432. #define CompEncodingTarget(basename)                    @@\
  4433. EncObjComp(basename): EncObj(basename)                    @@\
  4434.     cat $? | $(GZIPCMD) > $@
  4435. #else
  4436. #define CompEncodingTarget(basename)                    @@\
  4437. EncObjComp(basename): EncObj(basename)                    @@\
  4438.     cat $? | $(COMPRESS) > $@
  4439. #endif
  4440. #endif
  4441.  
  4442. #ifndef MakeEncDir
  4443. # if !CrossCompiling || UseInstalledOnCrossCompile
  4444. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4445. AllTarget(encodings.dir)                        @@\
  4446.                                     @@\
  4447. encodings.dir: deplist                            @@\
  4448.     RemoveFiles(encodings.dir fonts.dir)                @@\
  4449.     @(E=; for i in dirlist; do \                    @@\
  4450.        E="$$E -e $$i"; done; \                    @@\
  4451.      set -x; \                            @@\
  4452.      RunProgram(MKFONTDIR, -n -r -p inst/ $$E .))            @@\
  4453.                                     @@\
  4454. clean::                                    @@\
  4455.     RemoveFiles(fonts.dir encodings.dir)
  4456. # else
  4457. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4458. clean::                                    @@\
  4459.     RemoveFiles(fonts.dir encodings.dir)
  4460. # endif
  4461. #endif
  4462.  
  4463. #ifndef MakeEncodings
  4464. #define MakeEncodings(deplist,inst,dirlist)                @@\
  4465.                                     @@\
  4466. MakeEncDir(deplist $(OBJS),inst,dirlist)                @@\
  4467.                                     @@\
  4468. clean::                                    @@\
  4469.     RemoveFiles(*.enc.Z *.enc.gz)
  4470. #endif /* MakeEncodings */
  4471.  
  4472. #ifndef InstallEncObjs
  4473. # if !CrossCompiling || UseInstalledOnCrossCompile
  4474. #  define InstallEncObjs(objs,dest)                    @@\
  4475. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4476.                                     @@\
  4477. InstallTarget(install,encodings.dir,$(INSTDATFLAGS),dest)
  4478. # else
  4479. #  define InstallEncObjs(objs,dest)
  4480. # endif
  4481. #endif /* InstallEncObjs */
  4482.  
  4483. #ifndef InstallEncodings
  4484. #define InstallEncodings(dest)                        @@\
  4485. InstallEncObjs($(OBJS),dest)
  4486. #endif /* InstallEncodings */
  4487.  
  4488. #ifndef InstallEncodingsDir
  4489. # if !CrossCompiling || UseInstalledOnCrossCompile
  4490. #  define InstallEncodingsDir(edir,fdir)                @@\
  4491. InstallNamedTarget(install,edir/encodings.dir,$(INSTDATFLAGS),fdir,encodings.dir)
  4492. # else
  4493. #  define InstallEncodingsDir(edir,fdir)
  4494. # endif
  4495. #endif
  4496.  
  4497.  
  4498. #ifndef MakeBdfFontFromUCSMaster
  4499. #define MakeBdfFontFromUCSMaster(font,enc)                @@\
  4500. font-enc.bdf: font.bdf $(UCS2ANY)                    @@\
  4501.     RemoveFile($@)                            @@\
  4502.     $(UCS2ANY) font.bdf $(UCSMAPPREFIX)enc enc            @@\
  4503.                                     @@\
  4504. clean::                                    @@\
  4505.     RemoveFile(font-enc.bdf)
  4506. #endif
  4507.  
  4508. #ifndef MakeTruncatedUCSBdfFont
  4509. #if HasPerl5
  4510. #define MakeTruncatedUCSBdfFont(font,trunc,name)            @@\
  4511. name.bdf: font.bdf $(BDFTRUNCATE)                    @@\
  4512.     RemoveFile($@)                            @@\
  4513.     RunPerlScript($(BDFTRUNCATE),trunc < font.bdf > name.bdf)    @@\
  4514.                                     @@\
  4515. clean::                                    @@\
  4516.     RemoveFile(name.bdf)
  4517. #endif
  4518. #endif
  4519.  
  4520. /* 
  4521.  * InstallXpPMFLink - install link for a Xprint PMF "font" from one
  4522.  * print model to another
  4523.  */
  4524. #ifndef InstallXpPMFLink
  4525. #define InstallXpPMFLink(fontfilename,srcmodelfontdir,destmodelfontdir)                @@\
  4526.     InstallLink(install,srcmodelfontdir/fontfilename,fontfilename,destmodelfontdir)
  4527. #endif /* InstallXpPMFLink */
  4528. /* 
  4529.  * InstallXpMultiplePMFLinks - install multiple links for PMF fonts
  4530.  * from one print model to another
  4531.  */
  4532. #ifndef InstallXpMultiplePMFLinks
  4533. #define InstallXpMultiplePMFLinks(list,srcmodelfontdir,destmodelfontdir)            @@\
  4534. install::                                            @@\
  4535.     MakeDir($(DESTDIR)destmodelfontdir)                            @@\
  4536.     for i in list ; do \                                    @@\
  4537.         $(RM) $(DESTDIR)destmodelfontdir/$$i ; \                        @@\
  4538.         $(LN) -s -f srcmodelfontdir/$$i $(DESTDIR)destmodelfontdir/$$i ; \            @@\
  4539.     done
  4540. #endif /* InstallXpPMFLink */
  4541.  
  4542. /*
  4543.  * InstallXpPMFFontsDir - make and install a fonts.dir index for model-config fonts
  4544.  */
  4545. #ifndef InstallXpPMFFontsDir
  4546. #if BuildServersOnly
  4547. #define InstallXpPMFFontsDir(destmodelfontdir) /**/
  4548. #else
  4549. #define InstallXpPMFFontsDir(destmodelfontdir)            @@\
  4550. install::                            @@\
  4551.     ($(MKFONTSCALE) -b -s -l $(DESTDIR)destmodelfontdir)
  4552. #endif
  4553. #endif /* InstallXpPMFFontsDir */
  4554.  
  4555.  
  4556. /*
  4557.  * MakeXkbDir
  4558.  */
  4559. #ifndef MakeXkbDir
  4560. # if !CrossCompiling || UseInstalledOnCrossCompile
  4561. #  define MakeXkbDir(basedir,subdir)                    @@\
  4562. all::   Concat(subdir,.dir)                        @@\
  4563.                                     @@\
  4564. Concat(subdir,.dir):                            @@\
  4565.     RemoveFile(Concat(subdir,.dir))                    @@\
  4566.     $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) '*'        @@\
  4567.                                     @@\
  4568. InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)    @@\
  4569.                                     @@\
  4570. clean::                                    @@\
  4571.     RemoveFile(Concat(subdir,.dir))
  4572. # else
  4573. #  define MakeXkbDir(basedir,subdir)                    @@\
  4574. clean::                                    @@\
  4575.     RemoveFile(Concat(subdir,.dir))
  4576. # endif
  4577. #endif
  4578.  
  4579. /*
  4580.  * PostProcessTroffPS - by default moves the working output into place,
  4581.  * but can be a hook for more complicated post-processing.
  4582.  */
  4583. #ifndef PostProcessTroffPS
  4584. #define PostProcessTroffPS(temp,real) $(MV) temp real
  4585. #endif
  4586.  
  4587. /*
  4588.  * PostProcessTroffHTML - by default moves the working output into place,
  4589.  * but can be a hook for more complicated post-processing.
  4590.  */
  4591. #ifndef PostProcessTroffHTML
  4592. #define PostProcessTroffHTML(temp,real) $(MV) temp real
  4593. #endif
  4594.  
  4595. #ifdef HTMLroffCmd
  4596. #define HtmlTarget(file) file.html
  4597. #define HtmlClean(file) file.nhtml file.html file*.png
  4598. #else
  4599. #define HtmlTarget(file) /**/
  4600. #define HtmlClean(file) /**/
  4601. #endif
  4602.  
  4603. #ifdef PsToPdfCmd
  4604. #define PdfTarget(file) file.pdf
  4605. #define PdfClean(file) file.pdf
  4606. #else
  4607. #define PdfTarget(file) /**/
  4608. #define PdfClean(file) /**/
  4609. #endif
  4610.  
  4611. #ifndef ConvertPsToPdf
  4612. #ifdef PsToPdfCmd
  4613. #define ConvertPsToPdf(file)                        @@\
  4614. file.pdf: file.ps                            @@\
  4615.     RemoveFile(file.pdf)                        @@\
  4616.     $(PSTOPDFCMD) < file.ps > file.pdf
  4617. #else
  4618. #define ConvertPsToPdf(file) /**/
  4619. #endif
  4620. #endif
  4621.  
  4622. #if HasPdfLatex
  4623. #define PdfLatexTarget(file) file.pdf
  4624. #define PdfLatexClean(file) file.pdf
  4625. #else
  4626. #define PdfLatexTarget(file) /**/
  4627. #define PdfLatexClean(file) /**/
  4628. #endif
  4629.  
  4630. #ifndef LatexToPdf
  4631. #if HasPdfLatex && defined(PdfLatexCmd)
  4632. #define LatexToPdf(file)                        @@\
  4633. file.pdf: file.tex                            @@\
  4634.     RemoveFile(file.pdf)                        @@\
  4635.     $(PDFLATEXCMD) file.tex
  4636. #else
  4637. #define LatexToPdf(file) /**/
  4638. #endif
  4639. #endif
  4640.  
  4641.  
  4642. #ifndef MakeDepSimpleHtmlDoc
  4643. #ifdef HTMLroffCmd
  4644. #define MakeDepSimpleHtmlDoc(file,deps,srcs)                @@\
  4645. HtmlTarget(file): deps                            @@\
  4646.     $(HTMLROFF) $(MSMACROS) $(XDOCMACROS) Concat(-P-I,file) srcs \        @@\
  4647.         2> index.raw > file.nhtml \                @@\
  4648.       && PostProcessTroffHTML(file.nhtml,$@)
  4649. #else
  4650. #define MakeDepSimpleHtmlDoc(file,deps,srcs) /**/
  4651. #endif
  4652. #endif
  4653.  
  4654. #ifndef MakeTblHtmlDoc
  4655. #ifdef HTMLroffCmd
  4656. #define MakeTblHtmlDoc(file,srcs)                    @@\
  4657. file.html: srcs                                @@\
  4658.     $(TBL) $(XDOCMACROS) srcs | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \    @@\
  4659.         2> index.raw > file.nhtml \                @@\
  4660.       && PostProcessTroffHTML(file.nhtml,$@)
  4661. #else
  4662. #define MakeTblHtmlDoc(file,srcs) /**/
  4663. #endif
  4664. #endif
  4665.  
  4666. #ifndef MakeEqnHtmlDoc
  4667. #ifdef HTMLroffCmd
  4668. #define MakeEqnHtmlDoc(file,srcs)                    @@\
  4669. file.html: srcs                                @@\
  4670.     $(TBL) $(XDOCMACROS) srcs | $(EQN) | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \ @@\
  4671.         2> index.raw > file.nhtml \                @@\
  4672.       && PostProcessTroffHTML(file.nhtml,$@)
  4673. #else
  4674. #define MakeEqnHtmlDoc(file,srcs) /**/
  4675. #endif
  4676. #endif
  4677.  
  4678.  
  4679. #ifndef MakeDepSimpleDoc
  4680. #define MakeDepSimpleDoc(file,deps,srcs)                @@\
  4681. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4682. .PRECIOUS: file.ps                            @@\
  4683.                                     @@\
  4684. file.ps: deps                                @@\
  4685.     -$(TROFF) $(MSMACROS) $(XDOCMACROS) srcs \            @@\
  4686.         2> index.raw > file.nps \                @@\
  4687.     && PostProcessTroffPS(file.nps,$@)                @@\
  4688.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4689.         else test $$? -le 1; fi                    @@\
  4690.                                     @@\
  4691. file.txt: deps                                @@\
  4692.     $(NROFF) $(MSMACROS) $(XDOCMACROS) srcs 2> index.raw | \    @@\
  4693.          $(COL) $(COLFLAGS) > $@                @@\
  4694.                                     @@\
  4695. MakeDepSimpleHtmlDoc(file,deps,srcs)                    @@\
  4696.                                     @@\
  4697. ConvertPsToPdf(file)                            @@\
  4698.                                     @@\
  4699. clean::                                    @@\
  4700.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4701. #endif
  4702.  
  4703. #ifndef MakeSimpleDoc
  4704. #define MakeSimpleDoc(file,srcs) MakeDepSimpleDoc(file,srcs,srcs)
  4705. #endif
  4706.  
  4707. #ifndef MakeTblDoc
  4708. #define MakeTblDoc(file,srcs)                        @@\
  4709. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4710. .PRECIOUS: file.ps                            @@\
  4711.                                     @@\
  4712. file.ps: srcs                                @@\
  4713.     -$(TBL) $(XDOCMACROS) srcs | $(TROFF) $(MSMACROS) \        @@\
  4714.         2> index.raw > file.nps \                @@\
  4715.     && PostProcessTroffPS(file.nps,$@)                @@\
  4716.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4717.         else test $$? -le 1; fi                    @@\
  4718.                                     @@\
  4719. file.txt: srcs                                @@\
  4720.     $(TBL) $(XDOCMACROS) srcs | $(NROFF) $(MSMACROS) 2> index.raw \    @@\
  4721.         | $(COL) $(COLFLAGS) > $@                @@\
  4722.                                     @@\
  4723. MakeTblHtmlDoc(file,srcs)                        @@\
  4724.                                     @@\
  4725. ConvertPsToPdf(file)                            @@\
  4726.                                     @@\
  4727. clean::                                    @@\
  4728.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4729. #endif
  4730.  
  4731. #ifndef MakeEqnDoc
  4732. #define MakeEqnDoc(file,srcs)                        @@\
  4733. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4734. .PRECIOUS: file.ps                            @@\
  4735.                                     @@\
  4736. file.ps: srcs                                @@\
  4737.     -$(TBL) $(XDOCMACROS) srcs | $(EQN) | $(TROFF) $(MSMACROS) \    @@\
  4738.         2> index.raw > file.nps \                @@\
  4739.     && PostProcessTroffPS(file.nps,$@)                @@\
  4740.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4741.         else test $$? -le 1; fi                    @@\
  4742.                                     @@\
  4743. file.txt: srcs                                @@\
  4744.     $(TBL) $(XDOCMACROS) srcs | $(NEQN) | $(NROFF) $(MSMACROS) \    @@\
  4745.         2> index.raw | $(COL) $(COLFLAGS) > $@            @@\
  4746.                                     @@\
  4747. MakeEqnHtmlDoc(file,srcs)                        @@\
  4748.                                     @@\
  4749. ConvertPsToPdf(file)                            @@\
  4750.                                     @@\
  4751. clean::                                    @@\
  4752.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4753. #endif
  4754.  
  4755. #ifndef MakeDocIndex
  4756. #define MakeDocIndex(file,srcs)                        @@\
  4757. all:: file.idx.ps                            @@\
  4758.                                     @@\
  4759. file.idx.ps: srcs index.raw                        @@\
  4760.     sed -n '$$p' index.raw > index.pageno                @@\
  4761.     grep '^[1-9]' index.raw | \                    @@\
  4762.         (sort -f '-t:' -k2,2 -k1,1n 2>/dev/null || \        @@\
  4763.          sort -f '-t:' +1 -3 +0n -1n) | \            @@\
  4764.         awk -f $(DOCUTILSRC)/fixindex.awk | \            @@\
  4765.         awk -f $(DOCUTILSRC)/block.awk > index.troff        @@\
  4766.     cat srcs $(XIDXMACROS) index.troff | \                @@\
  4767.         $(TROFF) -me > file.idx.nps && \            @@\
  4768.         $(MV) file.idx.nps $@                    @@\
  4769.     $(RM) index.troff index.pageno                    @@\
  4770.                                     @@\
  4771. clean::                                    @@\
  4772.     $(RM) index.troff index.pageno file.idx.nps file.idx.ps
  4773. #endif
  4774.  
  4775. #ifndef MakeLatexDoc
  4776. #if HasLatex
  4777. #define MakeLatexDoc(file,src)                        @@\
  4778. all:: file.ps PdfLatexTarget(file)                    @@\
  4779.                                     @@\
  4780. file.dvi: src                                @@\
  4781.     $(LATEX) src                            @@\
  4782.                                     @@\
  4783. file.ps: file.dvi                            @@\
  4784.     $(DVIPS) -o file.nps file && $(MV) file.nps $@            @@\
  4785.                                     @@\
  4786. LatexToPdf(file)                            @@\
  4787.                                     @@\
  4788. clean::                                    @@\
  4789.     RemoveFiles(file.nps file.ps file.dvi file.log)            @@\
  4790.     RemoveFiles(file.aux file.toc file.lof file.lot)        @@\
  4791.     $(RM) PdfLatexClean(file)
  4792. #else /* HasLatex */
  4793. #define MakeLatexDoc(file,src)                        @@\
  4794. all::                                    @@\
  4795. file.ps: src                                @@\
  4796.     @echo "cannot make file.ps: no latex on this system"; exit 1
  4797. #endif /* HasLatex (else) */
  4798. #endif /* MakeLatexDoc */
  4799.  
  4800. #ifndef InstallDoc
  4801. #define InstallDoc(name,deps)                        @@\
  4802. install:: deps                                @@\
  4803.     MakeDir($(DESTDIR)$(DOCPSDIR))                    @@\
  4804.     @if [ -f name.ps -a X$(NOPS) = X ]; then set -x; \        @@\
  4805.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.ps \        @@\
  4806.         $(DESTDIR)$(DOCPSDIR); \                @@\
  4807.     fi ; RemoveOldFile(name.ps,name.PS,$(DOCPSDIR))            @@\
  4808.     MakeDir($(DESTDIR)$(DOCDIR))                    @@\
  4809.     @if [ -f name.txt -a X$(NOTXT) = X ]; then set -x; \        @@\
  4810.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.txt \        @@\
  4811.         $(DESTDIR)$(DOCDIR); \                    @@\
  4812.     fi ; RemoveOldFile(name.txt,name.TXT,$(DOCDIR))            @@\
  4813.     MakeDir($(DESTDIR)$(DOCHTMLDIR))                @@\
  4814.     @if [ -f name.html -a X$(NOHTML) = X ]; then (set -x; \        @@\
  4815.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.html \    @@\
  4816.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4817.       for i in name*.png; do \                    @@\
  4818.         if [ -f $$i ]; then (set -x; \                @@\
  4819.           $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $$i \        @@\
  4820.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4821.         fi; \                            @@\
  4822.       done; \                            @@\
  4823.     fi                                @@\
  4824.     MakeDir($(DESTDIR)$(DOCPDFDIR))                    @@\
  4825.     @if [ -f name.pdf -a X$(NOPDF) = X ]; then set -x; \        @@\
  4826.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.pdf \        @@\
  4827.         $(DESTDIR)$(DOCPDFDIR); \                @@\
  4828.     fi
  4829. #endif
  4830.  
  4831. #ifndef InstallRoffDoc
  4832. #define InstallRoffDoc(name) InstallDoc(name,name.ps name.txt)
  4833. #endif
  4834.  
  4835. #ifndef InstallLatexDoc
  4836. #if HasLatex
  4837. #define InstallLatexDoc(name) InstallDoc(name,name.ps)
  4838. #else
  4839. #define InstallLatexDoc(name)
  4840. #endif
  4841. #endif
  4842.  
  4843. #ifndef LinkHardcopyPS
  4844. # if CaseSensitiveFileSystem
  4845. #  define LinkHardcopyPS(name)                          \
  4846.     @if [ -f name.PS ]; then set -x; \                @@\
  4847.       RemoveFile(name.ps); \                    @@\
  4848.       $(LN) name.PS name.ps; \                    @@\
  4849.     fi
  4850. # else
  4851. #  define LinkHardcopyPS(name)
  4852. # endif
  4853. #endif
  4854.  
  4855.  
  4856. #ifndef InstallHardcopyDoc
  4857. #define InstallHardcopyDoc(name,deps)                    @@\
  4858. all:: name.ps PdfTarget(name)                        @@\
  4859.                                     @@\
  4860. name.ps: deps                                @@\
  4861.     @if [ -f name.PS.gz ]; then set -x; \                @@\
  4862.       RemoveFile(name.ps); \                    @@\
  4863.       gzip -d < name.PS.gz > name.ps; \                @@\
  4864.     fi                                @@\
  4865.     LinkHardcopyPS(name)                        @@\
  4866.                                     @@\
  4867. ConvertPsToPdf(name)                            @@\
  4868.                                     @@\
  4869. clean::                                    @@\
  4870.     $(RM) name.ps PdfClean(name)                    @@\
  4871.                                     @@\
  4872. InstallDoc(name,deps)
  4873. #endif
  4874.  
  4875. /*
  4876.  * Rule for maintainers to use to updated generated copies of fonts in the
  4877.  * source tree.  Use with care.
  4878.  */
  4879.  
  4880. #ifndef UpdateDerivedFont
  4881. #define UpdateDerivedFont(src,dst)                    @@\
  4882. update.fonts:: src                            @@\
  4883.     -@if [ -f dst ]; then \                        @@\
  4884.         if [ "$(FORCEUPDATE)" = yes ]; then \            @@\
  4885.         if [ "$(FOLLOWLINK)" = no ]; then \            @@\
  4886.             (set -x; $(RM) dst); \                @@\
  4887.         fi; \                            @@\
  4888.         set -x; cp src dst; \                    @@\
  4889.         else \                            @@\
  4890.         grep -v "XFree86:" src > __tmp1__; \            @@\
  4891.         grep -v "XFree86:" dst > __tmp2__; \            @@\
  4892.         if diff __tmp1__ __tmp2__ > /dev/null 2>&1; then :; \    @@\
  4893.         else \                            @@\
  4894.             if [ "$(FOLLOWLINK)" = no ]; then \        @@\
  4895.                 (set -x; $(RM) dst); \            @@\
  4896.             fi; \                        @@\
  4897.             set -x; cp src dst; \                    @@\
  4898.         fi; \                            @@\
  4899.         fi; \                            @@\
  4900.     fi                                @@\
  4901.     @$(RM) __tmp1__ __tmp2__
  4902. #endif
  4903.  
  4904. #if !HasFreetype2
  4905.       FT2PRELOADPATTERN = libfreetype.so.?
  4906. #endif
  4907. #if !HasFontconfig
  4908.        FCPRELOADPATTERN = libfontconfig.so.?
  4909. #endif
  4910.       XFTPRELOADPATTERN = libXft.so.?
  4911.   XRENDERPRELOADPATTERN = libXrender.so.?
  4912.     XFONTPRELOADPATTERN = libXfont*.so.?
  4913.  
  4914.