1newcode : 2/* $Header: /p/tcsh/cvsroot/tcsh/host.defs,v 1.55 2012/01/11 20:20:15 christos Exp $ */ 3/* 4 * host.defs: Hosttype/Machtype etc. 5 */ 6/*- 7 * Copyright (c) 1980, 1991 The Regents of the University of California. 8 * All rights reserved. 9 * 10 * Redistribution and use in source and binary forms, with or without 11 * modification, are permitted provided that the following conditions 12 * are met: 13 * 1. Redistributions of source code must retain the above copyright 14 * notice, this list of conditions and the following disclaimer. 15 * 2. Redistributions in binary form must reproduce the above copyright 16 * notice, this list of conditions and the following disclaimer in the 17 * documentation and/or other materials provided with the distribution. 18 * 3. Neither the name of the University nor the names of its contributors 19 * may be used to endorse or promote products derived from this software 20 * without specific prior written permission. 21 * 22 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 */ 34#include "sh.h" 35 36RCSID("$tcsh: host.defs,v 1.55 2012/01/11 20:20:15 christos Exp $") 37 38endcode : 39 40macro : M_mips64el : (defined(mips64) || defined(__mips64)) && (defined(MIPSEL) || defined(__MIPSEL)) 41macro : M_mips64eb : (defined(mips64) || defined(__mips64)) && (defined(MIPSEB) || defined(__MIPSEB)) 42macro : M_mipsel : (!defined(M_mips64el)) && (defined(mips) || defined(__mips)) && (defined(MIPSEL) || defined(__MIPSEL)) 43macro : M_mipseb : (!defined(M_mips64eb)) && (defined(mips) || defined(__mips)) && (defined(MIPSEB) || defined(__MIPSEB)) 44macro : M_i386 : (defined(i386) || defined(__i386__)) 45macro : M_i486 : (defined(i486) || defined(__i486__)) 46macro : M_i586 : (defined(i586) || defined(__i586__)) 47macro : M_i686 : (defined(i686) || defined(__i686__)) 48macro : M_intel : (defined(M_i386) || defined(M_i486) || defined(M_i586)) 49 50newdef : defined(ns32000) 51newcode : 52static char * 53isamultimax(int flag) 54{ 55 if (access("/Umax.image", F_OK) == 0) 56 return "multimax"; 57 else 58 return flag ? "mach" : "ns32000"; 59} 60endcode : 61enddef : 62 63 64newdef : defined(cray) 65newcode : 66/* 67 * On crays, find the current machine type via the target() syscall 68 * We need ctype.h to convert the name returned to lower case 69 */ 70# include <sys/target.h> 71# include <ctype.h> 72# include <string.h> 73 74/* From: hpa@hook.eecs.nwu.edu (H. Peter Anvin) */ 75static char * 76getcray(void) 77{ 78# ifdef MC_GET_SYSTEM /* If we have target() */ 79 struct target data; 80 81 if (target(MC_GET_SYSTEM, &data) != -1) { 82 static char hosttype_buf[sizeof(data.mc_pmt)+1]; 83 unsigned char *p = (unsigned char *) &(data.mc_pmt); 84 char *q = hosttype_buf; 85 int n; 86 87 /* 88 * Copy to buffer and convert to lower case 89 * String may not be null-terminated, so keep a counter 90 */ 91 for (n = 0; *p && n < sizeof(data.mc_pmt); n++) 92 *q++ = tolower(p[n]); 93 94 *q = '\0'; 95 96 /* replace dashes with underscores if present */ 97 while ((q = strchr(hosttype_buf, '-')) != NULL) 98 *q = '_'; 99 return hosttype_buf; /* Return in static buffer */ 100 } 101 else 102# endif /* MC_GET_SYSTEM */ 103 return "cray"; /* target() failed */ 104} 105endcode : 106enddef : 107 108 109newdef : defined(convex) 110newcode : 111/* 112 * On convex, find the current machine type via the getsysinfo() syscall 113 */ 114#include <sys/sysinfo.h> 115 116/* From: fox@convex.com (David DeSimone) */ 117static char * 118getconvex(void) 119{ 120 struct system_information sysinfo; 121 static char result[8]; 122 123 if (getsysinfo(SYSINFO_SIZE, &sysinfo) == -1) 124 return "convex"; 125 126 switch(sysinfo.cpu_type) { 127#ifdef SI_CPUTYPE_C1 128 case SI_CPUTYPE_C1: 129 return "c1"; 130#endif 131 132#ifdef SI_CPUTYPE_C2 133 case SI_CPUTYPE_C2: 134 return "c2"; 135#endif 136 137#ifdef SI_CPUTYPE_C2MP 138 case SI_CPUTYPE_C2MP: 139 (void) strcpy(result, "c2X0"); 140 result[2] = sysinfo.cpu_count + '0'; 141 return result; 142#endif 143 144#ifdef SI_CPUTYPE_C34 145 case SI_CPUTYPE_C34: 146 (void) strcpy(result, "c34X0"); 147 result[3] = sysinfo.cpu_count + '0'; 148 return result; 149#endif 150 151#ifdef SI_CPUTYPE_C38 152 case SI_CPUTYPE_C38: 153 (void) strcpy(result, "c38X0"); 154 result[3] = sysinfo.cpu_count + '0'; 155 return result; 156#endif 157 158#ifdef SI_CPUTYPE_C46 159 case SI_CPUTYPE_C46: 160 (void) strcpy(result, "c46X0"); 161 result[3] = sysinfo.cpu_count + '0'; 162 return result; 163#endif 164 165 default: 166 return "convex"; 167 } 168} 169endcode : 170enddef : 171 172newdef : defined(__linux__) || defined(__CYGWIN__) || defined(__GNU__) || defined(__GLIBC__) 173newcode : 174# include "tw.h" 175#include <sys/utsname.h> 176static char mach[256]; 177static char host[256]; 178static char ostype[32]; 179static void populate(void) 180{ 181 struct utsname uts; 182 int e = uname(&uts); 183 const char *p = short2str(tgetenv(STROSTYPE)); 184 if (p == NULL) { 185#if defined(__ANDROID__) 186 p = "android"; 187#elif defined(__CYGWIN__) 188 p = "cygwin"; 189#else 190 p = "linux"; 191#endif 192 } 193 xsnprintf(ostype, sizeof(ostype), "%s", p); 194 xsnprintf(mach, sizeof(mach), "%s", e != -1 ? uts.machine : "unknown"); 195 xsnprintf(host, sizeof(host), "%s-%s", 196 e != -1 ? uts.machine : "unknown", ostype); 197} 198 199static char * 200getmach(void) 201{ 202 if (!mach[0]) 203 populate(); 204 return mach; 205} 206 207static char * 208gethost(void) 209{ 210 if (!host[0]) 211 populate(); 212 return host; 213} 214 215static char * 216getostype(void) 217{ 218 if (!ostype[0]) 219 populate(); 220 return ostype; 221} 222 223endcode : 224enddef : 225 226newcode : 227void 228getmachine(void) 229{ 230 const char *hosttype; 231 const char *ostype; 232 const char *vendor; 233 const char *machtype; 234 235endcode : 236 237 238newdef : defined(HOSTTYPE) 239hosttype: : HOSTTYPE 240enddef : 241 242 243newdef : defined(__PARAGON__) 244comment : Intel Paragon running OSF/1 245vendor : : "intel" 246hosttype: : "paragon" 247ostype : : "osf1" 248machtype: defined(M_i386) : "i386" 249enddef : 250 251 252newdef : defined(AMIX) 253comment : Amiga running Amix 2.02 254vendor : : "commodore" 255hosttype: : "amiga" 256ostype : : "Amix" 257machtype: : "m68k" 258enddef : 259 260 261newdef : defined(accel) 262comment : celerity Accel 263vendor : : "celerity" 264hosttype: : "celerityACCEL" 265ostype : : "unix" 266machtype: : "accel" 267enddef : 268 269 270newdef : defined(_VMS_POSIX) 271comment : digital vax or alpha running vms posix 272vendor : : "dec" 273hosttype: : "VMS-POSIX" 274ostype : : "vms" 275machtype: defined(alpha) : "alpha" 276machtype: defined(vax) : "vax" 277enddef : 278 279 280newdef : defined(__hp_osf) 281comment : Hewlett Packard running OSF/1 282vendor : : "hp" 283hosttype: defined(pa_risc) : "hp9000s700-osf1" 284hosttype: : "hp-osf1" 285ostype : : "osf1" 286machtype: defined(pa_risc) : "pa_risc" 287enddef : 288 289 290newdef : defined(hp9000) 291comment : Hewlett Packard running MORE/bsd 292vendor : : "hp" 293hosttype: defined(hp300) : "hp300" 294hosttype: defined(hp800) : "hp800" 295hosttype: : "hp9000" 296ostype : defined(BSD4_4) : "bsd44" 297ostype : : "mtXinu" 298machtype: defined(hp300) : "m68k" 299machtype: defined(hp800) : "pa_risc" 300enddef : 301 302 303newdef : defined(hpux) || defined(__hpux) 304comment : Hewlett Packard running HP/UX 305vendor : : "hp" 306hosttype: defined(hp9000s800) : "hp9000s800" 307hosttype: defined(hp9000s700) : "hp9000s700" 308hosttype: defined(hp9000s500) : "hp9000s500" 309hosttype: defined(hp9000s300) : "hp9000s300" 310hosttype: : "hp" 311ostype : : "hpux" 312machtype: defined(hp9000s800) : "pa_risc" 313machtype: defined(hp9000s700) : "pa_risc" 314machtype: defined(hp9000s500) : "m68k" 315machtype: defined(hp9000s300) : "m68k" 316enddef : 317 318 319newdef : defined(apollo) 320comment : Hewlett Packard apollo running Domain/OS 321vendor : : "hp" 322hosttype: : "apollo" 323ostype : : "DomainOS" 324machtype: : "m68k" 325enddef : 326 327 328newdef : defined(sun) || defined(__sun__) 329comment : Sun Microsystems series 2 workstation (68010 based) 330comment : Sun Microsystems series 3 workstation (68020 based) 331comment : Sun Microsystems 386i workstation (386 based) 332comment : Sun Microsystems series 4 workstation (SPARC based) 333vendor : : "sun" 334hosttype: defined(M_i386) && !defined(__SVR4) : "sun386i" 335hosttype: defined(M_i386) && defined(__SVR4) : "i86pc" 336hosttype: defined(mc68010) : "sun2" 337hosttype: defined(mc68020) : "sun3" 338hosttype: defined(sparc) : "sun4" 339hosttype: : "sun" 340ostype : defined(SUNOS3) : "sunos3" 341ostype : defined(SUNOS4) : "sunos4" 342ostype : defined(SOLARIS2) : "solaris" 343machtype: defined(mc68010) : "m68k" 344machtype: defined(mc68020) : "m68k" 345machtype: defined(sparcv9) : "sparcv9" 346machtype: defined(sparc) : "sparc" 347machtype: defined(M_i386) : "i386" 348enddef : 349 350 351newdef : defined(pyr) 352comment : Pyramid Technology 353vendor : : "pyramid" 354hosttype: : "pyramid" 355machtype: : "pyramid" 356enddef : 357 358 359newdef : defined(hcx) || defined(_CX_UX) 360comment : Harris Tahoe running CX/UX 361vendor : : "harris" 362hosttype: : "hcx" 363ostype : : "hcx" 364machtype: : "tahoe" 365enddef : 366 367 368newdef : defined(tahoe) 369comment : Harris Tahoe 370vendor : : "harris" 371hosttype: : "tahoe" 372machtype: : "tahoe" 373enddef : 374 375 376newdef : defined(ibm032) 377comment : RT running IBM AOS4.3 or MACH 378vendor : : "ibm" 379hosttype: : "rt" 380ostype : defined(MACH) : "mach" 381ostype : : "aos" 382machtype: : "ibm032" 383enddef : 384 385 386newdef : defined(aiws) 387comment : RT running IBM aix2.x 388vendor : : "ibm" 389hosttype: : "rtpc" 390ostype : : "aix" 391machtype: : "ibm032" 392enddef : 393 394 395newdef : defined(_AIX370) 396comment : IBM/370 running aix 397vendor : : "ibm" 398hosttype: : "aix370" 399ostype : : "aix" 400machtype: : "ibm370" 401enddef : 402 403 404newdef : defined(_IBMESA) 405comment : IBM/ESA running aix 406vendor : : "ibm" 407hosttype: : "aixESA" 408ostype : : "aix" 409machtype: : "esa" 410enddef : 411 412 413newdef : defined(_IBMR2) 414comment : IBM/RS6000 running aix 415vendor : : "ibm" 416hosttype: : "rs6000" 417ostype : : "aix" 418machtype: : "rs6000" 419enddef : 420 421 422newdef : defined(_AIXPS2) 423comment : IBM/PS2 running aix 424vendor : : "ibm" 425hosttype: : "ps2" 426ostype : : "aix" 427machtype: : "i386" 428enddef : 429 430 431newdef : defined(OREO) 432comment : Macintosh running AU/X 433vendor : : "apple" 434hosttype: : "mac2" 435ostype : : "aux" 436machtype: defined(mc68020) : "m68k" 437enddef : 438 439 440newdef : defined(u3b20d) 441comment : AT&T 3B/20 series running SVR2/3 442vendor : : "att" 443hosttype: : "att3b20" 444machtype: : "u3b20" 445enddef : 446 447 448newdef : defined(u3b15) 449comment : AT&T 3B/15 series running SVR2/3 450vendor : : "att" 451hosttype: : "att3b15" 452machtype: : "u3b15" 453enddef : 454 455 456newdef : defined(u3b5) 457comment : AT&T 3B/5 series running SVR2/3 458vendor : : "att" 459hosttype: : "att3b5" 460machtype: : "u3b5" 461enddef : 462 463 464newdef : defined(u3b2) 465comment : AT&T 3B/2 series running SVR2/3 466vendor : : "att" 467hosttype: : "att3b2" 468machtype: : "u3b2" 469enddef : 470 471 472newdef : defined(UNIXPC) 473comment : AT&T UnixPC att3b1/att7300 474vendor : : "att" 475hosttype: : "unixpc" 476machtype: defined(u3b1) : "u3b1" 477machtype: defined(att7300) : "att7300" 478enddef : 479 480 481newdef : defined(_MINIX) 482comment : Andy Tanenbaum's minix 483vendor : defined(M_i386) : "intel" 484hosttype: defined(M_i386) : "minix386" 485hosttype: : "minix" 486ostype : : "minix" 487machtype: defined(M_i386) : "i386" 488enddef : 489 490 491newdef : defined(__gnu_hurd__) 492comment : GNU/HURD 493vendor : defined(M_intel) : "intel" 494hosttype: defined(M_i686) : "i686" 495hosttype: defined(M_i586) : "i586" 496hosttype: defined(M_i486) : "i486" 497hosttype: defined(M_i386) : "i386" 498ostype : : "gnu" 499machtype: defined(M_i686) : "i686-pc-gnu" 500machtype: defined(M_i586) : "i586-pc-gnu" 501machtype: defined(M_i486) : "i486-pc-gnu" 502machtype: defined(M_i386) : "i386-pc-gnu" 503enddef : 504 505 506newdef : defined(linux) || defined(__GNU__) || defined(__GLIBC__) 507comment : Linus Torvalds's linux 508vendor : defined(M_intel) : "intel" 509hosttype: : gethost() 510ostype : : getostype() 511machtype: : getmach() 512vendor : defined(__ANDROID__) : "linux" 513vendor : defined(alpha) : "dec" 514vendor : defined(PPC) : "apple" 515enddef : 516 517 518newdef : defined(__EMX__) 519comment : OS/2 EMX [unix emulation under OS/2] 520vendor : defined(M_intel) : "intel" 521hosttype: defined(M_i386) : "i386-emx" 522ostype : : "os2" 523machtype: defined(M_i386) : "i386" 524enddef : 525 526 527newdef : defined(__NetBSD__) 528comment : NetBSD 529vendor : defined(algor) : "algoritmics" 530vendor : defined(arm32) || defined(__arm__) : "acorn" 531vendor : defined(alpha) : "digital" 532vendor : defined(amiga) : "commodore" 533vendor : defined(atari) : "atari" 534vendor : defined(hp300) : "hp" 535vendor : defined(M_intel) : "intel" 536vendor : defined(m68k) : "motorola" 537vendor : defined(mac68k) : "apple" 538vendor : defined(pc532) : "national-semi" 539vendor : defined(pmax) : "dec" 540vendor : defined(powerpc) : "motorola" 541vendor : defined(mips) : "mips" 542vendor : defined(sparc) : "sun" 543vendor : defined(sparc64) : "sun" 544vendor : defined(sun3) : "sun" 545vendor : defined(vax) : "digital" 546vendor : defined(x86_64) : "amd" 547hosttype: : "NetBSD" 548ostype : : "NetBSD" 549machtype: defined(alpha) : "alpha" 550machtype: defined(algor) : "algor" 551machtype: defined(arm32) || defined(__APCS_32__) : "arm32" 552machtype: defined(arm26) || defined(__APCS_26__) : "arm26" 553machtype: defined(arm) : "arm" 554machtype: defined(sparc) : "sparc" 555machtype: defined(sparc64) : "sparc64" 556machtype: defined(mc68020) : "m68k" 557machtype: defined(M_i386) : "i386" 558machtype: defined(M_mipsel) : "mipsel" 559machtype: defined(M_mipseb) : "mipseb" 560machtype: defined(mips) : "mips" 561machtype: defined(pc532) : "pc532" 562machtype: defined(powerpc) : "powerpc" 563machtype: defined(vax) : "vax" 564machtype: defined(x86_64) : "x86_64" 565enddef : 566 567 568newdef : defined(__FreeBSD__) 569comment : FreeBSD 570vendor : defined(alpha) : "digital" 571vendor : defined(arm32) || defined(__arm__) : "acorn" 572vendor : defined(M_intel) : "intel" 573vendor : defined(ia64) : "intel" 574vendor : defined(mips) : "mips" 575vendor : defined(powerpc) : "motorola" 576vendor : defined(sparc) : "sun" 577vendor : defined(sparc64) : "sun" 578vendor : defined(x86_64) : "amd" 579hosttype: : "FreeBSD" 580ostype : : "FreeBSD" 581machtype: defined(alpha) : "alpha" 582machtype: defined(arm32) || defined(__APCS_32__) : "arm32" 583machtype: defined(arm) : "arm" 584machtype: defined(ia64) : "ia64" 585machtype: defined(M_i386) : "i386" 586machtype: defined(mips) : "mips" 587machtype: defined(powerpc) : "powerpc" 588machtype: defined(sparc) : "sparc" 589machtype: defined(sparc64) : "sparc64" 590machtype: defined(x86_64) : "x86_64" 591enddef : 592 593 594newdef : defined(__MidnightBSD__) 595comment : MidnightBSD 596vendor : defined(M_intel) : "intel" 597hosttype: : "MidnightBSD" 598ostype : : "MidnightBSD" 599machtype: defined(M_i386) : "i386" 600enddef : 601 602 603newdef : defined(__386BSD__) 604comment : Bill Jolitz's 386BSD 605vendor : defined(M_intel) : "intel" 606hosttype: : "386BSD" 607ostype : : "386BSD" 608machtype: : "i386" 609enddef : 610 611 612newdef : defined(bsdi) 613comment : BSDI's unix 614vendor : defined(M_intel) : "intel" 615vendor : defined(sparc) : "sun" 616vendor : defined(powerpc) : "motorola" 617hosttype: defined(M_intel) : "bsd386" 618hosttype: defined(sparc) : "bsd-sparc" 619hosttype: defined(powerpc) : "bsd-powerpc" 620ostype : : "bsdi" 621machtype: defined(M_i386) : "i386" 622machtype: defined(sparc) : "sparc" 623machtype: defined(powerpc) : "powerpc" 624enddef : 625 626 627newdef : defined(COHERENT) 628comment : COHERENT's unix 629vendor : defined(_I386) : "intel" 630hosttype: : "coh386" 631hosttype: : "coherent" 632ostype : : "coherent" 633machtype: defined(_I386) : "i386" 634enddef : 635 636newdef : defined(concurrent) 637comment : Concurrent PowerHawk 638vendor : : "concurrent" 639hosttype: : "powerhawk" 640ostype : : "powermax_os" 641machtype: : "powerhawk" 642enddef : 643 644newdef : defined(SCO) 645comment : SCO UNIX System V/386 Release 3.2 646vendor : : "sco" 647hosttype: : "sco386" 648ostype : : "sco_unix" 649machtype: : "i386" 650enddef : 651 652newdef : defined(M_XENIX) && !defined(M_UNIX) 653comment : SCO XENIX 654vendor : : "sco" 655hosttype: : "sco_xenix" 656ostype : : "sco_xenix" 657machtype: defined(M_I386) : "i386" 658machtype: defined(M_I286) : "i286" 659enddef : 660 661 662newdef : defined(ISC) || defined(ISC202) 663comment : Interactive Unix 664vendor : : "isc" 665hosttype: : "isc386" 666ostype : defined(POSIX) : "POSIX" 667ostype : : "SVR3" 668machtype: defined(M_i386) : "i386" 669enddef : 670 671 672newdef : defined(INTEL) 673comment : Intel Unix 674vendor : : "intel" 675hosttype: : "intel386" 676ostype : : "intel_unix" 677machtype: defined(M_i386) : "i386" 678enddef : 679 680 681newdef : defined(MACH) 682comment : cmu's mach 683vendor : : "cmu" 684hosttype: defined(M_i386) : "i386-mach" 685ostype : : "mach" 686machtype: defined(M_i386) : "i386" 687enddef : 688 689 690newdef : defined(alliant) 691comment : Alliants FSX 692vendor : : "alliant" 693hosttype: defined(mc68000) : "alliant-fx80" 694hosttype: defined(i860) : "alliant-fx2800" 695hosttype: : "alliant" 696ostype : : "fsx" 697machtype: defined(mc68000) : "mc68000" 698machtype: defined(i860) : "i860" 699enddef : 700 701 702newdef : defined(_FTX) 703comment : Stratus Computer, Inc FTX2 (i860 based) 704comment : Stratus Computer, Inc FTX3 (HPPA based) 705vendor : : "stratus" 706hosttype: defined(i860) && defined(_FTX) : "atlantic" 707hosttype: defined(hppa) && defined(_FTX) : "continuum" 708ostype : defined(i860) && defined(_FTX) : "ftx2" 709ostype : defined(hppa) && defined(_FTX) : "ftx3" 710machtype: defined(i860) : "i860" 711machtype: defined(hppa) : "hppa" 712enddef : 713 714 715newdef : defined(sequent) || defined(_SEQUENT_) 716comment : Sequent Balance (32000 based) 717comment : Sequent Symmetry running DYNIX/ptx (386/486 based) 718comment : Sequent Symmetry running DYNIX 3 (386/486 based) 719vendor : : "sequent" 720hosttype: defined(M_i386) && defined(sequent) : "symmetry" 721hosttype: defined(M_i386) : "ptx" 722hosttype: : "balance" 723ostype : defined(M_i386) && !defined(sequent) : "ptx" 724ostype : : "dynix3" 725machtype: defined(M_i386) : "i386" 726machtype: defined(ns32000) : "ns32000" 727enddef : 728 729 730newdef : defined(ns32000) 731comment : Encore Computer Corp. Multimax (32000 based) 732vendor : : "encore" 733hosttype: defined(CMUCS) : "multimax" 734hosttype: : isamultimax(0) 735ostype : defined(CMUCS) : "mach" 736ostype : : isamultimax(1) 737machtype: : "ns32000" 738enddef : 739 740 741newdef : defined(iconuxv) 742comment : Icon 88k running Unix 743vendor : : "icon" 744hosttype: : "icon" 745ostype : : "iconuxv" 746machtype: defined(m88k) : "m88k" 747enddef : 748 749 750newdef : defined(_CRAY) && defined(_CRAYCOM) 751comment : Cray Computer Corp. running CSOS 752vendor : : "ccc" 753hosttype: defined(_CRAY2) : "cray" 754hosttype: defined(_CRAY3) : "cray" 755hosttype: defined(_CRAY4) : "cray" 756ostype : : "CSOS" 757machtype: defined(_CRAY2) : "cray2" 758machtype: defined(_CRAY3) : "cray3" 759machtype: defined(_CRAY4) : "cray4" 760enddef : 761 762 763newdef : defined(cray) && !defined(_CRAYMPP) 764comment : Cray Research Inc. PVP running UNICOS 765vendor : : "cri" 766hosttype: : getcray() 767ostype : : "unicos" 768machtype: : getcray() 769enddef : 770 771 772newdef : defined(cray) && defined(_CRAYT3D) 773comment : Cray Research Inc. running UNICOS MAX 774vendor : : "cri" 775hosttype: : getcray() 776ostype : : "unicosmax" 777machtype: : getcray() 778enddef : 779 780 781newdef : defined(cray) && defined(_CRAYT3E) 782comment : Cray Research Inc. running UNICOS/mk 783vendor : : "cri" 784hosttype: : getcray() 785ostype : : "unicosmk" 786machtype: : getcray() 787enddef : 788 789 790newdef : defined(convex) 791comment : Convex 792vendor : : "convex" 793hosttype: : "convex" 794ostype : : "convexos" 795machtype: : getconvex() 796enddef : 797 798 799newdef : defined(butterfly) 800comment : BBN Butterfly 1000 801vendor : : "bbn" 802hosttype: : "butterfly" 803machtype: defined(mc68020) : "m68k" 804enddef : 805 806 807newdef : defined(NeXT) 808comment : NeXTStep 809vendor : : "next" 810hosttype: defined(mc68020) : "next" 811hosttype: defined(M_i386) : "intel-pc" 812hosttype: defined(hppa) : "hp" 813hosttype: defined(sparc) : "sun" 814ostype : : "nextstep" 815machtype: defined(mc68020) : "m68k" 816machtype: defined(M_i386) : "i386" 817machtype: defined(hppa) : "hppa" 818machtype: defined(sparc) : "sparc" 819enddef : 820 821 822newdef : defined(__APPLE__) && defined(__MACH__) 823comment : OS X 824vendor : : "apple" 825hosttype: defined(i386) : "intel-pc" 826hosttype: defined(ppc) : "powermac" 827ostype : : "darwin" 828machtype: defined(i386) : "i386" 829machtype: defined(ppc) : "powerpc" 830enddef : 831 832 833newdef : defined(sony_news) 834comment : Sony NEWS 800 or 1700 workstation 835vendor : : "sony" 836hosttype: defined(mips) : "news_mips" 837hosttype: defined(mc68020) : "news_m68k" 838ostype : : "News" 839machtype: defined(mc68020) : "m68k" 840machtype: defined(M_mipsel) : "mipsel" 841machtype: defined(M_mipseb) : "mipseb" 842enddef : 843 844 845newdef : defined(sgi) 846comment : Silicon Graphics 847vendor : : "sgi" 848hosttype: defined(M_mipsel) : "iris4d" 849hosttype: defined(M_mipseb) : "iris4d" 850hosttype: defined(mc68000) : "iris3d" 851ostype : : "irix" 852machtype: defined(M_mipsel) : "mipsel" 853machtype: defined(M_mipseb) : "mipseb" 854machtype: defined(mc68000) : "mc68000" 855enddef : 856 857 858newdef : defined(ultrix) || defined(__ultrix) 859comment : Digital's Ultrix 860vendor : : "dec" 861hosttype: defined(M_mipsel) : "decstation" 862hosttype: defined(M_mipseb) : "decmips" 863hosttype: defined(vax) : "vax" 864ostype : : "ultrix" 865machtype: defined(M_mipsel) : "mipsel" 866machtype: defined(M_mipseb) : "mipseb" 867machtype: defined(vax) : "vax" 868enddef : 869 870 871newdef : defined(MIPS) 872comment : Mips OS 873vendor : : "mips" 874hosttype: defined(M_mipsel) : "mips" 875hosttype: defined(M_mipseb) : "mips" 876ostype : : "mips" 877machtype: defined(M_mipsel) : "mipsel" 878machtype: defined(M_mipseb) : "mipseb" 879enddef : 880 881 882newdef : defined(DECOSF1) 883comment : Digital's alpha running osf1 884vendor : : "dec" 885ostype : : "osf1" 886hosttype: defined(alpha) : "alpha" 887machtype: defined(alpha) : "alpha" 888enddef : 889 890 891newdef : defined(Lynx) 892comment : Lynx OS 2.1 893vendor : : "Lynx" 894hosttype: defined(M_mipsel) : "lynxos-mips" 895hosttype: defined(M_mipseb) : "lynxos-mips" 896hosttype: defined(M_i386) : "lynxos-i386" 897hosttype: defined(i860) : "lynxos-i860" 898hosttype: defined(m68k) : "lynxos-m68k" 899hosttype: defined(m88k) : "lynxos-m88k" 900hosttype: defined(sparc) : "lynxos-sparc" 901hosttype: : "lynxos-unknown" 902ostype : : "LynxOS" 903machtype: defined(M_mipsel) : "mipsel" 904machtype: defined(M_mipseb) : "mipseb" 905machtype: defined(M_i386) : "i386" 906machtype: defined(i860) : "i860" 907machtype: defined(m68k) : "m68k" 908machtype: defined(m88k) : "m88k" 909machtype: defined(sparc) : "sparc" 910enddef : 911 912 913newdef : defined(masscomp) 914comment : Masscomp 915vendor : : "masscomp" 916hosttype: : "masscomp" 917ostype : : "masscomp" 918enddef : 919 920newdef : defined(__MACHTEN__) 921comment : Machintosh 922vendor : : "Tenon" 923hosttype: : "Macintosh" 924ostype : : "MachTen" 925machtype: : "Macintosh" 926enddef : 927 928 929 930newdef : defined(GOULD_NP1) 931comment : Gould 932vendor : : "gould" 933hosttype: : "gould_np1" 934machtype: : "gould" 935enddef : 936 937 938newdef : defined(MULTIFLOW) 939comment : Multiflow running 4.3BSD 940vendor : : "multiflow" 941hosttype: : "multiflow" 942machtype: : "multiflow" 943ostype : : "bsd43" 944enddef : 945 946 947newdef : defined(SXA) 948comment : PFU/Fujitsu A-xx computer 949vendor : : "sxa" 950hosttype: : "pfa50" 951ostype : defined(_BSDX_) : "e60-bsdx" 952ostype : : "e60" 953machtype: : "pfa50" 954enddef : 955 956 957newdef : defined(titan) 958comment : (St)Ardent Titan 959vendor : : "ardent" 960hosttype: : "titan" 961enddef : 962 963 964newdef : defined(stellar) 965comment : Stellar 966vendor : : "stellar" 967hosttype: : "stellar" 968ostype : : "stellix" 969enddef : 970 971 972newdef : defined(atari) 973comment : Atari TT running SVR4. This machine was never 974comment : commercially available. 975vendor : : "atari" 976hosttype: : "atari" 977ostype : : "asv" 978enddef : 979 980 981newdef : defined(OPUS) 982comment : ??? 983vendor : : "opus" 984hosttype: : "opus" 985enddef : 986 987 988newdef : defined(eta10) 989comment : ETA running SVR3 990vendor : : "eta" 991hosttype: : "eta10" 992enddef : 993 994 995newdef : defined(hk68) 996comment : Heurikon HK68 running Uniplus+ 5.0 997vendor : : "heurikon" 998hosttype: : "hk68" 999ostype : : "uniplus" 1000enddef : 1001 1002 1003newdef : defined(NDIX) 1004comment : Norsk Data ND 500/5000 running Ndix 1005vendor : : "norsk" 1006hosttype: : "nd500" 1007ostype : : "ndix" 1008enddef : 1009 1010 1011newdef : defined(AMIGA) 1012comment : Amiga running AmigaOS+GG 1013vendor : : "commodore" 1014hosttype: : "amiga" 1015ostype : : "AmigaOS" 1016machtype: : "m68k" 1017enddef : 1018 1019 1020newdef : defined(uts) 1021comment : Amdahl running uts 2.1 1022vendor : : "amdahl" 1023hosttype: : "amdahl" 1024ostype : : "uts" 1025machtype: : "amdahl" 1026enddef : 1027 1028 1029newdef : defined(UTek) 1030comment : Tektronix 4300 running UTek (BSD 4.2 / 68020 based) 1031vendor : : "tektronix" 1032hosttype: : "tek4300" 1033enddef : 1034 1035 1036newdef : defined(UTekV) 1037comment : Tektronix XD88/10 running UTekV 3.2e (SVR3/88100 based) 1038vendor : : "tektronix" 1039hosttype: : "tekXD88" 1040enddef : 1041 1042 1043newdef : defined(__DGUX__) 1044comment : Data-General AViiON running DGUX 1045hosttype: : "aviion" 1046ostype : : "dgux" 1047vendor : : "dg" 1048machtype: defined(m88k) : "m88k" 1049machtype: defined(i386) : "pentium" 1050enddef : 1051 1052 1053newdef : defined(sysV68) 1054comment : Motorola MPC running System V/68 R32V2 (SVR3/68020 based) 1055vendor : : "motorola" 1056hosttype: : "sysV68" 1057machtype: : "m68k" 1058enddef : 1059 1060 1061newdef : defined(supermax) 1062comment : DDE Supermax running System V/68 R3 (SVR3/68020 based) 1063vendor : : "supermax" 1064hosttype: : "supermax" 1065machtype: : "m68k" 1066enddef : 1067 1068 1069newdef : defined(sysV88) 1070comment : Motorola MPC running System V/88 R32V2 (SVR3/88100 based) 1071vendor : : "motorola" 1072hosttype: : "sysV88" 1073machtype: : "m88k" 1074enddef : 1075 1076 1077newdef : defined(__clipper__) 1078comment : Clipper Chipset (Intergraph) 1079vendor : : "intergraph" 1080hosttype: : "clipper" 1081machtype: : "clipper" 1082enddef : 1083 1084newdef : defined(__QNX__) 1085ostype : : "qnx" 1086enddef : 1087 1088newdef : (defined(SNI) || defined(sinix)) && !defined(_OSD_POSIX) 1089comment : Fujitsu Siemens Computers (former "Siemens Nixdorf Informationssysteme"): SINIX aka. ReliantUNIX, a SVR4 derivative 1090vendor : : "fsc" 1091hosttype: defined(M_intel) : "wx200i" 1092hosttype: defined(MIPSEB) : "rm400" 1093ostype : defined(sinix) : "sinix" 1094machtype: defined(M_i586) : "i586" 1095machtype: defined(M_i486) : "i486" 1096machtype: defined(M_i386) : "i386" 1097machtype: defined(M_mipsel) : "mipsel" 1098machtype: defined(M_mipseb) : "mipseb" 1099machtype: : "mips" 1100enddef : 1101 1102newdef : defined(_OSD_POSIX) 1103comment : Fujitsu Siemens Computers (former "Siemens Nixdorf Informationssysteme"): BS2000 POSIX (mainframe, EBCDIC) 1104vendor : : "fsc" 1105hosttype: : "bs2000" 1106ostype : : "osdposix" 1107machtype: #machine(7500) : "s390" 1108machtype: #machine(mips) : "mips" 1109machtype: #machine(sparc) : "sparc" 1110machtype: : "bs2000" 1111enddef : 1112 1113newdef : defined(__MVS__) 1114comment : ibm uss s/390 (mainframe, EBCDIC) 1115vendor : : "ibm" 1116hosttype: : "s390" 1117ostype : : "os390" 1118machtype: : "s390" 1119enddef : 1120 1121newdef : defined(_SX) 1122comment : NEC Corporation (SX-4) 1123vendor : : "nec" 1124ostype : : "superux" 1125hosttype: : "sx4" 1126machtype: : "sx4" 1127enddef : 1128 1129newdef : !defined(SOLARIS2) && (SYSVREL == 4) 1130comment : Unix System V Release 4.0 1131vendor : defined(DELL) : "dell" 1132hosttype: defined(M_i386) : "i386" 1133ostype : : "svr4" 1134machtype: defined(M_i386) : "i386" 1135enddef : 1136 1137newdef : defined(__uxp__) || defined(__uxps__) 1138comment : FUJITSU DS/90 7000 1139vendor : : "fujitsu" 1140hosttype: : "ds90" 1141ostype : : "sysv4" 1142machtype: : "sparc" 1143enddef : 1144 1145newdef : defined(__CYGWIN__) 1146comment : Cygwin 1147vendor : : "intel" 1148hosttype: : gethost() 1149ostype : : getostype() 1150machtype: : getmach() 1151enddef : 1152 1153newdef : defined(_UWIN) 1154comment : AT&T Research Unix for Windows 1155vendor : : "att" 1156hosttype: : "win32.i386" 1157machtype: : "i386" 1158enddef : 1159 1160 1161newdef : defined(mc68000) || defined(mc68k32) || defined(m68k) || defined(mc68010) || defined(mc68020) 1162hosttype: : "m68k" 1163vendor : defined(m68k) : "motorola" 1164machtype: : "m68k" 1165enddef : 1166 1167 1168newdef : defined(m88k) 1169hosttype: : "m88k" 1170machtype: : "m88k" 1171enddef : 1172 1173 1174newdef : defined(M_intel) 1175hosttype: defined(M_i586) : "i586" 1176hosttype: defined(M_i486) : "i486" 1177hosttype: defined(M_i386) : "i386" 1178vendor : : "intel" 1179machtype: defined(M_i586) : "i586" 1180machtype: defined(M_i486) : "i486" 1181machtype: defined(M_i386) : "i386" 1182enddef : 1183 1184 1185newdef : defined(sparc) 1186hosttype: : "sparc" 1187machtype: : "sparc" 1188enddef : 1189 1190 1191newdef : defined(i860) 1192hosttype: : "i860" 1193machtype: : "i860" 1194enddef : 1195 1196 1197newdef : defined(osf1) 1198ostype : : "osf1" 1199enddef : 1200 1201 1202newdef : SYSVREL == 0 1203ostype : defined(BSD4_4) : "bsd44" 1204ostype : defined(BSD) : "bsd" 1205ostype : defined(POSIX) : "posix" 1206enddef : 1207 1208 1209newdef : SYSVREL == 1 1210ostype : : "svr1" 1211enddef : 1212 1213 1214newdef : SYSVREL == 2 1215ostype : : "svr2" 1216enddef : 1217 1218 1219newdef : SYSVREL == 3 1220ostype : : "svr3" 1221enddef : 1222 1223 1224newdef : SYSVREL == 4 1225ostype : : "svr4" 1226enddef : 1227 1228 1229newcode : 1230#ifndef _hosttype_ 1231 hosttype = "unknown"; 1232#endif 1233#ifndef _ostype_ 1234 ostype = "unknown"; 1235#endif 1236#ifndef _vendor_ 1237 vendor = "unknown"; 1238#endif 1239#ifndef _machtype_ 1240 machtype = "unknown"; 1241#endif 1242 tsetenv(STRHOSTTYPE, str2short(hosttype)); 1243 tsetenv(STRVENDOR, str2short(vendor)); 1244 tsetenv(STROSTYPE, str2short(ostype)); 1245 tsetenv(STRMACHTYPE, str2short(machtype)); 1246} /* end setmachine */ 1247endcode : 1248