You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by fi...@apache.org on 2001/02/18 09:14:14 UTC

cvs commit: apr/build config.guess config.sub

fielding    01/02/18 00:14:14

  Added:       build    config.guess config.sub
  Log:
  Import of platform guessing scripts from GNU libtool 1.3.5.
  These are in CVS because Apache runs on platforms that are not
  known by the GNU tools (yet).
  
  Obtained from: GNU libtool 1.3.5
  
  Revision  Changes    Path
  1.1                  apr/build/config.guess
  
  Index: config.guess
  ===================================================================
  #! /bin/sh
  # Attempt to guess a canonical system name.
  #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
  #   Free Software Foundation, Inc.
  #
  # This file is free software; you can redistribute it and/or modify it
  # under the terms of the GNU General Public License as published by
  # the Free Software Foundation; either version 2 of the License, or
  # (at your option) any later version.
  #
  # This program is distributed in the hope that it will be useful, but
  # WITHOUT ANY WARRANTY; without even the implied warranty of
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  # General Public License for more details.
  #
  # You should have received a copy of the GNU General Public License
  # along with this program; if not, write to the Free Software
  # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  #
  # As a special exception to the GNU General Public License, if you
  # distribute this file as part of a program that contains a
  # configuration script generated by Autoconf, you may include it under
  # the same distribution terms that you use for the rest of that program.
  
  # Written by Per Bothner <bo...@cygnus.com>.
  # Please send patches to <co...@gnu.org>.
  #
  # This script attempts to guess a canonical system name similar to
  # config.sub.  If it succeeds, it prints the system name on stdout, and
  # exits with 0.  Otherwise, it exits with 1.
  #
  # The plan is that this can be called by configure scripts if you
  # don't specify an explicit system type (host/target name).
  #
  # Only a few systems have been added to this list; please add others
  # (but try to keep the structure clean).
  #
  
  # Use $HOST_CC if defined. $CC may point to a cross-compiler
  if test x"$CC_FOR_BUILD" = x; then
    if test x"$HOST_CC" != x; then
      CC_FOR_BUILD="$HOST_CC"
    else
      if test x"$CC" != x; then
        CC_FOR_BUILD="$CC"
      else
        CC_FOR_BUILD=cc
      fi
    fi
  fi
  
  
  # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
  # (ghazi@noc.rutgers.edu 8/24/94.)
  if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
  	PATH=$PATH:/.attbin ; export PATH
  fi
  
  UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
  UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
  UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
  UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
  
  dummy=dummy-$$
  trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
  
  # Note: order is significant - the case branches are not exclusive.
  
  case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
      *:NetBSD:*:*)
  	# Netbsd (nbsd) targets should (where applicable) match one or
  	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
  	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
  	# switched to ELF, *-*-netbsd* would select the old
  	# object file format.  This provides both forward
  	# compatibility and a consistent mechanism for selecting the
  	# object file format.
  	# Determine the machine/vendor (is the vendor relevant).
  	case "${UNAME_MACHINE}" in
  	    amiga) machine=m68k-cbm ;;
  	    arm32) machine=arm-unknown ;;
  	    atari*) machine=m68k-atari ;;
  	    sun3*) machine=m68k-sun ;;
  	    mac68k) machine=m68k-apple ;;
  	    macppc) machine=powerpc-apple ;;
  	    hp3[0-9][05]) machine=m68k-hp ;;
  	    ibmrt|romp-ibm) machine=romp-ibm ;;
  	    *) machine=${UNAME_MACHINE}-unknown ;;
  	esac
  	# The Operating System including object format.
  	if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
  		| grep __ELF__ >/dev/null
  	then
  	    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
  	    # Return netbsd for either.  FIX?
  	    os=netbsd
  	else
  	    os=netbsdelf
  	fi
  	# The OS release
  	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
  	# contains redundant information, the shorter form:
  	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
  	echo "${machine}-${os}${release}"
  	exit 0 ;;
      alpha:OSF1:*:*)
  	if test $UNAME_RELEASE = "V4.0"; then
  		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
  	fi
  	# A Vn.n version is a released version.
  	# A Tn.n version is a released field test version.
  	# A Xn.n version is an unreleased experimental baselevel.
  	# 1.2 uses "1.2" for uname -r.
  	cat <<EOF >$dummy.s
  	.data
  \$Lformat:
  	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
  
  	.text
  	.globl main
  	.align 4
  	.ent main
  main:
  	.frame \$30,16,\$26,0
  	ldgp \$29,0(\$27)
  	.prologue 1
  	.long 0x47e03d80 # implver \$0
  	lda \$2,-1
  	.long 0x47e20c21 # amask \$2,\$1
  	lda \$16,\$Lformat
  	mov \$0,\$17
  	not \$1,\$18
  	jsr \$26,printf
  	ldgp \$29,0(\$26)
  	mov 0,\$16
  	jsr \$26,exit
  	.end main
  EOF
  	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
  	if test "$?" = 0 ; then
  		case `./$dummy` in
  			0-0)
  				UNAME_MACHINE="alpha"
  				;;
  			1-0)
  				UNAME_MACHINE="alphaev5"
  				;;
  			1-1)
  				UNAME_MACHINE="alphaev56"
  				;;
  			1-101)
  				UNAME_MACHINE="alphapca56"
  				;;
  			2-303)
  				UNAME_MACHINE="alphaev6"
  				;;
  			2-307)
  				UNAME_MACHINE="alphaev67"
  				;;
  		esac
  	fi
  	rm -f $dummy.s $dummy
  	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  	exit 0 ;;
      Alpha\ *:Windows_NT*:*)
  	# How do we know it's Interix rather than the generic POSIX subsystem?
  	# Should we change UNAME_MACHINE based on the output of uname instead
  	# of the specific Alpha model?
  	echo alpha-pc-interix
  	exit 0 ;;
      21064:Windows_NT:50:3)
  	echo alpha-dec-winnt3.5
  	exit 0 ;;
      Amiga*:UNIX_System_V:4.0:*)
  	echo m68k-cbm-sysv4
  	exit 0;;
      amiga:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      *:[Aa]miga[Oo][Ss]:*:*)
  	echo ${UNAME_MACHINE}-unknown-amigaos
  	exit 0 ;;
      arc64:OpenBSD:*:*)
  	echo mips64el-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      arc:OpenBSD:*:*)
  	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      hkmips:OpenBSD:*:*)
  	echo mips-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      pmax:OpenBSD:*:*)
  	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      sgi:OpenBSD:*:*)
  	echo mips-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      wgrisc:OpenBSD:*:*)
  	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      *:OS/390:*:*)
  	echo i370-ibm-openedition
  	exit 0 ;;
      arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
  	echo arm-acorn-riscix${UNAME_RELEASE}
  	exit 0;;
      SR2?01:HI-UX/MPP:*:*)
  	echo hppa1.1-hitachi-hiuxmpp
  	exit 0;;
      Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
  	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
  	if test "`(/bin/universe) 2>/dev/null`" = att ; then
  		echo pyramid-pyramid-sysv3
  	else
  		echo pyramid-pyramid-bsd
  	fi
  	exit 0 ;;
      NILE*:*:*:dcosx)
  	echo pyramid-pyramid-svr4
  	exit 0 ;;
      sun4H:SunOS:5.*:*)
  	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  	exit 0 ;;
      sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
  	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  	exit 0 ;;
      i86pc:SunOS:5.*:*)
  	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  	exit 0 ;;
      sun4*:SunOS:6*:*)
  	# According to config.sub, this is the proper way to canonicalize
  	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
  	# it's likely to be more like Solaris than SunOS4.
  	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  	exit 0 ;;
      sun4*:SunOS:*:*)
  	case "`/usr/bin/arch -k`" in
  	    Series*|S4*)
  		UNAME_RELEASE=`uname -v`
  		;;
  	esac
  	# Japanese Language versions have a version number like `4.1.3-JL'.
  	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
  	exit 0 ;;
      sun3*:SunOS:*:*)
  	echo m68k-sun-sunos${UNAME_RELEASE}
  	exit 0 ;;
      sun*:*:4.2BSD:*)
  	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
  	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
  	case "`/bin/arch`" in
  	    sun3)
  		echo m68k-sun-sunos${UNAME_RELEASE}
  		;;
  	    sun4)
  		echo sparc-sun-sunos${UNAME_RELEASE}
  		;;
  	esac
  	exit 0 ;;
      aushp:SunOS:*:*)
  	echo sparc-auspex-sunos${UNAME_RELEASE}
  	exit 0 ;;
      atari*:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      # The situation for MiNT is a little confusing.  The machine name
      # can be virtually everything (everything which is not
      # "atarist" or "atariste" at least should have a processor
      # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
      # to the lowercase version "mint" (or "freemint").  Finally
      # the system name "TOS" denotes a system which is actually not
      # MiNT.  But MiNT is downward compatible to TOS, so this should
      # be no problem.
      atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
          echo m68k-atari-mint${UNAME_RELEASE}
  	exit 0 ;;
      atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
  	echo m68k-atari-mint${UNAME_RELEASE}
          exit 0 ;;
      *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
          echo m68k-atari-mint${UNAME_RELEASE}
  	exit 0 ;;
      milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
          echo m68k-milan-mint${UNAME_RELEASE}
          exit 0 ;;
      hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
          echo m68k-hades-mint${UNAME_RELEASE}
          exit 0 ;;
      *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
          echo m68k-unknown-mint${UNAME_RELEASE}
          exit 0 ;;
      sun3*:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      mac68k:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      mvme68k:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      mvme88k:OpenBSD:*:*)
  	echo m88k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      powerpc:machten:*:*)
  	echo powerpc-apple-machten${UNAME_RELEASE}
  	exit 0 ;;
      RISC*:Mach:*:*)
  	echo mips-dec-mach_bsd4.3
  	exit 0 ;;
      RISC*:ULTRIX:*:*)
  	echo mips-dec-ultrix${UNAME_RELEASE}
  	exit 0 ;;
      VAX*:ULTRIX*:*:*)
  	echo vax-dec-ultrix${UNAME_RELEASE}
  	exit 0 ;;
      2020:CLIX:*:* | 2430:CLIX:*:*)
  	echo clipper-intergraph-clix${UNAME_RELEASE}
  	exit 0 ;;
      mips:*:*:UMIPS | mips:*:*:RISCos)
  	sed 's/^	//' << EOF >$dummy.c
  #ifdef __cplusplus
  #include <stdio.h>  /* for printf() prototype */
  	int main (int argc, char *argv[]) {
  #else
  	int main (argc, argv) int argc; char *argv[]; {
  #endif
  	#if defined (host_mips) && defined (MIPSEB)
  	#if defined (SYSTYPE_SYSV)
  	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
  	#endif
  	#if defined (SYSTYPE_SVR4)
  	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
  	#endif
  	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
  	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
  	#endif
  	#endif
  	  exit (-1);
  	}
  EOF
  	$CC_FOR_BUILD $dummy.c -o $dummy \
  	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
  	  && rm $dummy.c $dummy && exit 0
  	rm -f $dummy.c $dummy
  	echo mips-mips-riscos${UNAME_RELEASE}
  	exit 0 ;;
      Night_Hawk:Power_UNIX:*:*)
  	echo powerpc-harris-powerunix
  	exit 0 ;;
      m88k:CX/UX:7*:*)
  	echo m88k-harris-cxux7
  	exit 0 ;;
      m88k:*:4*:R4*)
  	echo m88k-motorola-sysv4
  	exit 0 ;;
      m88k:*:3*:R3*)
  	echo m88k-motorola-sysv3
  	exit 0 ;;
      AViiON:dgux:*:*)
          # DG/UX returns AViiON for all architectures
          UNAME_PROCESSOR=`/usr/bin/uname -p`
  	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
  	then
  	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
  	       [ ${TARGET_BINARY_INTERFACE}x = x ]
  	    then
  		echo m88k-dg-dgux${UNAME_RELEASE}
  	    else
  		echo m88k-dg-dguxbcs${UNAME_RELEASE}
  	    fi
  	else
  	    echo i586-dg-dgux${UNAME_RELEASE}
  	fi
   	exit 0 ;;
      M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
  	echo m88k-dolphin-sysv3
  	exit 0 ;;
      M88*:*:R3*:*)
  	# Delta 88k system running SVR3
  	echo m88k-motorola-sysv3
  	exit 0 ;;
      XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
  	echo m88k-tektronix-sysv3
  	exit 0 ;;
      Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
  	echo m68k-tektronix-bsd
  	exit 0 ;;
      *:IRIX*:*:*)
  	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
  	exit 0 ;;
      ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
  	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
  	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
      i?86:AIX:*:*)
  	echo i386-ibm-aix
  	exit 0 ;;
      *:AIX:2:3)
  	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
  		sed 's/^		//' << EOF >$dummy.c
  		#include <sys/systemcfg.h>
  
  		main()
  			{
  			if (!__power_pc())
  				exit(1);
  			puts("powerpc-ibm-aix3.2.5");
  			exit(0);
  			}
  EOF
  		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
  		rm -f $dummy.c $dummy
  		echo rs6000-ibm-aix3.2.5
  	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
  		echo rs6000-ibm-aix3.2.4
  	else
  		echo rs6000-ibm-aix3.2
  	fi
  	exit 0 ;;
      *:AIX:*:4)
  	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
  	if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
  		IBM_ARCH=rs6000
  	else
  		IBM_ARCH=powerpc
  	fi
  	if [ -x /usr/bin/oslevel ] ; then
  		IBM_REV=`/usr/bin/oslevel`
  	else
  		IBM_REV=4.${UNAME_RELEASE}
  	fi
  	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
  	exit 0 ;;
      *:AIX:*:*)
  	echo rs6000-ibm-aix
  	exit 0 ;;
      ibmrt:4.4BSD:*|romp-ibm:BSD:*)
  	echo romp-ibm-bsd4.4
  	exit 0 ;;
      ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
  	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
  	exit 0 ;;                           # report: romp-ibm BSD 4.3
      *:BOSX:*:*)
  	echo rs6000-bull-bosx
  	exit 0 ;;
      DPX/2?00:B.O.S.:*:*)
  	echo m68k-bull-sysv3
  	exit 0 ;;
      9000/[34]??:4.3bsd:1.*:*)
  	echo m68k-hp-bsd
  	exit 0 ;;
      hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
  	echo m68k-hp-bsd4.4
  	exit 0 ;;
      9000/[34678]??:HP-UX:*:*)
  	case "${UNAME_MACHINE}" in
  	    9000/31? )            HP_ARCH=m68000 ;;
  	    9000/[34]?? )         HP_ARCH=m68k ;;
  	    9000/[678][0-9][0-9])
                sed 's/^              //' << EOF >$dummy.c
  
                #define _HPUX_SOURCE
                #include <stdlib.h>
                #include <unistd.h>
  
                int main ()
                {
                #if defined(_SC_KERNEL_BITS)
                    long bits = sysconf(_SC_KERNEL_BITS);
                #endif
                    long cpu  = sysconf (_SC_CPU_VERSION);
  
                    switch (cpu)
                	{
                	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
                	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
                	case CPU_PA_RISC2_0:
                #if defined(_SC_KERNEL_BITS)
                	    switch (bits)
                		{
                		case 64: puts ("hppa2.0w"); break;
                		case 32: puts ("hppa2.0n"); break;
                		default: puts ("hppa2.0"); break;
                		} break;
                #else  /* !defined(_SC_KERNEL_BITS) */
                	    puts ("hppa2.0"); break;
                #endif
                	default: puts ("hppa1.0"); break;
                	}
                    exit (0);
                }
  EOF
  	(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
  	rm -f $dummy.c $dummy
  	esac
  	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
  	exit 0 ;;
      3050*:HI-UX:*:*)
  	sed 's/^	//' << EOF >$dummy.c
  	#include <unistd.h>
  	int
  	main ()
  	{
  	  long cpu = sysconf (_SC_CPU_VERSION);
  	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
  	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
  	     results, however.  */
  	  if (CPU_IS_PA_RISC (cpu))
  	    {
  	      switch (cpu)
  		{
  		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
  		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
  		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
  		  default: puts ("hppa-hitachi-hiuxwe2"); break;
  		}
  	    }
  	  else if (CPU_IS_HP_MC68K (cpu))
  	    puts ("m68k-hitachi-hiuxwe2");
  	  else puts ("unknown-hitachi-hiuxwe2");
  	  exit (0);
  	}
  EOF
  	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
  	rm -f $dummy.c $dummy
  	echo unknown-hitachi-hiuxwe2
  	exit 0 ;;
      9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
  	echo hppa1.1-hp-bsd
  	exit 0 ;;
      9000/8??:4.3bsd:*:*)
  	echo hppa1.0-hp-bsd
  	exit 0 ;;
      *9??*:MPE/iX:*:*)
  	echo hppa1.0-hp-mpeix
  	exit 0 ;;
      hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
  	echo hppa1.1-hp-osf
  	exit 0 ;;
      hp8??:OSF1:*:*)
  	echo hppa1.0-hp-osf
  	exit 0 ;;
      i?86:OSF1:*:*)
  	if [ -x /usr/sbin/sysversion ] ; then
  	    echo ${UNAME_MACHINE}-unknown-osf1mk
  	else
  	    echo ${UNAME_MACHINE}-unknown-osf1
  	fi
  	exit 0 ;;
      parisc*:Lites*:*:*)
  	echo hppa1.1-hp-lites
  	exit 0 ;;
      hppa*:OpenBSD:*:*)
  	echo hppa-unknown-openbsd
  	exit 0 ;;
      C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
  	echo c1-convex-bsd
          exit 0 ;;
      C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
  	if getsysinfo -f scalar_acc
  	then echo c32-convex-bsd
  	else echo c2-convex-bsd
  	fi
          exit 0 ;;
      C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
  	echo c34-convex-bsd
          exit 0 ;;
      C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
  	echo c38-convex-bsd
          exit 0 ;;
      C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
  	echo c4-convex-bsd
          exit 0 ;;
      CRAY*X-MP:*:*:*)
  	echo xmp-cray-unicos
          exit 0 ;;
      CRAY*Y-MP:*:*:*)
  	echo ymp-cray-unicos${UNAME_RELEASE}
  	exit 0 ;;
      CRAY*[A-Z]90:*:*:*)
  	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
  	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
  	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
  	exit 0 ;;
      CRAY*TS:*:*:*)
  	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  	exit 0 ;;
      CRAY*T3E:*:*:*)
  	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  	exit 0 ;;
      CRAY*SV1:*:*:*)
  	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  	exit 0 ;;
      CRAY-2:*:*:*)
  	echo cray2-cray-unicos
          exit 0 ;;
      F300:UNIX_System_V:*:*)
          FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
          FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
          echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
          exit 0 ;;
      F301:UNIX_System_V:*:*)
         echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
         exit 0 ;;
      hp300:OpenBSD:*:*)
  	echo m68k-unknown-openbsd${UNAME_RELEASE}
  	exit 0 ;;
      i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
  	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
  	exit 0 ;;
      sparc*:BSD/OS:*:*)
  	echo sparc-unknown-bsdi${UNAME_RELEASE}
  	exit 0 ;;
      *:BSD/OS:*:*)
  	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
  	exit 0 ;;
      *:FreeBSD:*:*)
  	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
  	exit 0 ;;
      *:OpenBSD:*:*)
  	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  	exit 0 ;;
      i*:CYGWIN*:*)
  	echo ${UNAME_MACHINE}-pc-cygwin
  	exit 0 ;;
      i*:MINGW*:*)
  	echo ${UNAME_MACHINE}-pc-mingw32
  	exit 0 ;;
      i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
  	# How do we know it's Interix rather than the generic POSIX subsystem?
  	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
  	# UNAME_MACHINE based on the output of uname instead of i386?
  	echo i386-pc-interix
  	exit 0 ;;
      i*:UWIN*:*)
  	echo ${UNAME_MACHINE}-pc-uwin
  	exit 0 ;;
      p*:CYGWIN*:*)
  	echo powerpcle-unknown-cygwin
  	exit 0 ;;
      prep*:SunOS:5.*:*)
  	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  	exit 0 ;;
      *:GNU:*:*)
  	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
  	exit 0 ;;
      *:Linux:*:*)
  
  	# The BFD linker knows what the default object file format is, so
  	# first see if it will tell us. cd to the root directory to prevent
  	# problems with other programs or directories called `ld' in the path.
  	ld_help_string=`cd /; ld --help 2>&1`
  	ld_supported_emulations=`echo $ld_help_string \
  			 | sed -ne '/supported emulations:/!d
  				    s/[ 	][ 	]*/ /g
  				    s/.*supported emulations: *//
  				    s/ .*//
  				    p'`
          case "$ld_supported_emulations" in
  	  *ia64)
  		echo "${UNAME_MACHINE}-unknown-linux"
  		exit 0
  		;;
  	  i?86linux)
  		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
  		exit 0
  		;;
  	  elf_i?86)
  		echo "${UNAME_MACHINE}-pc-linux"
  		exit 0
  		;;
  	  i?86coff)
  		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
  		exit 0
  		;;
  	  sparclinux)
  		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
  		exit 0
  		;;
  	  armlinux)
  		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
  		exit 0
  		;;
  	  elf32arm*)
  		echo "${UNAME_MACHINE}-unknown-linux-gnuoldld"
  		exit 0
  		;;
  	  armelf_linux*)
  		echo "${UNAME_MACHINE}-unknown-linux-gnu"
  		exit 0
  		;;
  	  m68klinux)
  		echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
  		exit 0
  		;;
  	  elf32ppc | elf32ppclinux)
  		# Determine Lib Version
  		cat >$dummy.c <<EOF
  #include <features.h>
  #if defined(__GLIBC__)
  extern char __libc_version[];
  extern char __libc_release[];
  #endif
  main(argc, argv)
       int argc;
       char *argv[];
  {
  #if defined(__GLIBC__)
    printf("%s %s\n", __libc_version, __libc_release);
  #else
    printf("unkown\n");
  #endif
    return 0;
  }
  EOF
  		LIBC=""
  		$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
  		if test "$?" = 0 ; then
  			./$dummy | grep 1\.99 > /dev/null
  			if test "$?" = 0 ; then
  				LIBC="libc1"
  			fi
  		fi
  		rm -f $dummy.c $dummy
  		echo powerpc-unknown-linux-gnu${LIBC}
  		exit 0
  		;;
  	esac
  
  	if test "${UNAME_MACHINE}" = "alpha" ; then
  		cat <<EOF >$dummy.s
  			.data
  		\$Lformat:
  			.byte 37,100,45,37,120,10,0	# "%d-%x\n"
  
  			.text
  			.globl main
  			.align 4
  			.ent main
  		main:
  			.frame \$30,16,\$26,0
  			ldgp \$29,0(\$27)
  			.prologue 1
  			.long 0x47e03d80 # implver \$0
  			lda \$2,-1
  			.long 0x47e20c21 # amask \$2,\$1
  			lda \$16,\$Lformat
  			mov \$0,\$17
  			not \$1,\$18
  			jsr \$26,printf
  			ldgp \$29,0(\$26)
  			mov 0,\$16
  			jsr \$26,exit
  			.end main
  EOF
  		LIBC=""
  		$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
  		if test "$?" = 0 ; then
  			case `./$dummy` in
  			0-0)
  				UNAME_MACHINE="alpha"
  				;;
  			1-0)
  				UNAME_MACHINE="alphaev5"
  				;;
  			1-1)
  				UNAME_MACHINE="alphaev56"
  				;;
  			1-101)
  				UNAME_MACHINE="alphapca56"
  				;;
  			2-303)
  				UNAME_MACHINE="alphaev6"
  				;;
  			2-307)
  				UNAME_MACHINE="alphaev67"
  				;;
  			esac
  
  			objdump --private-headers $dummy | \
  			  grep ld.so.1 > /dev/null
  			if test "$?" = 0 ; then
  				LIBC="libc1"
  			fi
  		fi
  		rm -f $dummy.s $dummy
  		echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
  	elif test "${UNAME_MACHINE}" = "mips" ; then
  	  cat >$dummy.c <<EOF
  #ifdef __cplusplus
  #include <stdio.h>  /* for printf() prototype */
  	int main (int argc, char *argv[]) {
  #else
  	int main (argc, argv) int argc; char *argv[]; {
  #endif
  #ifdef __MIPSEB__
    printf ("%s-unknown-linux-gnu\n", argv[1]);
  #endif
  #ifdef __MIPSEL__
    printf ("%sel-unknown-linux-gnu\n", argv[1]);
  #endif
    return 0;
  }
  EOF
  	  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
  	  rm -f $dummy.c $dummy
  	elif test "${UNAME_MACHINE}" = "s390"; then
  	  echo s390-ibm-linux && exit 0
  	else
  	  # Either a pre-BFD a.out linker (linux-gnuoldld)
  	  # or one that does not give us useful --help.
  	  # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
  	  # If ld does not provide *any* "supported emulations:"
  	  # that means it is gnuoldld.
  	  echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
  	  test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
  
  	  case "${UNAME_MACHINE}" in
  	  i?86)
  	    VENDOR=pc;
  	    ;;
  	  *)
  	    VENDOR=unknown;
  	    ;;
  	  esac
  	  # Determine whether the default compiler is a.out or elf
  	  cat >$dummy.c <<EOF
  #include <features.h>
  #ifdef __cplusplus
  #include <stdio.h>  /* for printf() prototype */
  	int main (int argc, char *argv[]) {
  #else
  	int main (argc, argv) int argc; char *argv[]; {
  #endif
  #ifdef __ELF__
  # ifdef __GLIBC__
  #  if __GLIBC__ >= 2
      printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
  #  else
      printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
  #  endif
  # else
     printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
  # endif
  #else
    printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
  #endif
    return 0;
  }
  EOF
  	  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
  	  rm -f $dummy.c $dummy
  	fi ;;
  # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
  # are messed up and put the nodename in both sysname and nodename.
      i?86:DYNIX/ptx:4*:*)
  	echo i386-sequent-sysv4
  	exit 0 ;;
      i?86:UNIX_SV:4.2MP:2.*)
          # Unixware is an offshoot of SVR4, but it has its own version
          # number series starting with 2...
          # I am not positive that other SVR4 systems won't match this,
  	# I just have to hope.  -- rms.
          # Use sysv4.2uw... so that sysv4* matches it.
  	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
  	exit 0 ;;
      i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
  	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
  	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
  		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
  	else
  		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
  	fi
  	exit 0 ;;
      i?86:*:5:7*)
          # Fixed at (any) Pentium or better
          UNAME_MACHINE=i586
          if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
  	    echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
  	else
  	    echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
  	fi
  	exit 0 ;;
      i?86:*:3.2:*)
  	if test -f /usr/options/cb.name; then
  		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
  		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
  	elif /bin/uname -X 2>/dev/null >/dev/null ; then
  		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
  		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
  		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
  			&& UNAME_MACHINE=i586
  		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
  			&& UNAME_MACHINE=i686
  		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
  			&& UNAME_MACHINE=i686
  		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
  	else
  		echo ${UNAME_MACHINE}-pc-sysv32
  	fi
  	exit 0 ;;
      i?86:*DOS:*:*)
  	echo ${UNAME_MACHINE}-pc-msdosdjgpp
  	exit 0 ;;
      pc:*:*:*)
  	# Left here for compatibility:
          # uname -m prints for DJGPP always 'pc', but it prints nothing about
          # the processor, so we play safe by assuming i386.
  	echo i386-pc-msdosdjgpp
          exit 0 ;;
      Intel:Mach:3*:*)
  	echo i386-pc-mach3
  	exit 0 ;;
      paragon:*:*:*)
  	echo i860-intel-osf1
  	exit 0 ;;
      i860:*:4.*:*) # i860-SVR4
  	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
  	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
  	else # Add other i860-SVR4 vendors below as they are discovered.
  	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
  	fi
  	exit 0 ;;
      mini*:CTIX:SYS*5:*)
  	# "miniframe"
  	echo m68010-convergent-sysv
  	exit 0 ;;
      M68*:*:R3V[567]*:*)
  	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
      3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
  	OS_REL=''
  	test -r /etc/.relid \
  	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
  	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
      3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
          /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
            && echo i486-ncr-sysv4 && exit 0 ;;
      m68*:LynxOS:2.*:*)
  	echo m68k-unknown-lynxos${UNAME_RELEASE}
  	exit 0 ;;
      mc68030:UNIX_System_V:4.*:*)
  	echo m68k-atari-sysv4
  	exit 0 ;;
      i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
  	echo i386-unknown-lynxos${UNAME_RELEASE}
  	exit 0 ;;
      TSUNAMI:LynxOS:2.*:*)
  	echo sparc-unknown-lynxos${UNAME_RELEASE}
  	exit 0 ;;
      rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
  	echo rs6000-unknown-lynxos${UNAME_RELEASE}
  	exit 0 ;;
      SM[BE]S:UNIX_SV:*:*)
  	echo mips-dde-sysv${UNAME_RELEASE}
  	exit 0 ;;
      RM*:ReliantUNIX-*:*:*)
  	echo mips-sni-sysv4
  	exit 0 ;;
      RM*:SINIX-*:*:*)
  	echo mips-sni-sysv4
  	exit 0 ;;
      *:SINIX-*:*:*)
  	if uname -p 2>/dev/null >/dev/null ; then
  		UNAME_MACHINE=`(uname -p) 2>/dev/null`
  		echo ${UNAME_MACHINE}-sni-sysv4
  	else
  		echo ns32k-sni-sysv
  	fi
  	exit 0 ;;
      PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
                             # says <Ri...@ccMail.Census.GOV>
          echo i586-unisys-sysv4
          exit 0 ;;
      *:UNIX_System_V:4*:FTX*)
  	# From Gerald Hewes <he...@openmarket.com>.
  	# How about differentiating between stratus architectures? -djm
  	echo hppa1.1-stratus-sysv4
  	exit 0 ;;
      *:*:*:FTX*)
  	# From seanf@swdc.stratus.com.
  	echo i860-stratus-sysv4
  	exit 0 ;;
      mc68*:A/UX:*:*)
  	echo m68k-apple-aux${UNAME_RELEASE}
  	exit 0 ;;
      news*:NEWS-OS:*:6*)
  	echo mips-sony-newsos6
  	exit 0 ;;
      R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
  	if [ -d /usr/nec ]; then
  	        echo mips-nec-sysv${UNAME_RELEASE}
  	else
  	        echo mips-unknown-sysv${UNAME_RELEASE}
  	fi
          exit 0 ;;
      BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
  	echo powerpc-be-beos
  	exit 0 ;;
      BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
  	echo powerpc-apple-beos
  	exit 0 ;;
      BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
  	echo i586-pc-beos
  	exit 0 ;;
      SX-4:SUPER-UX:*:*)
  	echo sx4-nec-superux${UNAME_RELEASE}
  	exit 0 ;;
      SX-5:SUPER-UX:*:*)
  	echo sx5-nec-superux${UNAME_RELEASE}
  	exit 0 ;;
      Power*:Rhapsody:*:*)
  	echo powerpc-apple-rhapsody${UNAME_RELEASE}
  	exit 0 ;;
      *:Rhapsody:*:*)
  	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
  	exit 0 ;;
      *:Darwin:*:*)
  	echo `uname -p`-apple-darwin${UNAME_RELEASE}
  	exit 0 ;;
      *:procnto*:*:* | *:QNX:[0123456789]*:*)
  	if test "${UNAME_MACHINE}" = "x86pc"; then
  		UNAME_MACHINE=pc
  	fi
  	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
  	exit 0 ;;
      *:QNX:*:4*)
  	echo i386-pc-qnx
  	exit 0 ;;
      NSR-W:NONSTOP_KERNEL:*:*)
  	echo nsr-tandem-nsk${UNAME_RELEASE}
  	exit 0 ;;
      BS2000:POSIX*:*:*)
  	echo bs2000-siemens-sysv
  	exit 0 ;;
      DS/*:UNIX_System_V:*:*)
  	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
  	exit 0 ;;
  esac
  
  #echo '(No uname command or uname output not recognized.)' 1>&2
  #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
  
  cat >$dummy.c <<EOF
  #ifdef _SEQUENT_
  # include <sys/types.h>
  # include <sys/utsname.h>
  #endif
  main ()
  {
  #if defined (sony)
  #if defined (MIPSEB)
    /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
       I don't know....  */
    printf ("mips-sony-bsd\n"); exit (0);
  #else
  #include <sys/param.h>
    printf ("m68k-sony-newsos%s\n",
  #ifdef NEWSOS4
            "4"
  #else
  	  ""
  #endif
           ); exit (0);
  #endif
  #endif
  
  #if defined (__arm) && defined (__acorn) && defined (__unix)
    printf ("arm-acorn-riscix"); exit (0);
  #endif
  
  #if defined (hp300) && !defined (hpux)
    printf ("m68k-hp-bsd\n"); exit (0);
  #endif
  
  #if defined (NeXT)
  #if !defined (__ARCHITECTURE__)
  #define __ARCHITECTURE__ "m68k"
  #endif
    int version;
    version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
    if (version < 4)
      printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
    else
      printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
    exit (0);
  #endif
  
  #if defined (MULTIMAX) || defined (n16)
  #if defined (UMAXV)
    printf ("ns32k-encore-sysv\n"); exit (0);
  #else
  #if defined (CMU)
    printf ("ns32k-encore-mach\n"); exit (0);
  #else
    printf ("ns32k-encore-bsd\n"); exit (0);
  #endif
  #endif
  #endif
  
  #if defined (__386BSD__)
    printf ("i386-pc-bsd\n"); exit (0);
  #endif
  
  #if defined (sequent)
  #if defined (i386)
    printf ("i386-sequent-dynix\n"); exit (0);
  #endif
  #if defined (ns32000)
    printf ("ns32k-sequent-dynix\n"); exit (0);
  #endif
  #endif
  
  #if defined (_SEQUENT_)
      struct utsname un;
  
      uname(&un);
  
      if (strncmp(un.version, "V2", 2) == 0) {
  	printf ("i386-sequent-ptx2\n"); exit (0);
      }
      if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
  	printf ("i386-sequent-ptx1\n"); exit (0);
      }
      printf ("i386-sequent-ptx\n"); exit (0);
  
  #endif
  
  #if defined (vax)
  #if !defined (ultrix)
    printf ("vax-dec-bsd\n"); exit (0);
  #else
    printf ("vax-dec-ultrix\n"); exit (0);
  #endif
  #endif
  
  #if defined (alliant) && defined (i860)
    printf ("i860-alliant-bsd\n"); exit (0);
  #endif
  
    exit (1);
  }
  EOF
  
  $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
  rm -f $dummy.c $dummy
  
  # Apollos put the system type in the environment.
  
  test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
  
  # Convex versions that predate uname can use getsysinfo(1)
  
  if [ -x /usr/convex/getsysinfo ]
  then
      case `getsysinfo -f cpu_type` in
      c1*)
  	echo c1-convex-bsd
  	exit 0 ;;
      c2*)
  	if getsysinfo -f scalar_acc
  	then echo c32-convex-bsd
  	else echo c2-convex-bsd
  	fi
  	exit 0 ;;
      c34*)
  	echo c34-convex-bsd
  	exit 0 ;;
      c38*)
  	echo c38-convex-bsd
  	exit 0 ;;
      c4*)
  	echo c4-convex-bsd
  	exit 0 ;;
      esac
  fi
  
  #echo '(Unable to guess system type)' 1>&2
  
  exit 1
  
  
  
  1.1                  apr/build/config.sub
  
  Index: config.sub
  ===================================================================
  #! /bin/sh
  # Configuration validation subroutine script, version 1.1.
  #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
  #   Free Software Foundation, Inc.
  #
  # This file is (in principle) common to ALL GNU software.
  # The presence of a machine in this file suggests that SOME GNU software
  # can handle that machine.  It does not imply ALL GNU software can.
  #
  # This file is free software; you can redistribute it and/or modify
  # it under the terms of the GNU General Public License as published by
  # the Free Software Foundation; either version 2 of the License, or
  # (at your option) any later version.
  #
  # This program is distributed in the hope that it will be useful,
  # but WITHOUT ANY WARRANTY; without even the implied warranty of
  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  # GNU General Public License for more details.
  #
  # You should have received a copy of the GNU General Public License
  # along with this program; if not, write to the Free Software
  # Foundation, Inc., 59 Temple Place - Suite 330,
  # Boston, MA 02111-1307, USA.
  
  # As a special exception to the GNU General Public License, if you
  # distribute this file as part of a program that contains a
  # configuration script generated by Autoconf, you may include it under
  # the same distribution terms that you use for the rest of that program.
  
  # Written by Per Bothner <bo...@cygnus.com>.
  # Please send patches to <co...@gnu.org>.
  #
  # Configuration subroutine to validate and canonicalize a configuration type.
  # Supply the specified configuration type as an argument.
  # If it is invalid, we print an error message on stderr and exit with code 1.
  # Otherwise, we print the canonical config type on stdout and succeed.
  
  # This file is supposed to be the same for all GNU packages
  # and recognize all the CPU types, system types and aliases
  # that are meaningful with *any* GNU software.
  # Each package is responsible for reporting which valid configurations
  # it does not support.  The user should be able to distinguish
  # a failure to support a valid configuration from a meaningless
  # configuration.
  
  # The goal of this file is to map all the various variations of a given
  # machine specification into a single specification in the form:
  #	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
  # or in some cases, the newer four-part form:
  #	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
  # It is wrong to echo any other type of specification.
  
  if [ x$1 = x ]
  then
  	echo Configuration name missing. 1>&2
  	echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
  	echo "or     $0 ALIAS" 1>&2
  	echo where ALIAS is a recognized configuration type. 1>&2
  	exit 1
  fi
  
  # First pass through any local machine types.
  case $1 in
  	*local*)
  		echo $1
  		exit 0
  		;;
  	*)
  	;;
  esac
  
  # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
  # Here we must recognize all the valid KERNEL-OS combinations.
  maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
  case $maybe_os in
    nto-qnx* | linux-gnu*)
      os=-$maybe_os
      basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
      ;;
    *)
      basic_machine=`echo $1 | sed 's/-[^-]*$//'`
      if [ $basic_machine != $1 ]
      then os=`echo $1 | sed 's/.*-/-/'`
      else os=; fi
      ;;
  esac
  
  ### Let's recognize common machines as not being operating systems so
  ### that things like config.sub decstation-3100 work.  We also
  ### recognize some manufacturers as not being operating systems, so we
  ### can provide default operating systems below.
  case $os in
  	-sun*os*)
  		# Prevent following clause from handling this invalid input.
  		;;
  	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
  	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
  	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
  	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
  	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
  	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
  	-apple)
  		os=
  		basic_machine=$1
  		;;
  	-sim | -cisco | -oki | -wec | -winbond)
  		os=
  		basic_machine=$1
  		;;
  	-scout)
  		;;
  	-wrs)
  		os=-vxworks
  		basic_machine=$1
  		;;
  	-hiux*)
  		os=-hiuxwe2
  		;;
  	-sco5)
  		os=-sco3.2v5
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-sco4)
  		os=-sco3.2v4
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-sco3.2.[4-9]*)
  		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-sco3.2v[4-9]*)
  		# Don't forget version if it is 3.2v4 or newer.
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-sco*)
  		os=-sco3.2v2
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-udk*)
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-isc)
  		os=-isc2.2
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-clix*)
  		basic_machine=clipper-intergraph
  		;;
  	-isc*)
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  		;;
  	-lynx*)
  		os=-lynxos
  		;;
  	-ptx*)
  		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
  		;;
  	-windowsnt*)
  		os=`echo $os | sed -e 's/windowsnt/winnt/'`
  		;;
  	-psos*)
  		os=-psos
  		;;
  	-mint | -mint[0-9]*)
  		basic_machine=m68k-atari
  		os=-mint
  		;;
  esac
  
  # Decode aliases for certain CPU-COMPANY combinations.
  case $basic_machine in
  	# Recognize the basic CPU types without company name.
  	# Some are omitted here because they have special meanings below.
  	tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
  		| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
  		| 580 | i960 | h8300 \
  		| x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \
  		| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
  		| hppa64 \
  		| alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \
  		| alphaev6[78] \
  		| we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
  		| 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
  		| mips64orion | mips64orionel | mipstx39 | mipstx39el \
  		| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
  		| mips64vr5000 | miprs64vr5000el | mcore \
  		| sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
  		| thumb | d10v | fr30 | avr)
  		basic_machine=$basic_machine-unknown
  		;;
  	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
  		;;
  
  	# We use `pc' rather than `unknown'
  	# because (1) that's what they normally are, and
  	# (2) the word "unknown" tends to confuse beginning users.
  	i[34567]86)
  	  basic_machine=$basic_machine-pc
  	  ;;
  	# Object if more than one company name word.
  	*-*-*)
  		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  		exit 1
  		;;
  	# Recognize the basic CPU types with company name.
  	# FIXME: clean up the formatting here.
  	vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
  	      | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
  	      | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
  	      | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
  	      | xmp-* | ymp-* \
  	      | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \
  	      | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \
  	      | hppa2.0n-* | hppa64-* \
  	      | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \
  	      | alphaev6[78]-* \
  	      | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
  	      | clipper-* | orion-* \
  	      | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
  	      | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
  	      | mips64el-* | mips64orion-* | mips64orionel-* \
  	      | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
  	      | mipstx39-* | mipstx39el-* | mcore-* \
  	      | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
  	      | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
  	      | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \
  	      | bs2000-*)
  		;;
  	# Recognize the various machine names and aliases which stand
  	# for a CPU type and a company and sometimes even an OS.
  	386bsd)
  		basic_machine=i386-unknown
  		os=-bsd
  		;;
  	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
  		basic_machine=m68000-att
  		;;
  	3b*)
  		basic_machine=we32k-att
  		;;
  	a29khif)
  		basic_machine=a29k-amd
  		os=-udi
  		;;
  	adobe68k)
  		basic_machine=m68010-adobe
  		os=-scout
  		;;
  	alliant | fx80)
  		basic_machine=fx80-alliant
  		;;
  	altos | altos3068)
  		basic_machine=m68k-altos
  		;;
  	am29k)
  		basic_machine=a29k-none
  		os=-bsd
  		;;
  	amdahl)
  		basic_machine=580-amdahl
  		os=-sysv
  		;;
  	amiga | amiga-*)
  		basic_machine=m68k-cbm
  		;;
  	amigaos | amigados)
  		basic_machine=m68k-cbm
  		os=-amigaos
  		;;
  	amigaunix | amix)
  		basic_machine=m68k-cbm
  		os=-sysv4
  		;;
  	apollo68)
  		basic_machine=m68k-apollo
  		os=-sysv
  		;;
  	apollo68bsd)
  		basic_machine=m68k-apollo
  		os=-bsd
  		;;
  	aux)
  		basic_machine=m68k-apple
  		os=-aux
  		;;
  	balance)
  		basic_machine=ns32k-sequent
  		os=-dynix
  		;;
  	convex-c1)
  		basic_machine=c1-convex
  		os=-bsd
  		;;
  	convex-c2)
  		basic_machine=c2-convex
  		os=-bsd
  		;;
  	convex-c32)
  		basic_machine=c32-convex
  		os=-bsd
  		;;
  	convex-c34)
  		basic_machine=c34-convex
  		os=-bsd
  		;;
  	convex-c38)
  		basic_machine=c38-convex
  		os=-bsd
  		;;
  	cray | ymp)
  		basic_machine=ymp-cray
  		os=-unicos
  		;;
  	cray2)
  		basic_machine=cray2-cray
  		os=-unicos
  		;;
  	[ctj]90-cray)
  		basic_machine=c90-cray
  		os=-unicos
  		;;
  	crds | unos)
  		basic_machine=m68k-crds
  		;;
  	da30 | da30-*)
  		basic_machine=m68k-da30
  		;;
  	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
  		basic_machine=mips-dec
  		;;
  	delta | 3300 | motorola-3300 | motorola-delta \
  	      | 3300-motorola | delta-motorola)
  		basic_machine=m68k-motorola
  		;;
  	delta88)
  		basic_machine=m88k-motorola
  		os=-sysv3
  		;;
  	dpx20 | dpx20-*)
  		basic_machine=rs6000-bull
  		os=-bosx
  		;;
  	dpx2* | dpx2*-bull)
  		basic_machine=m68k-bull
  		os=-sysv3
  		;;
  	ebmon29k)
  		basic_machine=a29k-amd
  		os=-ebmon
  		;;
  	elxsi)
  		basic_machine=elxsi-elxsi
  		os=-bsd
  		;;
  	encore | umax | mmax)
  		basic_machine=ns32k-encore
  		;;
  	es1800 | OSE68k | ose68k | ose | OSE)
  		basic_machine=m68k-ericsson
  		os=-ose
  		;;
  	fx2800)
  		basic_machine=i860-alliant
  		;;
  	genix)
  		basic_machine=ns32k-ns
  		;;
  	gmicro)
  		basic_machine=tron-gmicro
  		os=-sysv
  		;;
  	h3050r* | hiux*)
  		basic_machine=hppa1.1-hitachi
  		os=-hiuxwe2
  		;;
  	h8300hms)
  		basic_machine=h8300-hitachi
  		os=-hms
  		;;
  	h8300xray)
  		basic_machine=h8300-hitachi
  		os=-xray
  		;;
  	h8500hms)
  		basic_machine=h8500-hitachi
  		os=-hms
  		;;
  	harris)
  		basic_machine=m88k-harris
  		os=-sysv3
  		;;
  	hp300-*)
  		basic_machine=m68k-hp
  		;;
  	hp300bsd)
  		basic_machine=m68k-hp
  		os=-bsd
  		;;
  	hp300hpux)
  		basic_machine=m68k-hp
  		os=-hpux
  		;;
  	hp3k9[0-9][0-9] | hp9[0-9][0-9])
  		basic_machine=hppa1.0-hp
  		;;
  	hp9k2[0-9][0-9] | hp9k31[0-9])
  		basic_machine=m68000-hp
  		;;
  	hp9k3[2-9][0-9])
  		basic_machine=m68k-hp
  		;;
  	hp9k6[0-9][0-9] | hp6[0-9][0-9])
  		basic_machine=hppa1.0-hp
  		;;
  	hp9k7[0-79][0-9] | hp7[0-79][0-9])
  		basic_machine=hppa1.1-hp
  		;;
  	hp9k78[0-9] | hp78[0-9])
  		# FIXME: really hppa2.0-hp
  		basic_machine=hppa1.1-hp
  		;;
  	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
  		# FIXME: really hppa2.0-hp
  		basic_machine=hppa1.1-hp
  		;;
  	hp9k8[0-9][13679] | hp8[0-9][13679])
  		basic_machine=hppa1.1-hp
  		;;
  	hp9k8[0-9][0-9] | hp8[0-9][0-9])
  		basic_machine=hppa1.0-hp
  		;;
  	hppa-next)
  		os=-nextstep3
  		;;
  	hppaosf)
  		basic_machine=hppa1.1-hp
  		os=-osf
  		;;
  	hppro)
  		basic_machine=hppa1.1-hp
  		os=-proelf
  		;;
  	i370-ibm* | ibm*)
  		basic_machine=i370-ibm
  		;;
  # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
  	i[34567]86v32)
  		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  		os=-sysv32
  		;;
  	i[34567]86v4*)
  		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  		os=-sysv4
  		;;
  	i[34567]86v)
  		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  		os=-sysv
  		;;
  	i[34567]86sol2)
  		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  		os=-solaris2
  		;;
  	i386mach)
  		basic_machine=i386-mach
  		os=-mach
  		;;
  	i386-vsta | vsta)
  		basic_machine=i386-unknown
  		os=-vsta
  		;;
  	i386-go32 | go32)
  		basic_machine=i386-unknown
  		os=-go32
  		;;
  	i386-mingw32 | mingw32)
  		basic_machine=i386-unknown
  		os=-mingw32
  		;;
  	iris | iris4d)
  		basic_machine=mips-sgi
  		case $os in
  		    -irix*)
  			;;
  		    *)
  			os=-irix4
  			;;
  		esac
  		;;
  	isi68 | isi)
  		basic_machine=m68k-isi
  		os=-sysv
  		;;
  	m88k-omron*)
  		basic_machine=m88k-omron
  		;;
  	magnum | m3230)
  		basic_machine=mips-mips
  		os=-sysv
  		;;
  	merlin)
  		basic_machine=ns32k-utek
  		os=-sysv
  		;;
  	miniframe)
  		basic_machine=m68000-convergent
  		;;
  	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
  		basic_machine=m68k-atari
  		os=-mint
  		;;
  	mipsel*-linux*)
  		basic_machine=mipsel-unknown
  		os=-linux-gnu
  		;;
  	mips*-linux*)
  		basic_machine=mips-unknown
  		os=-linux-gnu
  		;;
  	mips3*-*)
  		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
  		;;
  	mips3*)
  		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
  		;;
  	mmix*)
  		basic_machine=mmix-knuth
  		os=-mmixware
  		;;
  	monitor)
  		basic_machine=m68k-rom68k
  		os=-coff
  		;;
  	msdos)
  		basic_machine=i386-unknown
  		os=-msdos
  		;;
  	mvs)
  		basic_machine=i370-ibm
  		os=-mvs
  		;;
  	ncr3000)
  		basic_machine=i486-ncr
  		os=-sysv4
  		;;
  	netbsd386)
  		basic_machine=i386-unknown
  		os=-netbsd
  		;;
  	netwinder)
  		basic_machine=armv4l-rebel
  		os=-linux
  		;;
  	news | news700 | news800 | news900)
  		basic_machine=m68k-sony
  		os=-newsos
  		;;
  	news1000)
  		basic_machine=m68030-sony
  		os=-newsos
  		;;
  	news-3600 | risc-news)
  		basic_machine=mips-sony
  		os=-newsos
  		;;
  	necv70)
  		basic_machine=v70-nec
  		os=-sysv
  		;;
  	next | m*-next )
  		basic_machine=m68k-next
  		case $os in
  		    -nextstep* )
  			;;
  		    -ns2*)
  		      os=-nextstep2
  			;;
  		    *)
  		      os=-nextstep3
  			;;
  		esac
  		;;
  	nh3000)
  		basic_machine=m68k-harris
  		os=-cxux
  		;;
  	nh[45]000)
  		basic_machine=m88k-harris
  		os=-cxux
  		;;
  	nindy960)
  		basic_machine=i960-intel
  		os=-nindy
  		;;
  	mon960)
  		basic_machine=i960-intel
  		os=-mon960
  		;;
  	np1)
  		basic_machine=np1-gould
  		;;
  	nsr-tandem)
  		basic_machine=nsr-tandem
  		;;
  	op50n-* | op60c-*)
  		basic_machine=hppa1.1-oki
  		os=-proelf
  		;;
  	OSE68000 | ose68000)
  		basic_machine=m68000-ericsson
  		os=-ose
  		;;
  	os68k)
  		basic_machine=m68k-none
  		os=-os68k
  		;;
  	pa-hitachi)
  		basic_machine=hppa1.1-hitachi
  		os=-hiuxwe2
  		;;
  	paragon)
  		basic_machine=i860-intel
  		os=-osf
  		;;
  	pbd)
  		basic_machine=sparc-tti
  		;;
  	pbb)
  		basic_machine=m68k-tti
  		;;
          pc532 | pc532-*)
  		basic_machine=ns32k-pc532
  		;;
  	pentium | p5 | k5 | k6 | nexen)
  		basic_machine=i586-pc
  		;;
  	pentiumpro | p6 | 6x86)
  		basic_machine=i686-pc
  		;;
  	pentiumii | pentium2)
  		basic_machine=i786-pc
  		;;
  	pentium-* | p5-* | k5-* | k6-* | nexen-*)
  		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
  		;;
  	pentiumpro-* | p6-* | 6x86-*)
  		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
  		;;
  	pentiumii-* | pentium2-*)
  		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
  		;;
  	pn)
  		basic_machine=pn-gould
  		;;
  	power)	basic_machine=rs6000-ibm
  		;;
  	ppc)	basic_machine=powerpc-unknown
  	        ;;
  	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
  		;;
  	ppcle | powerpclittle | ppc-le | powerpc-little)
  		basic_machine=powerpcle-unknown
  	        ;;
  	ppcle-* | powerpclittle-*)
  		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
  		;;
  	ps2)
  		basic_machine=i386-ibm
  		;;
  	rom68k)
  		basic_machine=m68k-rom68k
  		os=-coff
  		;;
  	rm[46]00)
  		basic_machine=mips-siemens
  		;;
  	rtpc | rtpc-*)
  		basic_machine=romp-ibm
  		;;
  	sa29200)
  		basic_machine=a29k-amd
  		os=-udi
  		;;
  	sequent)
  		basic_machine=i386-sequent
  		;;
  	sh)
  		basic_machine=sh-hitachi
  		os=-hms
  		;;
  	sparclite-wrs)
  		basic_machine=sparclite-wrs
  		os=-vxworks
  		;;
  	sps7)
  		basic_machine=m68k-bull
  		os=-sysv2
  		;;
  	spur)
  		basic_machine=spur-unknown
  		;;
  	st2000)
  		basic_machine=m68k-tandem
  		;;
  	stratus)
  		basic_machine=i860-stratus
  		os=-sysv4
  		;;
  	sun2)
  		basic_machine=m68000-sun
  		;;
  	sun2os3)
  		basic_machine=m68000-sun
  		os=-sunos3
  		;;
  	sun2os4)
  		basic_machine=m68000-sun
  		os=-sunos4
  		;;
  	sun3os3)
  		basic_machine=m68k-sun
  		os=-sunos3
  		;;
  	sun3os4)
  		basic_machine=m68k-sun
  		os=-sunos4
  		;;
  	sun4os3)
  		basic_machine=sparc-sun
  		os=-sunos3
  		;;
  	sun4os4)
  		basic_machine=sparc-sun
  		os=-sunos4
  		;;
  	sun4sol2)
  		basic_machine=sparc-sun
  		os=-solaris2
  		;;
  	sun3 | sun3-*)
  		basic_machine=m68k-sun
  		;;
  	sun4)
  		basic_machine=sparc-sun
  		;;
  	sun386 | sun386i | roadrunner)
  		basic_machine=i386-sun
  		;;
  	sv1)
  		basic_machine=sv1-cray
  		os=-unicos
  		;;
  	symmetry)
  		basic_machine=i386-sequent
  		os=-dynix
  		;;
  	t3e)
  		basic_machine=t3e-cray
  		os=-unicos
  		;;
  	tx39)
  		basic_machine=mipstx39-unknown
  		;;
  	tx39el)
  		basic_machine=mipstx39el-unknown
  		;;
  	tower | tower-32)
  		basic_machine=m68k-ncr
  		;;
  	udi29k)
  		basic_machine=a29k-amd
  		os=-udi
  		;;
  	ultra3)
  		basic_machine=a29k-nyu
  		os=-sym1
  		;;
  	v810 | necv810)
  		basic_machine=v810-nec
  		os=-none
  		;;
  	vaxv)
  		basic_machine=vax-dec
  		os=-sysv
  		;;
  	vms)
  		basic_machine=vax-dec
  		os=-vms
  		;;
  	vpp*|vx|vx-*)
                 basic_machine=f301-fujitsu
                 ;;
  	vxworks960)
  		basic_machine=i960-wrs
  		os=-vxworks
  		;;
  	vxworks68)
  		basic_machine=m68k-wrs
  		os=-vxworks
  		;;
  	vxworks29k)
  		basic_machine=a29k-wrs
  		os=-vxworks
  		;;
  	w65*)
  		basic_machine=w65-wdc
  		os=-none
  		;;
  	w89k-*)
  		basic_machine=hppa1.1-winbond
  		os=-proelf
  		;;
  	xmp)
  		basic_machine=xmp-cray
  		os=-unicos
  		;;
          xps | xps100)
  		basic_machine=xps100-honeywell
  		;;
  	z8k-*-coff)
  		basic_machine=z8k-unknown
  		os=-sim
  		;;
  	none)
  		basic_machine=none-none
  		os=-none
  		;;
  
  # Here we handle the default manufacturer of certain CPU types.  It is in
  # some cases the only manufacturer, in others, it is the most popular.
  	w89k)
  		basic_machine=hppa1.1-winbond
  		;;
  	op50n)
  		basic_machine=hppa1.1-oki
  		;;
  	op60c)
  		basic_machine=hppa1.1-oki
  		;;
  	mips)
  		if [ x$os = x-linux-gnu ]; then
  			basic_machine=mips-unknown
  		else
  			basic_machine=mips-mips
  		fi
  		;;
  	romp)
  		basic_machine=romp-ibm
  		;;
  	rs6000)
  		basic_machine=rs6000-ibm
  		;;
  	vax)
  		basic_machine=vax-dec
  		;;
  	pdp11)
  		basic_machine=pdp11-dec
  		;;
  	we32k)
  		basic_machine=we32k-att
  		;;
  	sparc | sparcv9)
  		basic_machine=sparc-sun
  		;;
          cydra)
  		basic_machine=cydra-cydrome
  		;;
  	orion)
  		basic_machine=orion-highlevel
  		;;
  	orion105)
  		basic_machine=clipper-highlevel
  		;;
  	mac | mpw | mac-mpw)
  		basic_machine=m68k-apple
  		;;
  	pmac | pmac-mpw)
  		basic_machine=powerpc-apple
  		;;
  	c4x*)
  		basic_machine=c4x-none
  		os=-coff
  		;;
  	*)
  		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  		exit 1
  		;;
  esac
  
  # Here we canonicalize certain aliases for manufacturers.
  case $basic_machine in
  	*-digital*)
  		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
  		;;
  	*-commodore*)
  		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
  		;;
  	*)
  		;;
  esac
  
  # Decode manufacturer-specific aliases for certain operating systems.
  
  if [ x"$os" != x"" ]
  then
  case $os in
          # First match some system type aliases
          # that might get confused with valid system types.
  	# -solaris* is a basic system type, with this one exception.
  	-solaris1 | -solaris1.*)
  		os=`echo $os | sed -e 's|solaris1|sunos4|'`
  		;;
  	-solaris)
  		os=-solaris2
  		;;
  	-svr4*)
  		os=-sysv4
  		;;
  	-unixware*)
  		os=-sysv4.2uw
  		;;
  	-gnu/linux*)
  		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
  		;;
  	# First accept the basic system types.
  	# The portable systems comes first.
  	# Each alternative MUST END IN A *, to match a version number.
  	# -sysv* is not here because it comes later, after sysvr4.
  	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
  	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
  	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
  	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
  	      | -aos* \
  	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
  	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
  	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
  	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
  	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
  	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
  	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
  	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
  	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
  	      | -openstep* | -oskit*)
  	# Remember, each alternative MUST END IN *, to match a version number.
  		;;
  	-qnx*)
  		case $basic_machine in
  		    x86-* | i[34567]86-*)
  			;;
  		    *)
  			os=-nto$os
  			;;
  		esac
  		;;
  	-nto*)
  		os=-nto-qnx
  		;;
  	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
  	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
  	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
  		;;
  	-mac*)
  		os=`echo $os | sed -e 's|mac|macos|'`
  		;;
  	-linux*)
  		os=`echo $os | sed -e 's|linux|linux-gnu|'`
  		;;
  	-sunos5*)
  		os=`echo $os | sed -e 's|sunos5|solaris2|'`
  		;;
  	-sunos6*)
  		os=`echo $os | sed -e 's|sunos6|solaris3|'`
  		;;
  	-opened*)
  		os=-openedition
  		;;
  	-wince*)
  		os=-wince
  		;;
  	-osfrose*)
  		os=-osfrose
  		;;
  	-osf*)
  		os=-osf
  		;;
  	-utek*)
  		os=-bsd
  		;;
  	-dynix*)
  		os=-bsd
  		;;
  	-acis*)
  		os=-aos
  		;;
  	-386bsd)
  		os=-bsd
  		;;
  	-ctix* | -uts*)
  		os=-sysv
  		;;
  	-ns2 )
  	        os=-nextstep2
  		;;
  	-nsk)
  		os=-nsk
  		;;
  	# Preserve the version number of sinix5.
  	-sinix5.*)
  		os=`echo $os | sed -e 's|sinix|sysv|'`
  		;;
  	-sinix*)
  		os=-sysv4
  		;;
  	-triton*)
  		os=-sysv3
  		;;
  	-oss*)
  		os=-sysv3
  		;;
  	-svr4)
  		os=-sysv4
  		;;
  	-svr3)
  		os=-sysv3
  		;;
  	-sysvr4)
  		os=-sysv4
  		;;
  	# This must come after -sysvr4.
  	-sysv*)
  		;;
  	-ose*)
  		os=-ose
  		;;
  	-es1800*)
  		os=-ose
  		;;
  	-xenix)
  		os=-xenix
  		;;
          -*mint | -*MiNT)
  	        os=-mint
  		;;
  	-none)
  		;;
  	*)
  		# Get rid of the `-' at the beginning of $os.
  		os=`echo $os | sed 's/[^-]*-//'`
  		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
  		exit 1
  		;;
  esac
  else
  
  # Here we handle the default operating systems that come with various machines.
  # The value should be what the vendor currently ships out the door with their
  # machine or put another way, the most popular os provided with the machine.
  
  # Note that if you're going to try to match "-MANUFACTURER" here (say,
  # "-sun"), then you have to tell the case statement up towards the top
  # that MANUFACTURER isn't an operating system.  Otherwise, code above
  # will signal an error saying that MANUFACTURER isn't an operating
  # system, and we'll never get to this point.
  
  case $basic_machine in
  	*-acorn)
  		os=-riscix1.2
  		;;
  	arm*-rebel)
  		os=-linux
  		;;
  	arm*-semi)
  		os=-aout
  		;;
          pdp11-*)
  		os=-none
  		;;
  	*-dec | vax-*)
  		os=-ultrix4.2
  		;;
  	m68*-apollo)
  		os=-domain
  		;;
  	i386-sun)
  		os=-sunos4.0.2
  		;;
  	m68000-sun)
  		os=-sunos3
  		# This also exists in the configure program, but was not the
  		# default.
  		# os=-sunos4
  		;;
  	m68*-cisco)
  		os=-aout
  		;;
  	mips*-cisco)
  		os=-elf
  		;;
  	mips*-*)
  		os=-elf
  		;;
  	*-tti)	# must be before sparc entry or we get the wrong os.
  		os=-sysv3
  		;;
  	sparc-* | *-sun)
  		os=-sunos4.1.1
  		;;
  	*-be)
  		os=-beos
  		;;
  	*-ibm)
  		os=-aix
  		;;
  	*-wec)
  		os=-proelf
  		;;
  	*-winbond)
  		os=-proelf
  		;;
  	*-oki)
  		os=-proelf
  		;;
  	*-hp)
  		os=-hpux
  		;;
  	*-hitachi)
  		os=-hiux
  		;;
  	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
  		os=-sysv
  		;;
  	*-cbm)
  		os=-amigaos
  		;;
  	*-dg)
  		os=-dgux
  		;;
  	*-dolphin)
  		os=-sysv3
  		;;
  	m68k-ccur)
  		os=-rtu
  		;;
  	m88k-omron*)
  		os=-luna
  		;;
  	*-next )
  		os=-nextstep
  		;;
  	*-sequent)
  		os=-ptx
  		;;
  	*-crds)
  		os=-unos
  		;;
  	*-ns)
  		os=-genix
  		;;
  	i370-*)
  		os=-mvs
  		;;
  	*-next)
  		os=-nextstep3
  		;;
          *-gould)
  		os=-sysv
  		;;
          *-highlevel)
  		os=-bsd
  		;;
  	*-encore)
  		os=-bsd
  		;;
          *-sgi)
  		os=-irix
  		;;
          *-siemens)
  		os=-sysv4
  		;;
  	*-masscomp)
  		os=-rtu
  		;;
  	f301-fujitsu)
  		os=-uxpv
  		;;
  	*-rom68k)
  		os=-coff
  		;;
  	*-*bug)
  		os=-coff
  		;;
  	*-apple)
  		os=-macos
  		;;
  	*-atari*)
  		os=-mint
  		;;
  	*)
  		os=-none
  		;;
  esac
  fi
  
  # Here we handle the case where we know the os, and the CPU type, but not the
  # manufacturer.  We pick the logical manufacturer.
  vendor=unknown
  case $basic_machine in
  	*-unknown)
  		case $os in
  			-riscix*)
  				vendor=acorn
  				;;
  			-sunos*)
  				vendor=sun
  				;;
  			-aix*)
  				vendor=ibm
  				;;
  			-beos*)
  				vendor=be
  				;;
  			-hpux*)
  				vendor=hp
  				;;
  			-mpeix*)
  				vendor=hp
  				;;
  			-hiux*)
  				vendor=hitachi
  				;;
  			-unos*)
  				vendor=crds
  				;;
  			-dgux*)
  				vendor=dg
  				;;
  			-luna*)
  				vendor=omron
  				;;
  			-genix*)
  				vendor=ns
  				;;
  			-mvs* | -opened*)
  				vendor=ibm
  				;;
  			-ptx*)
  				vendor=sequent
  				;;
  			-vxsim* | -vxworks*)
  				vendor=wrs
  				;;
  			-aux*)
  				vendor=apple
  				;;
  			-hms*)
  				vendor=hitachi
  				;;
  			-mpw* | -macos*)
  				vendor=apple
  				;;
  			-*mint | -*MiNT)
  				vendor=atari
  				;;
  		esac
  		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
  		;;
  esac
  
  echo $basic_machine$os
  
  
  

