xref: /386bsd/usr/X386/lib/X11/config/ibm.cf (revision a2142627)
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