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

  1. XCOMM ----------------------------------------------------------------------
  2. XCOMM X Window System Build Parameters and Rules
  3. XCOMM $XdotOrg: xc/config/cf/X11.tmpl,v 1.54 2005/12/14 23:41:52 alanc 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 $(LIBDIR)/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 InstSrcDir
  1483. #define InstSrcDir Concat(ProjectRoot,/src)
  1484. #endif
  1485. #ifndef LibexecDir
  1486. #ifdef ProjectRoot
  1487. #define LibexecDir Concat(ProjectRoot,/libexec)
  1488. #else
  1489. #define LibexecDir /usr/X11/libexec
  1490. #endif
  1491. #endif
  1492. #ifndef ConfigDir
  1493. #define ConfigDir $(LIBDIR)/config
  1494. #endif
  1495. #ifndef DocDir
  1496. #define DocDir $(LIBDIR)/doc
  1497. #endif
  1498. #ifndef DocHtmlDir
  1499. #define DocHtmlDir $(DOCDIR)/html
  1500. #endif
  1501. #ifndef DocPsDir
  1502. #define DocPsDir $(DOCDIR)/PostScript
  1503. #endif
  1504. #ifndef DocPdfDir
  1505. #define DocPdfDir $(DOCDIR)/PDF
  1506. #endif
  1507. #ifndef FontDir
  1508. #define FontDir $(LIBDIR)/fonts
  1509. #endif
  1510. #ifndef FontEncDir
  1511. #define FontEncDir $(LIBDIR)/fonts/encodings
  1512. #endif
  1513. #ifndef AdmDir
  1514. #define AdmDir /usr/adm
  1515. #endif
  1516. #ifndef XinitDir
  1517. #define XinitDir $(LIBDIR)/xinit
  1518. #endif
  1519. #ifndef XdmDir
  1520. #define XdmDir $(LIBDIR)/xdm
  1521. #endif
  1522. #ifndef XdmVarDir
  1523. #define XdmVarDir $(VARLIBDIR)/xdm
  1524. #endif
  1525. #ifndef XdmAuthDir
  1526. #define XdmAuthDir $(LIBDIR)/xdm
  1527. #endif
  1528. #ifndef XdmConfigurationSubdirectory        /* under xdm sources */
  1529. #define XdmConfigurationSubdirectory config
  1530. #endif
  1531. #ifndef TwmDir
  1532. #define TwmDir $(LIBDIR)/twm
  1533. #endif
  1534. #ifndef XsmDir
  1535. #define XsmDir $(LIBDIR)/xsm
  1536. #endif
  1537. #ifndef NlsDir
  1538. #define NlsDir $(LIBDIR)/nls
  1539. #endif
  1540. #ifndef XLocaleDir
  1541. #define XLocaleDir $(LIBDIR)/locale
  1542. #endif
  1543. #ifndef LbxproxyDir
  1544. #define LbxproxyDir $(LIBDIR)/lbxproxy
  1545. #endif
  1546. #ifndef LbxproxyConfigSubdir        /* under lbxproxy sources */
  1547. #define LbxproxyConfigSubdir config
  1548. #endif
  1549. #ifndef ProxyManagerDir
  1550. #define ProxyManagerDir $(LIBDIR)/proxymngr
  1551. #endif
  1552. #ifndef ServerConfigDir
  1553. #define ServerConfigDir $(LIBDIR)/xserver
  1554. #endif
  1555. #ifndef XPrintDir
  1556. #define XPrintDir ServerConfigDir
  1557. #endif
  1558. #ifndef EtcX11Directory
  1559. #define EtcX11Directory /etc/X11
  1560. #endif
  1561. #ifndef InstallSecurityConfig
  1562. #define InstallSecurityConfig YES    /* Install sample security policy */
  1563. #endif
  1564. #ifndef XFileSearchPathBase
  1565. /* avoid SCCS keyword */
  1566. #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)
  1567. #endif
  1568. #ifndef XFileSearchPathDefault
  1569. #ifdef XAppLoadDir
  1570. /* avoid SCCS keyword */
  1571. #define XFileSearchPathDefault XAppLoadDir/Concat(%N%C,%S):XAppLoadDir/%N%S:XFileSearchPathBase
  1572. #else
  1573. #define XFileSearchPathDefault XFileSearchPathBase
  1574. #endif
  1575. #endif
  1576. #ifndef XAppLoadDir
  1577. #define XAppLoadDir $(LIBDIR)/app-defaults
  1578. #endif
  1579. #ifndef XtErrorPrefix
  1580. #define XtErrorPrefix /* as empty string */
  1581. #endif
  1582. #ifndef XtExtraDefines
  1583. #define XtExtraDefines /* as empty string */
  1584. #endif
  1585. #ifndef XtWarningPrefix
  1586. #define XtWarningPrefix /* as empty string */
  1587. #endif
  1588. #ifndef OsNameDefines
  1589. #define OsNameDefines /* as nothing */
  1590. #endif
  1591. #ifndef DefaultUserPath            /* for xdm */
  1592. #define DefaultUserPath :/bin:/usr/bin:$(BINDIR):/usr/ucb
  1593. #endif
  1594. #ifndef DefaultSystemPath        /* for xdm */
  1595. #define DefaultSystemPath /etc:/bin:/usr/bin:$(BINDIR):/usr/ucb
  1596. #endif
  1597. #ifndef DefaultSystemShell        /* for xdm to set in SHELL */
  1598. #define DefaultSystemShell BourneShell
  1599. #endif
  1600. #ifndef ContribDir
  1601. #define ContribDir $(XTOP)/../contrib    /* contrib is outside core tree */
  1602. #endif
  1603. #ifndef UnsupportedDir
  1604. #define UnsupportedDir $(XTOP)/unsupported
  1605. #endif
  1606. #ifndef AllocateLocalDefines
  1607. #define AllocateLocalDefines /**/
  1608. #endif
  1609.  
  1610. #ifndef ForceNormalLib
  1611. #define ForceNormalLib (HasGcc && !HasGcc2)
  1612. #endif
  1613.  
  1614. #ifndef XkbComp
  1615. #define XkbComp xkbcomp
  1616. #endif
  1617.  
  1618. #ifndef PsWrap
  1619. # ifndef UseInstalled
  1620. #  define PsWrap $(PSWRAPSRC)/pswrap
  1621. # else
  1622. #  define PsWrap pswrap
  1623. # endif
  1624. #endif
  1625.  
  1626. #ifndef ResourceConfigurationManagement
  1627. #define ResourceConfigurationManagement YES
  1628. #endif
  1629.  
  1630. #ifndef XtPopdownConformance
  1631. #define XtPopdownConformance YES
  1632. #endif
  1633.  
  1634. XCOMM -----------------------------------------------------------------------
  1635. XCOMM X Window System make variables; these need to be coordinated with rules
  1636.  
  1637. /*
  1638.  * This list must be reflected in the DIRS_TO_BUILD list in the top-level
  1639.  * Makefile.
  1640.  */
  1641.              XTOP = XTop
  1642.            BINDIR = BinDir        /* programs */
  1643.      BUILDINCROOT = BuildIncRoot    /* base of build loc */
  1644.       BUILDINCDIR = BuildIncDir        /* built headers */
  1645.       BUILDINCTOP = BuildIncTop        /* top relative to BUILDINCDIR */
  1646.       BUILDLIBDIR = BuildLibDir        /* built libraries */
  1647.       BUILDLIBTOP = BuildLibTop        /* top relative to BUILDLIBDIR */
  1648.       BUILDBINDIR = BuildBinDir        /* built binaries */
  1649.       BUILDBINTOP = BuildBinTop        /* top relative to BUILDBINDIR */
  1650.    BUILDMODULEDIR = BuildModuleDir    /* built server modules */
  1651.      BUILDI18NDIR = BuildI18NDir    /* built i81n modules */
  1652.    BUILDMODULETOP = BuildModuleTop    /* top relative to BUILDMODULEDIR */
  1653.     XBUILDINCROOT = XBuildIncRoot    /* base of X build loc */
  1654.      XBUILDINCDIR = XBuildIncDir
  1655.      XBUILDINCTOP = XBuildIncTop
  1656.      XBUILDBINDIR = XBuildBinDir
  1657.            INCDIR = $(INCROOT)        /* header files */
  1658.            ADMDIR = AdmDir        /* server log files */
  1659.            LIBDIR = LibDir        /* rgb, XErrorDB, etc. */
  1660.        LIBEXECDIR = LibexecDir
  1661.         MODULEDIR = ModuleDir
  1662.    TOP_X_INCLUDES = TopXInclude
  1663.           XBINDIR = XBinDir        /* BINDIR for X11ProjectRoot */
  1664.  
  1665.        INSTSRCDIR = InstSrcDir        /* Installed source (kernel modules). */
  1666.  
  1667. #ifdef EtcX11Directory
  1668.         ETCX11DIR = EtcX11Directory
  1669. #endif
  1670. #if UseEtcX11
  1671.           CONFDIR = $(ETCX11DIR)
  1672. #elif HasVarDirectory
  1673.           CONFDIR = $(VARDIR)
  1674. #endif
  1675.            DOCDIR = DocDir
  1676.        DOCHTMLDIR = DocHtmlDir
  1677.          DOCPSDIR = DocPsDir
  1678.         DOCPDFDIR = DocPdfDir
  1679.           FONTDIR = FontDir        /* font directories */
  1680.      ENCODINGSDIR = FontEncDir          /* font encodings directory */
  1681.          XINITDIR = XinitDir        /* xinit config files */
  1682.            XDMDIR = XdmDir        /* xdm config files */
  1683.         XDMVARDIR = XdmVarDir        /* xdm config files */
  1684.            TWMDIR = TwmDir        /* twm config files */
  1685.            XSMDIR = XsmDir        /* xsm config files */
  1686.            NLSDIR = NlsDir        /* nls files */
  1687.        XLOCALEDIR = XLocaleDir        /* locale files */
  1688.       LBXPROXYDIR = LbxproxyDir        /* lbxproxy files */
  1689.   PROXYMANAGERDIR = ProxyManagerDir    /* proxy manager config files */
  1690.         XPRINTDIR = XPrintDir        /* print config file root */
  1691.       XAPPLOADDIR = XAppLoadDir        /* application default resource dir */
  1692.        FONTCFLAGS = FontCompilerFlags
  1693.  
  1694.      INSTAPPFLAGS = $(INSTDATFLAGS)    /* XXX - this should go away - XXX */
  1695.  
  1696. #if UseInstalledX11
  1697.               RGB = $(XBINDIR)/rgb
  1698.             FONTC = $(XBINDIR)/bdftopcf
  1699.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1700.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1701.       MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
  1702.           UCS2ANY = $(XBINDIR)/ProgramTargetName(ucs2any)
  1703.       BDFTRUNCATE = $(XBINDIR)/bdftruncate
  1704.      UCSMAPPREFIX = $(FONTDIR)/util/map-
  1705.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1706. #else
  1707.               RGB = $(CLIENTENVSETUP) $(XBUILDBINDIR)/rgb
  1708. # if !CrossCompiling
  1709.             FONTC = $(CLIENTENVSETUP) $(PRELOADFONTSETUP) $(XBUILDBINDIR)/bdftopcf
  1710.       MKFONTSCALE = $(CLIENTENVSETUP) $(PRELOADFREETYPESETUP) $(XBUILDBINDIR)/mkfontscale
  1711.         MKFONTDIR = $(MKFONTSCALE) -b -s -l
  1712.        XCURSORGEN = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/xcursorgen
  1713.           UCS2ANY = $(XBUILDBINDIR)/ProgramTargetName(ucs2any)
  1714. # elif UseInstalledOnCrossCompile
  1715.         MKFONTDIR = $(XBINDIR)/mkfontdir
  1716.       MKFONTSCALE = $(XBINDIR)/mkfontscale
  1717.             FONTC = $(XBINDIR)/bdftopcf
  1718.        XCURSORGEN = $(XBINDIR)/xcursorgen
  1719.           UCS2ANY = $(XBINDIR)/ucs2any
  1720. # endif
  1721. # if HasPerl
  1722.       MKHTMLINDEX = RunPerlScript($(CONFIGSRC)/util/mkhtmlindex.pl,)
  1723. # else
  1724.       MKHTMLINDEX = $(SHELL) $(CONFIGSRC)/util/mkhtmlindex.sh
  1725. # endif
  1726.       BDFTRUNCATE = $(FONTSRC)/util/bdftruncate.pl
  1727.      UCSMAPPREFIX = $(FONTSRC)/util/map-
  1728. #endif
  1729.  
  1730.      HTMLINDEXCMD = HtmlIndexCmd
  1731.  
  1732.        DOCUTILSRC = $(XTOP)/doc/util
  1733.         CLIENTSRC = $(TOP)/clients
  1734.           DEMOSRC = $(TOP)/demos
  1735.        XDOCMACROS = $(DOCUTILSRC)/macros.t
  1736.        XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
  1737.        PROGRAMSRC = $(TOP)/programs
  1738.            LIBSRC = $(XTOP)/lib
  1739.           FONTSRC = $(XTOP)/fonts
  1740.      ENCODINGSSRC = $(FONTSRC)/encodings
  1741.        INCLUDESRC = BuildIncDir
  1742.       XINCLUDESRC = $(INCLUDESRC)/X11
  1743.         SERVERSRC = $(XTOP)/programs/Xserver
  1744.        CONTRIBSRC = ContribDir
  1745.    UNSUPPORTEDSRC = UnsupportedDir
  1746.            DOCSRC = $(XTOP)/doc
  1747.            RGBSRC = $(XTOP)/programs/rgb
  1748.       BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
  1749.      MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
  1750.     FONTSERVERSRC = $(PROGRAMSRC)/xfs
  1751.        FONTINCSRC = $(XTOP)/include/fonts
  1752.         EXTINCSRC = $(XTOP)/include/extensions
  1753.       FTSOURCEDIR = FreeTypeSrcDir
  1754.         DRMSRCDIR = DRMSrcDir
  1755.        MESASRCDIR = MesaSrcDir
  1756.   OGLSAMPLESRCDIR = OglSampleSrcDir
  1757.         PSWRAPSRC = $(XTOP)/config/pswrap
  1758.      TRANSCOMMSRC = $(LIBSRC)/xtrans
  1759.    TRANS_INCLUDES = -I$(TRANSCOMMSRC)
  1760.  CONNECTION_FLAGS = ConnectionFlags ExtraConnectionDefs
  1761. XTRANS_FAILDEFINES = XtransFailDefine 
  1762. #ifdef X11ProjectRoot
  1763.      XPROJECTROOT = X11ProjectRoot
  1764. #endif
  1765.     VENDORMANNAME = XVendorManNameString
  1766.  VENDORMANVERSION = XVendorManVersionString
  1767.       XORGMANDEFS = XOrgManDefs
  1768.     VENDORMANDEFS = VendorManDefs
  1769.        VENDORNAME = XVendorNameString
  1770.   VENDORNAMESHORT = XVendorNameStringShort
  1771.  
  1772. #if defined (XVendorWebSupport)
  1773.  VENDORWEBSUPPORT = XVendorWebSupport
  1774. #endif
  1775. VENDORSUPPORTDEFS = VendorSupportDefines
  1776.  
  1777.       XKBDEFRULES = XkbDefaultRulesFile
  1778.   XKBDEFRULESDEFS = XkbDefRulesDefines
  1779.   
  1780.      XCONFIGFILE = XConfigFile
  1781.       XCONFIGDIR = XConfigDir
  1782.         XLOGFILE = XLogFile
  1783.      XSERVERNAME = XServerName
  1784.  
  1785. #if HasSharedLibraries
  1786. #ifndef DontUseLibPathVar
  1787. #ifndef BuildLibPathVar
  1788. #define BuildLibPathVar LD_LIBRARY_PATH
  1789. #endif
  1790. #endif
  1791. #endif
  1792. #ifdef BuildLibPathVar
  1793. # ifdef SystemBuildLibPath
  1794.   SYSTEMENVLIBDIR = SystemBuildLibPath
  1795. # endif
  1796. #define XlocaleClientSetup Concat3(XLOCALEDIR,=,BuildI18NDir)
  1797.        XENVLIBDIR = X11BuildLibPath
  1798.    CLIENTENVSETUP = Concat3(BuildLibPathVar,=,BuildLibPath) XlocaleClientSetup
  1799. #else
  1800.    CLIENTENVSETUP =
  1801. #endif
  1802.  
  1803. #ifdef PreloadSetup
  1804.      PRELOADSETUP = PreloadSetup
  1805. #endif
  1806. #ifdef PreloadFontSetup
  1807.  PRELOADFONTSETUP = PreloadFontSetup
  1808. #endif
  1809. #ifdef PreloadFreetypeSetup
  1810.  PRELOADFREETYPESETUP = PreloadFreetypeSetup
  1811. #endif
  1812. #ifdef PreloadXFTSetup
  1813.      PRELOADXFTSETUP = PreloadXFTSetup
  1814. #endif
  1815.  
  1816. #ifndef ShLibIncludeFile
  1817. /* need this to make ANSI-style preprocessors happy */
  1818. #define ShLibIncludeFile <noop.rules>
  1819. #endif
  1820.  
  1821. #include ShLibIncludeFile
  1822.  
  1823. #ifndef XBuildLibDir
  1824. # define XBuildLibDir    BuildLibDir
  1825. #endif
  1826.  
  1827. #ifndef NeedLibInsideFlag
  1828. #define NeedLibInsideFlag    NO
  1829. #endif
  1830.  
  1831. #ifndef SharedLibX11
  1832. #define SharedLibX11 HasSharedLibraries
  1833. #endif
  1834. #ifndef NormalLibX11
  1835. #define NormalLibX11 (!SharedLibX11 | ForceNormalLib)
  1836. #endif
  1837. #ifndef DebugLibX11
  1838. #define DebugLibX11        NO    /* debugged X library */
  1839. #endif
  1840. #ifndef ProfileLibX11
  1841. #define ProfileLibX11        NO    /* profiled X library */
  1842. #endif
  1843.           XLIBSRC = $(LIBSRC)/X11
  1844. #if SharedLibX11
  1845. #ifndef SharedX11Rev
  1846. #define SharedX11Rev 6.2
  1847. #endif
  1848. SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev)
  1849. #else
  1850. ProjectUnsharedLibReferences(XONLY,X11,$(XLIBSRC),XBuildLibDir)
  1851. #endif
  1852.       /* Common alternate spellings */
  1853.       DEPXLIBONLY = $(DEPXONLYLIB)
  1854.          XLIBONLY = $(XONLYLIB)
  1855.      LINTXONLYLIB = $(LINTXONLY)
  1856.  
  1857. #if BuildScreenSaverLibrary
  1858. #ifndef SharedLibXss
  1859. #define SharedLibXss    HasSharedLibraries
  1860. #endif
  1861. #ifndef NormalLibXss
  1862. #define NormalLibXss    (!SharedLibXss || ForceNormalLib)
  1863. #endif
  1864. #ifndef DebugLibXss
  1865. #define DebugLibXss    NO
  1866. #endif
  1867. #ifndef ProfileLibXss
  1868. #define ProfileLibXss    NO
  1869. #endif
  1870. #else
  1871. #undef  SharedLibXss
  1872. #define SharedLibXss    NO
  1873. #undef  NormalLibXss
  1874. #define NormalLibXss    NO
  1875. #undef  DebugLibXss
  1876. #define DebugLibXss    NO
  1877. #undef  ProfileLibXss
  1878. #define ProfileLibXss    NO
  1879. #endif
  1880.  
  1881. #if BuildXF86MiscLibrary
  1882. #ifndef SharedLibXxf86misc
  1883. #define SharedLibXxf86misc    HasSharedLibraries
  1884. #endif
  1885. #ifndef NormalLibXxf86misc
  1886. #define NormalLibXxf86misc    (!SharedLibXxf86misc || ForceNormalLib)
  1887. #endif
  1888. #ifndef DebugLibXxf86misc
  1889. #define DebugLibXxf86misc    NO
  1890. #endif
  1891. #ifndef ProfileLibXxf86misc
  1892. #define ProfileLibXxf86misc    NO
  1893. #endif
  1894. #else
  1895. #undef  SharedLibXxf86misc
  1896. #define SharedLibXxf86misc    NO
  1897. #undef  NormalLibXxf86misc
  1898. #define NormalLibXxf86misc    NO
  1899. #undef  DebugLibXxf86misc
  1900. #define DebugLibXxf86misc    NO
  1901. #undef  ProfileLibXxf86misc
  1902. #define ProfileLibXxf86misc    NO
  1903. #endif
  1904.  
  1905. #if BuildXF86VidModeLibrary
  1906. #ifndef SharedLibXxf86vm
  1907. #define SharedLibXxf86vm    HasSharedLibraries
  1908. #endif
  1909. #ifndef NormalLibXxf86vm
  1910. #define NormalLibXxf86vm    (!SharedLibXxf86vm || ForceNormalLib)
  1911. #endif
  1912. #ifndef DebugLibXxf86vm
  1913. #define DebugLibXxf86vm        NO
  1914. #endif
  1915. #ifndef ProfileLibXxf86vm
  1916. #define ProfileLibXxf86vm    NO
  1917. #endif
  1918. #else
  1919. #undef  SharedLibXxf86vm
  1920. #define SharedLibXxf86vm    NO
  1921. #undef  NormalLibXxf86vm
  1922. #define NormalLibXxf86vm    NO
  1923. #undef  DebugLibXxf86vm
  1924. #define DebugLibXxf86vm        NO
  1925. #undef  ProfileLibXxf86vm
  1926. #define ProfileLibXxf86vm    NO
  1927. #endif
  1928.  
  1929. #if BuildXF86DGALibrary
  1930. #ifndef SharedLibXxf86dga
  1931. #define SharedLibXxf86dga    HasSharedLibraries
  1932. #endif
  1933. #ifndef NormalLibXxf86dga
  1934. #define NormalLibXxf86dga    (!SharedLibXxf86dga || ForceNormalLib)
  1935. #endif
  1936. #ifndef DebugLibXxf86dga
  1937. #define DebugLibXxf86dga    NO
  1938. #endif
  1939. #ifndef ProfileLibXxf86dga
  1940. #define ProfileLibXxf86dga    NO
  1941. #endif
  1942. #else
  1943. #undef  SharedLibXxf86dga
  1944. #define SharedLibXxf86dga    NO
  1945. #undef  NormalLibXxf86dga
  1946. #define NormalLibXxf86dga    NO
  1947. #undef  DebugLibXxf86dga
  1948. #define DebugLibXxf86dga    NO
  1949. #undef  ProfileLibXxf86dga
  1950. #define ProfileLibXxf86dga    NO
  1951. #endif
  1952.  
  1953. #if BuildXF86RushLibrary
  1954. #ifndef SharedLibXxf86rush
  1955. #define SharedLibXxf86rush    HasSharedLibraries
  1956. #endif
  1957. #ifndef NormalLibXxf86rush
  1958. #define NormalLibXxf86rush    (!SharedLibXxf86rush || ForceNormalLib)
  1959. #endif
  1960. #ifndef DebugLibXxf86rush
  1961. #define DebugLibXxf86rush    NO
  1962. #endif
  1963. #ifndef ProfileLibXxf86rush
  1964. #define ProfileLibXxf86rush    NO
  1965. #endif
  1966. #else
  1967. #undef  SharedLibXxf86rush
  1968. #define SharedLibXxf86rush    NO
  1969. #undef  NormalLibXxf86rush
  1970. #define NormalLibXxf86rush    NO
  1971. #undef  DebugLibXxf86rush
  1972. #define DebugLibXxf86rush    NO
  1973. #undef  ProfileLibXxf86rush
  1974. #define ProfileLibXxf86rush    NO
  1975. #endif
  1976.  
  1977. #if BuildXvLibrary
  1978. #ifndef SharedLibXv
  1979. #define SharedLibXv        HasSharedLibraries
  1980. #endif
  1981. #ifndef NormalLibXv
  1982. #define NormalLibXv        (!SharedLibXv || ForceNormalLib)
  1983. #endif
  1984. #ifndef DebugLibXv
  1985. #define DebugLibXv        NO
  1986. #endif
  1987. #ifndef ProfileLibXv
  1988. #define ProfileLibXv        NO
  1989. #endif
  1990. #else
  1991. #undef  SharedLibXv
  1992. #define SharedLibXv        NO
  1993. #undef  NormalLibXv
  1994. #define NormalLibXv        NO
  1995. #undef  DebugLibXv
  1996. #define DebugLibXv        NO
  1997. #undef  ProfileLibXv
  1998. #define ProfileLibXv        NO
  1999. #endif
  2000.  
  2001. #if BuildXvMCLibrary
  2002. #ifndef SharedLibXvMC
  2003. #define SharedLibXvMC        HasSharedLibraries
  2004. #endif
  2005. #ifndef NormalLibXvMC
  2006. #define NormalLibXvMC        (!SharedLibXvMC || ForceNormalLib)
  2007. #endif
  2008. #ifndef DebugLibXvMC
  2009. #define DebugLibXvMC        NO
  2010. #endif
  2011. #ifndef ProfileLibXvMC
  2012. #define ProfileLibXvMC        NO
  2013. #endif
  2014. #else
  2015. #undef  SharedLibXvMC
  2016. #define SharedLibXvMC        NO
  2017. #undef  NormalLibXvMC
  2018. #define NormalLibXvMC        NO
  2019. #undef  DebugLibXvMC
  2020. #define DebugLibXvMC        NO
  2021. #undef  ProfileLibXvMC
  2022. #define ProfileLibXvMC        NO
  2023. #endif
  2024.  
  2025. #if BuildXineramaLibrary
  2026. #ifndef SharedLibXinerama
  2027. #define SharedLibXinerama    HasSharedLibraries
  2028. #endif
  2029. #ifndef NormalLibXinerama
  2030. #define NormalLibXinerama    (!SharedLibXinerama || ForceNormalLib)
  2031. #endif
  2032. #ifndef DebugLibXinerama
  2033. #define DebugLibXinerama    NO
  2034. #endif
  2035. #ifndef ProfileLibXinerama
  2036. #define ProfileLibXinerama    NO
  2037. #endif
  2038. #else
  2039. #undef  SharedLibXinerama
  2040. #define SharedLibXinerama    NO
  2041. #undef  NormalLibXinerama
  2042. #define NormalLibXinerama    NO
  2043. #undef  DebugLibXinerama
  2044. #define DebugLibXinerama    NO
  2045. #undef  ProfileLibXinerama
  2046. #define ProfileLibXinerama    NO
  2047. #endif
  2048.  
  2049. #if BuildXResLibrary
  2050. #ifndef SharedLibXRes
  2051. #define SharedLibXRes           HasSharedLibraries
  2052. #endif
  2053. #ifndef NormalLibXRes
  2054. #define NormalLibXRes           (!SharedLibXRes || ForceNormalLib)
  2055. #endif
  2056. #ifndef DebugLibXRes
  2057. #define DebugLibXRes            NO
  2058. #endif
  2059. #ifndef ProfileLibXRes
  2060. #define ProfileLibXRes          NO
  2061. #endif
  2062. #else
  2063. #undef  SharedLibXRes
  2064. #define SharedLibXRes        NO
  2065. #undef  NormalLibXRes
  2066. #define NormalLibXRes        NO
  2067. #undef  DebugLibXRes
  2068. #define DebugLibXRes        NO
  2069. #undef  ProfileLibXRes
  2070. #define ProfileLibXRes        NO
  2071. #endif
  2072.  
  2073. #if BuildDPSLibrary
  2074. #ifndef SharedLibDps
  2075. #define SharedLibDps        HasSharedLibraries
  2076. #endif
  2077. #ifndef NormalLibDps
  2078. #define NormalLibDps        (!SharedLibDps || ForceNormalLib)
  2079. #endif
  2080. #ifndef DebugLibDps
  2081. #define DebugLibDps        NO
  2082. #endif
  2083. #ifndef ProfileLibDps
  2084. #define ProfileLibDps        NO
  2085. #endif
  2086. #else
  2087. #undef  SharedLibDps
  2088. #define SharedLibDps        NO
  2089. #undef  NormalLibDps
  2090. #define NormalLibDps        NO
  2091. #undef  DebugLibDps
  2092. #define DebugLibDps        NO
  2093. #undef  ProfileLibDps
  2094. #define ProfileLibDps        NO
  2095. #endif
  2096.  
  2097. #if BuildDPSTkLibrary
  2098. #ifndef SharedLibDpsTk
  2099. #define SharedLibDpsTk        HasSharedLibraries
  2100. #endif
  2101. #ifndef NormalLibDpsTk
  2102. #define NormalLibDpsTk        (!SharedLibDpsTk || ForceNormalLib)
  2103. #endif
  2104. #ifndef DebugLibDpsTk
  2105. #define DebugLibDpsTk        NO
  2106. #endif
  2107. #ifndef ProfileLibDpsTk
  2108. #define ProfileLibDpsTk        NO
  2109. #endif
  2110. #else
  2111. #undef  SharedLibDpsTk
  2112. #define SharedLibDpsTk        NO
  2113. #undef  NormalLibDpsTk
  2114. #define NormalLibDpsTk        NO
  2115. #undef  DebugLibDpsTk
  2116. #define DebugLibDpsTk        NO
  2117. #undef  ProfileLibDpsTk
  2118. #define ProfileLibDpsTk        NO
  2119. #endif
  2120.  
  2121. #if BuildPSResLibrary
  2122. #ifndef SharedLibPSRes
  2123. #define SharedLibPSRes        HasSharedLibraries
  2124. #endif
  2125. #ifndef NormalLibPSRes
  2126. #define NormalLibPSRes        (!SharedLibPSRes || ForceNormalLib)
  2127. #endif
  2128. #ifndef DebugLibPSRes
  2129. #define DebugLibPSRes        NO
  2130. #endif
  2131. #ifndef ProfileLibPSRes
  2132. #define ProfileLibPSRes        NO
  2133. #endif
  2134. #else
  2135. #undef  SharedLibPSRes
  2136. #define SharedLibPSRes        NO
  2137. #undef  NormalLibPSRes
  2138. #define NormalLibPSRes        NO
  2139. #undef  DebugLibPSRes
  2140. #define DebugLibPSRes        NO
  2141. #undef  ProfileLibPSRes
  2142. #define ProfileLibPSRes        NO
  2143. #endif
  2144.  
  2145. #if BuildRenderLibrary
  2146. #ifndef SharedLibXrender
  2147. #define SharedLibXrender    HasSharedLibraries
  2148. #endif
  2149. #ifndef NormalLibXrender
  2150. #define NormalLibXrender    (!SharedLibXrender || ForceNormalLib)
  2151. #endif
  2152. #ifndef DebugLibXrender
  2153. #define DebugLibXrender        NO
  2154. #endif
  2155. #ifndef ProfileLibXrender
  2156. #define ProfileLibXrender    NO
  2157. #endif
  2158. #else
  2159. #undef  SharedLibXrender
  2160. #define SharedLibXrender    NO
  2161. #undef  NormalLibXrender
  2162. #define NormalLibXrender    NO
  2163. #undef  DebugLibXrender
  2164. #define DebugLibXrender        NO
  2165. #undef  ProfileLibXrender
  2166. #define ProfileLibXrender    NO
  2167. #endif
  2168.  
  2169. #if BuildRandRLibrary
  2170. # ifndef SharedLibXrandr
  2171. #  define SharedLibXrandr        HasSharedLibraries
  2172. # endif
  2173. # ifndef NormalLibXrandr
  2174. #  define NormalLibXrandr        (!SharedLibXrandr || ForceNormalLib)
  2175. # endif
  2176. # ifndef DebugLibXrandr
  2177. #  define DebugLibXrandr    NO
  2178. # endif
  2179. # ifndef ProfileLibXrandr
  2180. #  define ProfileLibXrandr    NO
  2181. # endif
  2182. #else
  2183. # undef  SharedLibXrandr
  2184. # define SharedLibXrandr    NO
  2185. # undef  NormalLibXrandr
  2186. # define NormalLibXrandr    NO
  2187. # undef  DebugLibXrandr
  2188. # define DebugLibXrandr        NO
  2189. # undef  ProfileLibXrandr
  2190. # define ProfileLibXrandr    NO
  2191. #endif
  2192.  
  2193. #if BuildXfixesLibrary
  2194. #ifndef SharedLibXfixes
  2195. #define SharedLibXfixes        HasSharedLibraries
  2196. #endif
  2197. #ifndef NormalLibXfixes
  2198. #define NormalLibXfixes        (!SharedLibXfixes || ForceNormalLib)
  2199. #endif
  2200. #ifndef DebugLibXfixes
  2201. #define DebugLibXfixes        NO
  2202. #endif
  2203. #ifndef ProfileLibXfixes
  2204. #define ProfileLibXfixes    NO
  2205. #endif
  2206. #else
  2207. #undef  SharedLibXfixes
  2208. #define SharedLibXfixes        NO
  2209. #undef  NormalLibXfixes
  2210. #define NormalLibXfixes        NO
  2211. #undef  DebugLibXfixes
  2212. #define DebugLibXfixes        NO
  2213. #undef  ProfileLibXfixes
  2214. #define ProfileLibXfixes    NO
  2215. #endif
  2216.  
  2217. #if BuildDamageLibrary
  2218. #ifndef SharedLibXdamage
  2219. #define SharedLibXdamage    HasSharedLibraries
  2220. #endif
  2221. #ifndef NormalLibXdamage
  2222. #define NormalLibXdamage    (!SharedLibXdamage || ForceNormalLib)
  2223. #endif
  2224. #ifndef DebugLibXdamage
  2225. #define DebugLibXdamage        NO
  2226. #endif
  2227. #ifndef ProfileLibXdamage
  2228. #define ProfileLibXdamage    NO
  2229. #endif
  2230. #else
  2231. #undef  SharedLibXdamage
  2232. #define SharedLibXdamage    NO
  2233. #undef  NormalLibXdamage
  2234. #define NormalLibXdamage    NO
  2235. #undef  DebugLibXdamage
  2236. #define DebugLibXdamage        NO
  2237. #undef  ProfileLibXdamage
  2238. #define ProfileLibXdamage    NO
  2239. #endif
  2240.  
  2241. #if BuildCompositeLibrary
  2242. #ifndef SharedLibXcomposite
  2243. #define SharedLibXcomposite    HasSharedLibraries
  2244. #endif
  2245. #ifndef NormalLibXcomposite
  2246. #define NormalLibXcomposite    (!SharedLibXcomposite || ForceNormalLib)
  2247. #endif
  2248. #ifndef DebugLibXcomposite
  2249. #define DebugLibXcomposite    NO
  2250. #endif
  2251. #ifndef ProfileLibXcomposite
  2252. #define ProfileLibXcomposite    NO
  2253. #endif
  2254. #else
  2255. #undef  SharedLibXcomposite
  2256. #define SharedLibXcomposite    NO
  2257. #undef  NormalLibXcomposite
  2258. #define NormalLibXcomposite    NO
  2259. #undef  DebugLibXcomposite
  2260. #define DebugLibXcomposite    NO
  2261. #undef  ProfileLibXcomposite
  2262. #define ProfileLibXcomposite    NO
  2263. #endif
  2264.  
  2265. #if BuildXevieLibrary
  2266. #ifndef SharedLibXevie
  2267. #define SharedLibXevie        HasSharedLibraries
  2268. #endif
  2269. #ifndef NormalLibXevie
  2270. #define NormalLibXevie        (!SharedLibXevie || ForceNormalLib)
  2271. #endif
  2272. #ifndef DebugLibXevie
  2273. #define DebugLibXevie        NO
  2274. #endif
  2275. #ifndef ProfileLibXevie
  2276. #define ProfileLibXevie        NO
  2277. #endif
  2278. #else
  2279. #undef  SharedLibXevie
  2280. #define SharedLibXevie        NO
  2281. #undef  NormalLibXevie
  2282. #define NormalLibXevie        NO
  2283. #undef  DebugLibXevie
  2284. #define DebugLibXevie        NO
  2285. #undef  ProfileLibXevie
  2286. #define ProfileLibXevie        NO
  2287. #endif
  2288.  
  2289. #if BuildXcursorLibrary
  2290. #ifndef SharedLibXcursor
  2291. #define SharedLibXcursor    HasSharedLibraries
  2292. #endif
  2293. #ifndef NormalLibXcursor
  2294. #define NormalLibXcursor    (!SharedLibXcursor || ForceNormalLib)
  2295. #endif
  2296. #ifndef DebugLibXcursor
  2297. #define DebugLibXcursor        NO
  2298. #endif
  2299. #ifndef ProfileLibXcursor
  2300. #define ProfileLibXcursor    NO
  2301. #endif
  2302. #else
  2303. #undef  SharedLibXcursor
  2304. #define SharedLibXcursor    NO
  2305. #undef  NormalLibXcursor
  2306. #define NormalLibXcursor    NO
  2307. #undef  DebugLibXcursor
  2308. #define DebugLibXcursor        NO
  2309. #undef  ProfileLibXcursor
  2310. #define ProfileLibXcursor    NO
  2311. #endif
  2312.  
  2313. #if BuildAppleWMLibrary
  2314. #ifndef SharedLibAppleWM
  2315. #define SharedLibAppleWM    HasSharedLibraries
  2316. #endif
  2317. #ifndef NormalLibAppleWM
  2318. #define NormalLibAppleWM    (!SharedLibAppleWM || ForceNormalLib)
  2319. #endif
  2320. #ifndef DebugLibAppleWM
  2321. #define DebugLibAppleWM        NO
  2322. #endif
  2323. #ifndef ProfileLibAppleWM
  2324. #define ProfileLibAppleWM    NO
  2325. #endif
  2326. #else
  2327. #undef  SharedLibAppleWM
  2328. #define SharedLibAppleWM    NO
  2329. #undef  NormalLibAppleWM
  2330. #define NormalLibAppleWM    NO
  2331. #undef  DebugLibAppleWM
  2332. #define DebugLibAppleWM        NO
  2333. #undef  ProfileLibAppleWM
  2334. #define ProfileLibAppleWM    NO
  2335. #endif
  2336.  
  2337. #if BuildWindowsWMLibrary
  2338. #ifndef SharedLibWindowsWM
  2339. #define SharedLibWindowsWM    HasSharedLibraries
  2340. #endif
  2341. #ifndef NormalLibWindowsWM
  2342. #define NormalLibWindowsWM    (!SharedLibWindowsWM || ForceNormalLib)
  2343. #endif
  2344. #ifndef DebugLibWindowsWM
  2345. #define DebugLibWindowsWM    NO
  2346. #endif
  2347. #ifndef ProfileLibWindowsWM
  2348. #define ProfileLibWindowsWM    NO
  2349. #endif
  2350. #else
  2351. #undef  SharedLibWindowsWM
  2352. #define SharedLibWindowsWM    NO
  2353. #undef  NormalLibWindowsWM
  2354. #define NormalLibWindowsWM    NO
  2355. #undef  DebugLibWindowsWM
  2356. #define DebugLibWindowsWM    NO
  2357. #undef  ProfileLibWindowsWM
  2358. #define ProfileLibWindowsWM    NO
  2359. #endif
  2360.  
  2361. #if BuildGLULibrary
  2362. #ifndef SharedLibGlu
  2363. #define SharedLibGlu        HasSharedLibraries
  2364. #endif
  2365. #ifndef NormalLibGlu
  2366. #define NormalLibGlu        (!SharedLibX11 | ForceNormalLib)
  2367. #endif
  2368. #ifndef DebugLibGlu
  2369. #define DebugLibGlu        NO
  2370. #endif
  2371. #ifndef ProfileLibGlu
  2372. #define ProfileLibGlu        NO
  2373. #endif
  2374. #else
  2375. #undef  SharedLibGlu
  2376. #define SharedLibGlu        NO
  2377. #undef  NormalLibGlu
  2378. #define NormalLibGlu        NO
  2379. #undef  DebugLibGlu
  2380. #define DebugLibGlu        NO
  2381. #undef  ProfileLibGlu
  2382. #define ProfileLibGlu        NO
  2383. #endif
  2384.  
  2385. #if BuildGLXLibrary
  2386. #ifndef SharedLibGlx
  2387. #define SharedLibGlx        HasSharedLibraries
  2388. #endif
  2389. #ifndef NormalLibGlx
  2390. #define NormalLibGlx        (!SharedLibX11 | ForceNormalLib)
  2391. #endif
  2392. #ifndef DebugLibGlx
  2393. #define DebugLibGlx        NO
  2394. #endif
  2395. #ifndef ProfileLibGlx
  2396. #define ProfileLibGlx        NO
  2397. #endif
  2398. #ifndef BuildLibGlxWithoutPIC
  2399. #define BuildLibGlxWithoutPIC    NO
  2400. #endif
  2401. #if BuildLibGlxWithoutPIC && SharedLibGlx
  2402. #define SharedLibGlxWithoutPIC    YES
  2403. #else
  2404. #define SharedLibGlxWithoutPIC    NO
  2405. #endif
  2406. #ifndef LinkGLToUsrLib
  2407. #define LinkGLToUsrLib        NO
  2408. #endif
  2409. #if NothingOutsideProjectRoot
  2410. #undef LinkGLToUsrLib
  2411. #define LinkGLToUsrLib        NO
  2412. #endif
  2413. #ifndef LinkGLToUsrInclude
  2414. #define LinkGLToUsrInclude    NO
  2415. #endif
  2416. #if NothingOutsideProjectRoot
  2417. #undef LinkGLToUsrInclude
  2418. #define LinkGLToUsrInclude    NO
  2419. #endif
  2420. #else
  2421. #undef  SharedLibGlx
  2422. #define SharedLibGlx        NO
  2423. #undef  NormalLibGlx
  2424. #define NormalLibGlx        NO
  2425. #undef  DebugLibGlx
  2426. #define DebugLibGlx        NO
  2427. #undef  ProfileLibGlx
  2428. #define ProfileLibGlx        NO
  2429. #endif
  2430. /*
  2431.  * Only make a shared GLw library on systems with Weak symbols 
  2432.  * because it depends on Motif. See xc/lib/GLw/README.txt for details
  2433.  */
  2434. #if BuildGLwLibrary
  2435. #ifndef SharedLibGLw
  2436. #define SharedLibGLw        HasSharedLibraries && HasWeakSymbols
  2437. #endif
  2438. #ifndef NormalLibGLw
  2439. #define NormalLibGLw        (!SharedLibGLw || ForceNormalLib)
  2440. #endif
  2441. #ifndef DebugLibGLw
  2442. #define DebugLibGLw        NO    /* debugged widget library */
  2443. #endif
  2444. #ifndef ProfileLibGLw
  2445. #define ProfileLibGLw        NO    /* profiled widget library */
  2446. #endif
  2447. #ifndef GLwUseXmStubs
  2448.     /* create stub (weak) Motif symbols */
  2449. #define GLwUseXmStubs        SharedLibGLw && HasWeakSymbols
  2450. #endif
  2451. #else
  2452. #undef  SharedLibGLw
  2453. #define SharedLibGLw        NO
  2454. #undef  NormalLibGLw
  2455. #define NormalLibGLw        NO
  2456. #undef  DebugLibGLw
  2457. #define DebugLibGLw        NO
  2458. #undef  ProfileLibGLw
  2459. #define ProfileLibGLw        NO
  2460. #endif
  2461.  
  2462. #ifndef SharedLibXext
  2463. #define SharedLibXext HasSharedLibraries
  2464. #endif
  2465. #ifndef NormalLibXext
  2466. #define NormalLibXext (!SharedLibXext | ForceNormalLib)
  2467. #endif
  2468. #ifndef DebugLibXext
  2469. #define DebugLibXext        NO    /* debugged Xext library */
  2470. #endif
  2471. #ifndef ProfileLibXext
  2472. #define ProfileLibXext        NO    /* profiled Xext library */
  2473. #endif
  2474.       XEXTLIBSRC = $(LIBSRC)/Xext
  2475. #if SharedLibXext
  2476. #ifndef SharedXextRev
  2477. #define SharedXextRev 6.4
  2478. #endif
  2479. SharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),SOXEXTREV,SharedXextRev)
  2480. #else
  2481. ProjectUnsharedLibReferences(EXTENSION,Xext,$(XEXTLIBSRC),XBuildLibDir)
  2482. #endif
  2483. LINTEXTENSIONLIB = $(LINTEXTENSION)
  2484.           DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
  2485.              XLIB = $(EXTENSIONLIB) $(XONLYLIB)
  2486.          LINTXLIB = $(LINTXONLYLIB)
  2487.  
  2488.     XSSLIBSRC = $(LIBSRC)/Xss
  2489. #if SharedLibXss
  2490. #ifndef SharedXssRev
  2491. #define SharedXssRev 1.0
  2492. #endif
  2493. SharedLibReferences(XSS,Xss,$(XSSLIBSRC),SOXSSREV,SharedXssRev)
  2494. #else
  2495. ProjectUnsharedLibReferences(XSS,Xss,$(XSSLIBSRC),XBuildLibDir)
  2496. #endif
  2497.  
  2498.     XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
  2499. #if SharedLibXxf86misc
  2500. #ifndef SharedXxf86miscRev
  2501. #define SharedXxf86miscRev 1.1
  2502. #endif
  2503. SharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),SOXXF86MISCREV,SharedXxf86miscRev)
  2504. #else
  2505. ProjectUnsharedLibReferences(XXF86MISC,Xxf86misc,$(XXF86MISCLIBSRC),XBuildLibDir)
  2506. #endif
  2507.  
  2508.     XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
  2509. #if SharedLibXxf86vm
  2510. #ifndef SharedXxf86vmRev
  2511. #define SharedXxf86vmRev 1.0
  2512. #endif
  2513. SharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),SOXXF86VMREV,SharedXxf86vmRev)
  2514. #else
  2515. ProjectUnsharedLibReferences(XXF86VM,Xxf86vm,$(XXF86VMLIBSRC),XBuildLibDir)
  2516. #endif
  2517.  
  2518.     XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
  2519. #if SharedLibXxf86dga
  2520. #ifndef SharedXxf86dgaRev
  2521. #define SharedXxf86dgaRev 1.0
  2522. #endif
  2523. SharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),SOXXF86DGAREV,SharedXxf86dgaRev)
  2524. #else
  2525. ProjectUnsharedLibReferences(XXF86DGA,Xxf86dga,$(XXF86DGALIBSRC),XBuildLibDir)
  2526. #endif
  2527.  
  2528. #if BuildDmxLibrary
  2529. #ifndef SharedLibDmx
  2530. #define SharedLibDmx        NO
  2531. #endif
  2532. #ifndef NormalLibDmx
  2533. #define NormalLibDmx        YES
  2534. #endif
  2535. #ifndef DebugLibDmx
  2536. #define DebugLibDmx        NO
  2537. #endif
  2538. #ifndef ProfileLibDmx
  2539. #define ProfileLibDmx        NO
  2540. #endif
  2541. #else /* BuildDmxLibrary */
  2542. #undef SharedLibDmx
  2543. #define SharedLibDmx        NO
  2544. #undef NormalLibDmx
  2545. #define NormalLibDmx        NO
  2546. #undef DebugLibDmx
  2547. #define DebugLibDmx        NO
  2548. #undef ProfileLibDmx
  2549. #define ProfileLibDmx        NO
  2550. #endif /* BuildDmxLibrary */
  2551.  
  2552.     XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
  2553. #if SharedLibXxf86rush
  2554. #ifndef SharedXxf86rushRev
  2555. #define SharedXxf86rushRev 1.0
  2556. #endif
  2557. SharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),SOXXF86RUSHREV,SharedXxf86rushRev)
  2558. #else
  2559. ProjectUnsharedLibReferences(XXF86RUSH,Xxf86rush,$(XXF86RUSHLIBSRC),XBuildLibDir)
  2560. #endif
  2561.  
  2562.  
  2563.     XVLIBSRC = $(LIBSRC)/Xv
  2564. #if SharedLibXv
  2565. #ifndef SharedXvRev
  2566. #define SharedXvRev 1.0
  2567. #endif
  2568. SharedLibReferences(XV,Xv,$(XVLIBSRC),SOXVREV,SharedXvRev)
  2569. #else
  2570. ProjectUnsharedLibReferences(XV,Xv,$(XVLIBSRC),XBuildLibDir)
  2571. #endif
  2572.  
  2573.  
  2574.     XVMCLIBSRC = $(LIBSRC)/XvMC
  2575. #if SharedLibXvMC
  2576. #ifndef SharedXvMCRev
  2577. #define SharedXvMCRev 1.0
  2578. #endif
  2579. SharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),SOXVMCREV,SharedXvMCRev)
  2580. #else
  2581. ProjectUnsharedLibReferences(XVMC,XvMC,$(XVMCLIBSRC),XBuildLibDir)
  2582. #endif
  2583.  
  2584.     XINERAMALIBSRC = $(LIBSRC)/Xinerama
  2585. #if SharedLibXinerama
  2586. #ifndef SharedXineramaRev
  2587. #define SharedXineramaRev 1.0
  2588. #endif
  2589. SharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),SOXINERAMAREV,SharedXineramaRev)
  2590. #else
  2591. ProjectUnsharedLibReferences(XINERAMA,Xinerama,$(XINERAMALIBSRC),XBuildLibDir)
  2592. #endif
  2593.  
  2594.     XRESLIBSRC = $(LIBSRC)/XRes
  2595. #if SharedLibXRes
  2596. #ifndef SharedXResRev
  2597. #define SharedXResRev 1.0
  2598. #endif
  2599. SharedLibReferences(XRES,XRes,$(XRESLIBSRC),SOXRESREV,SharedXResRev)
  2600. #else
  2601. ProjectUnsharedLibReferences(XRES,XRes,$(XRESLIBSRC),XBuildLibDir)
  2602. #endif
  2603.  
  2604.     DMXLIBSRC = $(LIBSRC)/dmx
  2605. #if SharedLibDmx
  2606. #ifndef SharedDmxRev
  2607. #define SharedDmxRev 1.0
  2608. #endif
  2609. SharedLibReferences(DMX,dmx,$(DMXLIBSRC),SODMXREV,SharedDmxRev)
  2610. #else
  2611. ProjectUnsharedLibReferences(DMX,dmx,$(DMXLIBSRC),XBuildLibDir)
  2612. #endif
  2613.  
  2614.     DPSLIBSRC = $(LIBSRC)/dps
  2615. #if SharedLibDps
  2616. #ifndef SharedDpsRev
  2617. #define SharedDpsRev 1.0
  2618. #endif
  2619. SharedLibReferences(DPS,dps,$(DPSLIBSRC),SODPSREV,SharedDpsRev)
  2620. #else
  2621. ProjectUnsharedLibReferences(DPS,dps,$(DPSLIBSRC),XBuildLibDir)
  2622. #endif
  2623.  
  2624.     DPSTKLIBSRC = $(LIBSRC)/dpstk
  2625. #if SharedLibDpsTk
  2626. #ifndef SharedDpsTkRev
  2627. #define SharedDpsTkRev 1.0
  2628. #endif
  2629. SharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),SODPSTKREV,SharedDpsTkRev)
  2630. #else
  2631. ProjectUnsharedLibReferences(DPSTK,dpstk,$(DPSTKLIBSRC),XBuildLibDir)
  2632. #endif
  2633.  
  2634.     PSRESLIBSRC = $(LIBSRC)/psres
  2635. #if SharedLibPSRes
  2636. #ifndef SharedPSResRev
  2637. #define SharedPSResRev 1.0
  2638. #endif
  2639. SharedLibReferences(PSRES,psres,$(PSRESLIBSRC),SOPSRESREV,SharedPSResRev)
  2640. #else
  2641. ProjectUnsharedLibReferences(PSRES,psres,$(PSRESLIBSRC),XBuildLibDir)
  2642. #endif
  2643.  
  2644.     GLULIBSRC = $(LIBSRC)/GLU
  2645. #if SharedLibGlu
  2646. #ifndef SharedGluRev
  2647. #define SharedGluRev 1.3
  2648. #endif
  2649. SharedLibReferences(GLU,GLU,$(GLULIBSRC),SOGLUREV,SharedGluRev)
  2650. #else
  2651. ProjectUnsharedLibReferences(GLU,GLU,$(GLULIBSRC),XBuildLibDir)
  2652. #endif
  2653.  
  2654.     GLXLIBSRC = $(LIBSRC)/GL
  2655. #if SharedLibGlx
  2656. #ifndef SharedGlxRev
  2657. #define SharedGlxRev 1.2
  2658. #endif
  2659. SharedLibReferences(GLX,GL,$(GLXLIBSRC),SOGLREV,SharedGlxRev)
  2660. #else
  2661. ProjectUnsharedLibReferences(GLX,GL,$(GLXLIBSRC),XBuildLibDir)
  2662. #endif
  2663.     GLWIDGETSRC = $(LIBSRC)/GLw
  2664. #if SharedLibGLw
  2665. #ifndef SharedGLwRev
  2666. #define SharedGLwRev 1.0        /* used to name the shared library */
  2667. #endif
  2668. SharedDSLibReferences(GLW,GLw,$(GLWIDGETSRC),SOGLWREV,SharedGLwRev)
  2669. #else
  2670. ProjectUnsharedLibReferences(GLW,GLw,$(GLWIDGETSRC),XBuildLibDir)
  2671. #endif
  2672.  
  2673. #if BuildRenderLibrary
  2674.     XRENDERLIBSRC = $(LIBSRC)/Xrender
  2675. #if SharedLibXrender
  2676. #ifndef SharedXrenderRev
  2677. #define SharedXrenderRev 1.2.2
  2678. #endif
  2679. SharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),SOXRENDERREV,SharedXrenderRev)
  2680. #else
  2681. ProjectUnsharedLibReferences(XRENDER,Xrender,$(XRENDERLIBSRC),XBuildLibDir)
  2682. #endif
  2683.  
  2684. #ifdef UseInstalled
  2685. XRENDERINCDIR=$(INCDIR)
  2686. #else
  2687. XRENDERINCDIR=$(BUILDINCDIR)
  2688. #endif
  2689.  
  2690. XRENDERINCLUDES = -I$(XRENDERINCDIR)
  2691.  
  2692. #else /* BuildRenderLibrary */
  2693.  
  2694. #if HasRenderLibrary
  2695.  
  2696. #ifndef RenderLibraryDir
  2697. #define RenderLibraryDir /usr/X11R6
  2698. #endif
  2699.  
  2700. #ifndef RenderLibraryLibDir
  2701. #define RenderLibraryLibDir RenderLibraryDir/LibDirName
  2702. #endif
  2703.  
  2704. #ifndef RenderLibraryIncDir
  2705. #define RenderLibraryIncDir RenderLibraryDir/include
  2706. #endif
  2707.  
  2708. XRENDERDIR = RenderLibraryDir
  2709. XRENDERLIBDIR = RenderLibraryLibDir
  2710. XRENDERINCDIR = RenderLibraryIncDir
  2711. XRENDERLIB = -L$(XRENDERLIBDIR) -lXrender
  2712. DEPXRENDERLIB =
  2713.  
  2714. XRENDERINCLUDES = -I$(XRENDERINCDIR)
  2715.  
  2716. #endif /* HasRenderLibrary */
  2717.  
  2718. #endif /* else BuildRenderLibrary */
  2719.  
  2720.     XRANDRLIBSRC = $(LIBSRC)/Xrandr
  2721. #if SharedLibXrandr
  2722. #ifndef SharedXrandrRev
  2723. #define SharedXrandrRev 2.0
  2724. #endif
  2725. SharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),SOXRANDRREV,SharedXrandrRev)
  2726. #else
  2727. ProjectUnsharedLibReferences(XRANDR,Xrandr,$(XRANDRLIBSRC),XBuildLibDir)
  2728. #endif
  2729.  
  2730.     XFIXESLIBSRC = $(LIBSRC)/Xfixes
  2731. #if SharedLibXfixes
  2732. #ifndef SharedXfixesRev
  2733. #define SharedXfixesRev 3.0
  2734. #endif
  2735. SharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),SOXFIXESREV,SharedXfixesRev)
  2736. #else
  2737. ProjectUnsharedLibReferences(XFIXES,Xfixes,$(XFIXESLIBSRC),XBuildLibDir)
  2738. #endif
  2739.  
  2740.    XDAMAGELIBSRC = $(LIBSRC)/Xdamage
  2741. #if SharedLibXdamage
  2742. #ifndef SharedXdamageRev
  2743. #define SharedXdamageRev 1.0
  2744. #endif
  2745. SharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),SOXDAMAGEREV,SharedXdamageRev)
  2746. #else
  2747. ProjectUnsharedLibReferences(XDAMAGE,Xdamage,$(XDAMAGELIBSRC),XBuildLibDir)
  2748. #endif
  2749.  
  2750. XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
  2751. #if SharedLibXcomposite
  2752. #ifndef SharedXcompositeRev
  2753. #define SharedXcompositeRev 1.0
  2754. #endif
  2755. SharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),SOXCOMPOSITEREV,SharedXcompositeRev)
  2756. #else
  2757. ProjectUnsharedLibReferences(XCOMPOSITE,Xcomposite,$(XCOMPOSITELIBSRC),XBuildLibDir)
  2758. #endif
  2759.  
  2760. XEVIELIBSRC = $(LIBSRC)/Xevie
  2761. #if SharedLibXevie
  2762. #ifndef SharedXevieRev
  2763. #define SharedXevieRev 1.0
  2764. #endif
  2765. SharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),SOXEVIEREV,SharedXevieRev)
  2766. #else
  2767. ProjectUnsharedLibReferences(XEVIE,Xevie,$(XEVIELIBSRC),XBuildLibDir)
  2768. #endif
  2769.  
  2770. #if BuildXcursorLibrary
  2771.    XCURSORLIBSRC = $(LIBSRC)/Xcursor
  2772. #if SharedLibXcursor
  2773. #ifndef SharedXcursorRev
  2774. #define SharedXcursorRev 1.0.2
  2775. #endif
  2776. SharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),SOXCURSORREV,SharedXcursorRev)
  2777. #else
  2778. ProjectUnsharedLibReferences(XCURSOR,Xcursor,$(XCURSORLIBSRC),XBuildLibDir)
  2779. #endif
  2780.  
  2781. #ifdef UseInstalled
  2782. XCURSORINCDIR=$(INCDIR)
  2783. #else
  2784. XCURSORINCDIR=$(BUILDINCDIR)
  2785. #endif
  2786.  
  2787. XCURSORINCLUDES=-I$(XCURSORINCDIR) $(XRENDERINCLUDES)
  2788.  
  2789. #else /* BuildXcursorLibrary */
  2790.  
  2791. #if HasXcursorLibrary
  2792.  
  2793. #ifndef XcursorLibraryDir
  2794. #define XcursorLibraryDir /usr/X11R6
  2795. #endif
  2796.  
  2797. #ifndef XcursorLibraryLibDir
  2798. #define XcursorLibraryLibDir XcursorLibraryDir/LibDirName
  2799. #endif
  2800.  
  2801. #ifndef XcursorLibraryIncDir
  2802. #define XcursorLibraryIncDir XcursorLibraryDir/include
  2803. #endif
  2804.  
  2805. XCURSORDIR = XcursorLibraryDir
  2806. XCURSORLIBDIR = XcursorLibraryLibDir
  2807. XCURSORINCDIR = XcursorLibraryIncDir
  2808. XCURSORLIB = -L$(XCURSORLIBDIR) -lXcursor
  2809.  
  2810. XCURSORINCLUDES=-I$(XCURSORINCDIR) $(XRENDERINCLUDES)
  2811.  
  2812. #endif /* HasXcursorLibrary */
  2813.  
  2814. #endif /* else BuildXcursorLibrary */
  2815.  
  2816.    APPLEWMLIBSRC = $(LIBSRC)/apple
  2817. #if SharedLibAppleWM
  2818. #ifndef SharedAppleWMRev
  2819. #define SharedAppleWMRev 1.0
  2820. #endif
  2821. SharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),SOAPPLEWMREV,SharedAppleWMRev)
  2822. #else
  2823. ProjectUnsharedLibReferences(APPLEWM,AppleWM,$(APPLEWMLIBSRC),XBuildLibDir)
  2824. #endif
  2825.  
  2826.    WINDOWSWMLIBSRC = $(LIBSRC)/windows
  2827. #if SharedLibWindowsWM
  2828. #ifndef SharedWindowsWMRev
  2829. #define SharedWindowsWMRev 1.0
  2830. #endif
  2831. SharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),SOWINDOWSWMREV,SharedWindowsWMRev)
  2832. #else
  2833. ProjectUnsharedLibReferences(WINDOWSWM,WindowsWM,$(WINDOWSWMLIBSRC),XBuildLibDir)
  2834. #endif
  2835.  
  2836. # ifndef SharedLibXfontcache
  2837. #  define SharedLibXfontcache    HasSharedLibraries
  2838. # endif
  2839. # ifndef NormalLibXfontcache
  2840. #  define NormalLibXfontcache    (!SharedLibXfontcache || ForceNormalLib)
  2841. # endif
  2842. # ifndef DebugLibXfontcache
  2843. #  define DebugLibXfontcache    NO
  2844. # endif
  2845. # ifndef ProfileLibXfontcache
  2846. #  define ProfileLibXfontcache    NO
  2847. # endif
  2848.  
  2849.     XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
  2850. #if SharedLibXfontcache
  2851. #ifndef SharedXfontcacheRev
  2852. #define SharedXfontcacheRev 1.2
  2853. #endif
  2854. SharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),SOXFONTCACHEREV,SharedXfontcacheRev)
  2855. #else
  2856. ProjectUnsharedLibReferences(XFONTCACHE,Xfontcache,$(XFONTCACHELIBSRC),XBuildLibDir)
  2857. #endif
  2858.  
  2859. #ifndef SharedLibXau
  2860. #define SharedLibXau        YES
  2861. #endif
  2862. #ifndef NormalLibXau
  2863. #define NormalLibXau (!SharedLibXau | ForceNormalLib)
  2864. #endif
  2865. #ifndef DebugLibXau
  2866. #define DebugLibXau        NO    /* debugged auth library */
  2867. #endif
  2868. #ifndef ProfileLibXau
  2869. #define ProfileLibXau        NO    /* profiled auth library */
  2870. #endif
  2871.          XAUTHSRC = $(LIBSRC)/Xau
  2872. #if SharedLibXau
  2873. #ifndef SharedXauRev
  2874. #define SharedXauRev 6.0
  2875. #endif
  2876. SharedLibReferences(XAUTH,Xau,$(XAUTHSRC),SOXAUTHREV,SharedXauRev)
  2877. #else
  2878. #if !UseInstalledXauLib
  2879. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),XBuildLibDir)
  2880. #else
  2881. ProjectUnsharedLibReferences(XAUTH,Xau,$(XAUTHSRC),$(USRLIBDIR))
  2882. #endif
  2883. #endif
  2884.  
  2885. #ifndef SharedLibXdmcp
  2886. #define SharedLibXdmcp        YES
  2887. #endif
  2888. #ifndef NormalLibXdmcp
  2889. #define NormalLibXdmcp (!SharedLibXdmcp | ForceNormalLib)
  2890. #endif
  2891. #ifndef DebugLibXdmcp
  2892. #define DebugLibXdmcp        NO    /* debugged XDMCP library */
  2893. #endif
  2894. #ifndef ProfileLibXdmcp
  2895. #define ProfileLibXdmcp        NO    /* profiled XDMCP library */
  2896. #endif
  2897.       XDMCPLIBSRC = $(LIBSRC)/Xdmcp
  2898. #if SharedLibXdmcp
  2899. #ifndef SharedXdmcpRev
  2900. #define SharedXdmcpRev 6.0
  2901. #endif
  2902. SharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),SOXDMCPREV,SharedXdmcpRev)
  2903. #else
  2904. #if !UseInstalledXdmcpLib
  2905. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),XBuildLibDir)
  2906. #else
  2907. ProjectUnsharedLibReferences(XDMCP,Xdmcp,$(XDMCPLIBSRC),$(USRLIBDIR))
  2908. #endif
  2909. #endif
  2910.  
  2911. #ifndef SharedLibXmu
  2912. #define SharedLibXmu HasSharedLibraries
  2913. #endif
  2914. #ifndef NormalLibXmu
  2915. #define NormalLibXmu (!SharedLibXmu | ForceNormalLib)
  2916. #endif
  2917. #ifndef DebugLibXmu
  2918. #define DebugLibXmu        NO    /* debugged Xmu library */
  2919. #endif
  2920. #ifndef ProfileLibXmu
  2921. #define ProfileLibXmu        NO    /* profiled Xmu library */
  2922. #endif
  2923.            XMUSRC = $(LIBSRC)/Xmu
  2924. #if SharedLibXmu
  2925. #ifndef SharedXmuRev
  2926. #define SharedXmuRev 6.2
  2927. #endif
  2928. SharedDSLibReferences(XMU,Xmu,$(XMUSRC),SOXMUREV,SharedXmuRev)
  2929. #else
  2930. ProjectUnsharedLibReferences(XMU,Xmu,$(XMUSRC),XBuildLibDir)
  2931. #endif
  2932.  
  2933. #ifndef SharedLibXmuu
  2934. #define SharedLibXmuu HasSharedLibraries
  2935. #endif
  2936. #ifndef NormalLibXmuu
  2937. #define NormalLibXmuu        (!SharedLibXmuu | ForceNormalLib)
  2938. #endif
  2939. #ifndef DebugLibXmuu
  2940. #define DebugLibXmuu        NO    /* debugged Xmuu library */
  2941. #endif
  2942. #ifndef ProfileLibXmuu
  2943. #define ProfileLibXmuu        NO    /* profiled Xmuu library */
  2944. #endif
  2945.            XMUUSRC = $(LIBSRC)/Xmuu
  2946. #if SharedLibXmuu
  2947. #ifndef SharedXmuuRev
  2948. #define SharedXmuuRev 1.0
  2949. #endif
  2950. SharedLibReferences(XMUU,Xmuu,$(XMUUSRC),SOXMUUREV,SharedXmuuRev)
  2951. #else
  2952. ProjectUnsharedLibReferences(XMUU,Xmuu,$(XMUUSRC),XBuildLibDir)
  2953. #endif
  2954.  
  2955. #ifndef SharedOldX
  2956. #define SharedOldX HasSharedLibraries
  2957. #endif
  2958. #ifndef NormalOldX
  2959. #define NormalOldX (!SharedOldX | ForceNormalLib)
  2960. #endif
  2961. #ifndef DebugOldX
  2962. #define DebugOldX        NO    /* debugged old X library */
  2963. #endif
  2964. #ifndef ProfileOldX
  2965. #define ProfileOldX        NO    /* profiled old X library */
  2966. #endif
  2967.        OLDXLIBSRC = $(LIBSRC)/oldX
  2968. #if SharedOldX
  2969. #ifndef SharedOldXRev
  2970. #define SharedOldXRev 6.0
  2971. #endif
  2972. SharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),SOOLDXREV,SharedOldXRev)
  2973. #else
  2974. ProjectUnsharedLibReferences(OLDX,oldX,$(OLDXLIBSRC),XBuildLibDir)
  2975. #endif
  2976.  
  2977. #ifndef SharedLibXp
  2978. #define SharedLibXp HasSharedLibraries
  2979. #endif
  2980. #ifndef NormalLibXp
  2981. #define NormalLibXp (!SharedLibXp | ForceNormalLib)
  2982. #endif
  2983. #ifndef DebugLibXp
  2984. #define DebugLibXp              NO      /* debugged Xp library */
  2985. #endif
  2986. #ifndef ProfileLibXp
  2987. #define ProfileLibXp            NO      /* profiled Xp library */
  2988. #endif
  2989.          XPLIBSRC = $(LIBSRC)/Xp
  2990. #if SharedLibXp
  2991. #ifndef SharedXpRev
  2992. #define SharedXpRev 6.2
  2993. #endif
  2994. SharedLibReferences(XP,Xp,$(XPLIBSRC),SOXPREV,SharedXpRev)
  2995. #else
  2996. ProjectUnsharedLibReferences(XP,Xp,$(XPLIBSRC),XBuildLibDir)
  2997. #endif
  2998.  
  2999. #ifndef SharedLibXt
  3000. #define SharedLibXt HasSharedLibraries
  3001. #endif
  3002. #ifndef NormalLibXt
  3003. #define NormalLibXt (!SharedLibXt | ForceNormalLib)
  3004. #endif
  3005. #ifndef DebugLibXt
  3006. #define DebugLibXt        NO    /* debugged toolkit library */
  3007. #endif
  3008. #ifndef ProfileLibXt
  3009. #define ProfileLibXt        NO    /* profiled toolkit library */
  3010. #endif
  3011.        TOOLKITSRC = $(LIBSRC)/Xt
  3012. #if SharedLibXt
  3013. #ifndef SharedXtRev
  3014. #define SharedXtRev 6.0
  3015. #endif
  3016. SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev)
  3017. #else
  3018. ProjectUnsharedLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),XBuildLibDir)
  3019. #endif
  3020.       DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
  3021.          XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
  3022.      LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
  3023.  
  3024. #ifndef SharedLibXa
  3025. #define SharedLibXa    (HasSharedLibraries & HasCplusplus)
  3026. #endif
  3027. #ifndef NormalLibXa
  3028. /* #define NormalLibXa    ((!SharedLibXa | ForceNormalLib) & HasCplusplus) */
  3029. #define NormalLibXa    YES /* needed for current tests, will correct later */
  3030. #endif
  3031. #ifndef DebugLibXa
  3032. #define DebugLibXa    NO    /* debugged audio library */
  3033. #endif
  3034. #ifndef ProfileLibXa
  3035. #define ProfileLibXa    NO    /* profiled audio library */
  3036. #endif
  3037.        XALIBSRC = $(LIBSRC)/Xa
  3038. #if SharedLibXa
  3039. #ifndef SharedXaRev
  3040. #define SharedXaRev 1.0
  3041. #endif
  3042. SharedLibReferences(XA,Xa,$(XALIBSRC),SOXAREV,SharedXaRev)
  3043. #else
  3044. UnsharedLibReferences(XA,Xa,$(XALIBSRC))
  3045. #endif
  3046.  
  3047. #ifndef BuildXaw
  3048. #define BuildXaw (BuildXprintLib && !BuildServersOnly)
  3049. #endif
  3050.  
  3051.        /* AWIDGETSRC is needed by libXaw6 and libXaw7 */
  3052.        AWIDGETSRC = $(LIBSRC)/Xaw
  3053.  
  3054. #if BuildXaw
  3055. #ifndef SharedLibXaw
  3056. #define SharedLibXaw HasSharedLibraries
  3057. #endif
  3058. #ifndef NormalLibXaw
  3059. #define NormalLibXaw (!SharedLibXaw | ForceNormalLib)
  3060. #endif
  3061. #ifndef DebugLibXaw
  3062. #define DebugLibXaw        NO    /* debugged widget library */
  3063. #endif
  3064. #ifndef ProfileLibXaw
  3065. #define ProfileLibXaw        NO    /* profiled widget library */
  3066. #endif
  3067. #if SharedLibXaw
  3068. #ifndef SharedXawRev
  3069. #define SharedXawRev 8.0
  3070. #endif
  3071. SharedDSLibReferences(XAW,Xaw,$(AWIDGETSRC),SOXAWREV,SharedXawRev)
  3072. #else
  3073. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGETSRC),XBuildLibDir)
  3074. #endif
  3075. #endif
  3076.  
  3077. #ifndef BuildXaw7
  3078. #define BuildXaw7 (HasSharedLibraries && !BuildServersOnly)
  3079. #endif
  3080.  
  3081. #if BuildXaw7
  3082. #ifndef SharedLibXaw7
  3083. #define SharedLibXaw7 HasSharedLibraries
  3084. #endif
  3085. #ifndef NormalLibXaw7
  3086. #define NormalLibXaw7        NO
  3087. #endif
  3088. #ifndef DebugLibXaw7
  3089. #define DebugLibXaw7        NO    /* debugged widget library */
  3090. #endif
  3091. #ifndef ProfileLibXaw7
  3092. #define ProfileLibXaw7        NO    /* profiled widget library */
  3093. #endif
  3094.        AWIDGET7SRC = $(LIBSRC)/Xaw7
  3095. #if SharedLibXaw7
  3096. #ifndef SharedXaw7Rev
  3097. #define SharedXaw7Rev 7.0
  3098. #endif
  3099. SharedDSLibReferences(XAW7,Xaw,$(AWIDGET7SRC),SOXAW7REV,SharedXaw7Rev)
  3100. #if !BuildXaw
  3101. SharedDSLibReferences(XAW,Xaw,$(AWIDGET7SRC),SOXAWREV,SharedXawRev)
  3102. #endif
  3103. #else
  3104. ProjectUnsharedLibReferences(XAW7,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3105. #if !BuildXaw
  3106. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET7SRC),XBuildLibDir)
  3107. #endif
  3108. #endif
  3109. #endif
  3110.  
  3111.  
  3112. #ifndef BuildXaw6
  3113. #define BuildXaw6 (HasSharedLibraries && !BuildServersOnly)
  3114. #endif
  3115.  
  3116. #if BuildXaw6
  3117. #ifndef SharedLibXaw6
  3118. #define SharedLibXaw6 HasSharedLibraries
  3119. #endif
  3120. #ifndef NormalLibXaw6
  3121. #define NormalLibXaw6        NO
  3122. #endif
  3123. #ifndef DebugLibXaw6
  3124. #define DebugLibXaw6        NO    /* debugged widget library */
  3125. #endif
  3126. #ifndef ProfileLibXaw6
  3127. #define ProfileLibXaw6        NO    /* profiled widget library */
  3128. #endif
  3129.        AWIDGET6SRC = $(LIBSRC)/Xaw6
  3130. #if SharedLibXaw6
  3131. #ifndef SharedXaw6Rev
  3132. #define SharedXaw6Rev 6.1
  3133. #endif
  3134. SharedDSLibReferences(XAW6,Xaw,$(AWIDGET6SRC),SOXAW6REV,SharedXaw6Rev)
  3135. #if !BuildXaw && !BuildXaw7
  3136. SharedDSLibReferences(XAW,Xaw,$(AWIDGET6SRC),SOXAWREV,SharedXawRev)
  3137. #endif
  3138. #else
  3139. ProjectUnsharedLibReferences(XAW6,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3140. #if !BuildXaw && !BuildXaw7
  3141. ProjectUnsharedLibReferences(XAW,Xaw,$(AWIDGET6SRC),XBuildLibDir)
  3142. #endif
  3143. #endif
  3144. #endif
  3145.  
  3146. #ifndef SharedLibXi
  3147. #define SharedLibXi HasSharedLibraries
  3148. #endif
  3149. #ifndef NormalLibXi
  3150. #define NormalLibXi (!SharedLibXi | ForceNormalLib)
  3151. #endif
  3152. #ifndef DebugLibXi
  3153. #define DebugLibXi        NO    /* debugged Xi library */
  3154. #endif
  3155. #ifndef ProfileLibXi
  3156. #define ProfileLibXi        NO    /* profiled Xi library */
  3157. #endif
  3158.          XILIBSRC = $(LIBSRC)/Xi
  3159. #if SharedLibXi
  3160. #ifndef SharedXiRev
  3161. #define SharedXiRev 6.0
  3162. #endif
  3163. SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev)
  3164. #else
  3165. ProjectUnsharedLibReferences(XI,Xi,$(XILIBSRC),XBuildLibDir)
  3166. #endif
  3167.  
  3168. #ifndef SharedLibXtst
  3169. #define SharedLibXtst HasSharedLibraries
  3170. #endif
  3171. #ifndef NormalLibXtst
  3172. #define NormalLibXtst (!SharedLibXtst | ForceNormalLib)
  3173. #endif
  3174. #ifndef DebugLibXtst
  3175. #define DebugLibXtst        NO    /* debugged Xtst library */
  3176. #endif
  3177. #ifndef ProfileLibXtst
  3178. #define ProfileLibXtst        NO    /* profiled Xtst library */
  3179. #endif
  3180.       XTESTLIBSRC = $(LIBSRC)/Xtst
  3181. #if SharedLibXtst
  3182. #ifndef SharedXtstRev
  3183. #define SharedXtstRev 6.1
  3184. #endif
  3185. SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev)
  3186. #else
  3187. ProjectUnsharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),XBuildLibDir)
  3188. #endif
  3189.  
  3190. ProjectUnsharedLibReferences(XBSD,Xbsd,$(LIBSRC)/Xbsd,XBuildLibDir)
  3191.  
  3192. #ifndef SharedLibICE
  3193. #define SharedLibICE HasSharedLibraries
  3194. #endif
  3195. #ifndef NormalLibICE
  3196. #define NormalLibICE (!SharedLibICE | ForceNormalLib)
  3197. #endif
  3198. #ifndef DebugLibICE
  3199. #define DebugLibICE        NO    /* debugged ICE library */
  3200. #endif
  3201. #ifndef ProfileLibICE
  3202. #define ProfileLibICE        NO    /* profiled ICE library */
  3203. #endif
  3204.            ICESRC = $(LIBSRC)/ICE
  3205. #if SharedLibICE
  3206. #ifndef SharedICERev
  3207. #define SharedICERev 6.4
  3208. #endif
  3209. SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev)
  3210. #else
  3211. ProjectUnsharedLibReferences(ICE,ICE,$(ICESRC),XBuildLibDir)
  3212. #endif
  3213.  
  3214. #ifndef SharedLibSM
  3215. #define SharedLibSM HasSharedLibraries
  3216. #endif
  3217. #ifndef NormalLibSM
  3218. #define NormalLibSM (!SharedLibSM | ForceNormalLib)
  3219. #endif
  3220. #ifndef DebugLibSM
  3221. #define DebugLibSM        NO    /* debugged SM library */
  3222. #endif
  3223. #ifndef ProfileLibSM
  3224. #define ProfileLibSM        NO    /* profiled SM library */
  3225. #endif
  3226.             SMSRC = $(LIBSRC)/SM
  3227. #if SharedLibSM
  3228. #ifndef SharedSMRev
  3229. #define SharedSMRev 6.0
  3230. #endif
  3231. SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev)
  3232. #else
  3233. ProjectUnsharedLibReferences(SM,SM,$(SMSRC),XBuildLibDir)
  3234. #endif
  3235.  
  3236. #ifndef SharedLibXkey
  3237. #define SharedLibXkey HasSharedLibraries
  3238. #endif
  3239. #ifndef NormalLibXkey
  3240. #define NormalLibXkey (!SharedLibXkey | ForceNormalLib)
  3241. #endif
  3242. #ifndef DebugLibXkey
  3243. #define DebugLibXkey        NO    /* debugged Xkey library */
  3244. #endif
  3245. #ifndef ProfileLibXkey
  3246. #define ProfileLibXkey        NO    /* profiled Xkey library */
  3247. #endif
  3248.            XKEYSRC = $(LIBSRC)/Xkey
  3249. #if SharedLibXkey
  3250. #ifndef SharedXkeyRev
  3251. #define SharedXkeyRev 6.0
  3252. #endif
  3253. SharedLibReferences(XKEY,Xkey,$(XKEYSRC),SOXKEYREV,SharedXkeyRev)
  3254. #else
  3255. ProjectUnsharedLibReferences(XKEY,Xkey,$(XKEYSRC),XBuildLibDir)
  3256. #endif
  3257.  
  3258. #ifndef SharedLibFS
  3259. #define SharedLibFS        HasSharedLibraries
  3260. #endif
  3261. #ifndef NormalLibFS
  3262. #define NormalLibFS (!SharedLibFS | ForceNormalLib)
  3263. #endif
  3264. #ifndef DebugLibFS
  3265. #define DebugLibFS        NO    /* debugged FS library */
  3266. #endif
  3267. #ifndef ProfileLibFS
  3268. #define ProfileLibFS        NO    /* profiled FS library */
  3269. #endif
  3270.          FSLIBSRC = $(LIBSRC)/FS
  3271. #if SharedLibFS
  3272. #ifndef SharedFSRev
  3273. #define SharedFSRev 6.0
  3274. #endif
  3275. SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev)
  3276. #else
  3277. ProjectUnsharedLibReferences(FS,FS,$(FSLIBSRC),XBuildLibDir)
  3278. #endif
  3279.  
  3280. #ifndef SharedLibFont
  3281. #define SharedLibFont HasSharedLibraries
  3282. #endif
  3283. #ifndef NormalLibFont
  3284. #define NormalLibFont (!SharedLibFont | ForceNormalLib | XserverStaticFontLib)
  3285. #endif
  3286. #ifndef DebugLibFont
  3287. #define DebugLibFont        NO    /* debugged Font library */
  3288. #endif
  3289. #ifndef ProfileLibFont
  3290. #define ProfileLibFont        NO    /* profiled Font library */
  3291. #endif
  3292.          FONTLIBSRC = $(LIBSRC)/font
  3293. #if SharedLibFont
  3294. #ifndef SharedFontRev
  3295. #define SharedFontRev 1.5
  3296. #endif
  3297. SharedFontLibReferences()
  3298. XCOMM SharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),SOFONTREV,SharedFontRev)
  3299. #else
  3300. ProjectUnsharedFontLibReferences()
  3301. XCOMM ProjectUnsharedLibReferences(XFONT,Xfont,$(FONTLIBSRC),XBuildLibDir)
  3302. #endif
  3303.  
  3304.      FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs
  3305. ProjectUnsharedLibReferences(FONTSTUB,fntstubs,$(FONTSUBLIBSRC),XBuildLibDir)
  3306.          DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
  3307.             FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB)
  3308.  
  3309.  
  3310. #ifndef SharedLibFontEnc
  3311. #define SharedLibFontEnc    HasSharedLibraries
  3312. #endif
  3313. #ifndef NormalLibFontEnc
  3314. #define NormalLibFontEnc (!SharedLibFontEnc | ForceNormalLib)
  3315. #endif
  3316. #ifndef DebugLibFontEnc
  3317. #define DebugLibFontEnc        NO    /* debugged fontenc library */
  3318. #endif
  3319. #ifndef ProfileLibFontEnc
  3320. #define ProfileLibFontEnc    NO    /* profiled fontenc library */
  3321. #endif
  3322.          FONTENCLIBSRC = $(LIBSRC)/fontenc
  3323. #if SharedLibFontEnc
  3324. #ifndef SharedFontEncRev
  3325. #define SharedFontEncRev 1.0
  3326. #endif
  3327. SharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),SOFONTENCREV,SharedFontEncRev)
  3328. #else
  3329. ProjectUnsharedLibReferences(XFONTENC,fontenc,$(FONTENCLIBSRC),XBuildLibDir)
  3330. #endif
  3331.  
  3332. #ifndef SharedLibXpm
  3333. #define SharedLibXpm HasSharedLibraries
  3334. #endif
  3335. #ifndef NormalLibXpm
  3336. #define NormalLibXpm (!SharedLibXpm | ForceNormalLib)
  3337. #endif
  3338. #ifndef DebugLibXpm
  3339. #define DebugLibXpm        NO
  3340. #endif
  3341. #ifndef ProfileLibXpm
  3342. #define ProfileLibXpm        NO
  3343. #endif
  3344.           XPMLIBSRC = $(LIBSRC)/Xpm
  3345. #if SharedLibXpm
  3346. #ifndef SharedXpmRev
  3347. #define SharedXpmRev 4.11
  3348. #endif
  3349. SharedLibReferences(XPM,Xpm,$(XPMLIBSRC),SOXPMREV,SharedXpmRev)
  3350. #else
  3351. ProjectUnsharedLibReferences(XPM,Xpm,$(XPMLIBSRC),XBuildLibDir)
  3352. #endif
  3353.  
  3354. #if UseFreetype2
  3355.  
  3356. #if BuildFreetype2Library
  3357.  
  3358. #ifndef SharedLibFreetype2
  3359. #define SharedLibFreetype2 HasSharedLibraries
  3360. #endif
  3361. #ifndef NormalLibFreetype2
  3362. #define NormalLibFreetype2 (!SharedLibFreetype2 | ForceNormalLib)
  3363. #endif
  3364. #ifndef DebugLibFreetype2
  3365. #define DebugLibFreetype2        NO
  3366. #endif
  3367. #ifndef ProfileLibFreetype2
  3368. #define ProfileLibFreetype2        NO
  3369. #endif
  3370.           FREETYPE2LIBSRC = $(LIBSRC)/freetype2
  3371.  
  3372. /*
  3373.  * FreeType 2.1.9
  3374.  *
  3375.  * Get the library version information from version_info in
  3376.  * in xc/extras/freetype2/builds/unix/configure.ac.
  3377.  *
  3378.  * current:revision:age = 9:7:3
  3379.  *
  3380.  * The LibtoolMinorVersions revision is "(current - age).age".
  3381.  * The !LibtoolMinorVersions revision is "current.0".
  3382.  * Freetype2Version should be set to "current.revision.age"
  3383.  */
  3384. #ifndef Freetype2Version
  3385. #define Freetype2Version 9.7.3
  3386. #endif
  3387.  
  3388. #if SharedLibFreetype2
  3389. #ifndef SharedLibtoolFreetype2Rev
  3390. #define SharedLibtoolFreetype2Rev    9:7:3
  3391. #endif
  3392. #ifndef SharedFreetype2Rev
  3393. #if LibtoolMinorVersions
  3394. #define SharedFreetype2Rev 6.3.8
  3395. #else
  3396. #define SharedFreetype2Rev 9.0
  3397. #endif
  3398. #endif
  3399. SharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),SOFREETYPE2REV,SharedFreetype2Rev)
  3400. #else
  3401. ProjectUnsharedLibReferences(FREETYPE2,freetype,$(FREETYPE2LIBSRC),XBuildLibDir)
  3402. #endif
  3403.  
  3404. #ifdef UseInstalled
  3405. FREETYPE2INCDIR=$(INCDIR)
  3406. #else
  3407. FREETYPE2INCDIR=$(BUILDINCDIR)
  3408. #endif
  3409.  
  3410. #else /* BuildFreetype2Library */
  3411.  
  3412. #if HasFreetype2
  3413.  
  3414. #ifndef Freetype2Dir
  3415. #define Freetype2Dir /usr
  3416. #ifndef Freetype2DirStandard
  3417. # define Freetype2DirStandard YES
  3418. #endif
  3419. #endif
  3420. #ifndef Freetype2DirStandard
  3421. #define Freetype2DirStandard NO
  3422. #endif
  3423.  
  3424. #ifndef Freetype2LibDir
  3425. #define Freetype2LibDir Freetype2Dir/LibDirName
  3426. # if Freetype2DirStandard
  3427. #  define Freetype2LibDirStandard YES
  3428. # endif
  3429. #endif
  3430. #ifndef Freetype2LibDirStandard
  3431. # define Freetype2LibDirStandard NO
  3432. #endif
  3433.  
  3434. #ifndef Freetype2IncDir
  3435. #define Freetype2IncDir Freetype2Dir/include
  3436. # if Freetype2DirStandard
  3437. #  define Freetype2IncDirStandard YES
  3438. # endif
  3439. #endif
  3440.  
  3441. FREETYPE2DIR = Freetype2Dir
  3442. FREETYPE2LIBDIR = Freetype2LibDir
  3443. FREETYPE2INCDIR = Freetype2IncDir
  3444. #if Freetype2LibDirStandard
  3445. FREETYPE2LIB = -lfreetype
  3446. #else
  3447. FREETYPE2LIB = -L$(FREETYPE2LIBDIR) LinkerRuntimeLibraryPathFlag($(FREETYPE2LIBDIR)) -lfreetype
  3448. #endif
  3449.  
  3450. #endif /* HasFreetype2 */
  3451.  
  3452. #endif /* else BuildFreetype2Library */
  3453.  
  3454. #ifndef Freetype2IncDirStandard
  3455. # define Freetype2IncDirStandard NO
  3456. #endif
  3457.  
  3458. #if BuildFreetype2Library || HasFreetype2
  3459. #if Freetype2IncDirStandard
  3460. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3461. #else
  3462. FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR) -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
  3463. #endif
  3464. FREETYPE2DEFINES = -DFREETYPE2
  3465. #endif
  3466.  
  3467. #endif /* UseFreetype2 */
  3468.  
  3469. #if HasMotif
  3470.  
  3471. #ifndef MotifDir
  3472. #define MotifDir /usr/X11R6
  3473. #endif
  3474. #ifndef MotifDirStandard
  3475. #define MotifDirStandard NO
  3476. #endif
  3477.  
  3478. #ifndef MotifLibDir
  3479. # define MotifLibDir MotifDir/LibDirName
  3480. # if MotifDirStandard
  3481. #  define MotifLibDirStandard YES
  3482. # endif
  3483. #endif
  3484. #ifndef MotifLibDirStandard
  3485. # define MotifLibDirStandard NO
  3486. #endif
  3487.  
  3488. #ifndef MotifIncDir
  3489. # define MotifIncDir MotifDir/include
  3490. # if MotifDirStandard
  3491. #  define MotifIncDirStandard YES
  3492. # endif
  3493. #endif
  3494. #ifndef MotifIncDirStandard
  3495. # define MotifIncDirStandard NO
  3496. #endif
  3497.  
  3498. MOTIFDIR = MotifDir
  3499. MOTIFLIBDIR = MotifLibDir
  3500. MOTIFINCDIR = MotifIncDir
  3501.  
  3502. #if MotifLibDirStandard
  3503. MOTIFLIB = -lXm
  3504. #else
  3505. MOTIFLIB = -L$(MOTIFLIBDIR) LinkerRuntimeLibraryPathFlag($(MOTIFLIBDIR)) -lXm
  3506. #endif
  3507.  
  3508. #if MotifIncDirStandard
  3509. MOTIFINCLUDES = 
  3510. #else
  3511. MOTIFINCLUDES = -I$(MOTIFINCDIR)
  3512. #endif
  3513.  
  3514. #endif /* HasMotif */
  3515.  
  3516. #ifndef SharedLibExpat
  3517. #define SharedLibExpat HasSharedLibraries
  3518. #endif
  3519. #ifndef NormalLibExpat
  3520. #define NormalLibExpat (!SharedLibExpat | ForceNormalLib)
  3521. #endif
  3522. #ifndef DebugLibExpat
  3523. #define DebugLibExpat        NO
  3524. #endif
  3525. #ifndef ProfileLibExpat
  3526. #define ProfileLibExpat        NO
  3527. #endif
  3528.           EXPATLIBSRC = $(LIBSRC)/expat
  3529.  
  3530. /*
  3531.  * Expat 1.95.6.
  3532.  *
  3533.  * Get the library version information from LIBCURRENT, LIBREVISION and LIBAGE
  3534.  * in xc/extras/expat/configure.
  3535.  *
  3536.  * LIBCURRENT:LIBREVISION:LIBAGE = 4:0:4
  3537.  *
  3538.  * The LibtoolMinorVersions revision is "(LIBCURRENT - LIBAGE).LIBAGE".
  3539.  * The !LibtoolMinorVersions revision is "LIBCURRENT.0".
  3540.  */
  3541. #ifndef ExpatVersion
  3542. #define ExpatVersion 1.95.6
  3543. #endif
  3544.  
  3545. #if SharedLibExpat
  3546. #ifndef SharedLibtoolExpatRev
  3547. #define SharedLibtoolExpatRev    4:0:4
  3548. #endif
  3549. #ifndef SharedExpatRev
  3550. #if LibtoolMinorVersions
  3551. #define SharedExpatRev 0.4
  3552. #else
  3553. #define SharedExpatRev 4.0
  3554. #endif
  3555. #endif
  3556. SharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),SOEXPATREV,SharedExpatRev)
  3557. #else
  3558. ProjectUnsharedLibReferences(EXPAT,expat,$(EXPATLIBSRC),XBuildLibDir)
  3559. #endif
  3560.  
  3561. #if UseExpat
  3562.  
  3563. #if BuildExpatLibrary
  3564. EXPATINCLUDES=$(TOP_X_INCLUDES)
  3565. EXPATDEFINES=-DEXPAT
  3566. #else    /* BuildExpatLibrary */
  3567.  
  3568. #if HasExpat
  3569.  
  3570. #ifndef ExpatDir
  3571. #define ExpatDir /usr
  3572. #define ExpatDirStandard YES
  3573. #endif
  3574. #ifndef ExpatDirStandard
  3575. #define ExpatDirStandard NO
  3576. #endif
  3577.  
  3578. #ifndef ExpatLibDir
  3579. #define ExpatLibDir ExpatDir/LibDirName
  3580. # if ExpatDirStandard
  3581. #  define ExpatLibDirStandard YES
  3582. # endif
  3583. #endif
  3584. #ifndef ExpatLibDirStandard
  3585. #define ExpatLibDirStandard NO
  3586. #endif
  3587.  
  3588. #ifndef ExpatIncDir
  3589. #define ExpatIncDir ExpatDir/include
  3590. # if ExpatDirStandard
  3591. #  define ExpatIncDirStandard YES
  3592. # endif
  3593. #endif
  3594. #ifndef ExpatIncDirStandard
  3595. #define ExpatIncDirStandard NO
  3596. #endif
  3597.  
  3598. EXPATDIR = ExpatDir
  3599. EXPATLIBDIR = ExpatLibDir
  3600. EXPATINCDIR = ExpatIncDir
  3601. #if ExpatIncDirStandard
  3602. EXPATINCLUDES =
  3603. #else
  3604. EXPATINCLUDES = -I$(EXPATINCDIR)
  3605. #endif
  3606. #if ExpatLibDirStandard
  3607. EXPATLIB = -lexpat
  3608. #else
  3609. EXPATLIB = -L$(EXPATLIBDIR) LinkerRuntimeLibraryPathFlag($(EXPATLIBDIR)) -lexpat
  3610. #endif
  3611. EXPATDEFINES = -DEXPAT
  3612. #endif /* HasExpat */
  3613.  
  3614. #endif /* else BuildExpatLibrary */
  3615.  
  3616. #define ExpatClientLibs $(EXPATLIB)
  3617. #define ExpatClientDepLibs $(DEPEXPATLIB)
  3618.  
  3619. #endif /* UseExpat */
  3620.  
  3621. #if BuildXftLibrary
  3622. #ifndef SharedLibXft1
  3623. #define SharedLibXft1 HasSharedLibraries
  3624. #endif
  3625. #ifndef NormalLibXft1
  3626. #define NormalLibXft1        NO
  3627. #endif
  3628. #ifndef DebugLibXft1
  3629. #define DebugLibXft1        NO
  3630. #endif
  3631. #ifndef ProfileLibXft1
  3632. #define ProfileLibXft1        NO
  3633. #endif
  3634. #else
  3635. #undef  SharedLibXft
  3636. #define SharedLibXft        NO
  3637. #undef  NormalLibXft
  3638. #define NormalLibXft        NO
  3639. #undef  DebugLibXft
  3640. #define DebugLibXft        NO
  3641. #undef  ProfileLibXft
  3642. #define ProfileLibXft        NO
  3643. #endif
  3644.  
  3645. #if BuildXftLibrary
  3646.           XFT1LIBSRC = $(LIBSRC)/Xft1
  3647. #if SharedLibXft1
  3648. #ifndef SharedXft1Rev
  3649. #define SharedXft1Rev 1.1
  3650. #endif
  3651. SharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),SOXFT1REV,SharedXft1Rev)
  3652. #else
  3653. ProjectUnsharedLibReferences(XFT1,Xft,$(XFT1LIBSRC),XBuildLibDir)
  3654. #endif
  3655.  
  3656. #ifndef Xft1ClientDepLibs
  3657. #if UseFreetype2
  3658. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPFREETYPE2LIB) $(DEPXRENDERLIB)
  3659. #else
  3660. #define Xft1ClientDepLibs $(DEPXFT1LIB) $(DEPXRENDERLIB)
  3661. #endif
  3662. #endif
  3663. #ifndef Xft1ClientLibs
  3664. #if UseFreetype2
  3665. #define Xft1ClientLibs $(XFT1LIB) $(FREETYPE2LIB) $(XRENDERLIB)
  3666. #else
  3667. #define Xft1ClientLibs $(XFT1LIB) $(XRENDERLIB)
  3668. #endif
  3669. #endif
  3670.  
  3671. #ifndef SharedLibXft
  3672. #define SharedLibXft HasSharedLibraries
  3673. #endif
  3674. #ifndef NormalLibXft
  3675. #define NormalLibXft (!SharedLibXft | ForceNormalLib)
  3676. #endif
  3677. #ifndef DebugLibXft
  3678. #define DebugLibXft        NO
  3679. #endif
  3680. #ifndef ProfileLibXft
  3681. #define ProfileLibXft        NO
  3682. #endif
  3683.           XFTLIBSRC = $(LIBSRC)/Xft
  3684. #if SharedLibXft
  3685. #ifndef SharedXftRev
  3686. #define SharedXftRev 2.1.2
  3687. #endif
  3688. SharedLibReferences(XFT,Xft,$(XFTLIBSRC),SOXFTREV,SharedXftRev)
  3689. #else
  3690. ProjectUnsharedLibReferences(XFT,Xft,$(XFTLIBSRC),XBuildLibDir)
  3691. #endif
  3692.  
  3693. #ifndef XftClientDepLibs
  3694. #define XftClientDepLibs $(DEPXFTLIB) FontconfigClientDepLibs $(DEPXRENDERLIB)
  3695. #endif
  3696. #ifndef XftClientLibs
  3697. #define XftClientLibs $(XFTLIB) FontconfigClientLibs $(XRENDERLIB)
  3698. #endif
  3699.  
  3700. XFTINCLUDES=$(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES) $(XRENDERINCLUDES)
  3701.  
  3702. #else /* BuildXftLibrary */
  3703.  
  3704. #if HasXftLibrary
  3705.  
  3706. #ifndef XftLibraryDir
  3707. #define XftLibraryDir /usr/X11R6
  3708. #endif
  3709.  
  3710. #ifndef XftLibraryLibDir
  3711. #define XftLibraryLibDir XftLibraryDir/LibDirName
  3712. #endif
  3713.  
  3714. #ifndef XftLibraryIncDir
  3715. #define XftLibraryIncDir XftLibraryDir/include
  3716. #endif
  3717.  
  3718. XFTDIR = XftLibraryDir
  3719. XFTLIBDIR = XftLibraryLibDir
  3720. XFTINCDIR = XftLibraryIncDir
  3721. XFTLIB = -L$(XFTLIBDIR) -lXft
  3722.  
  3723. #ifndef XftClientDepLibs
  3724. #define XftClientDepLibs FontconfigClientDepLibs $(DEPXRENDERLIB)
  3725. #endif
  3726. #ifndef XftClientLibs
  3727. #define XftClientLibs $(XFTLIB) FontconfigClientLibs $(XRENDERLIB)
  3728. #endif
  3729.  
  3730. XFTINCLUDES= -I$(XFTINCDIR) $(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES) $(XRENDERINCLUDES)
  3731.  
  3732. #endif /* HasXftLibrary */
  3733.  
  3734. #endif /* else BuildXftLibrary */
  3735.  
  3736. #if UseFontconfig
  3737.  
  3738. #if BuildFontconfigLibrary
  3739.  
  3740. #ifndef SharedLibFontconfig
  3741. #define SharedLibFontconfig HasSharedLibraries
  3742. #endif
  3743. #ifndef NormalLibFontconfig
  3744. #define NormalLibFontconfig (!SharedLibFontconfig | ForceNormalLib)
  3745. #endif
  3746. #ifndef DebugLibFontconfig
  3747. #define DebugLibFontconfig        NO
  3748. #endif
  3749. #ifndef ProfileLibFontconfig
  3750. #define ProfileLibFontconfig        NO
  3751. #endif
  3752.           FONTCONFIGLIBSRC = $(LIBSRC)/fontconfig
  3753. #if SharedLibFontconfig
  3754. #ifndef SharedFontconfigRev
  3755. #define SharedFontconfigRev 1.0.4
  3756. #endif
  3757. SharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),SOFONTCONFIGREV,SharedFontconfigRev)
  3758. #else
  3759. ProjectUnsharedLibReferences(FONTCONFIG,fontconfig,$(FONTCONFIGLIBSRC),XBuildLibDir)
  3760. #endif
  3761.  
  3762. #ifdef UseInstalled
  3763. FONTCONFIGINCDIR=$(INCDIR)
  3764. #else
  3765. FONTCONFIGINCDIR=$(BUILDINCDIR)
  3766. #endif
  3767.  
  3768. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3769.  
  3770. #if UseInstalledX11
  3771. FCCACHE = $(BINDIR)/fc-cache
  3772. #else
  3773. FCCACHE = set -x; $(CLIENTENVSETUP) $(PRELOADXFTSETUP) FONTCONFIG_PATH=$(FONTCONFIGLIBSRC) $(XBUILDBINDIR)/fc-cache
  3774. #endif
  3775.  
  3776. #else /* BuildFontconfigLibrary */
  3777.  
  3778. #if HasFontconfig
  3779.  
  3780. #ifndef FontconfigDir
  3781. # define FontconfigDir /usr
  3782. # ifndef FontconfigDirStandard
  3783. #  define FontconfigDirStandard YES
  3784. # endif
  3785. #endif
  3786.  
  3787. #ifndef FontconfigDirStandard
  3788. # define FontconfigDirStandard NO
  3789. #endif
  3790.  
  3791. #ifndef FontconfigLibDir
  3792. # define FontconfigLibDir FontconfigDir/LibDirName
  3793. # if FontconfigDirStandard
  3794. #  define FontconfigLibDirStandard YES
  3795. # endif
  3796. #endif
  3797. #ifndef FontconfigLibDirStandard
  3798. # define FontconfigLibDirStandard NO
  3799. #endif
  3800.  
  3801. #ifndef FontconfigBinDir
  3802. # define FontconfigBinDir FontconfigDir/bin
  3803. #endif
  3804.  
  3805. #ifndef FontconfigIncDir
  3806. # define FontconfigIncDir FontconfigDir/include
  3807. # if FontconfigDirStandard
  3808. #  define FontconfigIncDirStandard YES
  3809. # endif
  3810. #endif
  3811.  
  3812. #ifndef FontconfigIncDirStandard
  3813. # define FontconfigIncDirStandard NO
  3814. #endif
  3815.  
  3816. FONTCONFIGDIR = FontconfigDir
  3817. FONTCONFIGLIBDIR = FontconfigLibDir
  3818. FONTCONFIGINCDIR = FontconfigIncDir
  3819. FONTCONFIGBINDIR = FontconfigBinDir
  3820. #if FontconfigLibDirStandard
  3821. FONTCONFIGLIB = -lfontconfig
  3822. #else
  3823. FONTCONFIGLIB = -L$(FONTCONFIGLIBDIR) LinkerRuntimeLibraryPathFlag($(FONTCONFIGLIBDIR)) -lfontconfig
  3824. #endif
  3825.  
  3826. #if FontconfigIncDirStandard
  3827. FONTCONFIGINCLUDES =
  3828. #else
  3829. FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
  3830. #endif
  3831.  
  3832. FCCACHE = $(FONTCONFIGBINDIR)/fc-cache
  3833.  
  3834. #endif /* HasFontconfig */
  3835.  
  3836. #endif /* else BuildFontconfigLibrary */
  3837.  
  3838. #if BuildFontconfigLibrary || HasFontconfig
  3839. FONTCONFIGDEFINES = -DFONTCONFIG
  3840. #endif
  3841.  
  3842. #ifndef FontconfigClientDepLibs
  3843. #define FontconfigClientDepLibs $(DEPFONTCONFIGLIB) $(DEPFREETYPE2LIB) ExpatClientDepLibs
  3844. #endif
  3845. #ifndef FontconfigClientLibs
  3846. #define FontconfigClientLibs $(FONTCONFIGLIB) $(FREETYPE2LIB) ExpatClientLibs
  3847. #endif
  3848.  
  3849. #endif /* UseFontconfig */
  3850.  
  3851. #ifdef HasLibpng
  3852.  
  3853. /*
  3854.  * Libpng controls:
  3855.  *
  3856.  *    LibpngDir        prefix for all libpng files
  3857.  *    LibpngDirStandard    Boolean - whether png headers/libs are
  3858.  *                in default compile/link paths
  3859.  *    LibpngLibDir        Directory holding png library
  3860.  *    LibpngLibDirStandard    Boolean - whether png libs are
  3861.  *                in default link path
  3862.  *    LibpngIncDir        Directory holding png includes
  3863.  *    LibpngIncDirStandard    Boolean - whether png includes are
  3864.  *                in default compile path
  3865.  *
  3866.  * Make sure that *Standard is set correctly, if not, the
  3867.  * standard compile/link paths will be added *before* the
  3868.  * local X directorys and installed versions of the standard
  3869.  * X headers will end up getting used.
  3870.  */
  3871.  
  3872. #ifndef LibpngDir
  3873. #define LibpngDir /usr
  3874. #define LibpngDirStandard YES
  3875. #endif
  3876. #ifndef LibpngDirStandard
  3877. #define LibpngDirStandard NO
  3878. #endif
  3879.  
  3880. #ifndef LibpngLibDir
  3881. #define LibpngLibDir LibpngDir/LibDirName
  3882. #if LibpngDirStandard
  3883. #define LibpngLibDirStandard YES
  3884. #endif
  3885. #endif
  3886. #ifndef LibpngLibDirStandard
  3887. #define LibpngLibDirStandard NO
  3888. #endif
  3889.  
  3890. #ifndef LibpngIncDir
  3891. #define LibpngIncDir LibpngDir/include
  3892. #if LibpngDirStandard
  3893. #define LibpngIncDirStandard YES
  3894. #endif
  3895. #endif
  3896. #ifndef LibpngIncDirStandard
  3897. #define LibpngIncDirStandard NO
  3898. #endif
  3899.  
  3900. LIBPNGINCDIR = LibpngIncDir
  3901. #if LibpngIncDirStandard
  3902. LIBPNGINC=
  3903. #else
  3904. LIBPNGINC = -I$(LIBPNGINCDIR)
  3905. #endif
  3906. LIBPNGDIR = LibpngDir
  3907. LIBPNGLIBDIR = LibpngLibDir
  3908. LIBPNGINCDIR = LibpngIncDir
  3909. #if LibpngLibDirStandard
  3910. LIBPNGLIB = -lpng
  3911. #else
  3912. LIBPNGLIB = -L$(LIBPNGLIBDIR) LinkerRuntimeLibraryPathFlag($(LIBPNGLIBDIR)) -lpng
  3913. #endif
  3914.  
  3915. #endif
  3916.  
  3917. #ifndef XmuuClientDepLibs
  3918. #define XmuuClientDepLibs $(DEPXMUULIB) $(DEPXLIB)
  3919. #endif
  3920. #ifndef XmuuClientLibs
  3921. #define XmuuClientLibs $(XMUULIB) $(XLIB)
  3922. #endif
  3923.  
  3924. #ifndef LdLibraryPath
  3925. #define LdLibraryPath LD_LIBRARY_PATH
  3926. #endif
  3927.  
  3928. #if BuildXKBlib
  3929. # ifndef SharedLibxkbfile
  3930. #  define SharedLibxkbfile    HasSharedLibraries
  3931. # endif
  3932. # ifndef NormalLibxkbfile
  3933. #  define NormalLibxkbfile    (!SharedLibxkbfile | ForceNormalLib)
  3934. # endif
  3935. # ifndef DebugLibxkbfile
  3936. #  define DebugLibxkbfile    NO
  3937. # endif
  3938. # ifndef ProfileLibxkbfile
  3939. #  define ProfileLibxkbfile    NO
  3940. # endif
  3941. #else
  3942. # ifndef SharedLibxkbfile
  3943. #  define SharedLibxkbfile    NO
  3944. # endif
  3945. # ifndef NormalLibxkbfile
  3946. #  define NormalLibxkbfile    NO
  3947. # endif
  3948. # ifndef DebugLibxkbfile
  3949. #  define DebugLibxkbfile    NO
  3950. # endif
  3951. # ifndef ProfileLibxkbfile
  3952. #  define ProfileLibxkbfile    NO
  3953. # endif
  3954. #endif
  3955.     XKBFILELIBSRC = $(LIBSRC)/xkbfile
  3956. #if SharedLibxkbfile
  3957. # ifndef SharedxkbfileRev
  3958. #  define SharedxkbfileRev    1.0
  3959. # endif
  3960. SharedLibReferences(XKBFILE,xkbfile,$(XKBFILESRC),SOXKBFILEREV, SharedxkbfileRev)
  3961. #else
  3962. ProjectUnsharedLibReferences(XKBFILE,xkbfile,$(XKBFILELIBSRC),XBuildLibDir)
  3963. #endif
  3964.  
  3965. #if BuildXKBlib
  3966. # ifndef XkbClientDepLibs
  3967. #  if UseXKBInClients
  3968. #   define XkbClientDepLibs    $(DEPXKBFILELIB)
  3969. #  else
  3970. #   define XkbClientDepLibs    /**/
  3971. #  endif
  3972. # endif
  3973. # ifndef XkbClientLibs
  3974. #  if UseXKBInClients
  3975. #   define XkbClientLibs    $(XKBFILELIB)
  3976. #  else
  3977. #   define XkbClientLibs    /**/
  3978. #  endif
  3979. # endif
  3980.  
  3981. # if defined(UseInstalled) || (CrossCompiling &&  UseInstalledOnCrossCompile)
  3982.      XKBCOMPCMD = $(XBINDIR)/XkbComp
  3983. # else
  3984.      XKBCOMPSRC = $(PROGRAMSRC)/XkbComp
  3985. #  if CrossCompiling
  3986.      XKBCOMPCMD = $(PROGRAMSRC)/XkbComp/cross/XkbComp
  3987. #  else
  3988.      XKBCOMPCMD = $(CLIENTENVSETUP) $(PRELOADSETUP) $(XBUILDBINDIR)/XkbComp
  3989. #  endif
  3990. # endif
  3991. #else /* !BuildXKBlib */
  3992. # ifndef XkbClientDepLibs
  3993. #  define XkbClientDepLibs
  3994. # endif
  3995. # ifndef XkbClientLibs
  3996. #  define XkbClientLibs
  3997. # endif
  3998. #endif /* BuildXKBlib */
  3999.  
  4000. #if BuildXKBlib
  4001. # ifndef SharedLibxkbui
  4002. #  define SharedLibxkbui    HasSharedLibraries
  4003. # endif
  4004. # ifndef NormalLibxkbui
  4005. #  define NormalLibxkbui    (!SharedLibxkbui || ForceNormalLib)
  4006. # endif
  4007. # ifndef DebugLibxkbui
  4008. #  define DebugLibxkbui        NO
  4009. # endif
  4010. # ifndef ProfileLibxkbui
  4011. #  define ProfileLibxkbui    NO
  4012. # endif
  4013. #else
  4014. # ifndef SharedLibxkbui
  4015. #  define SharedLibxkbui    NO
  4016. # endif
  4017. # ifndef NormalLibxkbui
  4018. #  define NormalLibxkbui    NO
  4019. # endif
  4020. # ifndef DebugLibxkbui
  4021. #  define DebugLibxkbui        NO
  4022. # endif
  4023. # ifndef ProfileLibxkbui
  4024. #  define ProfileLibxkbui    NO
  4025. # endif
  4026. #endif
  4027.     XKBUILIBSRC = $(LIBSRC)/xkbui
  4028. #if SharedLibxkbui
  4029. # ifndef SharedxkbuiRev
  4030. #  define SharedxkbuiRev    1.0
  4031. # endif
  4032. SharedLibReferences(XKBUI,xkbui,$(XKBUISRC),SOXKBUIREV, SharedxkbuiRev)
  4033. #else
  4034. ProjectUnsharedLibReferences(XKBUI,xkbui,$(XKBUILIBSRC),XBuildLibDir)
  4035. #endif
  4036.  
  4037. #ifndef XkbuiLibs
  4038. # define    XkbuiLibs $(XKBUILIB)
  4039. #endif
  4040. #ifndef XkbuiDepLibs
  4041. # define    XkbuiDepLibs $(DEPXKBFILELIB)
  4042. #endif
  4043.  
  4044. #ifndef SharedxrxRev
  4045. # define SharedxrxRev        6.8
  4046. #endif 
  4047.  
  4048. #ifndef SharedxrxnestRev
  4049. # define SharedxrxnestRev    6.8
  4050. #endif
  4051.  
  4052. #ifndef ExtraXawReqs
  4053. # if BuildXaw
  4054. #  define ExtraXawReqs $(XPLIB)
  4055. # else
  4056. #  define ExtraXawReqs /**/
  4057. # endif
  4058. #endif
  4059.  
  4060. EXTRAXAWREQS = ExtraXawReqs
  4061.  
  4062. #ifndef ExtraXawClientDepLibs
  4063. # if BuildXaw
  4064. #  define ExtraXawClientDepLibs $(DEPXPLIB)
  4065. # else
  4066. #  define ExtraXawClientDepLibs /**/
  4067. # endif
  4068. #endif
  4069.  
  4070. EXTRAXAWCLIENTDEPLIBS = ExtraXawClientDepLibs
  4071.  
  4072. #ifndef XawClientDepLibs
  4073. #define XawClientDepLibs $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
  4074. #endif
  4075.  
  4076. #ifndef ExtraXawClientLibs
  4077. # if BuildXaw
  4078. #  define ExtraXawClientLibs $(XPLIB)
  4079. # else
  4080. #  define ExtraXawClientLibs /**/
  4081. # endif
  4082. #endif
  4083.  
  4084. EXTRAXAWCLIENTLIBS = ExtraXawClientLibs
  4085.  
  4086. #ifndef XawClientLibs
  4087. #define XawClientLibs $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)
  4088. #endif
  4089.  
  4090. #ifndef SharedLibXTrap
  4091. #define SharedLibXTrap HasSharedLibraries
  4092. #endif
  4093. #ifndef NormalLibXTrap
  4094. #define NormalLibXTrap (!SharedLibXTrap | ForceNormalLib)
  4095. #endif
  4096. #ifndef DebugLibXTrap
  4097. #define DebugLibXTrap        NO    /* debugged XTrap library */
  4098. #endif
  4099. #ifndef ProfileLibXTrap
  4100. #define ProfileLibXTrap        NO    /* profiled XTrap library */
  4101. #endif
  4102.         XTRAPLIBSRC = $(LIBSRC)/XTrap
  4103. #if SharedLibXTrap
  4104. #ifndef SharedXTrapRev
  4105. #define SharedXTrapRev 6.4
  4106. #endif
  4107. SharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),SOXTRAPREV,SharedXTrapRev)
  4108. #else
  4109. ProjectUnsharedLibReferences(XTRAP,XTrap,$(XTRAPLIBSRC),XBuildLibDir)
  4110. #endif
  4111.  
  4112. #ifndef NeedDefaultDepLibs
  4113. #define NeedDefaultDepLibs YES
  4114. #endif
  4115.  
  4116. #if NeedDefaultDepLibs
  4117. /*
  4118.  * Individual libraries should override this
  4119.  */
  4120. #if HasSharedLibraries || defined(UseInstalled)
  4121.           DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
  4122. #else
  4123.           DEPLIBS = $(LOCAL_LIBRARIES)
  4124. #endif
  4125.          DEPLIBS1 = $(DEPLIBS)
  4126.          DEPLIBS2 = $(DEPLIBS)
  4127.          DEPLIBS3 = $(DEPLIBS)
  4128.          DEPLIBS4 = $(DEPLIBS)
  4129.          DEPLIBS5 = $(DEPLIBS)
  4130.          DEPLIBS6 = $(DEPLIBS)
  4131.          DEPLIBS7 = $(DEPLIBS)
  4132.          DEPLIBS8 = $(DEPLIBS)
  4133.          DEPLIBS9 = $(DEPLIBS)
  4134.          DEPLIBS10 = $(DEPLIBS)
  4135. #endif /* NeedDefaultDepLibs */
  4136.  
  4137.  
  4138. /*
  4139.  * InstallAppDefaults - simple rules to install application default file
  4140.  */
  4141. #ifndef InstallAppDefaults
  4142. #define InstallAppDefaults(class) InstallAppDefaultsLong(class,class)
  4143. #endif /* InstallAppDefaults */
  4144.  
  4145. /*
  4146.  * InstallAppDefaultsLong - general rule to install application default file
  4147.  * if the InstallAppDefFiles configuration parameter is set.
  4148.  */
  4149. #ifndef InstallAppDefaultsLong
  4150. #if UseConfDirForAppDefaults
  4151. #if InstallAppDefFiles
  4152. #define InstallAppDefaultsLong(file,class)                @@\
  4153. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4154. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4155. #else
  4156. #define InstallAppDefaultsLong(file,class)                @@\
  4157. LinkConfDirectory(app-defaults,.,app-defaults,.)            @@\
  4158. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4159. #endif /* InstallAppDefFiles */
  4160. #else /* UseConfDirForAppDefaults */
  4161. #if InstallAppDefFiles
  4162. #define InstallAppDefaultsLong(file,class)                @@\
  4163. InstallNamedTarget(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4164. #else
  4165. #define InstallAppDefaultsLong(file,class)                @@\
  4166. InstallNamedTargetNoClobber(install,file.ad,$(INSTAPPFLAGS),$(XAPPLOADDIR),class)
  4167. #endif /* InstallAppDefFiles */
  4168. #endif /* UseConfDirForAppDefaults */
  4169. #endif /* InstallAppDefaultsLong */
  4170.  
  4171. /*
  4172.  * MakeFcCache - generate rules to build fontconfig cache database
  4173.  */
  4174.  
  4175. #if defined UseFreetype2 && !CrossCompiling
  4176.  
  4177. # ifndef MakeFcCache
  4178. #  define MakeFcCache(deplist)                        @@\
  4179. all:: fonts.cache                            @@\
  4180.                                     @@\
  4181. fonts.cache: deplist                            @@\
  4182.     RunProgram(FCCACHE, $(FCCACHEOPTS) .)                @@\
  4183.                                     @@\
  4184. clean::                                    @@\
  4185.     RemoveFiles(fonts.cache*)
  4186. # endif /* MakeFcCache */
  4187.  
  4188. # ifndef InstallFcCache
  4189. #  define InstallFcCache(dest)                        @@\
  4190. install::                                @@\
  4191.     RunProgram(FCCACHE, $(FCCACHEOPTS) $(DESTDIR)dest)
  4192. # endif /* InstallFcCache */
  4193.  
  4194. #else
  4195.  
  4196. #ifndef MakeFcCache
  4197. #define MakeFcCache(deplist)
  4198. #endif
  4199.  
  4200. #ifndef InstallFcCache
  4201. #define InstallFcCache(dest)
  4202. #endif
  4203.  
  4204. #endif
  4205.  
  4206. /*
  4207.  * MakeFontsScale - generate rules to build fonts.scale database.
  4208.  */
  4209. #ifndef MakeFontsScale
  4210. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4211. #  define MakeFontsScale(deplist)                    @@\
  4212. all:: fonts.scale                            @@\
  4213.                                     @@\
  4214. fonts.scale:  deplist                            @@\
  4215.     RemoveFile(fonts.scale)                        @@\
  4216.     RunProgram(MKFONTSCALE, .)                    @@\
  4217.                                     @@\
  4218. clean::                                    @@\
  4219.     RemoveFile(fonts.scale)
  4220. # else
  4221. #  define MakeFontsScale(deplist)                    @@\
  4222. clean::                                    @@\
  4223.     RemoveFile(fonts.scale)
  4224. # endif
  4225. #endif /* MakeFontsScale */
  4226.  
  4227. /*
  4228.  * MakeFontsDir - generate rules to build fonts.dir database.
  4229.  */
  4230. #ifndef MakeFontsDir
  4231. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4232. #  define MakeFontsDir(deplist)                        @@\
  4233. all:: fonts.dir                                @@\
  4234.                                     @@\
  4235. fonts.dir:  deplist                            @@\
  4236.     RemoveFile(fonts.dir)                        @@\
  4237.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) .)            @@\
  4238.                                     @@\
  4239. clean::                                    @@\
  4240.     RemoveFile(fonts.dir)
  4241. # else
  4242. #  define MakeFontsDir(deplist)                        @@\
  4243. clean::                                    @@\
  4244.     RemoveFile(fonts.dir)
  4245. # endif
  4246. #endif /* MakeFontsDir */
  4247.  
  4248.  
  4249. /*
  4250.  * MakeFonts - generate rules to build font database.
  4251.  */
  4252. #ifndef MakeFonts
  4253. # if !CrossCompiling || UseInstalledOnCrossCompile
  4254. #  define MakeFonts()                            @@\
  4255. all::  $(OBJS)                                @@\
  4256.                                     @@\
  4257. MakeFontsDir($(OBJS))                            @@\
  4258.                                     @@\
  4259. clean::                                    @@\
  4260.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4261. # else
  4262. #  define MakeFonts()                            @@\
  4263. MakeFontsDir($(OBJS))                            @@\
  4264.                                     @@\
  4265. clean::                                    @@\
  4266.     RemoveFiles(*.pcf *.pcf.Z *.pcf.gz)
  4267. # endif
  4268. #endif /* MakeFonts */
  4269.  
  4270. #ifndef InstallFontsDir
  4271. # if !CrossCompiling ||  UseInstalledOnCrossCompile
  4272. #  define InstallFontsDir(dest)                        @@\
  4273. install::                                @@\
  4274.     MakeDir($(DESTDIR)dest)                        @@\
  4275.     @if [ X$(STATIC_FONTS_SCALE) = X ]; then (set -x; \        @@\
  4276.       RemoveFile($(DESTDIR)dest/fonts.scale); \            @@\
  4277.       RunProgram(MKFONTSCALE, $(DESTDIR)dest)); \            @@\
  4278.     else (set -x; \                            @@\
  4279.       InstallInline(fonts.scale,$(INSTDATFLAGS),dest)); \        @@\
  4280.     fi                                @@\
  4281.     RemoveFile($(DESTDIR)dest/fonts.dir)                @@\
  4282.     RunProgram(MKFONTDIR, $(MKFONTDIROPTS) $(DESTDIR)dest)
  4283. # else
  4284. #  define InstallFontsDir(dest)
  4285. # endif
  4286. #endif
  4287.  
  4288. /*
  4289.  * InstallFontObjs - generate rules to install font files
  4290.  */
  4291. #ifndef InstallFontObjs
  4292. # if !CrossCompiling || UseInstalledOnCrossCompile
  4293. #  define InstallFontObjs(objs,dest)                    @@\
  4294. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4295.                                     @@\
  4296. InstallFontsDir(dest)
  4297. # else
  4298. #  define InstallFontObjs(objs,dest)
  4299. # endif
  4300. #endif /* InstallFontObjs */
  4301.  
  4302.  
  4303. /*
  4304.  * InstallFonts - generate rules to install font files
  4305.  */
  4306. #ifndef InstallFonts
  4307. #define InstallFonts(dest)                        @@\
  4308. InstallFontObjs($(OBJS),dest)
  4309. #endif /* InstallFonts */
  4310.  
  4311.  
  4312. /*
  4313.  * InstallFontAliases - generate rules to install font aliases databases.
  4314.  */
  4315. #ifndef InstallFontAliases
  4316. #define InstallFontAliases(dest)                    @@\
  4317. InstallTarget(install,fonts.alias,$(INSTDATFLAGS),dest)
  4318. #endif /* InstallFontAliases */
  4319.  
  4320. #ifndef InstallNamedFontAliases
  4321. #define InstallNamedFontAliases(src,dest)                @@\
  4322. InstallNamedTarget(install,src,$(INSTDATFLAGS),dest,fonts.alias)
  4323. #endif /* InstallNamedFontAliases */
  4324.  
  4325. #ifndef FontSrc
  4326. #define FontSrc(basename) basename.bdf
  4327. #endif
  4328.  
  4329. #ifndef FontBaseObj
  4330. #define FontBaseObj(basename)basename.pcf
  4331. #endif
  4332.  
  4333. /*
  4334.  * InstallFontScale - generate rules to install font scale database.
  4335.  */
  4336. #ifndef InstallFontScale
  4337. #define InstallFontScale(dest)                        @@\
  4338. InstallTarget(install,fonts.scale,$(INSTDATFLAGS),dest)
  4339. #endif /* InstallFontScale */
  4340.  
  4341. /*
  4342.  * UncompressedFontTargetLong
  4343.  */
  4344. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4345. # ifndef UncompressedFontTargetLong
  4346. #  define UncompressedFontTargetLong(sname,tname)            @@\
  4347. FontBaseObj(tname):  FontSrc(sname)                    @@\
  4348.     RunProgram(FONTC,$(FONTCFLAGS) $? -o $@)
  4349. # endif /* UncompressedFontTargetLong */
  4350. #else
  4351. # ifndef UncompressedFontTargetLong
  4352. #  define UncompressedFontTargetLong(sname,tname)
  4353. # endif
  4354. #endif
  4355.  
  4356. /*
  4357.  * CompressedFontTarget
  4358.  */
  4359. #ifndef GzipFontCompression
  4360. #define GzipFontCompression NO
  4361. #endif
  4362.  
  4363. #if ! CrossCompiling || UseInstalledOnCrossCompile
  4364. # ifndef CompressedFontTargetLong
  4365. #  if GzipFontCompression
  4366. #   define CompressedFontTargetLong(sname,tname)            @@\
  4367. FontBaseObj(tname).gz:  FontSrc(sname)                    @@\
  4368.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(GZIPCMD) > $@
  4369. #  else
  4370. #   define CompressedFontTargetLong(sname,tname)            @@\
  4371. FontBaseObj(tname).Z:  FontSrc(sname)                    @@\
  4372.     RunProgram(FONTC,$(FONTCFLAGS) $?) | $(COMPRESS) > $@
  4373. #  endif
  4374. # endif /* CompressedFontTargetLong */
  4375. #else
  4376. #   define CompressedFontTargetLong(sname,tname)
  4377. #endif
  4378.  
  4379. /*
  4380.  * UncompressedFontTarget
  4381.  */
  4382. #ifndef UncompressedFontTarget
  4383. #define UncompressedFontTarget(basename) UncompressedFontTargetLong(basename,basename)
  4384. #endif /* UncompressedFontTarget */
  4385.  
  4386. #ifndef CompressedFontTarget
  4387. #define CompressedFontTarget(basename) CompressedFontTargetLong(basename,basename)
  4388. #endif /* CompressedFontTarget */
  4389.  
  4390. #if !defined(FontTarget) && !defined(FontObj)
  4391. #if CompressAllFonts
  4392. #define FontTargetLong(sname,tname) CompressedFontTargetLong(sname,tname)
  4393. #define FontTarget(basename) CompressedFontTarget(basename)
  4394. #if GzipFontCompression
  4395. #define FontObj(basename) FontBaseObj(basename).gz
  4396. #else
  4397. #define FontObj(basename) FontBaseObj(basename).Z
  4398. #endif
  4399. #else
  4400. #define FontTargetLong(sname,tname) UncompressedFontTargetLong(sname,tname)
  4401. #define FontTarget(basename) UncompressedFontTarget(basename)
  4402. #define FontObj(basename) FontBaseObj(basename)
  4403. #endif /* CompressAllFonts */
  4404. #endif
  4405.  
  4406.  
  4407. #ifndef EncObj
  4408. #define EncObj(basename) basename.enc
  4409. #endif
  4410. #ifndef EncObjComp
  4411. #if GzipFontCompression
  4412. #define EncObjComp(basename) basename.enc.gz
  4413. #else
  4414. #define EncObjComp(basename) basename.enc.Z
  4415. #endif
  4416. #endif
  4417.  
  4418. #ifndef EncodingTarget
  4419. #define EncodingTarget(basename) /**/
  4420. #endif
  4421.  
  4422. #ifndef CompEncodingTarget
  4423. #if GzipFontCompression
  4424. #define CompEncodingTarget(basename)                    @@\
  4425. EncObjComp(basename): EncObj(basename)                    @@\
  4426.     cat $? | $(GZIPCMD) > $@
  4427. #else
  4428. #define CompEncodingTarget(basename)                    @@\
  4429. EncObjComp(basename): EncObj(basename)                    @@\
  4430.     cat $? | $(COMPRESS) > $@
  4431. #endif
  4432. #endif
  4433.  
  4434. #ifndef MakeEncDir
  4435. # if !CrossCompiling || UseInstalledOnCrossCompile
  4436. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4437. AllTarget(encodings.dir)                        @@\
  4438.                                     @@\
  4439. encodings.dir: deplist                            @@\
  4440.     RemoveFiles(encodings.dir fonts.dir)                @@\
  4441.     @(E=; for i in dirlist; do \                    @@\
  4442.        E="$$E -e $$i"; done; \                    @@\
  4443.      set -x; \                            @@\
  4444.      RunProgram(MKFONTDIR, -n -r -p inst/ $$E .))            @@\
  4445.                                     @@\
  4446. clean::                                    @@\
  4447.     RemoveFiles(fonts.dir encodings.dir)
  4448. # else
  4449. #  define MakeEncDir(deplist,inst,dirlist )                @@\
  4450. clean::                                    @@\
  4451.     RemoveFiles(fonts.dir encodings.dir)
  4452. # endif
  4453. #endif
  4454.  
  4455. #ifndef MakeEncodings
  4456. #define MakeEncodings(deplist,inst,dirlist)                @@\
  4457.                                     @@\
  4458. MakeEncDir(deplist $(OBJS),inst,dirlist)                @@\
  4459.                                     @@\
  4460. clean::                                    @@\
  4461.     RemoveFiles(*.enc.Z *.enc.gz)
  4462. #endif /* MakeEncodings */
  4463.  
  4464. #ifndef InstallEncObjs
  4465. # if !CrossCompiling || UseInstalledOnCrossCompile
  4466. #  define InstallEncObjs(objs,dest)                    @@\
  4467. InstallMultipleFlags(objs,dest,$(INSTDATFLAGS))                @@\
  4468.                                     @@\
  4469. InstallTarget(install,encodings.dir,$(INSTDATFLAGS),dest)
  4470. # else
  4471. #  define InstallEncObjs(objs,dest)
  4472. # endif
  4473. #endif /* InstallEncObjs */
  4474.  
  4475. #ifndef InstallEncodings
  4476. #define InstallEncodings(dest)                        @@\
  4477. InstallEncObjs($(OBJS),dest)
  4478. #endif /* InstallEncodings */
  4479.  
  4480. #ifndef InstallEncodingsDir
  4481. # if !CrossCompiling || UseInstalledOnCrossCompile
  4482. #  define InstallEncodingsDir(edir,fdir)                @@\
  4483. InstallNamedTarget(install,edir/encodings.dir,$(INSTDATFLAGS),fdir,encodings.dir)
  4484. # else
  4485. #  define InstallEncodingsDir(edir,fdir)
  4486. # endif
  4487. #endif
  4488.  
  4489.  
  4490. #ifndef MakeBdfFontFromUCSMaster
  4491. #define MakeBdfFontFromUCSMaster(font,enc)                @@\
  4492. font-enc.bdf: font.bdf $(UCS2ANY)                    @@\
  4493.     RemoveFile($@)                            @@\
  4494.     $(UCS2ANY) font.bdf $(UCSMAPPREFIX)enc enc            @@\
  4495.                                     @@\
  4496. clean::                                    @@\
  4497.     RemoveFile(font-enc.bdf)
  4498. #endif
  4499.  
  4500. #ifndef MakeTruncatedUCSBdfFont
  4501. #if HasPerl5
  4502. #define MakeTruncatedUCSBdfFont(font,trunc,name)            @@\
  4503. name.bdf: font.bdf $(BDFTRUNCATE)                    @@\
  4504.     RemoveFile($@)                            @@\
  4505.     RunPerlScript($(BDFTRUNCATE),trunc < font.bdf > name.bdf)    @@\
  4506.                                     @@\
  4507. clean::                                    @@\
  4508.     RemoveFile(name.bdf)
  4509. #endif
  4510. #endif
  4511.  
  4512. /* 
  4513.  * InstallXpPMFLink - install link for a Xprint PMF "font" from one
  4514.  * print model to another
  4515.  */
  4516. #ifndef InstallXpPMFLink
  4517. #define InstallXpPMFLink(fontfilename,srcmodelfontdir,destmodelfontdir)                @@\
  4518.     InstallLink(install,srcmodelfontdir/fontfilename,fontfilename,destmodelfontdir)
  4519. #endif /* InstallXpPMFLink */
  4520. /* 
  4521.  * InstallXpMultiplePMFLinks - install multiple links for PMF fonts
  4522.  * from one print model to another
  4523.  */
  4524. #ifndef InstallXpMultiplePMFLinks
  4525. #define InstallXpMultiplePMFLinks(list,srcmodelfontdir,destmodelfontdir)            @@\
  4526. install::                                            @@\
  4527.     MakeDir($(DESTDIR)destmodelfontdir)                            @@\
  4528.     for i in list ; do \                                    @@\
  4529.         $(RM) $(DESTDIR)destmodelfontdir/$$i ; \                        @@\
  4530.         $(LN) -s -f srcmodelfontdir/$$i $(DESTDIR)destmodelfontdir/$$i ; \            @@\
  4531.     done
  4532. #endif /* InstallXpPMFLink */
  4533.  
  4534. /*
  4535.  * InstallXpPMFFontsDir - make and install a fonts.dir index for model-config fonts
  4536.  */
  4537. #ifndef InstallXpPMFFontsDir
  4538. #if BuildServersOnly
  4539. #define InstallXpPMFFontsDir(destmodelfontdir) /**/
  4540. #else
  4541. #define InstallXpPMFFontsDir(destmodelfontdir)            @@\
  4542. install::                            @@\
  4543.     ($(MKFONTSCALE) -b -s -l $(DESTDIR)destmodelfontdir)
  4544. #endif
  4545. #endif /* InstallXpPMFFontsDir */
  4546.  
  4547.  
  4548. /*
  4549.  * MakeXkbDir
  4550.  */
  4551. #ifndef MakeXkbDir
  4552. # if !CrossCompiling || UseInstalledOnCrossCompile
  4553. #  define MakeXkbDir(basedir,subdir)                    @@\
  4554. all::   Concat(subdir,.dir)                        @@\
  4555.                                     @@\
  4556. Concat(subdir,.dir):                            @@\
  4557.     RemoveFile(Concat(subdir,.dir))                    @@\
  4558.     $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) '*'        @@\
  4559.                                     @@\
  4560. InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)    @@\
  4561.                                     @@\
  4562. clean::                                    @@\
  4563.     RemoveFile(Concat(subdir,.dir))
  4564. # else
  4565. #  define MakeXkbDir(basedir,subdir)                    @@\
  4566. clean::                                    @@\
  4567.     RemoveFile(Concat(subdir,.dir))
  4568. # endif
  4569. #endif
  4570.  
  4571. /*
  4572.  * PostProcessTroffPS - by default moves the working output into place,
  4573.  * but can be a hook for more complicated post-processing.
  4574.  */
  4575. #ifndef PostProcessTroffPS
  4576. #define PostProcessTroffPS(temp,real) $(MV) temp real
  4577. #endif
  4578.  
  4579. /*
  4580.  * PostProcessTroffHTML - by default moves the working output into place,
  4581.  * but can be a hook for more complicated post-processing.
  4582.  */
  4583. #ifndef PostProcessTroffHTML
  4584. #define PostProcessTroffHTML(temp,real) $(MV) temp real
  4585. #endif
  4586.  
  4587. #ifdef HTMLroffCmd
  4588. #define HtmlTarget(file) file.html
  4589. #define HtmlClean(file) file.nhtml file.html file*.png
  4590. #else
  4591. #define HtmlTarget(file) /**/
  4592. #define HtmlClean(file) /**/
  4593. #endif
  4594.  
  4595. #ifdef PsToPdfCmd
  4596. #define PdfTarget(file) file.pdf
  4597. #define PdfClean(file) file.pdf
  4598. #else
  4599. #define PdfTarget(file) /**/
  4600. #define PdfClean(file) /**/
  4601. #endif
  4602.  
  4603. #ifndef ConvertPsToPdf
  4604. #ifdef PsToPdfCmd
  4605. #define ConvertPsToPdf(file)                        @@\
  4606. file.pdf: file.ps                            @@\
  4607.     RemoveFile(file.pdf)                        @@\
  4608.     $(PSTOPDFCMD) < file.ps > file.pdf
  4609. #else
  4610. #define ConvertPsToPdf(file) /**/
  4611. #endif
  4612. #endif
  4613.  
  4614. #if HasPdfLatex
  4615. #define PdfLatexTarget(file) file.pdf
  4616. #define PdfLatexClean(file) file.pdf
  4617. #else
  4618. #define PdfLatexTarget(file) /**/
  4619. #define PdfLatexClean(file) /**/
  4620. #endif
  4621.  
  4622. #ifndef LatexToPdf
  4623. #if HasPdfLatex && defined(PdfLatexCmd)
  4624. #define LatexToPdf(file)                        @@\
  4625. file.pdf: file.tex                            @@\
  4626.     RemoveFile(file.pdf)                        @@\
  4627.     $(PDFLATEXCMD) file.tex
  4628. #else
  4629. #define LatexToPdf(file) /**/
  4630. #endif
  4631. #endif
  4632.  
  4633.  
  4634. #ifndef MakeDepSimpleHtmlDoc
  4635. #ifdef HTMLroffCmd
  4636. #define MakeDepSimpleHtmlDoc(file,deps,srcs)                @@\
  4637. HtmlTarget(file): deps                            @@\
  4638.     $(HTMLROFF) $(MSMACROS) $(XDOCMACROS) Concat(-P-I,file) srcs \        @@\
  4639.         2> index.raw > file.nhtml \                @@\
  4640.       && PostProcessTroffHTML(file.nhtml,$@)
  4641. #else
  4642. #define MakeDepSimpleHtmlDoc(file,deps,srcs) /**/
  4643. #endif
  4644. #endif
  4645.  
  4646. #ifndef MakeTblHtmlDoc
  4647. #ifdef HTMLroffCmd
  4648. #define MakeTblHtmlDoc(file,srcs)                    @@\
  4649. file.html: srcs                                @@\
  4650.     $(TBL) $(XDOCMACROS) srcs | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \    @@\
  4651.         2> index.raw > file.nhtml \                @@\
  4652.       && PostProcessTroffHTML(file.nhtml,$@)
  4653. #else
  4654. #define MakeTblHtmlDoc(file,srcs) /**/
  4655. #endif
  4656. #endif
  4657.  
  4658. #ifndef MakeEqnHtmlDoc
  4659. #ifdef HTMLroffCmd
  4660. #define MakeEqnHtmlDoc(file,srcs)                    @@\
  4661. file.html: srcs                                @@\
  4662.     $(TBL) $(XDOCMACROS) srcs | $(EQN) | $(HTMLROFF) $(MSMACROS) Concat(-P-I,file) \ @@\
  4663.         2> index.raw > file.nhtml \                @@\
  4664.       && PostProcessTroffHTML(file.nhtml,$@)
  4665. #else
  4666. #define MakeEqnHtmlDoc(file,srcs) /**/
  4667. #endif
  4668. #endif
  4669.  
  4670.  
  4671. #ifndef MakeDepSimpleDoc
  4672. #define MakeDepSimpleDoc(file,deps,srcs)                @@\
  4673. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4674. .PRECIOUS: file.ps                            @@\
  4675.                                     @@\
  4676. file.ps: deps                                @@\
  4677.     -$(TROFF) $(MSMACROS) $(XDOCMACROS) srcs \            @@\
  4678.         2> index.raw > file.nps \                @@\
  4679.     && PostProcessTroffPS(file.nps,$@)                @@\
  4680.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4681.         else test $$? -le 1; fi                    @@\
  4682.                                     @@\
  4683. file.txt: deps                                @@\
  4684.     $(NROFF) $(MSMACROS) $(XDOCMACROS) srcs 2> index.raw | \    @@\
  4685.          $(COL) $(COLFLAGS) > $@                @@\
  4686.                                     @@\
  4687. MakeDepSimpleHtmlDoc(file,deps,srcs)                    @@\
  4688.                                     @@\
  4689. ConvertPsToPdf(file)                            @@\
  4690.                                     @@\
  4691. clean::                                    @@\
  4692.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4693. #endif
  4694.  
  4695. #ifndef MakeSimpleDoc
  4696. #define MakeSimpleDoc(file,srcs) MakeDepSimpleDoc(file,srcs,srcs)
  4697. #endif
  4698.  
  4699. #ifndef MakeTblDoc
  4700. #define MakeTblDoc(file,srcs)                        @@\
  4701. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4702. .PRECIOUS: file.ps                            @@\
  4703.                                     @@\
  4704. file.ps: srcs                                @@\
  4705.     -$(TBL) $(XDOCMACROS) srcs | $(TROFF) $(MSMACROS) \        @@\
  4706.         2> index.raw > file.nps \                @@\
  4707.     && PostProcessTroffPS(file.nps,$@)                @@\
  4708.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4709.         else test $$? -le 1; fi                    @@\
  4710.                                     @@\
  4711. file.txt: srcs                                @@\
  4712.     $(TBL) $(XDOCMACROS) srcs | $(NROFF) $(MSMACROS) 2> index.raw \    @@\
  4713.         | $(COL) $(COLFLAGS) > $@                @@\
  4714.                                     @@\
  4715. MakeTblHtmlDoc(file,srcs)                        @@\
  4716.                                     @@\
  4717. ConvertPsToPdf(file)                            @@\
  4718.                                     @@\
  4719. clean::                                    @@\
  4720.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4721. #endif
  4722.  
  4723. #ifndef MakeEqnDoc
  4724. #define MakeEqnDoc(file,srcs)                        @@\
  4725. all:: file.ps file.txt HtmlTarget(file) PdfTarget(file)            @@\
  4726. .PRECIOUS: file.ps                            @@\
  4727.                                     @@\
  4728. file.ps: srcs                                @@\
  4729.     -$(TBL) $(XDOCMACROS) srcs | $(EQN) | $(TROFF) $(MSMACROS) \    @@\
  4730.         2> index.raw > file.nps \                @@\
  4731.     && PostProcessTroffPS(file.nps,$@)                @@\
  4732.     @if grep '^[^1-9.]' index.raw | grep -v warning; then exit 1; \    @@\
  4733.         else test $$? -le 1; fi                    @@\
  4734.                                     @@\
  4735. file.txt: srcs                                @@\
  4736.     $(TBL) $(XDOCMACROS) srcs | $(NEQN) | $(NROFF) $(MSMACROS) \    @@\
  4737.         2> index.raw | $(COL) $(COLFLAGS) > $@            @@\
  4738.                                     @@\
  4739. MakeEqnHtmlDoc(file,srcs)                        @@\
  4740.                                     @@\
  4741. ConvertPsToPdf(file)                            @@\
  4742.                                     @@\
  4743. clean::                                    @@\
  4744.     $(RM) index.raw file.nps file.ps file.txt HtmlClean(file) PdfClean(file)
  4745. #endif
  4746.  
  4747. #ifndef MakeDocIndex
  4748. #define MakeDocIndex(file,srcs)                        @@\
  4749. all:: file.idx.ps                            @@\
  4750.                                     @@\
  4751. file.idx.ps: srcs index.raw                        @@\
  4752.     sed -n '$$p' index.raw > index.pageno                @@\
  4753.     grep '^[1-9]' index.raw | \                    @@\
  4754.         (sort -f '-t:' -k2,2 -k1,1n 2>/dev/null || \        @@\
  4755.          sort -f '-t:' +1 -3 +0n -1n) | \            @@\
  4756.         awk -f $(DOCUTILSRC)/fixindex.awk | \            @@\
  4757.         awk -f $(DOCUTILSRC)/block.awk > index.troff        @@\
  4758.     cat srcs $(XIDXMACROS) index.troff | \                @@\
  4759.         $(TROFF) -me > file.idx.nps && \            @@\
  4760.         $(MV) file.idx.nps $@                    @@\
  4761.     $(RM) index.troff index.pageno                    @@\
  4762.                                     @@\
  4763. clean::                                    @@\
  4764.     $(RM) index.troff index.pageno file.idx.nps file.idx.ps
  4765. #endif
  4766.  
  4767. #ifndef MakeLatexDoc
  4768. #if HasLatex
  4769. #define MakeLatexDoc(file,src)                        @@\
  4770. all:: file.ps PdfLatexTarget(file)                    @@\
  4771.                                     @@\
  4772. file.dvi: src                                @@\
  4773.     $(LATEX) src                            @@\
  4774.                                     @@\
  4775. file.ps: file.dvi                            @@\
  4776.     $(DVIPS) -o file.nps file && $(MV) file.nps $@            @@\
  4777.                                     @@\
  4778. LatexToPdf(file)                            @@\
  4779.                                     @@\
  4780. clean::                                    @@\
  4781.     RemoveFiles(file.nps file.ps file.dvi file.log)            @@\
  4782.     RemoveFiles(file.aux file.toc file.lof file.lot)        @@\
  4783.     $(RM) PdfLatexClean(file)
  4784. #else /* HasLatex */
  4785. #define MakeLatexDoc(file,src)                        @@\
  4786. all::                                    @@\
  4787. file.ps: src                                @@\
  4788.     @echo "cannot make file.ps: no latex on this system"; exit 1
  4789. #endif /* HasLatex (else) */
  4790. #endif /* MakeLatexDoc */
  4791.  
  4792. #ifndef InstallDoc
  4793. #define InstallDoc(name,deps)                        @@\
  4794. install:: deps                                @@\
  4795.     MakeDir($(DESTDIR)$(DOCPSDIR))                    @@\
  4796.     @if [ -f name.ps -a X$(NOPS) = X ]; then set -x; \        @@\
  4797.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.ps \        @@\
  4798.         $(DESTDIR)$(DOCPSDIR); \                @@\
  4799.     fi ; RemoveOldFile(name.ps,name.PS,$(DOCPSDIR))            @@\
  4800.     MakeDir($(DESTDIR)$(DOCDIR))                    @@\
  4801.     @if [ -f name.txt -a X$(NOTXT) = X ]; then set -x; \        @@\
  4802.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.txt \        @@\
  4803.         $(DESTDIR)$(DOCDIR); \                    @@\
  4804.     fi ; RemoveOldFile(name.txt,name.TXT,$(DOCDIR))            @@\
  4805.     MakeDir($(DESTDIR)$(DOCHTMLDIR))                @@\
  4806.     @if [ -f name.html -a X$(NOHTML) = X ]; then (set -x; \        @@\
  4807.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.html \    @@\
  4808.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4809.       for i in name*.png; do \                    @@\
  4810.         if [ -f $$i ]; then (set -x; \                @@\
  4811.           $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $$i \        @@\
  4812.         $(DESTDIR)$(DOCHTMLDIR)); \                @@\
  4813.         fi; \                            @@\
  4814.       done; \                            @@\
  4815.     fi                                @@\
  4816.     MakeDir($(DESTDIR)$(DOCPDFDIR))                    @@\
  4817.     @if [ -f name.pdf -a X$(NOPDF) = X ]; then set -x; \        @@\
  4818.       $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) name.pdf \        @@\
  4819.         $(DESTDIR)$(DOCPDFDIR); \                @@\
  4820.     fi
  4821. #endif
  4822.  
  4823. #ifndef InstallRoffDoc
  4824. #define InstallRoffDoc(name) InstallDoc(name,name.ps name.txt)
  4825. #endif
  4826.  
  4827. #ifndef InstallLatexDoc
  4828. #if HasLatex
  4829. #define InstallLatexDoc(name) InstallDoc(name,name.ps)
  4830. #else
  4831. #define InstallLatexDoc(name)
  4832. #endif
  4833. #endif
  4834.  
  4835. #ifndef LinkHardcopyPS
  4836. # if CaseSensitiveFileSystem
  4837. #  define LinkHardcopyPS(name)                          \
  4838.     @if [ -f name.PS ]; then set -x; \                @@\
  4839.       RemoveFile(name.ps); \                    @@\
  4840.       $(LN) name.PS name.ps; \                    @@\
  4841.     fi
  4842. # else
  4843. #  define LinkHardcopyPS(name)
  4844. # endif
  4845. #endif
  4846.  
  4847.  
  4848. #ifndef InstallHardcopyDoc
  4849. #define InstallHardcopyDoc(name,deps)                    @@\
  4850. all:: name.ps PdfTarget(name)                        @@\
  4851.                                     @@\
  4852. name.ps: deps                                @@\
  4853.     @if [ -f name.PS.gz ]; then set -x; \                @@\
  4854.       RemoveFile(name.ps); \                    @@\
  4855.       gzip -d < name.PS.gz > name.ps; \                @@\
  4856.     fi                                @@\
  4857.     LinkHardcopyPS(name)                        @@\
  4858.                                     @@\
  4859. ConvertPsToPdf(name)                            @@\
  4860.                                     @@\
  4861. clean::                                    @@\
  4862.     $(RM) name.ps PdfClean(name)                    @@\
  4863.                                     @@\
  4864. InstallDoc(name,deps)
  4865. #endif
  4866.  
  4867. /*
  4868.  * Rule for maintainers to use to updated generated copies of fonts in the
  4869.  * source tree.  Use with care.
  4870.  */
  4871.  
  4872. #ifndef UpdateDerivedFont
  4873. #define UpdateDerivedFont(src,dst)                    @@\
  4874. update.fonts:: src                            @@\
  4875.     -@if [ -f dst ]; then \                        @@\
  4876.         if [ "$(FORCEUPDATE)" = yes ]; then \            @@\
  4877.         if [ "$(FOLLOWLINK)" = no ]; then \            @@\
  4878.             (set -x; $(RM) dst); \                @@\
  4879.         fi; \                            @@\
  4880.         set -x; cp src dst; \                    @@\
  4881.         else \                            @@\
  4882.         grep -v "XFree86:" src > __tmp1__; \            @@\
  4883.         grep -v "XFree86:" dst > __tmp2__; \            @@\
  4884.         if diff __tmp1__ __tmp2__ > /dev/null 2>&1; then :; \    @@\
  4885.         else \                            @@\
  4886.             if [ "$(FOLLOWLINK)" = no ]; then \        @@\
  4887.                 (set -x; $(RM) dst); \            @@\
  4888.             fi; \                        @@\
  4889.             set -x; cp src dst; \                    @@\
  4890.         fi; \                            @@\
  4891.         fi; \                            @@\
  4892.     fi                                @@\
  4893.     @$(RM) __tmp1__ __tmp2__
  4894. #endif
  4895.  
  4896. #if !HasFreetype2
  4897.       FT2PRELOADPATTERN = libfreetype.so.?
  4898. #endif
  4899. #if !HasFontconfig
  4900.        FCPRELOADPATTERN = libfontconfig.so.?
  4901. #endif
  4902.       XFTPRELOADPATTERN = libXft.so.?
  4903.   XRENDERPRELOADPATTERN = libXrender.so.?
  4904.     XFONTPRELOADPATTERN = libXfont*.so.?
  4905.  
  4906.