Re: cvs commit: apr/build config.guess config.sub

Posted by Greg Stein <gs...@lyra.org>.
On Sun, Feb 18, 2001 at 11:49:53PM -0500, Cliff Woolley wrote:
> > -----Original Message-----
> > > Um... how does this not infect the APR tree with the GPL?  My
> > > understanding is that we can redistribute the *output* of GNU development
> > > tools like this, but not the actual tools themselves.
> > 
> > If we can't distribute this file, then we can't use autoconf/libtool.
> > Like the file says, we need these files, because we are more portable than
> > the GNU tools we rely on.
> 
> I quote from config.guess (config.sub has the same block):
> 
>     As a special exception to the GNU General Public License, if you
>     distribute this file as part of a program that contains a
>     configuration script generated by Autoconf, you may include it under
>     the same distribution terms that you use for the rest of that program.
> 
> Looks okay to me...

Right! That has always been why we could distribute these scripts. They come
from libtool(?), but it still says autconf. No matter, tho, as we *do* use
autoconf.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Re: cvs commit: apr/build config.guess config.sub

Posted by Brian Behlendorf <br...@collab.net>.
On Mon, 19 Feb 2001 rbb@covalent.net wrote:
> On Sun, 18 Feb 2001, Brian Behlendorf wrote:
>
> > On 18 Feb 2001 fielding@apache.org wrote:
> > >   Import of platform guessing scripts from GNU libtool 1.3.5.
> > >   These are in CVS because Apache runs on platforms that are not
> > >   known by the GNU tools (yet).
> >
> > >   # This file is free software; you can redistribute it and/or modify it
> > >   # under the terms of the GNU General Public License as published by
> > >   # the Free Software Foundation; either version 2 of the License, or
> > >   # (at your option) any later version.
> >
> > Um... how does this not infect the APR tree with the GPL?  My
> > understanding is that we can redistribute the *output* of GNU development
> > tools like this, but not the actual tools themselves.
>
> If we can't distribute this file, then we can't use autoconf/libtool.
> Like the file says, we need these files, because we are more portable than
> the GNU tools we rely on.

