/* Do not edit this file, make creates it */
/* $Header: /afs/dev/source/repository/third/tcsh/host.defs,v 1.1.1.1 1998/10/03 21:09:51 danw Exp $ */
/*
 * host.defs: Hosttype/Machtype etc.
 */
/*-
 * Copyright (c) 1980, 1991 The Regents of the University of California.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. All advertising materials mentioning features or use of this software
 *    must display the following acknowledgement:
 *	This product includes software developed by the University of
 *	California, Berkeley and its contributors.
 * 4. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */
#include "sh.h"

RCSID("$Id: host.defs,v 1.1.1.1 1998/10/03 21:09:51 danw Exp $")



#if (defined(mips) || defined(__mips)) && (defined(MIPSEL) || defined(__MIPSEL))
# define M_mipsel
#endif


#if (defined(mips) || defined(__mips)) && (defined(MIPSEB) || defined(__MIPSEB))
# define M_mipseb
#endif


#if (defined(i386) || defined(__i386__))
# define M_i386
#endif


#if (defined(i486) || defined(__i486__))
# define M_i486
#endif


#if (defined(i586) || defined(__i586__))
# define M_i586
#endif


#if (defined(M_i386) || defined(M_i486) || defined(M_i586))
# define M_intel
#endif




#if defined(ns32000)
static char *
isamultimax(flag)
    int flag;
{
    if (access("/Umax.image", F_OK) == 0)
	return "multimax";
    else 
	return flag ? "mach" : "ns32000";
}
#endif




#if defined(cray)
/*  
 * On crays, find the current machine type via the target() syscall
 * We need ctype.h to convert the name returned to lower case
 */
# include <sys/target.h> 
# include <ctype.h>
# include <string.h>

/* From: hpa@hook.eecs.nwu.edu (H. Peter Anvin) */
static char *
getcray()
{
# ifdef MC_GET_SYSTEM /* If we have target() */
    struct target data;

    if (target(MC_GET_SYSTEM, &data) != -1) {
	static char hosttype_buf[sizeof(data.mc_pmt)+1];
	char *p = (char *) &(data.mc_pmt);
	char *q = hosttype_buf;
	int n;

	/* 
	 * Copy to buffer and convert to lower case 
	 * String may not be null-terminated, so keep a counter
	 */
	for (n = 0; *p && n < sizeof(data.mc_pmt); n++)
	  *q++ = tolower(p[n]);

	*q = '\0';

	/* replace dashes with underscores if present */
	while ((q = strchr(hosttype_buf, '-')) != NULL)
	    *q = '_';
	return hosttype_buf; 	/* Return in static buffer */
    }
    else
# endif /* MC_GET_SYSTEM */
	return "cray";		/* target() failed */
}
#endif




#if defined(convex)
/*  
 * On convex, find the current machine type via the getsysinfo() syscall
 */
#include <sys/sysinfo.h> 

/* From: fox@convex.com (David DeSimone) */
static char *
getconvex()
{
    struct system_information  sysinfo;
    static char  result[8];

    if (getsysinfo(SYSINFO_SIZE, &sysinfo) == -1)
	return "convex";

    switch(sysinfo.cpu_type) {
#ifdef SI_CPUTYPE_C1
    case SI_CPUTYPE_C1:
	return "c1";
#endif

#ifdef SI_CPUTYPE_C2
    case SI_CPUTYPE_C2:
	return "c2";
#endif

#ifdef SI_CPUTYPE_C2MP
    case SI_CPUTYPE_C2MP:
	(void) strcpy(result, "c2X0");
	result[2] = sysinfo.cpu_count + '0';
	return result;
#endif

#ifdef SI_CPUTYPE_C34
    case SI_CPUTYPE_C34:
	(void) strcpy(result, "c34X0");
	result[3] = sysinfo.cpu_count + '0';
	return result;
#endif

#ifdef SI_CPUTYPE_C38
    case SI_CPUTYPE_C38:
	(void) strcpy(result, "c38X0");
	result[3] = sysinfo.cpu_count + '0';
	return result;
#endif

#ifdef SI_CPUTYPE_C46
    case SI_CPUTYPE_C46:
	(void) strcpy(result, "c46X0");
	result[3] = sysinfo.cpu_count + '0';
	return result;
#endif

    default:
	return "convex";
    }
}
#endif


