home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-bin / x11r6.1 / lib / x11 / config / sun.cf < prev    next >
Encoding:
Text File  |  1996-10-17  |  8.0 KB  |  316 lines

  1. XCOMM platform:  $XConsortium: sun.cf /main/151 1996/02/02 18:59:56 gildea $
  2.  
  3. #ifdef SVR4Architecture
  4. #ifdef i386Architecture
  5. #ifndef OSName
  6. #define OSName            SunOS 5.4 x86
  7. #endif
  8. XCOMM operating system:  OSName
  9. #ifndef OSMajorVersion
  10. #define OSMajorVersion    5
  11. #endif
  12. #ifndef OSMinorVersion
  13. #define OSMinorVersion    4
  14. #endif
  15. #ifndef    OSTeenyVersion
  16. #define OSTeenyVersion    0
  17. #endif
  18. #else
  19. #ifndef OSName
  20. #define OSName            SunOS 5.4
  21. #endif
  22. XCOMM operating system:  OSName
  23. #ifndef OSMajorVersion
  24. #define OSMajorVersion    5
  25. #endif
  26. #ifndef OSMinorVersion
  27. #define OSMinorVersion    4
  28. #endif
  29. #ifndef    OSTeenyVersion
  30. #define OSTeenyVersion    0
  31. #endif
  32. #endif
  33. #else
  34. #ifndef OSName
  35. #define OSName            SunOS 4.1.3
  36. #endif
  37. XCOMM operating system:  OSName
  38. #ifndef OSMajorVersion
  39. #define OSMajorVersion    4
  40. #endif
  41. #ifndef OSMinorVersion
  42. #define OSMinorVersion    1
  43. #endif
  44. #ifndef    OSTeenyVersion
  45. #define OSTeenyVersion    3
  46. #endif
  47. #endif
  48.  
  49. /*
  50.  * Compiler setup.  This sun.cf file knows what options to use with 
  51.  * certain compilers, including Sun C, CenterLine C, and gcc.  It 
  52.  * also understands how to set some of the options for various C++
  53.  * compilers, including Sun C++ and CenterLine C++.
  54.  *
  55.  * === C Compiler Setup ==========================================
  56.  *
  57.  * For SunPro C, define HasSunC to YES in site.def.  
  58.  * For CenterLine C, define HasCenterLineC to YES in site.def
  59.  * For gcc or gcc2, define HasGcc or HasGcc2 to YES in site.def
  60.  * For other compilers, define HasSunC to NO in site.def, then 
  61.  *    provide appropriate values for the various compiler related
  62.  *    configuration varibles used here.
  63.  * 
  64.  * If you say you have the SunPro C compiler, we assume you have 
  65.  * version 2.0.x of the compiler.  If you have version 3.0.x instead, 
  66.  * define CCompilerMajorVersion as 3 in site.def
  67.  *
  68.  * If you don't tell us which C compiler you have, we assume you have 
  69.  * the SunPro C compiler under Solaris 2.x, and the bundled /bin/cc 
  70.  * under SunOS 4.1.x
  71.  *
  72.  * === C++ Compiler Setup ==========================================
  73.  *
  74.  * For SunPro C++, define HasSunCplusplus to YES in site.def
  75.  * For CenterLine C++, define HasCenterLineCplusplus to YES in site.def
  76.  * For Gnu g++ 2.6.x, define HasGcc2ForCplusplus to YES in site.def
  77.  * For other compilers, define HasCplusplus to YES in site.def, and 
  78.  *    check to see if you need to provide values for CplusplusOptions
  79.  *    and/or DefaultCplusplusOptions.
  80.  *
  81.  * In any case, you may also need to set CplusplusDependIncludes.
  82.  *
  83.  * If you say you have the SunPro C++ compiler, we assume you have 
  84.  * version 3.0.x of the compiler.  If you have version 4.0.x instead, 
  85.  * define CplusplusCompilerMajorVersion as 4 in site.def.
  86.  *
  87.  */
  88.  
  89. #ifndef HasSunC
  90. #if (HasCenterLineC || HasGcc || HasGcc2 || OSMajorVersion < 5)
  91. #define HasSunC NO
  92. #else
  93. #define HasSunC YES
  94. #endif
  95. #endif
  96.  
  97. #if HasSunC 
  98. #ifndef CCompilerMajorVersion
  99. #define CCompilerMajorVersion 2
  100. #endif
  101. #endif
  102.  
  103. #if HasSunCplusplus
  104. #ifndef HasCplusplus
  105. #define HasCplusplus YES
  106. #endif
  107. #ifndef CplusplusCompilerMajorVersion
  108. #define CplusplusCompilerMajorVersion 3
  109. #endif
  110. #endif
  111.  
  112. #if HasCenterLineC
  113. #ifndef CcCmd
  114. #define CcCmd clcc
  115. #endif
  116. #endif
  117.  
  118. #if HasCenterLineCplusplus
  119. #ifndef HasCplusplus
  120. #define HasCplusplus YES
  121. #endif
  122. #ifndef DefaultCplusplusOptions
  123. #define DefaultCplusplusOptions -Xa
  124. #endif
  125. #ifndef CplusplusOptions
  126. #define CplusplusOptions -Xa
  127. #endif
  128. #endif
  129.  
  130. #if OSMajorVersion < 4 || (OSMajorVersion == 4 && OSMinorVersion < 1)
  131. /* We do not guarantee this will work */
  132. #define BootstrapCFlags   -DNOSTDHDRS
  133. #define StandardDefines   -DNOSTDHDRS
  134. #define XawI18nDefines     -DUSE_XWCHAR_STRING -DUSE_XMBTOWC
  135. #endif
  136.  
  137. #if OSMajorVersion == 4 
  138. #if OSMinorVersion == 1
  139. #define HasPoll           YES
  140. #endif
  141. #if OSMinorVersion > 1 || (OSMinorVersion == 1 && OSTeenyVersion > 1)
  142. /* You ALSO need this if you have Sun ld patch 100170-06 or later to 4.1.1 */
  143. #define SunPost411FCSLd      YES
  144. #endif
  145. #endif
  146.  
  147. #ifdef i386Architecture
  148. #if OSMajorVersion > 4
  149. #define ServerExtraDefines AllocateLocalDefines XFree86ServerDefines
  150. #define ServerOSDefines    XFree86ServerOSDefines
  151. #else
  152. #define ServerExtraDefines AllocateLocalDefines
  153. #define ServerOSDefines   -DDDXOSINIT
  154. #endif
  155. #else
  156. #define ServerExtraDefines AllocateLocalDefines
  157. #define ServerOSDefines   -DDDXOSINIT
  158. #endif
  159.  
  160. #define XkbServerDefines  -DXKB_ALWAYS_USES_SOFT_REPEAT
  161.  
  162. #if OSMajorVersion > 4
  163. #define BootstrapCFlags      /* none needed */
  164. #ifndef XawI18nDefines
  165. #define XawI18nDefines    -DHAS_WCTYPE_H -DHAS_ISW_FUNCS
  166. #endif
  167. #ifdef i386Architecture
  168. #define StandardDefines      -Dsun -Di386 -DSVR4 -D__i386
  169. #define ToolkitStringsABIOptions    -intelabi
  170. #else
  171. #define StandardDefines      -Dsun -DSVR4
  172. #define ToolkitStringsABIOptions    -sparcabi
  173. #endif
  174. #define ExtraLibraries    -lsocket -lnsl
  175. #if OSMinorVersion > 1
  176. #define ThreadedX      YES
  177. #if HasSunC && CCompilerMajorVersion > 2
  178. #define ThreadsCompileFlags -mt
  179. #else
  180. #define SystemMTDefines -D_REENTRANT
  181. #define ThreadsLibraries -lthread
  182. #endif
  183. #if HasSunCplusplus && CplusplusCompilerMajorVersion > 3
  184. #define ThreadsCplusplusCompileFlags -mt
  185. #else
  186. #define CplusplusSystemMTDefines -D_REENTRANT
  187. #define ThreadsCplusplusLibraries -lthread
  188. #endif
  189. #endif         /* OSMinorVersion > 1 */
  190. #define HasVFork          NO
  191. #define InstKmemFlags      -g sys -m 2711
  192. #define ShLibIncludeFile <sunLib.tmpl>
  193. /*
  194.  * Set flags for position independent code before including sv4Lib.rules
  195.  * if the compiler in use doesn't use standard SVR4 flags
  196.  */
  197. #if HasSunC || HasCenterLineC
  198. #define PositionIndependentCFlags -Kpic
  199. #endif
  200. #if HasSunCplusplus || HasCenterLineCplusplus
  201. #define PositionIndependentCplusplusFlags -pic
  202. #endif
  203. #else /* not OSMajorVersion > 4 */
  204. #define InstKmemFlags      -g kmem -m 2711
  205. #include <sunLib.rules>
  206. #endif /* OSMajorVersion > 4 (else) */
  207.  
  208. #define HasNdbm          YES
  209. #define HasShm          YES
  210. #define HasSecureRPC      YES
  211. #define SetTtyGroup      YES
  212. #define HasPutenv      YES
  213. #ifndef i386Architecture
  214. #ifndef Xsun24Server
  215. #define Xsun24Server      NO        /* color, mono, multiple depths */
  216. #endif
  217. #ifndef XsunServer
  218. #define XsunServer      YES        /* color and mono, 8 bit only */
  219. #endif
  220. #ifndef XsunMonoServer
  221. #define XsunMonoServer      NO        /* monochrome only */
  222. #endif
  223. #endif /* not i386Architecture */
  224. #ifndef BuildPexExt
  225. #define BuildPexExt      (XsunServer || Xsun24Server)
  226. #endif
  227. #ifndef BuildXKB
  228. #define    BuildXKB      YES
  229. #endif
  230.  
  231. #if HasGcc
  232. # if OSMajorVersion > 4 && defined(i386Architecture)
  233. #  ifndef DefaultCCOptions
  234. #   if OSMinorVersion == 1
  235. #    define DefaultCCOptions -DNO_ASM
  236. #   else
  237. #    define DefaultCCOptions -ansi -DNO_ASM
  238. #   endif
  239. #  endif
  240. # endif
  241. # if HasGcc2
  242. #  ifdef i386Architecture
  243. #   define OptimizedCDebugFlags -m486 -O2 -fno-strength-reduce
  244. #  else
  245. #   define OptimizedCDebugFlags -O2
  246. #  endif
  247. # else
  248. #  define SharedLibraryCcCmd cc
  249. #  define ExtraLoadFlags -B/usr/bin/
  250. #  define AllocateLocalDefines /**/
  251.  
  252. .c.o:
  253.     ClearmakeOSName    $(CC) -c $(CFLAGS) $*.c
  254.  
  255. # endif /* HasGcc2 (else) */
  256. #else /* not HasGcc */
  257.  
  258. #define AllocateLocalDefines -DINCLUDE_ALLOCA_H
  259.  
  260. /* Set up compiler-dependent options for Sun C */
  261.  
  262. #if HasSunC
  263. #ifdef Sun3Architecture
  264. #ifndef DefaultCCOptions
  265. #define DefaultCCOptions -f68881 -pipe
  266. #endif
  267. #else    /* not defined(Sun3Architecture) */
  268. #if OSMajorVersion < 5
  269. #ifndef DefaultCCOptions
  270. #define DefaultCCOptions -pipe
  271. #endif
  272. #else    /* OSMajorVersion >= 5*/
  273. #ifndef DefaultCCOptions
  274. #define DefaultCCOptions -Xa
  275. #endif
  276. #endif    
  277. #endif    
  278. #endif
  279.  
  280. /* Set compiler-dependent options for CenterLine C */
  281.  
  282. #if HasCenterLineC
  283. #ifndef    DefaultCCOptions
  284. #define DefaultCCOptions -Xt -w1 -DANSICPP -U__HIGHC__
  285. #endif
  286. #ifndef NeedConstPrototypes
  287. #define NeedConstPrototypes YES
  288. #endif
  289. #ifndef NeedNestedPrototypes
  290. #define NeedNestedPrototypes YES
  291. #endif
  292. #ifndef NeedVarargsPrototypes
  293. #define NeedVarargsPrototypes YES
  294. #endif
  295. #endif
  296.  
  297.  
  298. #define PexCCOptions DefaultCCOptions
  299.  
  300. #endif /* HasGcc (else) */
  301.  
  302. #if OSMajorVersion < 5
  303. #define SharedAllocateLocalDefines -DINCLUDE_ALLOCA_H
  304. #define LibraryCCOptions /* don't want special floating point */
  305. #endif /* OSMajorVersion < 5 */
  306.  
  307. #if OSMajorVersion > 4
  308. #include <svr4.cf>
  309. #endif
  310.  
  311. #ifndef ManKeywordsTarget
  312. #define ManKeywordsTarget(manpath)                    @@\
  313. man_keywords::                                @@\
  314.     catman -M $(DESTDIR)manpath -w
  315. #endif
  316.