So the problem is that we have enhanced the GNU tools we use to account
for platforms that the GNU tools don't.  That's totally cool - however, we
should both:

a) offer those patches back to the GNU tool maintainers so it can be
incorporated back upstream, and

b) distribute our modified versions of those tools as separate packages
under the GPL.

If we don't do that, I don't see how the whole of APR doesn't become GPL.

My understanding that *use* of autoconf & libtool was something that
matter to the developers, but the resulting code we write using those
tools (even if they include derivative works) is explicitly not GPL.  So,
we should be able to continue to use GNU tools, but this understanding
should be validated.

	Brian





RE: cvs commit: apr/build config.guess config.sub

Posted by Sander Striker <st...@samba-tng.org>.
>> Simple workaround: contact the autoconf/libtool developers and ask
>> them to incorporate the changes. Explain to them that you will need to
>> drop autoconf otherwise and why.
>
> Why don't you just submit your patches like everyone else?
> Ultimatums along the lines of "accept this patch
> or we will stop using your package" are going to
> get you nowhere.

*sigh* this was clearly not what I meant. Maybe I chose my words a little
poorly, but if there is a license coflict (which everyone now pointed out
isn't
the case) you have little choices left. The options you do have are:
 - contact the maintainers/developers of the product your depending on
   (this could be in the form of submitting a patch)
 - drop the product
 - accept that you won't be able to do what you would like to do.