void
getmachine()
{
     char *hosttype;
     char *ostype;
     char *vendor;
     char *machtype;





#if defined(__PARAGON__)
    /* Intel Paragon running OSF/1 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "paragon";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "osf1";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(AMIX)
    /* Amiga running Amix 2.02 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "commodore";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "amiga";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "Amix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(accel)
    /* celerity Accel */
# if !defined(_vendor_)
# define _vendor_
    vendor = "celerity";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "celerityACCEL";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "unix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "accel";
# endif
#endif




#if defined(_VMS_POSIX)
    /* digital vax or alpha running vms posix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "VMS-POSIX";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "vms";
# endif
# if (defined(__alpha)) && !defined(_machtype_)
# define _machtype_
    machtype = "alpha";
# endif
# if (defined(__vax) || defined(vax)) && !defined(_machtype_)
# define _machtype_
    machtype = "vax";
# endif
# if (defined(__vax__)) && !defined(_machtype_)
# define _machtype_
    machtype = "vax";
# endif
#endif




#if defined(__hp_osf)
    /* Hewlett Packard running OSF/1 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "hp";
# endif
# if (defined(__pa_risc)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000s700-osf1";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp-osf1";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "osf1";
# endif
# if (defined(__pa_risc)) && !defined(_machtype_)
# define _machtype_
    machtype = "pa_risc";
# endif
#endif




#if defined(hp9000)
    /* Hewlett Packard running MORE/bsd */
# if !defined(_vendor_)
# define _vendor_
    vendor = "hp";
# endif
# if (defined(hp300)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp300";
# endif
# if (defined(hp800)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp800";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000";
# endif
# if (defined(BSD4_4)) && !defined(_ostype_)
# define _ostype_
    ostype = "bsd44";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "mtXinu";
# endif
# if (defined(hp300)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(hp800)) && !defined(_machtype_)
# define _machtype_
    machtype = "pa_risc";
# endif
#endif




#if defined(hpux) || defined(__hpux)
    /* Hewlett Packard running HP/UX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "hp";
# endif
# if (defined(__hp9000s700)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000s700";
# endif
# if (defined(__hp9000s800) || defined(hp9000s800)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000s800";
# endif
# if (defined(hp9000s500)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000s500";
# endif
# if (defined(__hp9000s300) || defined(hp9000s300)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp9000s300";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "hp";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "hpux";
# endif
# if (defined(__hp9000s700)) && !defined(_machtype_)
# define _machtype_
    machtype = "pa_risc";
# endif
# if (defined(__hp9000s800) || defined(hp9000s800)) && !defined(_machtype_)
# define _machtype_
    machtype = "pa_risc";
# endif
# if (defined(hp9000s500)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(__hp9000s300) || defined(hp9000s300)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(apollo)
    /* Hewlett Packard apollo running Domain/OS */
# if !defined(_vendor_)
# define _vendor_
    vendor = "hp";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "apollo";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "DomainOS";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(sun) || defined(__sun__)
    /* Sun Microsystems series 2 workstation (68010 based) */
    /* Sun Microsystems series 3 workstation (68020 based) */
    /* Sun Microsystems 386i workstation (386 based) */
    /* Sun Microsystems series 4 workstation (SPARC based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sun";
# endif
# if (defined(M_i386) && !defined(__SVR4)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "sun386i";
# endif
# if (defined(M_i386) && defined(__SVR4)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i86pc";
# endif
# if (defined(mc68010) || defined(__mc68010__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "sun2";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "sun3";
# endif
# if (defined(sparc) || defined(__sparc__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "sun4";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sun";
# endif
# if (defined(SUNOS3)) && !defined(_ostype_)
# define _ostype_
    ostype = "sunos3";
# endif
# if (defined(SUNOS4)) && !defined(_ostype_)
# define _ostype_
    ostype = "sunos4";
# endif
# if (defined(SOLARIS2)) && !defined(_ostype_)
# define _ostype_
    ostype = "solaris";
# endif
# if (defined(mc68010) || defined(__mc68010__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(sparc) || defined(__sparc__)) && !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(pyr)
    /* Pyramid Technology */
# if !defined(_vendor_)
# define _vendor_
    vendor = "pyramid";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "pyramid";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "pyramid";
# endif
#endif




#if defined(hcx) || defined(_CX_UX)
    /* Harris Tahoe running CX/UX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "harris";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "hcx";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "hcx";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "tahoe";
# endif
#endif




#if defined(tahoe)
    /* Harris Tahoe */
# if !defined(_vendor_)
# define _vendor_
    vendor = "harris";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "tahoe";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "tahoe";
# endif
#endif




#if defined(ibm032)
    /* RT running IBM AOS4.3 or MACH */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "rt";
# endif
# if (defined(MACH)) && !defined(_ostype_)
# define _ostype_
    ostype = "mach";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aos";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "ibm032";
# endif
#endif




#if defined(aiws)
    /* RT running IBM aix2.x */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "rtpc";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "ibm032";
# endif
#endif




#if defined(_AIX370)
    /* IBM/370 running aix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "aix370";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "ibm370";
# endif
#endif




#if defined(_IBMESA)
    /* IBM/ESA running aix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "aixESA";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "esa";
# endif
#endif




#if defined(_IBMR2)
    /* IBM/RS6000 running aix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "rs6000";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "rs6000";
# endif
#endif




#if defined(_AIXPS2)
    /* IBM/PS2 running aix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ibm";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "ps2";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(OREO)
    /* Macintosh running AU/X */
# if !defined(_vendor_)
# define _vendor_
    vendor = "apple";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "mac2";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "aux";
# endif
# if (defined(mc68020)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(u3b20d)
    /* AT&T 3B/20 series running SVR2/3 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "att";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "att3b20";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "u3b20";
# endif
#endif




#if defined(u3b15)
    /* AT&T 3B/15 series running SVR2/3 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "att";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "att3b15";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "u3b15";
# endif
#endif




#if defined(u3b5)
    /* AT&T 3B/5 series running SVR2/3 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "att";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "att3b5";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "u3b5";
# endif
#endif




#if defined(u3b2)
    /* AT&T 3B/2 series running SVR2/3 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "att";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "att3b2";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "u3b2";
# endif
#endif




#if defined(UNIXPC)
    /* AT&T UnixPC att3b1/att7300 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "att";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "unixpc";
# endif
# if (defined(u3b1)) && !defined(_machtype_)
# define _machtype_
    machtype = "u3b1";
# endif
# if (defined(att7300)) && !defined(_machtype_)
# define _machtype_
    machtype = "att7300";
# endif
#endif




#if defined(_MINIX)
    /* Andy Tanenbaum's minix */
# if (defined(M_i386)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "minix386";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "minix";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "minix";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(linux)
    /* Linus Torvalds's linux */
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(M_i586)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i586-linux";
# endif
# if (defined(M_i486)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i486-linux";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i386-linux";
# endif
# if (!defined(PPC)) && !defined(_ostype_)
# define _ostype_
    ostype = "linux";
# endif
# if (defined(PPC)) && !defined(_ostype_)
# define _ostype_
    ostype = "mklinux";
# endif
# if (defined(M_i586)) && !defined(_machtype_)
# define _machtype_
    machtype = "i586";
# endif
# if (defined(M_i486)) && !defined(_machtype_)
# define _machtype_
    machtype = "i486";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(__alpha)) && !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if (defined(PPC)) && !defined(_vendor_)
