1XCOMM 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 24XCOMM 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