> Mo DeJong
> Red Hat Inc

Sander


RE: cvs commit: apr/build config.guess config.sub

Posted by Mo DeJong <md...@cygnus.com>.
On Mon, 19 Feb 2001, Sander Striker wrote:

> > > Um... how does this not infect the APR tree with the GPL?  My
> > > understanding is that we can redistribute the *output* of GNU
> > development
> > > tools like this, but not the actual tools themselves.
> >
> > If we can't distribute this file, then we can't use autoconf/libtool.
> > Like the file says, we need these files, because we are more portable than
> > the GNU tools we rely on.

You can change and redistribute the autotools as much as
you like, quoting from the GPL:

"You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1."

It goes on to clarify this issue:

"In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License."

> Simple workaround: contact the autoconf/libtool developers and ask
> them to incorporate the changes. Explain to them that you will need to
> drop autoconf otherwise and why.

Why don't you just submit your patches like everyone else?
Ultimatums along the lines of "accept this patch
or we will stop using your package" are going to
get you nowhere.

Mo DeJong
Red Hat Inc

RE: cvs commit: apr/build config.guess config.sub

Posted by Sander Striker <st...@samba-tng.org>.
> > Um... how does this not infect the APR tree with the GPL?  My
> > understanding is that we can redistribute the *output* of GNU
> development
> > tools like this, but not the actual tools themselves.
>
> If we can't distribute this file, then we can't use autoconf/libtool.
> Like the file says, we need these files, because we are more portable than
> the GNU tools we rely on.