# define _vendor_
    vendor = "apple";
# endif
# if (defined(__alpha)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "alpha";
# endif
# if (defined(PPC)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "powerpc";
# endif
# if (defined(__alpha)) && !defined(_machtype_)
# define _machtype_
    machtype = "alpha";
# endif
# if (defined(PPC)) && !defined(_machtype_)
# define _machtype_
    machtype = "powerpc";
# endif
#endif




#if defined(__EMX__)
    /* OS/2 EMX [unix emulation under OS/2] */
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i386-emx";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "os2";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(__NetBSD__)
    /* NetBSD */
# if (defined(arm32)) && !defined(_vendor_)
# define _vendor_
    vendor = "acorn";
# endif
# if (defined(alpha)) && !defined(_vendor_)
# define _vendor_
    vendor = "digital";
# endif
# if (defined(amiga)) && !defined(_vendor_)
# define _vendor_
    vendor = "commodore";
# endif
# if (defined(atari)) && !defined(_vendor_)
# define _vendor_
    vendor = "atari";
# endif
# if (defined(hp300)) && !defined(_vendor_)
# define _vendor_
    vendor = "hp";
# endif
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(m68k)) && !defined(_vendor_)
# define _vendor_
    vendor = "motorola";
# endif
# if (defined(mac68k)) && !defined(_vendor_)
# define _vendor_
    vendor = "apple";
