home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / X / mit / config / ibm.cf < prev    next >
Encoding:
Text File  |  1991-07-30  |  6.5 KB  |  245 lines

  1. XCOMM platform:  $XConsortium: ibm.cf,v 1.29 91/07/28 22:39:58 rws Exp $
  2.  
  3. #ifdef RsArchitecture
  4. #define OSName        AIX 3.1.5
  5. #define OSMajorVersion    3
  6. #define OSMinorVersion    1
  7. #else
  8. #ifdef RtArchitecture
  9. #ifdef AIXArchitecture
  10. #define OSName        AIX 2.2
  11. #define OSMajorVersion    2
  12. #define OSMinorVersion    2
  13. #else
  14. #define OSName        AOS 4.3
  15. #define OSMajorVersion    4
  16. #define OSMinorVersion    3
  17. #endif
  18. #else
  19. #define OSName        AIX 1.2.1
  20. #define OSMajorVersion    1
  21. #define OSMinorVersion    2
  22. #endif
  23. #endif
  24. XCOMM operating system:  OSName
  25.  
  26. #ifdef RsArchitecture
  27.  
  28. #define ProjectRoot        /usr/local
  29.  
  30. #define SystemV            YES
  31. #define LnCmd            ln -s
  32. #define HasSockets        YES
  33. #define LdCombineFlags        -r
  34. #define ExecableScripts        YES
  35. #define Malloc0ReturnsNull    YES
  36. #define CppCmd            /usr/lpp/X11/Xamples/util/cpp/cpp
  37. #define StandardDefines         -DSYSV -DAIXV3
  38. #define ExpandManNames        YES
  39. #define XibmServer         YES
  40. #define ibmIncludeSKYWAY    YES
  41. #define OPERATING_SYSTEM     AIX /* directory name under server/ddx/ibm/ */
  42. #define InstallCmd              /usr/ucb/install
  43. #include <ibmLib.rules>
  44.  
  45. #else
  46.  
  47.  
  48. #define UnixCpp /**/
  49. #define cppdefs -DUNIXCPP
  50.  
  51. #ifdef ATHENA
  52. #define ibmAthenaDefs -DATHENA
  53. #else
  54. #define ibmAthenaDefs /**/
  55. #endif
  56.  
  57. #ifdef AIXArchitecture
  58. #define SystemV YES
  59. #define LnCmd ln -s
  60. #define HasSockets YES
  61. #ifdef RtArchitecture
  62. #define BootstrapCFlags -Daix
  63. #define OSDefines -DAIX -DAIXrt -DNO_FUNCTION_PROTOTYPES -DIBM_OS_HAS_HFT
  64. #else
  65. #define ExecableScripts        YES
  66. #define ExpandManNames        YES
  67. #define InstallCmd              /usr/ucb/install
  68. #define OSDefines -DAIX386 -DIBM_OS_HAS_HFT
  69. #define    NeedFunctionPrototypes    YES
  70. #define    NeedNestedPrototypes    YES
  71. #define    NeedConstPrototypes    YES
  72. #define    NeedVarargsPrototypes    YES
  73. #define LdCombineFlags -r /* PS/2 doesn't do ld -X */
  74. #endif
  75. #define OPERATING_SYSTEM AIX /* directory name under server/ddx/ibm/ */
  76.  
  77. #ifdef USE_PCC
  78. #define CcCmd i386cc
  79. #define ibmosdefs -DHCVERSION=HCRevision
  80. #else
  81. #ifdef RtArchitecture
  82. #define CcCmd cc -Nd4000 -Nn3000 -DBSD_INCLUDES
  83. #define ibmosdefs -DSYSV -Nd4000 -Nn3000
  84. #define ibmlibdefs -Hcpp
  85. #else
  86. #define ibmosdefs -DSYSV
  87. #endif
  88. #endif /* USE_PCC */
  89.  
  90. #else /* else AOS - warning: AOS is going away... */
  91. #define HasNdbm YES
  92. #define CcCmd hc
  93. #define ibmosdefs -DHCVERSION=HCRevision
  94. #define OSDefines -DBSDrt
  95. #define OPERATING_SYSTEM BSDrt
  96. #define BootstrapCFlags -Dibm
  97. #if OSMajorVersion >= 4 && OSMinorVersion >= 3
  98. #define SetTtyGroup YES
  99. #endif
  100. #endif /* AIXArchitecture */
  101.  
  102. #define HasVoidSignalReturn    NO
  103.  
  104. #ifdef RtArchitecture
  105. /*
  106.  * These define the screens the server will allow
  107.  * affected:    .../server/ddx/ibm/Makefile
  108.  *              .../server/ddx/ibm/common/Makefile
  109.  * Also, be sure to remove .../server/ddx/ibm/common/ibmscreen.o
  110.  */
  111. #define ibmInclude8514  NO /* YES */
  112. #define ibmIncludeAED   NO
  113. #define ibmIncludeAPA16 YES
  114. #define ibmIncludeAPA8c NO
  115. #define ibmIncludeEGA   NO /* YES */
  116. #define ibmIncludeMPEL  NO
  117. #define ibmIncludeVGA   NO /* YES */
  118. #define ibmIncludeGEN   NO
  119. #endif /* RtArchitecture */
  120.  
  121. #ifdef PS2Architecture
  122. /*
  123.  * These define the screens the server will allow
  124.  * affected:    .../server/ddx/ibm/Makefile
  125.  *              .../server/ddx/ibm/common/Makefile
  126.  * Also, be sure to remove .../server/ddx/ibm/common/ibmscreen.o
  127.  * 
  128.  *                                        PS2, Rt, ...
  129.  */
  130. #define ibmInclude8514  YES
  131. #define ibmIncludeAED   NO
  132. #define ibmIncludeAPA16 NO
  133. #define ibmIncludeAPA8c NO
  134. #define ibmIncludeEGA   NO
  135. #define ibmIncludeMPEL  NO
  136. #define ibmIncludeVGA   YES
  137. #define ibmIncludeGEN   NO
  138. #endif /* PS2Architecture */
  139.  
  140. /*
  141.  * These define the screens the server will allow
  142.  * affected:    .../server/ddx/ibm/Makefile
  143.  *              .../server/ddx/ibm/common/Makefile
  144.  * Also, be sure to remove .../server/ddx/ibm/common/ibmscreen.o
  145.  * 
  146.  *                                        PS2, Rt, ...
  147.  */
  148. #ifndef ibmosdefs
  149. #define ibmosdefs /**/
  150. #endif
  151. #ifndef ibmarchdefs
  152. #define ibmarchdefs /**/
  153. #endif
  154. #ifndef ibmlibdefs
  155. #define ibmlibdefs /**/
  156. #endif
  157.  
  158.  
  159. #define StandardDefines -Dibm ibmosdefs ibmarchdefs
  160. #define LintOpts -ax -Dibm ibmosdefs ibmarchdefs
  161.  
  162. /* 
  163.  * This defines the name of server you want.
  164.  * affected: .../X11/server/Makefile
  165.  */
  166. #define XibmServer YES
  167.  
  168. /*****************************************************************************
  169.  *                        Platform-specfic parameters                        *
  170.  *****************************************************************************/
  171.  
  172.     /*
  173.      * affected:    .../server/ddx/ibm/common/Makefile
  174.      *        .../server/os/4.2bsd/Makefile
  175.      * remove:    .../server/ddx/ibm/common/ibminit.o
  176.      *        .../server/ddx/ibm/common/ibmio.o
  177.      *        .../server/ddx/ibm/common/ibmutils.o
  178.      *        .../server/os/4.2bsd/utils.o
  179.      */
  180.  
  181. /* Need This Also For our IBM Imakefiles */
  182. #define    SpecialMalloc        NO
  183. #define    ibmSpecialMalloc    NO
  184.  
  185.             PCC = pcc
  186.  
  187. #ifndef AIXArchitecture                /* AOS-specific */
  188. /*
  189.  * It's real useful to know the version of hc we're using, but hc doesn't
  190.  * identify itself in the pre-processor, so we have to do it by hand.
  191.  *
  192.  * To determine which version of hc you have, compile (DON'T link) some simple 
  193.  * program ("hello world" leaps to mind) and look in the .o (with "nm") for a 
  194.  * symbol named ".oVhc[0-9].[0-9][a-z]" -- this symbol is included in all 
  195.  * .o's by hc, and identifies the compiler release.
  196.  * 
  197.  * To Calculate HCRevision, multiply the version number by 1000 and add the
  198.  * index of the release letter.
  199.  * For example, if nm reports:
  200.  *    00000000 A .oVhc2.1d
  201.  * The HCRevision is ((2.1 * 1000)+('d'-'a'+1)) == 21004
  202.  * Another popular version of hc is:
  203.  *    00000000 A .oVhc1.4r
  204.  * Whose HCRevision is ((1.4 * 1000)+('r'-'a'+1)) == 14018
  205.  *
  206.  * A good clue that HCRevision is defined incorrectly is the undefined symbol
  207.  * '_Alloca' at load time.
  208.  */
  209.  
  210. #define    HCRevision    21025
  211.  
  212. /*
  213.  * hc revision 1.4r won't compile parts of Xt and some clients.
  214.  */
  215. #if HCRevision == 14018
  216. #define BandAidCompiler "rtcchack.bac"
  217. #undef MacroFile
  218. #define MacroFile ibm.cf $(IRULESRC)/rtcchack.bac
  219. #endif
  220. #endif /* AOS */
  221.  
  222.  
  223. /* 
  224.  * define this as you like for server compilation 
  225.  * affected: all makefiles in .../X11/server
  226.  */
  227. #define ServerOSDefines  cppdefs -DNOSTDHDRS OSDefines
  228.  
  229.  
  230. #define FontOSDefines StandardDefines
  231. /* define this as you like for server font support */
  232. #ifdef AIXArchitecture
  233. #define FontFilters BDFTOSNFFILT SHELLPATH
  234. #endif
  235.  
  236. /* define the following line for easily debuggable servers, the */
  237. /* second line for especially speedy servers.            */
  238. /* #define ServerCDebugFlags    -O -DDEBUG -DTRACE_X */
  239. #define    ServerCDebugFlags -O ibmAthenaDefs
  240.  
  241. /* define this as you like for normal library compilation */
  242. #define LibraryDefines cppdefs ibmlibdefs StandardDefines
  243.  
  244. #endif /* non RsArchitecture */
  245.