Simple workaround: contact the autoconf/libtool developers and ask
them to incorporate the changes. Explain to them that you will need to
drop autoconf otherwise and why.

Sander


RE: cvs commit: apr/build config.guess config.sub

Posted by Sander Striker <st...@samba-tng.org>.
Oops, sorry, I missed some mails in which you guys
already resolved the problem ;-)

Ignore previous message,

Sander

Re: cvs commit: apr/build config.guess config.sub

Posted by "Roy T. Fielding" <fi...@ebuilt.com>.
On Sun, Feb 18, 2001 at 09:05:13PM -0800, Brian Behlendorf wrote:
> On Sun, 18 Feb 2001, Cliff Woolley wrote:
> > I quote from config.guess (config.sub has the same block):
> >
> >     As a special exception to the GNU General Public License, if you
> >     distribute this file as part of a program that contains a
> >     configuration script generated by Autoconf, you may include it under
> >     the same distribution terms that you use for the rest of that program.
> >
> > Looks okay to me...
> 
> Aaah!  OK, I missed that.  Excellent.  Sorry for doubting you, Roy.  =)

No worries -- I prefer to have someone double-checking such things.
Even without the special exception that you missed in the very next
paragraph [;-)], it would be safe to distribute because shell scripts
are not "combined" in the same way as compiled code, and thus the
viral conditions of the GPL on derived work would not apply.