# endif
# if (defined(pc532)) && !defined(_vendor_)
# define _vendor_
    vendor = "national-semi";
# endif
# if (defined(pmax)	|| defined(mips)) && !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if (defined(M_mipsel)) && !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if (defined(sparc)) && !defined(_vendor_)
# define _vendor_
    vendor = "sun";
# endif
# if (defined(sun3)) && !defined(_vendor_)
# define _vendor_
    vendor = "sun";
# endif
# if (defined(vax)) && !defined(_vendor_)
# define _vendor_
    vendor = "digital";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "NetBSD";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "NetBSD";
# endif
# if (defined(arm32)) && !defined(_machtype_)
# define _machtype_
    machtype = "arm32";
# endif
# if (defined(sparc)) && !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
# if (defined(mc68020)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
# if (defined(mips)) && !defined(_machtype_)
# define _machtype_
    machtype = "mips";
# endif
# if (defined(pc532)) && !defined(_machtype_)
# define _machtype_
    machtype = "pc532";
# endif
# if (defined(vax)) && !defined(_machtype_)
# define _machtype_
    machtype = "vax";
# endif
# if (defined(alpha)) && !defined(_machtype_)
# define _machtype_
    machtype = "alpha";
# endif
#endif




#if defined(__FreeBSD__)
    /* FreeBSD */
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "FreeBSD";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "FreeBSD";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(__386BSD__)
    /* Bill Jolitz's 386BSD */
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "386BSD";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "386BSD";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(bsdi)
    /* BSDI's unix */
# if (defined(M_intel)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(sparc)) && !defined(_vendor_)
# define _vendor_
    vendor = "sun";
# endif
# if (defined(__powerpc__)) && !defined(_vendor_)
# define _vendor_
    vendor = "motorola";
# endif
# if (defined(M_intel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "bsd386";
# endif
# if (defined(sparc)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "bsd-sparc";
# endif
# if (defined(__powerpc__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "bsd-powerpc";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "bsdi";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(sparc)) && !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
# if (defined(__powerpc__)) && !defined(_machtype_)
# define _machtype_
    machtype = "powerpc";
# endif
#endif




#if defined(COHERENT)
    /* COHERENT's unix */
# if (defined(_I386)) && !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "coh386";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "coherent";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "coherent";
# endif
# if (defined(_I386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif



#if defined(SCO)
    /* SCO UNIX System V/386 Release 3.2 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sco";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sco386";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "sco_unix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif



#if defined(M_XENIX) && !defined(M_UNIX)
    /* SCO XENIX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sco";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sco_xenix";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "sco_xenix";
# endif
# if (defined(M_I386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(M_I286)) && !defined(_machtype_)
# define _machtype_
    machtype = "i286";
# endif
#endif




#if defined(ISC) || defined(ISC202)
    /* Interactive Unix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "isc";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "isc386";
# endif
# if (defined(POSIX)) && !defined(_ostype_)
# define _ostype_
    ostype = "POSIX";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "SVR3";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(INTEL)
    /* Intel Unix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "intel386";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "intel_unix";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(MACH)
    /* cmu's mach */
