Master listing of predefined CPP symbols (updated 08-Oct-84)

John Rogers jr at foros1.UUCP
Tue Oct 9 13:58:29 AEST 1984


Hi.  Here's the latest list of predefined CPP symbols (at least, the
ones I know of).  These are generally used to allow machine and/or
operating system specific code to be #ifdef'ed.  Very few of these are
actually documented anywhere; the purpose of this list is to try to
take some of the "folklore" and make the information available to
everyone.  The data here is collected from a number of sources; please
see the "acknowledgements" list at the end of this article (if you sent
me something and don't see your name listed, better send it again).  I
don't have any data on anything earlier than V7.

THE LIST:

name		description				availability
--------------	--------------------------------------	-----------------------
__DATE__	date of compilation			Decus C
__FILE__	current source file name		most CPP's
__LINE__	line number within current source file	most CPP's
__PAGE__	page number within source		Data General C's
aegis		Apollo's supervisor (runs AUX)		Apollo's AUX
AOSVS		Data General AOS/VS operating system	Data General C's
aosvs		Data General AOS/VS operating system	Data General C's
apollo		Apollo's UNIX (AUX)			Apollo's AUX
cpm		CP/M operating system			"p" in Dr. Dobbs Jul-84
DATAGENERAL	Data General hardware			Data General C's
datageneral	Data General hardware			Data General C's
decus		Decus C (PDP-11 - RSX & RT-11)		Decus C
DGUX		Data General UNIX (DG/UX)		DG/UX
dgux		Data General UNIX (DG/UX)		DG/UX
ebcdic		IBM's EBCDIC (non-ASCII) char. set	UBC's C/370 for MTS
							  (in stdio.h)
gcos		Honeywell 6000 GCOS op.sys.		AT&T C compilers?
hp9000s200	Hewlitt Packard 9000			HP-UX
hp9000s500	Hewlitt Packard 9000			HP-UX
I8086		XENIX for the NABU 1600			Altos
ibm		IBM (and Amdahl?) mainframe op. systems AT&T C compilers?
ibm370		IBM (and Amdahl?) mainframes		UBC's C/370 for MTS
							  (in stdio.h)
interdata	Interdata 7/32, 8/32, Perkin-Elmer 3200	AT&T C compilers?,
							Perkin-Elmer Edition
							VII (V7) & XELOS
							(System 5.2)
kl10		DEC-20 KL10 processor			U.Utah PCC?
lint		UNIX's lint				most UNIXes
m68000		Motorola M68000 family			CCI's 68000,
							UniSoft (system 3)
m68k		Motorola M68000 family			Motorola SysV port
mbb ????	BBN C70					BBN UNIX?
mc68000		Motorola MC68000			Sun Microsystems,
							  Fortune, other ports
mert		Multi-Executive Real Time??		AT&T C compilers?
mts		Michigan Terminal System		UBC's C/370 for MTS
							  (in stdio.h)
nomacarg	CPP doesn't support macro args		Decus C
ns32000		NS32000 parts (ns32016, ns32032, etc)	National Semi.
ON_SEL		Gould Concept 32 (obsolete OS?)		?
orion		ORION supermicro (4.1c BSD)		ORION UNIX
os		IBM's OS/360 and /370			AT&T C compilers?
PDP11		DEC's PDP-11 minicomputers		UNIX V7
pdp11		DEC's PDP-11 minicomputers		BTL C/UNIX, Decus C for
							  RSX and RT-11, early
							  Plexus ports, UniSoft
							  V7 for Codata
pyr		Pyramid 90X				Pyramid's CPP?
pe3200		Perkin-Elmer 3200 series		Perkin-Elmer XELOS
							(System 5.2)
PWB		Programmer's Workbench			PWB/UNIX
RES		Research variant of UNIX		AT&T UNIX
rsx		DEC's RSX operating system on PDP-11	Decus C for RSX
RT		UNIX/RT	(real time variant of UNIX)	UNIX/RT
sel		Gould Concept 32			?
selport		Gould Concept 32			?
sun		Sun Microsystems			?
tahoe		CCI Power 6/32 proprietary supermini	CCI
TM_DPS6		target machine is Honeywell DPS 6	Waterloo compilers
TM_L66		target machine is Honeywell Level 66	Waterloo compilers
tops20		TOPS-20 operating system for DEC-20	U.Utah PCC?
TS		UNIX/TS (timesharing system)		AT&T
TS_GCOS		target system is Honeywell GCOS 8	Waterloo compilers
TS_MOD400	target system is Honeywell GCOS 6 mod 400  Waterloo compilers
tss		IBM's Time Sharing System (for 360/370)	AT&T?
u370		UNIX on IBM/370?			AT&T
u3b		UNIX on AT&T 3B-20			AT&T
u3b2		UNIX on AT&T 3B-2			AT&T
u3b5		UNIX on AT&T 3B-5			AT&T
univac		Univac/1100 UNIX			AT&T?
unix		The you-know-what operating system	most UNIX's
V7		UniPlus+ Version 7 UNIX			UniSoft
vax		DEC VAX-11 minicomputers (UNIX or VMS)	UNIX, VAX-11 C, some
							  early Unisoft 68k's
vax11c		DEC's VAX-11 C compiler			VAX-11 C
VIII		UniPlus+ System III UNIX		UniSoft
vms		DEC's VMS operating system for VAXen	VAX-11 C
VV		UniPlus+ System V, release 1 UNIX	UniSoft
z8000		Zilog Z8000				Zilog C compiler?

MY LIST OF SUGGESTED ADDITIONS:

name		description
--------------	---------------------------------------------------------------
bds		BD Software's C compiler (BDS C) for CP/M-80
ccpm86		Concurrent CP/M-86
cpm68k		CP/M-68K
cpm80		CP/M-80
cpm86		CP/M-86
gnu		Stallman's (sp?) GNU (GNU's Not Unix)
i8080		Intel 8080-compatible: 8080, 8085, Z80
i8086		Intel 8086 and 8088 processors
i80186		Intel 80186 and friends
i80286		Intel 80286 and friends
mc68008		Motorola MC68008 processor
mc68010		Motorola MC68010 processor
mc68020		Motorola MC68020 processor
mpm		MP/M
msdos		Microsoft's MS-DOS operating system
pcdos		IBM and/or Microsoft's PC-DOS operating system
power5		CCI's Power/5 68000-based computers
xinu		Purdue's XINU (Xinu Is Not Unix)
z80		Zilog Z80
z800		Zilog Z800, if they ever ship any