....Roy

RE: cvs commit: apr/build config.guess config.sub

Posted by Brian Behlendorf <br...@collab.net>.
On Sun, 18 Feb 2001, Cliff Woolley wrote:
> I quote from config.guess (config.sub has the same block):
>
>     As a special exception to the GNU General Public License, if you
>     distribute this file as part of a program that contains a
>     configuration script generated by Autoconf, you may include it under
>     the same distribution terms that you use for the rest of that program.
>
> Looks okay to me...

Aaah!  OK, I missed that.  Excellent.  Sorry for doubting you, Roy.  =)

	Brian




RE: cvs commit: apr/build config.guess config.sub

Posted by Cliff Woolley <cl...@yahoo.com>.
> -----Original Message-----
> > Um... how does this not infect the APR tree with the GPL?  My
> > understanding is that we can redistribute the *output* of GNU development
> > tools like this, but not the actual tools themselves.
> 
> If we can't distribute this file, then we can't use autoconf/libtool.
> Like the file says, we need these files, because we are more portable than
> the GNU tools we rely on.

I quote from config.guess (config.sub has the same block):

    As a special exception to the GNU General Public License, if you
    distribute this file as part of a program that contains a
    configuration script generated by Autoconf, you may include it under
    the same distribution terms that you use for the rest of that program.