# if !defined(_vendor_)
# define _vendor_
    vendor = "cmu";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i386-mach";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "mach";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(alliant)
    /* Alliants FSX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "alliant";
# endif
# if (defined(mc68000)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "alliant-fx80";
# endif
# if (defined(i860)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "alliant-fx2800";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "alliant";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "fsx";
# endif
# if (defined(mc68000)) && !defined(_machtype_)
# define _machtype_
    machtype = "mc68000";
# endif
# if (defined(i860)) && !defined(_machtype_)
# define _machtype_
    machtype = "i860";
# endif
#endif




#if defined(_FTX)
    /* Stratus Computer, Inc FTX2 (i860 based) */
    /* Stratus Computer, Inc FTX3 (HPPA based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "stratus";
# endif
# if (defined(i860) && defined(_FTX)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "atlantic";
# endif
# if (defined(__hppa) && defined(_FTX)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "continuum";
# endif
# if (defined(i860) && defined(_FTX)) && !defined(_ostype_)
# define _ostype_
    ostype = "ftx2";
# endif
# if (defined(__hppa) && defined(_FTX)) && !defined(_ostype_)
# define _ostype_
    ostype = "ftx3";
# endif
# if (defined(i860)) && !defined(_machtype_)
# define _machtype_
    machtype = "i860";
# endif
# if (defined(__hppa)) && !defined(_machtype_)
# define _machtype_
    machtype = "hppa";
# endif
#endif




#if defined(sequent) || defined(_SEQUENT_)
    /* Sequent Balance (32000 based) */
    /* Sequent Symmetry running DYNIX/ptx (386/486 based) */
    /* Sequent Symmetry running DYNIX 3 (386/486 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sequent";
# endif
# if (defined(M_i386) && defined(sequent)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "symmetry";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "ptx";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "balance";
# endif
# if (defined(M_i386) && !defined(sequent)) && !defined(_ostype_)
# define _ostype_
    ostype = "ptx";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "dynix3";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(ns32000)) && !defined(_machtype_)
# define _machtype_
    machtype = "ns32000";
# endif
#endif




#if defined(ns32000)
    /* Encore Computer Corp. Multimax (32000 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "encore";
# endif
# if (defined(CMUCS)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "multimax";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = isamultimax(0);
# endif
# if (defined(CMUCS)) && !defined(_ostype_)
# define _ostype_
    ostype = "mach";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = isamultimax(1);
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "ns32000";
# endif
#endif




#if defined(iconuxv)
    /* Icon 88k running Unix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "icon";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "icon";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "iconuxv";
# endif
# if (defined(m88k) || defined(__m88k__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m88k";
# endif
#endif




#if defined(_CRAY) && defined(_CRAYCOM)
    /* Cray Computer Corp. running CSOS */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ccc";
# endif
# if (defined(_CRAY2)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "cray";
# endif
# if (defined(_CRAY3)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "cray";
# endif
# if (defined(_CRAY4)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "cray";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "CSOS";
# endif
# if (defined(_CRAY2)) && !defined(_machtype_)
# define _machtype_
    machtype = "cray2";
# endif
# if (defined(_CRAY3)) && !defined(_machtype_)
# define _machtype_
    machtype = "cray3";
# endif
# if (defined(_CRAY4)) && !defined(_machtype_)
# define _machtype_
    machtype = "cray4";
# endif
#endif




#if defined(cray) && !defined(_CRAYMPP)
    /* Cray Research Inc. PVP running UNICOS */
# if !defined(_vendor_)
# define _vendor_
    vendor = "cri";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = getcray();
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "unicos";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = getcray();
# endif
#endif




#if defined(cray) && defined(_CRAYT3D)
    /* Cray Research Inc. running UNICOS MAX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "cri";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = getcray();
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "unicosmax";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = getcray();
# endif
#endif




#if defined(cray) && defined(_CRAYT3E)
    /* Cray Research Inc. running UNICOS/mk */