ACKNOWLEDGEMENTS:  The data in the list is from the one in Steve
Bourne's "The UNIX System", the CPP(1) man page in System V, and from
Usenet articles and/or mail messages from the people listed below.  If
you mailed me something and don't see your name listed, then the mail
got lost (so please resend it).

	DBrown at HI-MULTICS.ARPA, Mike Brzustowicz <mab at aids-unix.ARPA>,
	John Gilmore <gnu at sun.UUCP>, Bob Gray <bob at hwcs.UUCP>, Tony
	Hansen <hansen at pegasus.UUCP>, Guy Harris <guy at rlgvax.UUCP>,
	<hugh at hcrvax.UUCP>, Sam Kendall <kendall at wjh12.UUCP>, Bob
	Larson <BLARSON at USC-ECLB.ARPA>, J Lepreau <j at utah-cs.UUCP>,
	manis at ucb-vision.UUCP, Dave Mason <dave at utcsrgv.UUCP>, Michael
	Meissner <mrm at datagen.UUCP>, Martin Minow <minow at decvax.UUCP>,
	Landon C.  Noll <chongo at nsc.UUCP>, Joe Orost <joe at petsd.UUCP>,
	psc at zmi.UUCP, Craig Partridge <craig at loki.UUCP>, Jim Rees
	<rees at apollo.UUCP,> John Rogers <jr at foros1.UUCP>, George
	Rosenberg <george at idis.UUCP>, Philip K. Ronzone
	<phil at unisoft.UUCP>, Donn Terry <donn at hp-dcd.UUCP>, Chris Torek
	<chris at umcp-cs.UUCP>, Tom Truscott <trt at rti-sel.UUCP>, Mike
	Zaleski <mzal at pegasus.UUCP>

I plan to maintain this list, so if anyone has any additions or corrections,
please send them to me at:

	UUCP:	{ihnp4,cbosgd,harpo,dual,amd}!fortune!foros1!jr
	ARPANET: hpda!fortune!foros1!jr at Berkeley  (untested)
	ENET:	RHEA::DECWRL::"amd!fortune!foros1!jr" (untested)

				Happy hacking!
-- 
				JR (John Rogers)
				...ihnp4!fortune!foros1!jr
				also fortune!jr and proper!jr



More information about the Comp.lang.c mailing list