home *** CD-ROM | disk | FTP | other *** search
/ PC World 2000 February / PCWorld_2000-02_cd.bin / live / usr / X11R6 / lib / X11 / config / NetBSD.cf < prev    next >
Text File  |  1999-09-03  |  10KB  |  384 lines

  1. XCOMM platform:  $XConsortium: NetBSD.cf /main/16 1996/10/31 14:47:14 kaleb $
  2.  
  3.  
  4.  
  5. XCOMM platform:  $XFree86: xc/config/cf/NetBSD.cf,v 3.49.2.12 1998/12/22 11:23:02 hohndel Exp $
  6.  
  7.  
  8. #ifndef OSName
  9. #define OSName            DefaultOSName OSBinaryType
  10. #endif
  11. #ifndef OSMajorVersion
  12. #define OSMajorVersion        DefaultOSMajorVersion
  13. #endif
  14. #ifndef OSMinorVersion
  15. #define OSMinorVersion        DefaultOSMinorVersion
  16. #endif
  17. #ifndef OSTeenyVersion
  18. #define OSTeenyVersion        DefaultOSTeenyVersion
  19. #endif
  20.  
  21. #ifndef OSVendor
  22. #define    OSVendor        The NetBSD Foundation, Inc.
  23. #endif
  24.  
  25. XCOMM operating system:  OSName (OSMajorVersion./**/OSMinorVersion./**/OSTeenyVersion)
  26.  
  27. /*
  28.  * C library features
  29.  */
  30. #if ((OSMajorVersion > 1) || \
  31.      (OSMajorVersion == 1 && OSMinorVersion > 2) || \
  32.      (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1))
  33. # define HasPoll        YES
  34. #endif
  35. #define HasNdbm             YES
  36. #define HasPutenv           YES
  37. #define HasSnprintf        YES
  38. #define HasBSD44Sockets     YES
  39. #define Malloc0ReturnsNull    NO
  40. #define SetTtyGroup         YES
  41. #define DBMLibrary        /**/
  42. #ifndef HasLibCrypt
  43. # define HasLibCrypt        YES
  44. #endif
  45. #ifndef HasShm
  46. # if OSMajorVersion == 0 && OSMinorVersion == 9 && OSTeenyVersion == 2
  47. /*
  48.  * Shm memory was removed in 0.9B because it was encumbered.
  49.  * A free version was added in 0.9C
  50.  */
  51. #  define HasShm              NO
  52. # else
  53. #  define HasShm              YES
  54. # endif
  55. #endif
  56. #define HasWChar32        YES
  57. /*
  58.  * There's a bug in NetBSD 1.0, 1.1 and 1.2 dlsym()
  59.  */
  60. #if ((OSMajorVersion == 1 && OSMinorVersion < 2) || \
  61.      (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion < 2))
  62. #  define HasDlsymBug        YES
  63. #endif
  64. /* Mkstemp is there since 1.2 (at least) */
  65. #if (!(OSMajorVersion == 0 || \
  66.        (OSMajorVersion == 1 && OSMinorVersion < 2))) 
  67. #define HasMkstemp        YES
  68. #endif
  69. /*
  70.  * Compiler Features
  71.  */
  72. #undef HasGcc
  73. #define HasGcc            YES
  74. #define HasGcc2            YES
  75. #ifndef HasGcc2ForCplusplus
  76. #define HasGcc2ForCplusplus    YES
  77. #endif
  78. #define GccUsesGas        YES
  79. #define UseGas            YES
  80. #define GnuCpp            YES
  81.  
  82. #define NeedConstPrototypes    YES
  83. #define NeedFunctionPrototypes    YES
  84. #define NeedNestedPrototypes    YES
  85. #define NeedVarargsPrototypes    YES
  86. #define NeedWidePrototypes    NO
  87.  
  88. #define MkdirHierCmd        mkdir -p
  89.  
  90. #define CppCmd              /usr/libexec/cpp
  91. #define StandardCppDefines    -traditional
  92. #define PreProcessCmd       CppCmd
  93. #define PreIncDir        /usr/include
  94.  
  95. #undef CcCmd
  96. #define CcCmd             gcc
  97. #if defined(UseInstalled) && (!defined(XF86LinkKit) || !XF86LinkKit)
  98. #define DefaultCCOptions     /**/
  99. #else
  100. #define DefaultCCOptions     -ansi -Dasm=__asm
  101. #endif
  102.  
  103. #define GccGasOption         -DGCCUSESGAS
  104. #define AsmDefines         -DUSE_GAS
  105.  
  106. /* UseElfFormat defaults to YES if __ELF__ set */
  107. #ifndef UseElfFormat
  108. # ifdef __ELF__
  109. #  undef __ELF__            /* other imake files shouldn't care */
  110. #  define UseElfFormat YES
  111. # else
  112. #  define UseElfFormat NO
  113. # endif
  114. #endif
  115.  
  116. /*
  117.  * Dynamic loading supported starting in 1.0 on a.out platforms,
  118.  * and on all ELF platforms.
  119.  *
  120.  * XXX May not be correct on NetBSD/pmax (ELF, but might not have
  121.  * working shared libs).
  122.  */
  123. #if ((OSMajorVersion > 0) && \
  124.      !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \
  125.     UseElfFormat
  126. # ifndef BuildDynamicLoading
  127. # define BuildDynamicLoading    YES
  128. # endif
  129. #endif
  130.  
  131. #if UseElfFormat
  132. #define DlLibrary        -rdynamic /* no -ldl yet */
  133. #else
  134. #define DlLibrary        /**/
  135. #endif
  136.  
  137. #ifdef i386Architecture
  138. # ifndef DefaultGcc2i386Opt
  139. #  if OSMajorVersion > 1 || (OSMajorVersion == 1 && OSMinorVersion > 2)
  140.     /* The GCC strength-reduce bug is fixed for NetBSD 1.3 and later */
  141. #   define DefaultGcc2i386Opt -O2
  142. #  endif
  143. # endif
  144. # define OptimizedCDebugFlags     DefaultGcc2i386Opt
  145. # if OSMajorVersion < 1
  146. #  define ServerOSDefines    XFree86ServerOSDefines -DDDXTIME -DXNO_SYSCONF
  147. # else
  148. #  define ServerOSDefines    XFree86ServerOSDefines -DDDXTIME
  149. # endif
  150. # if OSMajorVersion == 1 && OSMinorVersion >= 1 || OSMajorVersion >= 2
  151. #  define ServerExtraSysLibs    -li386 DlLibrary
  152. # endif
  153. #else
  154. # define OptimizedCDebugFlags     -O2
  155. # if defined(SparcArchitecture) || defined(AlphaArchitecture)
  156. #  define ServerOSDefines     -DDDXOSINIT
  157. # else
  158. #  define ServerOSDefines     /**/
  159. # endif
  160. # if BuildDynamicLoading
  161. #  define ServerExtraSysLibs    DlLibrary
  162. # else
  163. #  define ServerExtraSysLibs    /**/
  164. # endif
  165. #endif
  166. #ifdef i386Architecture
  167. # define ServerExtraDefines GccGasOption XFree86ServerDefines
  168. # ifndef XFree86ConsoleDefines
  169. #  define XFree86ConsoleDefines -DPCCONS_SUPPORT -DPCVT_SUPPORT
  170. # endif
  171. #else
  172. # if defined(AlphaArchitecture)
  173. #  define ServerExtraDefines GccGasOption -D_XSERVER64
  174. # else
  175. #  define ServerExtraDefines GccGasOption
  176. # endif
  177. #endif
  178.  
  179. #define StandardDefines    -DCSRG_BASED
  180. #define XawI18nDefines    -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
  181.  
  182. #ifndef ExtraLibraries
  183. #define ExtraLibraries        /**/
  184. #endif
  185. #ifndef UseGnuMalloc
  186. #  define UseGnuMalloc        YES
  187. #endif
  188. #ifndef GnuMallocLibrary
  189. #define GnuMallocLibrary    -lgnumalloc
  190. #endif
  191.  
  192. #if ((OSMajorVersion > 1) || \
  193.      (OSMajorVersion == 1 && OSMinorVersion > 2) || \
  194.      (OSMajorVersion == 1 && OSMinorVersion == 2 && OSTeenyVersion > 1))
  195. #ifndef HasZlib
  196. #define HasZlib              YES
  197. #endif
  198. #endif 
  199.  
  200. #define    AdmDir            /var/log
  201.  
  202. /*
  203.  * Make & install Features
  204.  */
  205. #define HasBsdMake        YES
  206. #define StripInstalledPrograms    YES
  207. #define CompressAllFonts    YES
  208. #define GzipFontCompression    YES
  209. #define DefaultUserPath        /bin:/usr/bin:/usr/local/bin:$(BINDIR)
  210. #define DefaultSystemPath    /sbin:/usr/sbin:/bin:/usr/bin:$(BINDIR)
  211.  
  212. #ifdef  InstallCmd
  213. # undef  InstallCmd
  214. # define InstallCmd         /usr/bin/install
  215. #endif
  216.  
  217. #ifndef ExtraFilesToClean
  218. # define ExtraFilesToClean     *.core
  219. #endif
  220.  
  221. /*
  222.  * Documentation formatting
  223.  */
  224. #define NeqnCmd            neqn -Tlatin1
  225. #define NroffCmd        nroff -Tlatin1
  226. #define    EqnCmd             eqn -Tps
  227. #define TroffCmd            groff -Tps
  228.  
  229. /*
  230.  * To use the NetBSD Aperture driver
  231.  */
  232. #if defined(i386Architecture)
  233. #ifndef HasNetBSDApertureDriver
  234. #define HasNetBSDApertureDriver    YES
  235. #endif
  236. #endif
  237.  
  238. /*
  239.  * ForceSubdirs - force make to build subdirectories
  240.  * 
  241.  * For BSD 4.4 make 
  242.  */
  243. #define ForceSubdirs(dirs)                        @@\
  244. dirs:    .EXEC                                @@\
  245.     @cd $@ ; echo "making all in $(CURRENT_DIR)/$@..."; \        @@\
  246.     $(MAKE) $(MFLAGS) PassCDebugFlags all                @@\
  247.                                     @@\
  248. .EXEC:
  249.  
  250. XCOMM Man pages need to be formatted when installed, so override the default
  251. XCOMM imake rules.
  252.  
  253. #define ManSuffix    1
  254. #define FileManSuffix    5
  255. #define ManSourcePath    $(MANPATH)/cat
  256.  
  257. #define InstallManPageLong(file,destdir,dest)                           @@\
  258. all:: file.0                                @@\
  259.                                     @@\
  260. file.0:: file.man                            @@\
  261.     @if [ -f file.man ]; \                        @@\
  262.     then \                                @@\
  263.     cat file.man | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.man; \    @@\
  264.     cp /tmp/$$$$.man file.0; \                    @@\
  265.     $(RM) /tmp/$$$$.man; \                        @@\
  266.     fi                                 @@\
  267.                                     @@\
  268. install.man::                                                           @@\
  269.     MakeDir($(DESTDIR)destdir)                    @@\
  270.     -@if [ -f file.0 ]; \                        @@\
  271.     then \                                @@\
  272.     $(INSTALL) -c $(INSTMANFLAGS) file.0 $(DESTDIR)destdir/dest.0; \@@\
  273.     fi
  274.  
  275. #define InstallGenManPageLong(file,destdir,dest,suffix)            @@\
  276.     InstallManPageLong(file,destdir,dest)
  277.  
  278. #define InstallMultipleManSuffix(list,dest,suff)                        @@\
  279. install.man::                                 @@\
  280.     MakeDir($(DESTDIR)dest)                        @@\
  281.     case '${MFLAGS}' in *[i]*) set +e;; esac; \            @@\
  282.     for i in list; do \                                             @@\
  283.       (set -x; \                            @@\
  284.       cat $$i.suff | $(NEQN) | $(TBL) | $(NROFF) $(MANMACROS) | $(COL) >/tmp/$$$$.suff; \    @@\
  285.       $(INSTALL) -c $(INSTMANFLAGS) /tmp/$$$$.suff $(DESTDIR)dest/$$i.0; \    @@\
  286.       $(RM) /tmp/$$$$.suff); \                        @@\
  287.     done
  288.  
  289. #define InstallMultipleMan(list,dest)                                   @@\
  290.     InstallMultipleManSuffix(list,dest,man)
  291.  
  292. #define InstallManPageAliases(file,destdir,aliases)                     @@\
  293. install.man::                                 @@\
  294.     @case '${MFLAGS}' in *[i]*) set +e;; esac; \                    @@\
  295.     for i in aliases; do \                                          @@\
  296.         (set -x; \                        @@\
  297.         $(RM) $(DESTDIR)destdir/$$i.0;\              @@\
  298.         (cd $(DESTDIR)/destdir; $(LN) file.0 $$i.0);\         @@\
  299.         ); \                            @@\
  300.     done
  301.  
  302. #define InstallGenManPageAliases(file,destdir,suffix,aliases)        @@\
  303.     InstallManPageAliases(file,destdir,aliases)
  304.  
  305. /*
  306.  * Shared libraries supported starting in 1.0 on a.out platforms,
  307.  * and on all ELF platforms.
  308.  *
  309.  * XXX May not be correct on NetBSD/pmax (ELF, but might not have
  310.  * working shared libs).
  311.  */
  312. #if ((OSMajorVersion > 0) && \
  313.      !defined(AlphaArchitecture) && !defined(MipsArchitecture)) || \
  314.     UseElfFormat
  315. # ifndef HasSharedLibraries
  316. # define HasSharedLibraries    YES
  317. # endif
  318. #endif
  319.  
  320. #ifndef OSBinaryType
  321. #if UseElfFormat
  322. #define OSBinaryType    [ELF]
  323. #else
  324. #define OSBinaryType    /**/
  325. #endif
  326. #endif
  327.  
  328. #ifndef HasSharedLibraries
  329. #define HasSharedLibraries    NO
  330. #endif 
  331.  
  332. #if HasSharedLibraries
  333. #include <bsdLib.rules>
  334. #endif /* HasSharedLibraries */
  335.  
  336. #if defined(i386Architecture) || defined(Arm32Architecture)
  337. # include <xfree86.cf>
  338. #endif
  339.  
  340. /*
  341.  * Definitions for the SUN server on NetBSD/sparc
  342.  */
  343. #ifdef SparcArchitecture
  344. #ifndef Xsun24Server
  345. #define Xsun24Server    NO
  346. #endif
  347. #ifndef XsunServer
  348. #define XsunServer    YES
  349. #endif
  350. #ifndef XsunMonoServer
  351. #define XsunMonoServer    YES
  352. #endif
  353. #ifndef BuildScreenSaverLibrary
  354. #define BuildScreenSaverLibrary    YES
  355. #endif
  356. /*
  357.  * XFree86 uses its own (more portable) database routines to speed up 
  358.  * the RGB database lookups
  359.  * However, if you want to use ndbm anyway, you can set that to NO in 
  360.  * site.def
  361.  */
  362. #ifndef UseRgbTxt
  363. #define UseRgbTxt    YES
  364. #endif
  365. #endif
  366.  
  367. /*
  368.  * Definition for compiling on MIPS machines
  369.  */
  370. #ifdef MipsArchitecture
  371. #define PositionIndependentCFlags
  372. #define SharedLibraryLoadFlags -x -shared --whole-archive -soname `echo $@ |
  373. sed 's/\.[0-9]*$$//'`
  374. #define SharedXtReqs $(XLIBONLY) $(SMLIB) $(ICELIB)
  375. #define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XONLYLIB) $(EXTENSIONLIB)
  376. #endif
  377.  
  378. /*
  379.  * Definition for compiling on Alpha machines
  380.  */
  381. #ifdef AlphaArchitecture
  382. #define    BuildServer    NO
  383. #endif
  384.