# if !defined(_vendor_)
# define _vendor_
    vendor = "cri";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = getcray();
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "unicosmk";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = getcray();
# endif
#endif




#if defined(convex)
    /* Convex */
# if !defined(_vendor_)
# define _vendor_
    vendor = "convex";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "convex";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "convexos";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = getconvex();
# endif
#endif




#if defined(butterfly)
    /* BBN Butterfly 1000 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "bbn";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "butterfly";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(NeXT)
    /* NeXT */
# if !defined(_vendor_)
# define _vendor_
    vendor = "next";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "next";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "mach";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(hppa) || defined(__hppa__)) && !defined(_machtype_)
# define _machtype_
    machtype = "hppa";
# endif
# if (defined(sparc) || defined(__sparc__)) && !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
#endif




#if defined(sony_news)
    /* Sony NEWS 800 or 1700 workstation */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sony";
# endif
# if (defined(mips)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "news_mips";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "news_m68k";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "News";
# endif
# if (defined(mc68020) || defined(__mc68020__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
#endif




#if defined(sgi)
    /* Silicon Graphics */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sgi";
# endif
# if (defined(M_mipsel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "iris4d";
# endif
# if (defined(M_mipseb)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "iris4d";
# endif
# if (defined(mc68000)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "iris3d";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "irix";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
# if (defined(mc68000)) && !defined(_machtype_)
# define _machtype_
    machtype = "mc68000";
# endif
#endif




#if defined(ultrix) || defined(__ultrix)
    /* Digital's Ultrix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if (defined(M_mipsel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "decstation";
# endif
# if (defined(M_mipseb)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "decmips";
# endif
# if (defined(vax) || defined(__vax)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "vax";
# endif
# if (defined(__vax__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "vax";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "ultrix";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
# if (defined(vax) || defined (__vax)) && !defined(_machtype_)
# define _machtype_
    machtype = "vax";
# endif
# if (defined(__vax__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "vax";
# endif
#endif




#if defined(MIPS)
    /* Mips OS */
# if !defined(_vendor_)
# define _vendor_
    vendor = "mips";
# endif
# if (defined(M_mipsel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "mips";
# endif
# if (defined(M_mipseb)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "mips";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "mips";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
#endif




#if defined(DECOSF1)
    /* Digital's alpha running osf1 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "dec";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "osf1";
# endif
# if (defined(__alpha)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "alpha";
# endif
# if (defined(__alpha)) && !defined(_machtype_)
# define _machtype_
    machtype = "alpha";
# endif
#endif




#if defined(Lynx)
    /* Lynx OS 2.1 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "Lynx";
# endif
# if (defined(M_mipsel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-mips";
# endif
# if (defined(M_mipseb)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-mips";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-i386";
# endif
# if (defined(i860) || defined(__i860__)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-i860";
# endif
# if (defined(m68k)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-m68k";
# endif
# if (defined(m88k)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-m88k";
# endif
# if (defined(sparc)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-sparc";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "lynxos-unknown";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "LynxOS";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(i860) || defined(__i860__)) && !defined(_machtype_)
# define _machtype_
    machtype = "i860";
# endif
# if (defined(m68k)) && !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
# if (defined(m88k)) && !defined(_machtype_)
# define _machtype_
    machtype = "m88k";
# endif
# if (defined(sparc)) && !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
#endif




#if defined(masscomp)
    /* Masscomp */
# if !defined(_vendor_)
# define _vendor_
    vendor = "masscomp";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "masscomp";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "masscomp";
# endif
#endif



#if defined(__MACHTEN__)
    /* Machintosh */
# if !defined(_vendor_)
# define _vendor_
    vendor = "Tenon";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "Macintosh";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "MachTen";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "Macintosh";
# endif
#endif





#if defined(GOULD_NP1)
    /* Gould */
# if !defined(_vendor_)
# define _vendor_
    vendor = "gould";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "gould_np1";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "gould";
# endif
#endif




#if defined(MULTIFLOW)
    /* Multiflow running 4.3BSD */