Looks okay to me...

--Cliff

---------------------------------------------------
    Cliff Woolley
    cliffwoolley@yahoo.com
    804-244-8615
    Charlottesville, VA

Re: cvs commit: apr/build config.guess config.sub

Posted by rb...@covalent.net.
On Sun, 18 Feb 2001, Brian Behlendorf wrote:

> On 18 Feb 2001 fielding@apache.org wrote:
> >   Import of platform guessing scripts from GNU libtool 1.3.5.
> >   These are in CVS because Apache runs on platforms that are not
> >   known by the GNU tools (yet).
>
> >   # This file is free software; you can redistribute it and/or modify it
> >   # under the terms of the GNU General Public License as published by
> >   # the Free Software Foundation; either version 2 of the License, or
> >   # (at your option) any later version.
>
> Um... how does this not infect the APR tree with the GPL?  My
> understanding is that we can redistribute the *output* of GNU development
> tools like this, but not the actual tools themselves.

If we can't distribute this file, then we can't use autoconf/libtool.
Like the file says, we need these files, because we are more portable than
the GNU tools we rely on.

Ryan

_______________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------


Re: cvs commit: apr/build config.guess config.sub

Posted by Brian Behlendorf <br...@collab.net>.
On 18 Feb 2001 fielding@apache.org wrote:
>   Import of platform guessing scripts from GNU libtool 1.3.5.
>   These are in CVS because Apache runs on platforms that are not
>   known by the GNU tools (yet).

>   # This file is free software; you can redistribute it and/or modify it
>   # under the terms of the GNU General Public License as published by
>   # the Free Software Foundation; either version 2 of the License, or
>   # (at your option) any later version.

Um... how does this not infect the APR tree with the GPL?  My
understanding is that we can redistribute the *output* of GNU development
tools like this, but not the actual tools themselves.

	Brian