# if !defined(_vendor_)
# define _vendor_
    vendor = "multiflow";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "multiflow";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "multiflow";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "bsd43";
# endif
#endif




#if defined(SXA)
    /* PFU/Fujitsu A-xx computer */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sxa";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "pfa50";
# endif
# if (defined(_BSDX_)) && !defined(_ostype_)
# define _ostype_
    ostype = "e60-bsdx";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "e60";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "pfa50";
# endif
#endif




#if defined(titan)
    /* (St)Ardent Titan */
# if !defined(_vendor_)
# define _vendor_
    vendor = "ardent";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "titan";
# endif
#endif




#if defined(stellar)
    /* Stellar */
# if !defined(_vendor_)
# define _vendor_
    vendor = "stellar";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "stellar";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "stellix";
# endif
#endif




#if defined(atari)
    /* Atari TT running SVR4. This machine was never */
    /* commercially available. */
# if !defined(_vendor_)
# define _vendor_
    vendor = "atari";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "atari";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "asv";
# endif
#endif




#if defined(OPUS)
    /* ??? */
# if !defined(_vendor_)
# define _vendor_
    vendor = "opus";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "opus";
# endif
#endif




#if defined(eta10)
    /* ETA running SVR3 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "eta";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "eta10";
# endif
#endif




#if defined(hk68)
    /* Heurikon HK68 running Uniplus+ 5.0 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "heurikon";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "hk68";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "uniplus";
# endif
#endif




#if defined(NDIX)
    /* Norsk Data ND 500/5000 running Ndix */
# if !defined(_vendor_)
# define _vendor_
    vendor = "norsk";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "nd500";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "ndix";
# endif
#endif




#if defined(uts)
    /* Amdahl running uts 2.1 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "amdahl";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "amdahl";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "uts";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "amdahl";
# endif
#endif




#if defined(UTek)
    /* Tektronix 4300 running UTek (BSD 4.2 / 68020 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "tektronix";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "tek4300";
# endif
#endif




#if defined(UTekV)
    /* Tektronix XD88/10 running UTekV 3.2e (SVR3/88100 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "tektronix";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "tekXD88";
# endif
#endif




#if defined(__DGUX__)
    /* Data-General AViiON running DGUX */
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "aviion";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "dgux";
# endif
# if !defined(_vendor_)
# define _vendor_
    vendor = "dg";
# endif
# if (defined(__m88k__)) && !defined(_machtype_)
# define _machtype_
    machtype = "m88k";
# endif
# if (defined(__i386__)) && !defined(_machtype_)
# define _machtype_
    machtype = "pentium";
# endif
#endif




#if defined(sysV68)
    /* Motorola MPC running System V/68 R32V2 (SVR3/68020 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "motorola";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sysV68";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(supermax)
    /* DDE Supermax running System V/68 R3 (SVR3/68020 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "supermax";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "supermax";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(sysV88)
    /* Motorola MPC running System V/88 R32V2 (SVR3/88100 based) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "motorola";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sysV88";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m88k";
# endif
#endif




#if defined(__clipper__)
    /* Clipper Chipset (Intergraph) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "intergraph";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "clipper";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "clipper";
# endif
#endif




#if defined(SNI) || defined(sinix)
    /* Siemens Nixdorf Informationssysteme SINIX */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sni";
# endif
# if (defined(M_intel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "wx200i";
# endif
# if (defined(MIPSEB)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "rm400";
# endif
# if (defined(sinix)) && !defined(_ostype_)
# define _ostype_
    ostype = "sinix";
# endif
# if (defined(M_i586)) && !defined(_machtype_)
# define _machtype_
    machtype = "i586";
# endif
# if (defined(M_i486)) && !defined(_machtype_)
# define _machtype_
    machtype = "i486";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
# if (defined(M_mipsel)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipsel";
# endif
# if (defined(M_mipseb)) && !defined(_machtype_)
# define _machtype_
    machtype = "mipseb";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "mips";
# endif
#endif



#if defined(_OSD_POSIX)
    /* Siemens Nixdorf Informationssysteme BS2000 POSIX (mainframe, EBCDIC) */
# if !defined(_vendor_)
# define _vendor_
    vendor = "sni";
# endif
# if (defined(M_intel)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "bs2000";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "posix";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "bs2000";
# endif
#endif



#if !defined(SOLARIS2) && (SYSVREL == 4)
    /* Unix System V Release 4.0 */
# if (defined(DELL)) && !defined(_vendor_)
# define _vendor_
    vendor = "dell";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i386";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "svr4";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif



#if defined(__uxp__) || defined(__uxps__)
    /* FUJITSU DS/90 7000 */
# if !defined(_vendor_)
# define _vendor_
    vendor = "fujitsu";
# endif
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "ds90";
# endif
# if !defined(_ostype_)
# define _ostype_
    ostype = "sysv4";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
#endif



#if defined(mc68000) || defined(__mc68000__) || defined(mc68k32) || defined(m68k) || defined(mc68010) || defined(mc68020)
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "m68k";
# endif
# if (defined(m68k)) && !defined(_vendor_)
# define _vendor_
    vendor = "motorola";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m68k";
# endif
#endif




#if defined(m88k) || defined(__m88k__)
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "m88k";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "m88k";
# endif
#endif




#if defined(M_intel)
# if (defined(M_i586)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i586";
# endif
# if (defined(M_i486)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i486";
# endif
# if (defined(M_i386)) && !defined(_hosttype_)
# define _hosttype_
    hosttype = "i386";
# endif
# if !defined(_vendor_)
# define _vendor_
    vendor = "intel";
# endif
# if (defined(M_i586)) && !defined(_machtype_)
# define _machtype_
    machtype = "i586";
# endif
# if (defined(M_i486)) && !defined(_machtype_)
# define _machtype_
    machtype = "i486";
# endif
# if (defined(M_i386)) && !defined(_machtype_)
# define _machtype_
    machtype = "i386";
# endif
#endif




#if defined(sparc) || defined(__sparc__)
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "sparc";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "sparc";
# endif
#endif




#if defined(i860) || defined(__i860__)
# if !defined(_hosttype_)
# define _hosttype_
    hosttype = "i860";
# endif
# if !defined(_machtype_)
# define _machtype_
    machtype = "i860";
# endif
#endif




#if defined(osf1)
# if !defined(_ostype_)
# define _ostype_
    ostype = "osf1";
# endif
#endif




#if SYSVREL == 0
# if (defined(BSD4_4)) && !defined(_ostype_)
# define _ostype_
    ostype = "bsd44";
# endif
# if (defined(BSD)) && !defined(_ostype_)
# define _ostype_
    ostype = "bsd";
# endif
# if (defined(POSIX)) && !defined(_ostype_)
# define _ostype_
    ostype = "posix";
# endif
# if (defined(unix) || defined(__unix__)) && !defined(_ostype_)
# define _ostype_
    ostype = "unix";
# endif
#endif




#if SYSVREL == 1
# if !defined(_ostype_)
# define _ostype_
    ostype = "svr1";
# endif
#endif




#if SYSVREL == 2
# if !defined(_ostype_)
# define _ostype_
    ostype = "svr2";
# endif
#endif




#if SYSVREL == 3
# if !defined(_ostype_)
# define _ostype_
    ostype = "svr3";
# endif
#endif




#if SYSVREL == 4
# if !defined(_ostype_)
# define _ostype_
    ostype = "svr4";
# endif
#endif


#ifndef _hosttype_
    hosttype = "unknown";
#endif
#ifndef _ostype_
    ostype = "unknown";
#endif
#ifndef _vendor_
    vendor = "unknown";
#endif
#ifndef _machtype_
    machtype = "unknown";
#endif
    tsetenv(STRHOSTTYPE, str2short(hosttype));
    tsetenv(STRVENDOR,   str2short(vendor));
    tsetenv(STROSTYPE,   str2short(ostype));
    tsetenv(STRMACHTYPE, str2short(machtype));
} /* end setmachine */
