head	1.9;
access;
symbols
	netbsd-11-0-RC4:1.7
	byacc-20260126:1.1.1.14
	netbsd-11-0-RC3:1.7
	netbsd-11-0-RC2:1.7
	netbsd-11-0-RC1:1.7
	byacc-20241231:1.1.1.13
	perseant-exfatfs-base-20250801:1.7
	netbsd-11:1.7.0.2
	netbsd-11-base:1.7
	netbsd-10-1-RELEASE:1.6
	byacc-20240109:1.1.1.12
	perseant-exfatfs-base-20240630:1.6
	perseant-exfatfs:1.6.0.8
	perseant-exfatfs-base:1.6
	netbsd-8-3-RELEASE:1.2.4.1
	netbsd-9-4-RELEASE:1.4
	netbsd-10-0-RELEASE:1.6
	netbsd-10-0-RC6:1.6
	netbsd-10-0-RC5:1.6
	netbsd-10-0-RC4:1.6
	netbsd-10-0-RC3:1.6
	netbsd-10-0-RC2:1.6
	netbsd-10-0-RC1:1.6
	netbsd-10:1.6.0.6
	netbsd-10-base:1.6
	netbsd-9-3-RELEASE:1.4
	cjep_sun2x-base1:1.6
	cjep_sun2x:1.6.0.4
	cjep_sun2x-base:1.6
	cjep_staticlib_x-base1:1.6
	netbsd-9-2-RELEASE:1.4
	cjep_staticlib_x:1.6.0.2
	cjep_staticlib_x-base:1.6
	byacc-20210109:1.1.1.11
	netbsd-9-1-RELEASE:1.4
	phil-wifi-20200421:1.5
	phil-wifi-20200411:1.5
	is-mlppp:1.5.0.2
	is-mlppp-base:1.5
	phil-wifi-20200406:1.5
	netbsd-8-2-RELEASE:1.2.4.1
	netbsd-9-0-RELEASE:1.4
	netbsd-9-0-RC2:1.4
	netbsd-9-0-RC1:1.4
	phil-wifi-20191119:1.5
	byacc-20190617:1.1.1.10
	netbsd-9:1.4.0.2
	netbsd-9-base:1.4
	phil-wifi-20190609:1.4
	netbsd-8-1-RELEASE:1.2.4.1
	netbsd-8-1-RC1:1.2.4.1
	pgoyette-compat-merge-20190127:1.3.4.1
	pgoyette-compat-20190127:1.4
	pgoyette-compat-20190118:1.4
	pgoyette-compat-1226:1.4
	byacc-20180609:1.1.1.9
	pgoyette-compat-1126:1.3
	pgoyette-compat-1020:1.3
	pgoyette-compat-0930:1.3
	pgoyette-compat-0906:1.3
	netbsd-7-2-RELEASE:1.1.1.4
	pgoyette-compat-0728:1.3
	netbsd-8-0-RELEASE:1.2.4.1
	phil-wifi:1.3.0.6
	phil-wifi-base:1.3
	pgoyette-compat-0625:1.3
	netbsd-8-0-RC2:1.2.4.1
	pgoyette-compat-0521:1.3
	pgoyette-compat-0502:1.3
	pgoyette-compat-0422:1.3
	netbsd-8-0-RC1:1.2.4.1
	pgoyette-compat-0415:1.3
	pgoyette-compat-0407:1.3
	pgoyette-compat-0330:1.3
	pgoyette-compat-0322:1.3
	pgoyette-compat-0315:1.3
	netbsd-7-1-2-RELEASE:1.1.1.4
	pgoyette-compat:1.3.0.4
	pgoyette-compat-base:1.3
	netbsd-7-1-1-RELEASE:1.1.1.4
	matt-nb8-mediatek:1.2.4.1.0.2
	matt-nb8-mediatek-base:1.2.4.1
	perseant-stdc-iso10646:1.3.0.2
	perseant-stdc-iso10646-base:1.3
	byacc-20170430:1.1.1.8
	netbsd-8:1.2.0.4
	netbsd-8-base:1.2
	prg-localcount2-base3:1.2
	prg-localcount2-base2:1.2
	prg-localcount2-base1:1.2
	prg-localcount2:1.2.0.2
	prg-localcount2-base:1.2
	pgoyette-localcount-20170426:1.2
	bouyer-socketcan-base1:1.2
	pgoyette-localcount-20170320:1.2
	netbsd-7-1:1.1.1.4.0.14
	netbsd-7-1-RELEASE:1.1.1.4
	netbsd-7-1-RC2:1.1.1.4
	byacc-20170201:1.1.1.7
	netbsd-7-nhusb-base-20170116:1.1.1.4
	bouyer-socketcan:1.1.1.6.0.4
	bouyer-socketcan-base:1.1.1.6
	pgoyette-localcount-20170107:1.1.1.6
	netbsd-7-1-RC1:1.1.1.4
	pgoyette-localcount-20161104:1.1.1.6
	netbsd-7-0-2-RELEASE:1.1.1.4
	localcount-20160914:1.1.1.6
	netbsd-7-nhusb:1.1.1.4.0.12
	netbsd-7-nhusb-base:1.1.1.4
	pgoyette-localcount-20160806:1.1.1.6
	pgoyette-localcount-20160726:1.1.1.6
	pgoyette-localcount:1.1.1.6.0.2
	pgoyette-localcount-base:1.1.1.6
	netbsd-7-0-1-RELEASE:1.1.1.4
	byacc-20150711:1.1.1.6
	netbsd-7-0:1.1.1.4.0.10
	netbsd-7-0-RELEASE:1.1.1.4
	netbsd-7-0-RC3:1.1.1.4
	netbsd-7-0-RC2:1.1.1.4
	netbsd-7-0-RC1:1.1.1.4
	byacc-20141128:1.1.1.5
	netbsd-6-0-6-RELEASE:1.1.1.3
	netbsd-6-1-5-RELEASE:1.1.1.3
	netbsd-7:1.1.1.4.0.8
	netbsd-7-base:1.1.1.4
	yamt-pagecache-base9:1.1.1.4
	yamt-pagecache-tag8:1.1.1.3
	netbsd-6-1-4-RELEASE:1.1.1.3
	netbsd-6-0-5-RELEASE:1.1.1.3
	tls-earlyentropy:1.1.1.4.0.6
	tls-earlyentropy-base:1.1.1.4
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.4
	riastradh-drm2-base3:1.1.1.4
	netbsd-6-1-3-RELEASE:1.1.1.3
	netbsd-6-0-4-RELEASE:1.1.1.3
	netbsd-6-1-2-RELEASE:1.1.1.3
	netbsd-6-0-3-RELEASE:1.1.1.3
	netbsd-6-1-1-RELEASE:1.1.1.3
	riastradh-drm2-base2:1.1.1.4
	riastradh-drm2-base1:1.1.1.4
	riastradh-drm2:1.1.1.4.0.4
	riastradh-drm2-base:1.1.1.4
	netbsd-6-1:1.1.1.3.0.16
	netbsd-6-0-2-RELEASE:1.1.1.3
	netbsd-6-1-RELEASE:1.1.1.3
	khorben-n900:1.1.1.4.0.2
	netbsd-6-1-RC4:1.1.1.3
	byacc-20130304:1.1.1.4
	netbsd-6-1-RC3:1.1.1.3
	agc-symver:1.1.1.3.0.14
	agc-symver-base:1.1.1.3
	netbsd-6-1-RC2:1.1.1.3
	netbsd-6-1-RC1:1.1.1.3
	yamt-pagecache-base8:1.1.1.3
	netbsd-6-0-1-RELEASE:1.1.1.3
	yamt-pagecache-base7:1.1.1.3
	matt-nb6-plus-nbase:1.1.1.3
	yamt-pagecache-base6:1.1.1.3
	netbsd-6-0:1.1.1.3.0.10
	netbsd-6-0-RELEASE:1.1.1.3
	netbsd-6-0-RC2:1.1.1.3
	tls-maxphys:1.1.1.3.0.8
	tls-maxphys-base:1.1.1.4
	matt-nb6-plus:1.1.1.3.0.6
	matt-nb6-plus-base:1.1.1.3
	netbsd-6-0-RC1:1.1.1.3
	yamt-pagecache-base5:1.1.1.3
	yamt-pagecache-base4:1.1.1.3
	netbsd-6:1.1.1.3.0.4
	netbsd-6-base:1.1.1.3
	yamt-pagecache-base3:1.1.1.3
	yamt-pagecache-base2:1.1.1.3
	yamt-pagecache:1.1.1.3.0.2
	yamt-pagecache-base:1.1.1.3
	byacc-20110908:1.1.1.3
	cherry-xenmp:1.1.1.2.0.4
	cherry-xenmp-base:1.1.1.2
	bouyer-quota2-nbase:1.1.1.2
	bouyer-quota2:1.1.1.2.0.2
	bouyer-quota2-base:1.1.1.2
	matt-mips64-premerge-20101231:1.1.1.2
	byacc-20101127:1.1.1.2
	matt-premerge-20091211:1.1.1.1
	byacc-20091027:1.1.1.1
	DICKEY:1.1.1;
locks; strict;
comment	@# @;


1.9
date	2026.05.03.15.29.19;	author christos;	state Exp;
branches;
next	1.8;
commitid	j2qiJt8NASqMKnEG;

1.8
date	2026.01.18.16.41.29;	author christos;	state Exp;
branches;
next	1.7;
commitid	aBHOlbcJT8wMwTqG;

1.7
date	2024.09.14.21.29.02;	author christos;	state Exp;
branches;
next	1.6;
commitid	lKDNYUOQeXsSTOpF;

1.6
date	2021.02.20.22.57.56;	author christos;	state Exp;
branches
	1.6.8.1;
next	1.5;
commitid	uoBW1Q1EE9oifvIC;

1.5
date	2019.10.06.23.29.42;	author christos;	state Exp;
branches;
next	1.4;
commitid	hy3qc8IEc20iARFB;

1.4
date	2018.12.23.15.38.53;	author christos;	state Exp;
branches;
next	1.3;
commitid	4BmzHVHFHbU4dW4B;

1.3
date	2017.06.05.18.54.30;	author christos;	state Exp;
branches
	1.3.4.1
	1.3.6.1;
next	1.2;
commitid	NQtX19gjOzd9udUz;

1.2
date	2017.02.01.09.26.40;	author sevan;	state Exp;
branches
	1.2.4.1;
next	1.1;
commitid	GAil0cnWzrQL6eEz;

1.1
date	2009.10.29.00.46.52;	author christos;	state Exp;
branches
	1.1.1.1;
next	;

1.6.8.1
date	2025.08.02.05.20.54;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;

1.3.4.1
date	2018.12.26.14.01.14;	author pgoyette;	state Exp;
branches;
next	;
commitid	xUhK8IAeBM1azj5B;

1.3.6.1
date	2019.06.10.21.44.41;	author christos;	state Exp;
branches;
next	1.3.6.2;
commitid	jtc8rnCzWiEEHGqB;

1.3.6.2
date	2020.04.13.07.45.49;	author martin;	state Exp;
branches;
next	;
commitid	X01YhRUPVUDaec4C;

1.2.4.1
date	2017.07.18.18.09.43;	author snj;	state Exp;
branches;
next	;
commitid	S2qYDdYxulT4RJZz;

1.1.1.1
date	2009.10.29.00.46.52;	author christos;	state Exp;
branches;
next	1.1.1.2;

1.1.1.2
date	2010.12.23.23.36.23;	author christos;	state Exp;
branches;
next	1.1.1.3;

1.1.1.3
date	2011.09.10.21.19.05;	author christos;	state Exp;
branches
	1.1.1.3.2.1
	1.1.1.3.8.1;
next	1.1.1.4;

1.1.1.4
date	2013.04.06.14.45.24;	author christos;	state Exp;
branches;
next	1.1.1.5;

1.1.1.5
date	2015.01.03.22.58.23;	author christos;	state Exp;
branches;
next	1.1.1.6;
commitid	WWTpfhLfU6SzfD4y;

1.1.1.6
date	2016.01.09.21.55.11;	author christos;	state Exp;
branches
	1.1.1.6.2.1
	1.1.1.6.4.1;
next	1.1.1.7;
commitid	Gs8oKaOBpCYwYiQy;

1.1.1.7
date	2017.02.11.19.30.02;	author christos;	state Exp;
branches;
next	1.1.1.8;
commitid	wnNPHIKvRp3plzFz;

1.1.1.8
date	2017.06.05.18.49.47;	author christos;	state Exp;
branches;
next	1.1.1.9;
commitid	84q8jfg1TgvzsdUz;

1.1.1.9
date	2018.12.23.15.26.13;	author christos;	state Exp;
branches;
next	1.1.1.10;
commitid	riMIEtIheYLD8W4B;

1.1.1.10
date	2019.10.06.23.19.26;	author christos;	state Exp;
branches;
next	1.1.1.11;
commitid	JrU1iCEVX140xRFB;

1.1.1.11
date	2021.02.20.20.30.06;	author christos;	state Exp;
branches;
next	1.1.1.12;
commitid	alShVYroLa0uquIC;

1.1.1.12
date	2024.09.14.21.25.36;	author christos;	state Exp;
branches;
next	1.1.1.13;
commitid	jHewswoOAOgqSOpF;

1.1.1.13
date	2026.01.18.16.39.06;	author christos;	state Exp;
branches;
next	1.1.1.14;
commitid	RKx5m0Qp6RwMvTqG;

1.1.1.14
date	2026.05.03.15.24.33;	author christos;	state Exp;
branches;
next	;
commitid	BhlzZP3GV92FInEG;

1.1.1.3.2.1
date	2014.05.22.15.44.17;	author yamt;	state Exp;
branches;
next	;
commitid	l93nvDjAO1P27yBx;

1.1.1.3.8.1
date	2013.06.23.06.26.26;	author tls;	state Exp;
branches;
next	;
commitid	OnlO1cBgtQRcIHUw;

1.1.1.6.2.1
date	2017.03.20.06.52.17;	author pgoyette;	state Exp;
branches;
next	;
commitid	jjw7cAwgyKq7RfKz;

1.1.1.6.4.1
date	2017.04.21.16.51.21;	author bouyer;	state Exp;
branches;
next	;
commitid	dUG7nkTKALCadqOz;


desc
@@


1.9
log
@merge changes between 20241231 and 20260126
@
text
@#! /bin/sh
# Configuration validation subroutine script.
#   Copyright 1992-2025 Free Software Foundation, Inc.

# shellcheck disable=SC2006,SC2268,SC2162 # see below for rationale

timestamp='2025-07-10'

# 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 3 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, see <https://www.gnu.org/licenses/>.
#
# 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.  This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").


# Please send patches to <config-patches@@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.

# You can get the latest version of this script from:
# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub

# 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.

# The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX.  However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.

me=`echo "$0" | sed -e 's,.*/,,'`

usage="\
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS

Canonicalize a configuration name.

Options:
  -h, --help         print this help, then exit
  -t, --time-stamp   print date of last modification, then exit
  -v, --version      print version number, then exit

Report bugs and patches to <config-patches@@gnu.org>."

version="\
GNU config.sub ($timestamp)

Copyright 1992-2025 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."

help="
Try '$me --help' for more information."

# Parse command line
while test $# -gt 0 ; do
  case $1 in
    --time-stamp | --time* | -t )
       echo "$timestamp" ; exit ;;
    --version | -v )
       echo "$version" ; exit ;;
    --help | --h* | -h )
       echo "$usage"; exit ;;
    -- )     # Stop option processing
       shift; break ;;
    - )	# Use stdin as input.
       break ;;
    -* )
       echo "$me: invalid option $1$help" >&2
       exit 1 ;;

    *local*)
       # First pass through any local machine types.
       echo "$1"
       exit ;;

    * )
       break ;;
  esac
done

case $# in
 0) echo "$me: missing argument$help" >&2
    exit 1;;
 1) ;;
 *) echo "$me: too many arguments$help" >&2
    exit 1;;
esac

# Split fields of configuration type
saved_IFS=$IFS
IFS="-" read field1 field2 field3 field4 <<EOF
$1
EOF
IFS=$saved_IFS

# Separate into logical components for further validation
case $1 in
	*-*-*-*-*)
		echo "Invalid configuration '$1': more than four components" >&2
		exit 1
		;;
	*-*-*-*)
		basic_machine=$field1-$field2
		basic_os=$field3-$field4
		;;
	*-*-*)
		# Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
		# parts
		maybe_os=$field2-$field3
		case $maybe_os in
			  cloudabi*-eabi* \
			| kfreebsd*-gnu* \
			| knetbsd*-gnu* \
			| kopensolaris*-gnu* \
			| ironclad-* \
			| linux-* \
			| managarm-* \
			| netbsd*-eabi* \
			| netbsd*-gnu* \
			| nto-qnx* \
			| os2-emx* \
			| rtmk-nova* \
			| storm-chaos* \
			| uclinux-gnu* \
			| uclinux-uclibc* \
			| windows-* )
				basic_machine=$field1
				basic_os=$maybe_os
				;;
			android-linux)
				basic_machine=$field1-unknown
				basic_os=linux-android
				;;
			*)
				basic_machine=$field1-$field2
				basic_os=$field3
				;;
		esac
		;;
	*-*)
		case $field1-$field2 in
			# Shorthands that happen to contain a single dash
			convex-c[12] | convex-c3[248])
				basic_machine=$field2-convex
				basic_os=
				;;
			decstation-3100)
				basic_machine=mips-dec
				basic_os=
				;;
			*-*)
				# Second component is usually, but not always the OS
				case $field2 in
					# Do not treat sunos as a manufacturer
					sun*os*)
						basic_machine=$field1
						basic_os=$field2
						;;
					# Manufacturers
					  3100* \
					| 32* \
					| 3300* \
					| 3600* \
					| 7300* \
					| acorn \
					| altos* \
					| apollo \
					| apple \
					| atari \
					| att* \
					| axis \
					| be \
					| bull \
					| cbm \
					| ccur \
					| cisco \
					| commodore \
					| convergent* \
					| convex* \
					| cray \
					| crds \
					| dec* \
					| delta* \
					| dg \
					| digital \
					| dolphin \
					| encore* \
					| gould \
					| harris \
					| highlevel \
					| hitachi* \
					| hp \
					| ibm* \
					| intergraph \
					| isi* \
					| knuth \
					| masscomp \
					| microblaze* \
					| mips* \
					| motorola* \
					| ncr* \
					| news \
					| next \
					| ns \
					| oki \
					| omron* \
					| pc533* \
					| rebel \
					| rom68k \
					| rombug \
					| semi \
					| sequent* \
					| sgi* \
					| siemens \
					| sim \
					| sni \
					| sony* \
					| stratus \
					| sun \
					| sun[234]* \
					| tektronix \
					| tti* \
					| ultra \
					| unicom* \
					| wec \
					| winbond \
					| wrs)
						basic_machine=$field1-$field2
						basic_os=
						;;
					tock* | zephyr*)
						basic_machine=$field1-unknown
						basic_os=$field2
						;;
					*)
						basic_machine=$field1
						basic_os=$field2
						;;
				esac
			;;
		esac
		;;
	*)
		# Convert single-component short-hands not valid as part of
		# multi-component configurations.
		case $field1 in
			386bsd)
				basic_machine=i386-pc
				basic_os=bsd
				;;
			a29khif)
				basic_machine=a29k-amd
				basic_os=udi
				;;
			adobe68k)
				basic_machine=m68010-adobe
				basic_os=scout
				;;
			alliant)
				basic_machine=fx80-alliant
				basic_os=
				;;
			altos | altos3068)
				basic_machine=m68k-altos
				basic_os=
				;;
			am29k)
				basic_machine=a29k-none
				basic_os=bsd
				;;
			amdahl)
				basic_machine=580-amdahl
				basic_os=sysv
				;;
			amiga)
				basic_machine=m68k-unknown
				basic_os=
				;;
			amigaos | amigados)
				basic_machine=m68k-unknown
				basic_os=amigaos
				;;
			amigaunix | amix)
				basic_machine=m68k-unknown
				basic_os=sysv4
				;;
			apollo68)
				basic_machine=m68k-apollo
				basic_os=sysv
				;;
			apollo68bsd)
				basic_machine=m68k-apollo
				basic_os=bsd
				;;
			aros)
				basic_machine=i386-pc
				basic_os=aros
				;;
			aux)
				basic_machine=m68k-apple
				basic_os=aux
				;;
			balance)
				basic_machine=ns32k-sequent
				basic_os=dynix
				;;
			blackfin)
				basic_machine=bfin-unknown
				basic_os=linux
				;;
			cegcc)
				basic_machine=arm-unknown
				basic_os=cegcc
				;;
			cray)
				basic_machine=j90-cray
				basic_os=unicos
				;;
			crds | unos)
				basic_machine=m68k-crds
				basic_os=
				;;
			da30)
				basic_machine=m68k-da30
				basic_os=
				;;
			decstation | pmax | pmin | dec3100 | decstatn)
				basic_machine=mips-dec
				basic_os=
				;;
			delta88)
				basic_machine=m88k-motorola
				basic_os=sysv3
				;;
			dicos)
				basic_machine=i686-pc
				basic_os=dicos
				;;
			djgpp)
				basic_machine=i586-pc
				basic_os=msdosdjgpp
				;;
			ebmon29k)
				basic_machine=a29k-amd
				basic_os=ebmon
				;;
			es1800 | OSE68k | ose68k | ose | OSE)
				basic_machine=m68k-ericsson
				basic_os=ose
				;;
			gmicro)
				basic_machine=tron-gmicro
				basic_os=sysv
				;;
			go32)
				basic_machine=i386-pc
				basic_os=go32
				;;
			h8300hms)
				basic_machine=h8300-hitachi
				basic_os=hms
				;;
			h8300xray)
				basic_machine=h8300-hitachi
				basic_os=xray
				;;
			h8500hms)
				basic_machine=h8500-hitachi
				basic_os=hms
				;;
			harris)
				basic_machine=m88k-harris
				basic_os=sysv3
				;;
			hp300 | hp300hpux)
				basic_machine=m68k-hp
				basic_os=hpux
				;;
			hp300bsd)
				basic_machine=m68k-hp
				basic_os=bsd
				;;
			hppaosf)
				basic_machine=hppa1.1-hp
				basic_os=osf
				;;
			hppro)
				basic_machine=hppa1.1-hp
				basic_os=proelf
				;;
			i386mach)
				basic_machine=i386-mach
				basic_os=mach
				;;
			isi68 | isi)
				basic_machine=m68k-isi
				basic_os=sysv
				;;
			m68knommu)
				basic_machine=m68k-unknown
				basic_os=linux
				;;
			magnum | m3230)
				basic_machine=mips-mips
				basic_os=sysv
				;;
			merlin)
				basic_machine=ns32k-utek
				basic_os=sysv
				;;
			mingw64)
				basic_machine=x86_64-pc
				basic_os=mingw64
				;;
			mingw32)
				basic_machine=i686-pc
				basic_os=mingw32
				;;
			mingw32ce)
				basic_machine=arm-unknown
				basic_os=mingw32ce
				;;
			monitor)
				basic_machine=m68k-rom68k
				basic_os=coff
				;;
			morphos)
				basic_machine=powerpc-unknown
				basic_os=morphos
				;;
			moxiebox)
				basic_machine=moxie-unknown
				basic_os=moxiebox
				;;
			msdos)
				basic_machine=i386-pc
				basic_os=msdos
				;;
			msys)
				basic_machine=i686-pc
				basic_os=msys
				;;
			mvs)
				basic_machine=i370-ibm
				basic_os=mvs
				;;
			nacl)
				basic_machine=le32-unknown
				basic_os=nacl
				;;
			ncr3000)
				basic_machine=i486-ncr
				basic_os=sysv4
				;;
			netbsd386)
				basic_machine=i386-pc
				basic_os=netbsd
				;;
			netwinder)
				basic_machine=armv4l-rebel
				basic_os=linux
				;;
			news | news700 | news800 | news900)
				basic_machine=m68k-sony
				basic_os=newsos
				;;
			news1000)
				basic_machine=m68030-sony
				basic_os=newsos
				;;
			necv70)
				basic_machine=v70-nec
				basic_os=sysv
				;;
			nh3000)
				basic_machine=m68k-harris
				basic_os=cxux
				;;
			nh[45]000)
				basic_machine=m88k-harris
				basic_os=cxux
				;;
			nindy960)
				basic_machine=i960-intel
				basic_os=nindy
				;;
			mon960)
				basic_machine=i960-intel
				basic_os=mon960
				;;
			nonstopux)
				basic_machine=mips-compaq
				basic_os=nonstopux
				;;
			os400)
				basic_machine=powerpc-ibm
				basic_os=os400
				;;
			OSE68000 | ose68000)
				basic_machine=m68000-ericsson
				basic_os=ose
				;;
			os68k)
				basic_machine=m68k-none
				basic_os=os68k
				;;
			paragon)
				basic_machine=i860-intel
				basic_os=osf
				;;
			parisc)
				basic_machine=hppa-unknown
				basic_os=linux
				;;
			psp)
				basic_machine=mipsallegrexel-sony
				basic_os=psp
				;;
			pw32)
				basic_machine=i586-unknown
				basic_os=pw32
				;;
			rdos | rdos64)
				basic_machine=x86_64-pc
				basic_os=rdos
				;;
			rdos32)
				basic_machine=i386-pc
				basic_os=rdos
				;;
			rom68k)
				basic_machine=m68k-rom68k
				basic_os=coff
				;;
			sa29200)
				basic_machine=a29k-amd
				basic_os=udi
				;;
			sei)
				basic_machine=mips-sei
				basic_os=seiux
				;;
			sequent)
				basic_machine=i386-sequent
				basic_os=
				;;
			sps7)
				basic_machine=m68k-bull
				basic_os=sysv2
				;;
			st2000)
				basic_machine=m68k-tandem
				basic_os=
				;;
			stratus)
				basic_machine=i860-stratus
				basic_os=sysv4
				;;
			sun2)
				basic_machine=m68000-sun
				basic_os=
				;;
			sun2os3)
				basic_machine=m68000-sun
				basic_os=sunos3
				;;
			sun2os4)
				basic_machine=m68000-sun
				basic_os=sunos4
				;;
			sun3)
				basic_machine=m68k-sun
				basic_os=
				;;
			sun3os3)
				basic_machine=m68k-sun
				basic_os=sunos3
				;;
			sun3os4)
				basic_machine=m68k-sun
				basic_os=sunos4
				;;
			sun4)
				basic_machine=sparc-sun
				basic_os=
				;;
			sun4os3)
				basic_machine=sparc-sun
				basic_os=sunos3
				;;
			sun4os4)
				basic_machine=sparc-sun
				basic_os=sunos4
				;;
			sun4sol2)
				basic_machine=sparc-sun
				basic_os=solaris2
				;;
			sun386 | sun386i | roadrunner)
				basic_machine=i386-sun
				basic_os=
				;;
			sv1)
				basic_machine=sv1-cray
				basic_os=unicos
				;;
			symmetry)
				basic_machine=i386-sequent
				basic_os=dynix
				;;
			t3e)
				basic_machine=alphaev5-cray
				basic_os=unicos
				;;
			t90)
				basic_machine=t90-cray
				basic_os=unicos
				;;
			toad1)
				basic_machine=pdp10-xkl
				basic_os=tops20
				;;
			tpf)
				basic_machine=s390x-ibm
				basic_os=tpf
				;;
			udi29k)
				basic_machine=a29k-amd
				basic_os=udi
				;;
			ultra3)
				basic_machine=a29k-nyu
				basic_os=sym1
				;;
			v810 | necv810)
				basic_machine=v810-nec
				basic_os=none
				;;
			vaxv)
				basic_machine=vax-dec
				basic_os=sysv
				;;
			vms)
				basic_machine=vax-dec
				basic_os=vms
				;;
			vsta)
				basic_machine=i386-pc
				basic_os=vsta
				;;
			vxworks960)
				basic_machine=i960-wrs
				basic_os=vxworks
				;;
			vxworks68)
				basic_machine=m68k-wrs
				basic_os=vxworks
				;;
			vxworks29k)
				basic_machine=a29k-wrs
				basic_os=vxworks
				;;
			xbox)
				basic_machine=i686-pc
				basic_os=mingw32
				;;
			ymp)
				basic_machine=ymp-cray
				basic_os=unicos
				;;
			*)
				basic_machine=$1
				basic_os=
				;;
		esac
		;;
esac

# Decode 1-component or ad-hoc basic machines
case $basic_machine in
	# 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)
		cpu=hppa1.1
		vendor=winbond
		;;
	op50n)
		cpu=hppa1.1
		vendor=oki
		;;
	op60c)
		cpu=hppa1.1
		vendor=oki
		;;
	ibm*)
		cpu=i370
		vendor=ibm
		;;
	orion105)
		cpu=clipper
		vendor=highlevel
		;;
	mac | mpw | mac-mpw)
		cpu=m68k
		vendor=apple
		;;
	pmac | pmac-mpw)
		cpu=powerpc
		vendor=apple
		;;

	# Recognize the various machine names and aliases which stand
	# for a CPU type and a company and sometimes even an OS.
	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
		cpu=m68000
		vendor=att
		;;
	3b*)
		cpu=we32k
		vendor=att
		;;
	bluegene*)
		cpu=powerpc
		vendor=ibm
		basic_os=cnk
		;;
	decsystem10* | dec10*)
		cpu=pdp10
		vendor=dec
		basic_os=tops10
		;;
	decsystem20* | dec20*)
		cpu=pdp10
		vendor=dec
		basic_os=tops20
		;;
	delta | 3300 | delta-motorola | 3300-motorola | motorola-delta | motorola-3300)
		cpu=m68k
		vendor=motorola
		;;
	# This used to be dpx2*, but that gets the RS6000-based
	# DPX/20 and the x86-based DPX/2-100 wrong.  See
	# https://oldskool.silicium.org/stations/bull_dpx20.htm
	# https://www.feb-patrimoine.com/english/bull_dpx2.htm
	# https://www.feb-patrimoine.com/english/unix_and_bull.htm
	dpx2 | dpx2[23]00 | dpx2[23]xx)
		cpu=m68k
		vendor=bull
		;;
	dpx2100 | dpx21xx)
		cpu=i386
		vendor=bull
		;;
	dpx20)
		cpu=rs6000
		vendor=bull
		;;
	encore | umax | mmax)
		cpu=ns32k
		vendor=encore
		;;
	elxsi)
		cpu=elxsi
		vendor=elxsi
		basic_os=${basic_os:-bsd}
		;;
	fx2800)
		cpu=i860
		vendor=alliant
		;;
	genix)
		cpu=ns32k
		vendor=ns
		;;
	h3050r* | hiux*)
		cpu=hppa1.1
		vendor=hitachi
		basic_os=hiuxwe2
		;;
	hp3k9[0-9][0-9] | hp9[0-9][0-9])
		cpu=hppa1.0
		vendor=hp
		;;
	hp9k2[0-9][0-9] | hp9k31[0-9])
		cpu=m68000
		vendor=hp
		;;
	hp9k3[2-9][0-9])
		cpu=m68k
		vendor=hp
		;;
	hp9k6[0-9][0-9] | hp6[0-9][0-9])
		cpu=hppa1.0
		vendor=hp
		;;
	hp9k7[0-79][0-9] | hp7[0-79][0-9])
		cpu=hppa1.1
		vendor=hp
		;;
	hp9k78[0-9] | hp78[0-9])
		# FIXME: really hppa2.0-hp
		cpu=hppa1.1
		vendor=hp
		;;
	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
		# FIXME: really hppa2.0-hp
		cpu=hppa1.1
		vendor=hp
		;;
	hp9k8[0-9][13679] | hp8[0-9][13679])
		cpu=hppa1.1
		vendor=hp
		;;
	hp9k8[0-9][0-9] | hp8[0-9][0-9])
		cpu=hppa1.0
		vendor=hp
		;;
	i*86v32)
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		basic_os=sysv32
		;;
	i*86v4*)
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		basic_os=sysv4
		;;
	i*86v)
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		basic_os=sysv
		;;
	i*86sol2)
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		basic_os=solaris2
		;;
	j90 | j90-cray)
		cpu=j90
		vendor=cray
		basic_os=${basic_os:-unicos}
		;;
	iris | iris4d)
		cpu=mips
		vendor=sgi
		case $basic_os in
		    irix*)
			;;
		    *)
			basic_os=irix4
			;;
		esac
		;;
	miniframe)
		cpu=m68000
		vendor=convergent
		;;
	*mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
		cpu=m68k
		vendor=atari
		basic_os=mint
		;;
	news-3600 | risc-news)
		cpu=mips
		vendor=sony
		basic_os=newsos
		;;
	next | m*-next)
		cpu=m68k
		vendor=next
		;;
	np1)
		cpu=np1
		vendor=gould
		;;
	op50n-* | op60c-*)
		cpu=hppa1.1
		vendor=oki
		basic_os=proelf
		;;
	pa-hitachi)
		cpu=hppa1.1
		vendor=hitachi
		basic_os=hiuxwe2
		;;
	pbd)
		cpu=sparc
		vendor=tti
		;;
	pbb)
		cpu=m68k
		vendor=tti
		;;
	pc532)
		cpu=ns32k
		vendor=pc532
		;;
	pn)
		cpu=pn
		vendor=gould
		;;
	power)
		cpu=power
		vendor=ibm
		;;
	ps2)
		cpu=i386
		vendor=ibm
		;;
	rm[46]00)
		cpu=mips
		vendor=siemens
		;;
	rtpc | rtpc-*)
		cpu=romp
		vendor=ibm
		;;
	sde)
		cpu=mipsisa32
		vendor=sde
		basic_os=${basic_os:-elf}
		;;
	simso-wrs)
		cpu=sparclite
		vendor=wrs
		basic_os=vxworks
		;;
	tower | tower-32)
		cpu=m68k
		vendor=ncr
		;;
	vpp*|vx|vx-*)
		cpu=f301
		vendor=fujitsu
		;;
	w65)
		cpu=w65
		vendor=wdc
		;;
	w89k-*)
		cpu=hppa1.1
		vendor=winbond
		basic_os=proelf
		;;
	none)
		cpu=none
		vendor=none
		;;
	leon|leon[3-9])
		cpu=sparc
		vendor=$basic_machine
		;;
	leon-*|leon[3-9]-*)
		cpu=sparc
		vendor=`echo "$basic_machine" | sed 's/-.*//'`
		;;

	*-*)
		saved_IFS=$IFS
		IFS="-" read cpu vendor <<EOF
$basic_machine
EOF
		IFS=$saved_IFS
		;;
	# 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*86 | x86_64)
		cpu=$basic_machine
		vendor=pc
		;;
	# These rules are duplicated from below for sake of the special case above;
	# i.e. things that normalized to x86 arches should also default to "pc"
	pc98)
		cpu=i386
		vendor=pc
		;;
	x64 | amd64)
		cpu=x86_64
		vendor=pc
		;;
	# Recognize the basic CPU types without company name.
	*)
		cpu=$basic_machine
		vendor=unknown
		;;
esac

unset -v basic_machine

# Decode basic machines in the full and proper CPU-Company form.
case $cpu-$vendor in
	# Here we handle the default manufacturer of certain CPU types in canonical form.
	# It is in some cases the only manufacturer, in others, it is the most popular.
	c[12]-convex | c[12]-unknown | c3[248]-convex | c3[248]-unknown)
		vendor=convex
		basic_os=${basic_os:-bsd}
		;;
	craynv-unknown)
		vendor=cray
		basic_os=${basic_os:-unicosmp}
		;;
	c90-unknown | c90-cray)
		vendor=cray
		basic_os=${basic_os:-unicos}
		;;
	fx80-unknown)
		vendor=alliant
		;;
	romp-unknown)
		vendor=ibm
		;;
	mmix-unknown)
		vendor=knuth
		;;
	microblaze-unknown | microblazeel-unknown)
		vendor=xilinx
		;;
	rs6000-unknown)
		vendor=ibm
		;;
	vax-unknown)
		vendor=dec
		;;
	pdp11-unknown)
		vendor=dec
		;;
	we32k-unknown)
		vendor=att
		;;
	cydra-unknown)
		vendor=cydrome
		;;
	i370-ibm*)
		vendor=ibm
		;;
	orion-unknown)
		vendor=highlevel
		;;
	xps-unknown | xps100-unknown)
		cpu=xps100
		vendor=honeywell
		;;

	# Here we normalize CPU types with a missing or matching vendor
	armh-unknown | armh-alt)
		cpu=armv7l
		vendor=alt
		basic_os=${basic_os:-linux-gnueabihf}
		;;

	# Normalized CPU+vendor pairs that imply an OS, if not otherwise specified
	m68k-isi)
		basic_os=${basic_os:-sysv}
		;;
	m68k-sony)
		basic_os=${basic_os:-newsos}
		;;
	m68k-tektronix)
		basic_os=${basic_os:-bsd}
		;;
	m88k-harris)
		basic_os=${basic_os:-sysv3}
		;;
	i386-bull | m68k-bull)
		basic_os=${basic_os:-sysv3}
		;;
	rs6000-bull)
		basic_os=${basic_os:-bosx}
		;;
	mips-sni)
		basic_os=${basic_os:-sysv4}
		;;

	# Here we normalize CPU types irrespective of the vendor
	amd64-*)
		cpu=x86_64
		;;
	blackfin-*)
		cpu=bfin
		basic_os=${basic_os:-linux}
		;;
	c54x-*)
		cpu=tic54x
		;;
	c55x-*)
		cpu=tic55x
		;;
	c6x-*)
		cpu=tic6x
		;;
	e500v[12]-*)
		cpu=powerpc
		basic_os=${basic_os}"spe"
		;;
	mips3*-*)
		cpu=mips64
		;;
	ms1-*)
		cpu=mt
		;;
	m68knommu-*)
		cpu=m68k
		basic_os=${basic_os:-linux}
		;;
	m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
		cpu=s12z
		;;
	openrisc-*)
		cpu=or32
		;;
	parisc-*)
		cpu=hppa
		basic_os=${basic_os:-linux}
		;;
	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
		cpu=i586
		;;
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
		cpu=i686
		;;
	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
		cpu=i686
		;;
	pentium4-*)
		cpu=i786
		;;
	ppc-* | ppcbe-*)
		cpu=powerpc
		;;
	ppcle-* | powerpclittle-*)
		cpu=powerpcle
		;;
	ppc64-*)
		cpu=powerpc64
		;;
	ppc64le-* | powerpc64little-*)
		cpu=powerpc64le
		;;
	sb1-*)
		cpu=mipsisa64sb1
		;;
	sb1el-*)
		cpu=mipsisa64sb1el
		;;
	sh5e[lb]-*)
		cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
		;;
	spur-*)
		cpu=spur
		;;
	strongarm-* | thumb-*)
		cpu=arm
		;;
	tx39-*)
		cpu=mipstx39
		;;
	tx39el-*)
		cpu=mipstx39el
		;;
	xscale-* | xscalee[bl]-*)
		cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
		;;
	arm64-* | aarch64le-* | arm64_32-*)
		cpu=aarch64
		;;

	# Recognize the canonical CPU Types that limit and/or modify the
	# company names they are paired with.
	cr16-*)
		basic_os=${basic_os:-elf}
		;;
	crisv32-* | etraxfs*-*)
		cpu=crisv32
		vendor=axis
		;;
	cris-* | etrax*-*)
		cpu=cris
		vendor=axis
		;;
	crx-*)
		basic_os=${basic_os:-elf}
		;;
	neo-tandem)
		cpu=neo
		vendor=tandem
		;;
	nse-tandem)
		cpu=nse
		vendor=tandem
		;;
	nsr-tandem)
		cpu=nsr
		vendor=tandem
		;;
	nsv-tandem)
		cpu=nsv
		vendor=tandem
		;;
	nsx-tandem)
		cpu=nsx
		vendor=tandem
		;;
	mipsallegrexel-sony)
		cpu=mipsallegrexel
		vendor=sony
		;;
	tile*-*)
		basic_os=${basic_os:-linux-gnu}
		;;

	*)
		# Recognize the canonical CPU types that are allowed with any
		# company name.
		case $cpu in
			  1750a \
			| 580 \
			| [cjt]90 \
			| a29k \
			| aarch64 \
			| aarch64_be \
			| aarch64c \
			| abacus \
			| alpha \
			| alpha64 \
			| alpha64ev56 \
			| alpha64ev6[78] \
			| alpha64ev[4-8] \
			| alpha64pca5[67] \
			| alphaev56 \
			| alphaev6[78] \
			| alphaev[4-8] \
			| alphapca5[67] \
			| am33_2.0 \
			| amdgcn \
			| arc \
			| arc32 \
			| arc64 \
			| arceb \
			| arm \
			| arm64e \
			| arm64ec \
			| arm[lb]e \
			| arme[lb] \
			| armv* \
			| asmjs \
			| avr \
			| avr32 \
			| ba \
			| be32 \
			| be64 \
			| bfin \
			| bpf \
			| bs2000 \
			| c30 \
			| c4x \
			| c8051 \
			| c[123]* \
			| clipper \
			| craynv \
			| csky \
			| cydra \
			| d10v \
			| d30v \
			| dlx \
			| dsp16xx \
			| e2k \
			| elxsi \
			| epiphany \
			| f30[01] \
			| f700 \
			| fido \
			| fr30 \
			| frv \
			| ft32 \
			| fx80 \
			| h8300 \
			| h8500 \
			| hexagon \
			| hppa \
			| hppa1.[01] \
			| hppa2.0 \
			| hppa2.0[nw] \
			| hppa64 \
			| i*86 \
			| i370 \
			| i860 \
			| i960 \
			| ia16 \
			| ia64 \
			| intelgt \
			| ip2k \
			| iq2000 \
			| javascript \
			| k1om \
			| kvx \
			| le32 \
			| le64 \
			| lm32 \
			| loongarch32 \
			| loongarch64 \
			| m32c \
			| m32r \
			| m32rle \
			| m5200 \
			| m68000 \
			| m680[012346]0 \
			| m6811 \
			| m6812 \
			| m68360 \
			| m683?2 \
			| m68hc11 \
			| m68hc12 \
			| m68hcs12x \
			| m68k \
			| m88110 \
			| m88k \
			| maxq \
			| mb \
			| mcore \
			| mep \
			| metag \
			| microblaze \
			| microblazeel \
			| mips* \
			| mmix \
			| mn10200 \
			| mn10300 \
			| moxie \
			| msp430 \
			| mt \
			| nanomips* \
			| nds32 \
			| nds32be \
			| nds32le \
			| nfp \
			| nios \
			| nios2 \
			| nios2eb \
			| nios2el \
			| none \
			| np1 \
			| ns16k \
			| ns32k \
			| nvptx \
			| open8 \
			| or1k* \
			| or32 \
			| orion \
			| pdp10 \
			| pdp11 \
			| picochip \
			| pj \
			| pjl \
			| pn \
			| power \
			| powerpc \
			| powerpc64 \
			| powerpc64le \
			| powerpcle \
			| powerpcspe \
			| pru \
			| pyramid \
			| riscv \
			| riscv32 \
			| riscv32be \
			| riscv64 \
			| riscv64be \
			| rl78 \
			| romp \
			| rs6000 \
			| rx \
			| s390 \
			| s390x \
			| score \
			| sh \
			| sh64 \
			| sh64le \
			| sh[12345][lb]e \
			| sh[1234] \
			| sh[1234]e[lb] \
			| sh[23]e \
			| sh[23]ele \
			| sh[24]a \
			| sh[24]ae[lb] \
			| sh[lb]e \
			| she[lb] \
			| shl \
			| sparc \
			| sparc64 \
			| sparc64b \
			| sparc64v \
			| sparc86x \
			| sparclet \
			| sparclite \
			| sparcv8 \
			| sparcv9 \
			| sparcv9b \
			| sparcv9v \
			| spu \
			| sv1 \
			| sx* \
			| tahoe \
			| thumbv7* \
			| tic30 \
			| tic4x \
			| tic54x \
			| tic55x \
			| tic6x \
			| tic80 \
			| tron \
			| ubicom32 \
			| v70 \
			| v810 \
			| v850 \
			| v850e \
			| v850e1 \
			| v850e2 \
			| v850e2v3 \
			| v850es \
			| vax \
			| vc4 \
			| visium \
			| w65 \
			| wasm32 \
			| wasm64 \
			| we32k \
			| x86 \
			| x86_64 \
			| xc16x \
			| xgate \
			| xps100 \
			| xstormy16 \
			| xtensa* \
			| ymp \
			| z80 \
			| z8k)
				;;

			*)
				echo "Invalid configuration '$1': machine '$cpu-$vendor' not recognized" 1>&2
				exit 1
				;;
		esac
		;;
esac

# Here we canonicalize certain aliases for manufacturers.
case $vendor in
	digital*)
		vendor=dec
		;;
	commodore*)
		vendor=cbm
		;;
	*)
		;;
esac

# Decode manufacturer-specific aliases for certain operating systems.

if test x"$basic_os" != x
then

# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
# set os.
obj=
case $basic_os in
	gnu/linux*)
		kernel=linux
		os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
		;;
	os2-emx)
		kernel=os2
		os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
		;;
	nto-qnx*)
		kernel=nto
		os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
		;;
	*-*)
		saved_IFS=$IFS
		IFS="-" read kernel os <<EOF
$basic_os
EOF
		IFS=$saved_IFS
		;;
	# Default OS when just kernel was specified
	nto*)
		kernel=nto
		os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
		;;
	ironclad*)
		kernel=ironclad
		os=`echo "$basic_os" | sed -e 's|ironclad|mlibc|'`
		;;
	linux*)
		kernel=linux
		os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
		;;
	managarm*)
		kernel=managarm
		os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`
		;;
	*)
		kernel=
		os=$basic_os
		;;
esac

# Now, normalize the OS (knowing we just have one component, it's not a kernel,
# etc.)
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.
	auroraux)
		os=auroraux
		;;
	bluegene*)
		os=cnk
		;;
	solaris1 | solaris1.*)
		os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
		;;
	solaris)
		os=solaris2
		;;
	unixware*)
		os=sysv4.2uw
		;;
	# The marketing names for NeXT's operating systems were
	# NeXTSTEP, NeXTSTEP 2, OpenSTEP 3, OpenSTEP 4.  'openstep' is
	# mapped to 'openstep3', but 'openstep1' and 'openstep2' are
	# mapped to 'nextstep' and 'nextstep2', consistent with the
	# treatment of SunOS/Solaris.
	ns | ns1 | nextstep | nextstep1 | openstep1)
		os=nextstep
		;;
	ns2 | nextstep2 | openstep2)
		os=nextstep2
		;;
	ns3 | nextstep3 | openstep | openstep3)
		os=openstep3
		;;
	ns4 | nextstep4 | openstep4)
		os=openstep4
		;;
	# es1800 is here to avoid being matched by es* (a different OS)
	es1800*)
		os=ose
		;;
	# Some version numbers need modification
	chorusos*)
		os=chorusos
		;;
	isc)
		os=isc2.2
		;;
	sco6)
		os=sco5v6
		;;
	sco5)
		os=sco3.2v5
		;;
	sco4)
		os=sco3.2v4
		;;
	sco3.2.[4-9]*)
		os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
		;;
	sco*v* | scout)
		# Don't match below
		;;
	sco*)
		os=sco3.2v2
		;;
	psos*)
		os=psos
		;;
	qnx*)
		os=qnx
		;;
	hiux*)
		os=hiuxwe2
		;;
	lynx*178)
		os=lynxos178
		;;
	lynx*5)
		os=lynxos5
		;;
	lynxos*)
		# don't get caught up in next wildcard
		;;
	lynx*)
		os=lynxos
		;;
	mac[0-9]*)
		os=`echo "$os" | sed -e 's|mac|macos|'`
		;;
	opened*)
		os=openedition
		;;
	os400*)
		os=os400
		;;
	sunos5*)
		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
		;;
	sunos6*)
		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
		;;
	wince*)
		os=wince
		;;
	utek*)
		os=bsd
		vendor=`echo "$vendor" | sed -e 's|^unknown$|tektronix|'`
		;;
	dynix*)
		os=bsd
		;;
	acis*)
		os=aos
		;;
	atheos*)
		os=atheos
		;;
	syllable*)
		os=syllable
		;;
	386bsd)
		os=bsd
		;;
	ctix*)
		os=sysv
		vendor=`echo "$vendor" | sed -e 's|^unknown$|convergent|'`
		;;
	uts*)
		os=sysv
		;;
	nova*)
		kernel=rtmk
		os=nova
		;;
	# Preserve the version number of sinix5.
	sinix5.*)
		os=`echo "$os" | sed -e 's|sinix|sysv|'`
		vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
		;;
	sinix*)
		os=sysv4
		vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
		;;
	tpf*)
		os=tpf
		;;
	triton*)
		os=sysv3
		;;
	oss*)
		os=sysv3
		;;
	svr4*)
		os=sysv4
		;;
	svr3)
		os=sysv3
		;;
	sysvr4)
		os=sysv4
		;;
	ose*)
		os=ose
		;;
	*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
		os=mint
		;;
	dicos*)
		os=dicos
		;;
	pikeos*)
		# Until real need of OS specific support for
		# particular features comes up, bare metal
		# configurations are quite functional.
		case $cpu in
		    arm*)
			os=eabi
			;;
		    *)
			os=
			obj=elf
			;;
		esac
		;;
	aout* | coff* | elf* | pe*)
		# These are machine code file formats, not OSes
		obj=$os
		os=
		;;
	*)
		# No normalization, but not necessarily accepted, that comes below.
		;;
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.

kernel=
obj=
case $cpu-$vendor in
	score-*)
		os=
		obj=elf
		;;
	spu-*)
		os=
		obj=elf
		;;
	*-acorn)
		os=riscix1.2
		;;
	arm*-rebel)
		kernel=linux
		os=gnu
		;;
	arm*-semi)
		os=
		obj=aout
		;;
	c4x-* | tic4x-*)
		os=
		obj=coff
		;;
	c8051-*)
		os=
		obj=elf
		;;
	clipper-intergraph)
		os=clix
		;;
	hexagon-*)
		os=
		obj=elf
		;;
	tic54x-*)
		os=
		obj=coff
		;;
	tic55x-*)
		os=
		obj=coff
		;;
	tic6x-*)
		os=
		obj=coff
		;;
	# This must come before the *-dec entry.
	pdp10-*)
		os=tops20
		;;
	pdp11-*)
		os=none
		;;
	*-dec | vax-*)
		os=ultrix4.2
		;;
	m68*-apollo)
		os=domain
		;;
	i386-sun)
		os=sunos4.0.2
		;;
	m68000-sun)
		os=sunos3
		;;
	m68*-cisco)
		os=
		obj=aout
		;;
	mep-*)
		os=
		obj=elf
		;;
	# The -sgi and -siemens entries must be before the mips- entry
	# or we get the wrong os.
	*-sgi)
		os=irix
		;;
	*-siemens)
		os=sysv4
		;;
	mips*-cisco)
		os=
		obj=elf
		;;
	mips*-*|nanomips*-*)
		os=
		obj=elf
		;;
	or32-*)
		os=
		obj=coff
		;;
	# This must be before the sparc-* entry or we get the wrong os.
	*-tti)
		os=sysv3
		;;
	sparc-* | *-sun)
		os=sunos4.1.1
		;;
	pru-*)
		os=
		obj=elf
		;;
	*-be)
		os=beos
		;;
	*-ibm)
		os=aix
		;;
	*-knuth)
		os=mmixware
		;;
	*-wec)
		os=proelf
		;;
	*-winbond)
		os=proelf
		;;
	*-oki)
		os=proelf
		;;
	*-hp)
		os=hpux
		;;
	*-hitachi)
		os=hiuxwe2
		;;
	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
		;;
	*-gould)
		os=sysv
		;;
	*-highlevel)
		os=bsd
		;;
	*-encore)
		os=bsd
		;;
	*-masscomp)
		os=rtu
		;;
	f30[01]-fujitsu | f700-fujitsu)
		os=uxpv
		;;
	*-rom68k)
		os=
		obj=coff
		;;
	*-*bug)
		os=
		obj=coff
		;;
	*-apple)
		os=macos
		;;
	*-atari*)
		os=mint
		;;
	*-wrs)
		os=vxworks
		;;
	*)
		os=none
		;;
esac

fi

# Now, validate our (potentially fixed-up) individual pieces (OS, OBJ).

case $os in
	# Sometimes we do "kernel-libc", so those need to count as OSes.
	llvm* | musl* | newlib* | relibc* | uclibc*)
		;;
	# Likewise for "kernel-abi"
	eabi* | gnueabi*)
		;;
	# VxWorks passes extra cpu info in the 4th filed.
	simlinux | simwindows | spe)
		;;
	# See `case $cpu-$os` validation below
	ghcjs)
		;;
	# Now accept the basic system types.
	# Each alternative MUST end in a * to match a version number.
	  abug \
	| aix* \
	| amdhsa* \
	| amigados* \
	| amigaos* \
	| android* \
	| aof* \
	| aos* \
	| aros* \
	| atheos* \
	| auroraux* \
	| aux* \
	| banan_os* \
	| beos* \
	| bitrig* \
	| bme* \
	| bosx* \
	| bsd* \
	| cegcc* \
	| chorusos* \
	| chorusrdb* \
	| clix* \
	| cloudabi* \
	| cnk* \
	| conix* \
	| cos* \
	| cxux* \
	| cygwin* \
	| darwin* \
	| dgux* \
	| dicos* \
	| dnix* \
	| domain* \
	| dragonfly* \
	| drops* \
	| ebmon* \
	| ecoff* \
	| ekkobsd* \
	| emscripten* \
	| emx* \
	| es* \
	| fiwix* \
	| freebsd* \
	| fuchsia* \
	| genix* \
	| genode* \
	| glidix* \
	| gnu* \
	| go32* \
	| haiku* \
	| hcos* \
	| hiux* \
	| hms* \
	| hpux* \
	| ieee* \
	| interix* \
	| ios* \
	| iris* \
	| irix* \
	| isc* \
	| its* \
	| l4re* \
	| libertybsd* \
	| lites* \
	| lnews* \
	| luna* \
	| lynxos* \
	| mach* \
	| macos* \
	| magic* \
	| mbr* \
	| midipix* \
	| midnightbsd* \
	| mingw32* \
	| mingw64* \
	| minix* \
	| mint* \
	| mirbsd* \
	| mks* \
	| mlibc* \
	| mmixware* \
	| mon960* \
	| morphos* \
	| moss* \
	| moxiebox* \
	| mpeix* \
	| mpw* \
	| msdos* \
	| msys* \
	| mvs* \
	| nacl* \
	| netbsd* \
	| netware* \
	| newsos* \
	| nextstep* \
	| nindy* \
	| nonstopux* \
	| nova* \
	| nsk* \
	| nucleus* \
	| nx6 \
	| nx7 \
	| oabi* \
	| ohos* \
	| onefs* \
	| openbsd* \
	| openedition* \
	| openstep* \
	| os108* \
	| os2* \
	| os400* \
	| os68k* \
	| os9* \
	| ose* \
	| osf* \
	| oskit* \
	| osx* \
	| palmos* \
	| phoenix* \
	| plan9* \
	| powermax* \
	| powerunix* \
	| proelf* \
	| psos* \
	| psp* \
	| ptx* \
	| pw32* \
	| qnx* \
	| rdos* \
	| redox* \
	| rhapsody* \
	| riscix* \
	| riscos* \
	| rtems* \
	| rtmk* \
	| rtu* \
	| scout* \
	| secbsd* \
	| sei* \
	| serenity* \
	| sim* \
	| skyos* \
	| solaris* \
	| solidbsd* \
	| sortix* \
	| storm-chaos* \
	| sunos \
	| sunos[34]* \
	| superux* \
	| syllable* \
	| sym* \
	| sysv* \
	| tenex* \
	| tirtos* \
	| tock* \
	| toppers* \
	| tops10* \
	| tops20* \
	| tpf* \
	| tvos* \
	| twizzler* \
	| uclinux* \
	| udi* \
	| udk* \
	| ultrix* \
	| unicos* \
	| uniplus* \
	| unleashed* \
	| unos* \
	| uwin* \
	| uxpv* \
	| v88r* \
	|*vms* \
	| vos* \
	| vsta* \
	| vxsim* \
	| vxworks* \
	| wasi* \
	| watchos* \
	| wince* \
	| windiss* \
	| windows* \
	| winnt* \
	| xenix* \
	| xray* \
	| zephyr* \
	| zvmoe* )
		;;
	# This one is extra strict with allowed versions
	sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
		# Don't forget version if it is 3.2v4 or newer.
		;;
	# This refers to builds using the UEFI calling convention
	# (which depends on the architecture) and PE file format.
	# Note that this is both a different calling convention and
	# different file format than that of GNU-EFI
	# (x86_64-w64-mingw32).
	uefi)
		;;
	none)
		;;
	kernel* | msvc* )
		# Restricted further below
		;;
	'')
		if test x"$obj" = x
		then
			echo "Invalid configuration '$1': Blank OS only allowed with explicit machine code file format" 1>&2
		fi
		;;
	*)
		echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2
		exit 1
		;;
esac

case $obj in
	aout* | coff* | elf* | pe*)
		;;
	'')
		# empty is fine
		;;
	*)
		echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2
		exit 1
		;;
esac

# Here we handle the constraint that a (synthetic) cpu and os are
# valid only in combination with each other and nowhere else.
case $cpu-$os in
	# The "javascript-unknown-ghcjs" triple is used by GHC; we
	# accept it here in order to tolerate that, but reject any
	# variations.
	javascript-ghcjs)
		;;
	javascript-* | *-ghcjs)
		echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2
		exit 1
		;;
esac

# As a final step for OS-related things, validate the OS-kernel combination
# (given a valid OS), if there is a kernel.
case $kernel-$os-$obj in
	linux-gnu*- | linux-android*- | linux-dietlibc*- | linux-llvm*- \
		    | linux-mlibc*- | linux-musl*- | linux-newlib*- \
		    | linux-relibc*- | linux-uclibc*- | linux-ohos*- )
		;;
	uclinux-uclibc*- | uclinux-gnu*- )
		;;
	ironclad-mlibc*-)
		;;
	managarm-mlibc*- | managarm-kernel*- )
		;;
	windows*-msvc*-)
		;;
	-dietlibc*- | -llvm*- | -mlibc*- | -musl*- | -newlib*- | -relibc*- \
		    | -uclibc*- )
		# These are just libc implementations, not actual OSes, and thus
		# require a kernel.
		echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2
		exit 1
		;;
	-kernel*- )
		echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2
		exit 1
		;;
	*-kernel*- )
		echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2
		exit 1
		;;
	*-msvc*- )
		echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2
		exit 1
		;;
	kfreebsd*-gnu*- | knetbsd*-gnu*- | netbsd*-gnu*- | kopensolaris*-gnu*-)
		;;
	vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)
		;;
	nto-qnx*-)
		;;
	os2-emx-)
		;;
	rtmk-nova-)
		;;
	*-eabi*- | *-gnueabi*-)
		;;
	ios*-simulator- | tvos*-simulator- | watchos*-simulator- )
		;;
	none--*)
		# None (no kernel, i.e. freestanding / bare metal),
		# can be paired with an machine code file format
		;;
	-*-)
		# Blank kernel with real OS is always fine.
		;;
	--*)
		# Blank kernel and OS with real machine code file format is always fine.
		;;
	*-*-*)
		echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2
		exit 1
		;;
esac

# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer.  We pick the logical manufacturer.
case $vendor in
	unknown)
		case $cpu-$os in
			*-riscix*)
				vendor=acorn
				;;
			*-sunos* | *-solaris*)
				vendor=sun
				;;
			*-cnk* | *-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
				;;
			*-clix*)
				vendor=intergraph
				;;
			*-mvs* | *-opened*)
				vendor=ibm
				;;
			*-os400*)
				vendor=ibm
				;;
			s390-* | s390x-*)
				vendor=ibm
				;;
			*-ptx*)
				vendor=sequent
				;;
			*-tpf*)
				vendor=ibm
				;;
			*-vxsim* | *-vxworks* | *-windiss*)
				vendor=wrs
				;;
			*-aux*)
				vendor=apple
				;;
			*-hms*)
				vendor=hitachi
				;;
			*-mpw* | *-macos*)
				vendor=apple
				;;
			*-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
				vendor=atari
				;;
			*-vos*)
				vendor=stratus
				;;
		esac
		;;
esac

echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}"
exit

# Local variables:
# eval: (add-hook 'before-save-hook 'time-stamp nil t)
# time-stamp-start: "timestamp='"
# time-stamp-format: "%Y-%02m-%02d"
# time-stamp-end: "'"
# End:
@


1.8
log
@merge changes between 2024-01-09 and 2024-12-31
@
text
@d3 1
a3 1
#   Copyright 1992-2024 Free Software Foundation, Inc.
d7 1
a7 1
timestamp='2024-05-27'
d79 1
a79 1
Copyright 1992-2024 Free Software Foundation, Inc.
d148 1
a245 1
					| siemens \
d264 1
a264 1
					zephyr*)
d1197 1
a1197 1
	arm64-* | aarch64le-*)
d1324 1
d1526 4
d1984 1
a2030 1
	| ironclad* \
d2126 1
d2223 2
d2260 2
d2360 1
a2360 1
# eval: (add-hook 'before-save-hook 'time-stamp)
d2362 1
a2362 1
# time-stamp-format: "%:y-%02m-%02d"
@


1.7
log
@merge conflicts between 20210109 and 20240109
@
text
@d3 1
a3 1
#   Copyright 1992-2023 Free Software Foundation, Inc.
d5 1
a5 1
# shellcheck disable=SC2006,SC2268 # see below for rationale
d7 1
a7 1
timestamp='2023-09-15'
d79 1
a79 1
Copyright 1992-2023 Free Software Foundation, Inc.
a122 1
# shellcheck disable=SC2162
d144 14
a157 4
			nto-qnx* | linux-* | uclinux-uclibc* \
			| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
			| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
			| storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \
a172 1
		# A lone config we happen to match not fitting any pattern
d174 5
d186 1
a186 1
					# Prevent following clause from handling this valid os
d191 73
a267 13
					# Manufacturers
					dec* | mips* | sequent* | encore* | pc533* | 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 | axis | knuth | cray \
					| microblaze* | sim | cisco \
					| oki | wec | wrs | winbond)
						basic_machine=$field1-$field2
						basic_os=
						;;
a347 20
			convex-c1)
				basic_machine=c1-convex
				basic_os=bsd
				;;
			convex-c2)
				basic_machine=c2-convex
				basic_os=bsd
				;;
			convex-c32)
				basic_machine=c32-convex
				basic_os=bsd
				;;
			convex-c34)
				basic_machine=c34-convex
				basic_os=bsd
				;;
			convex-c38)
				basic_machine=c38-convex
				basic_os=bsd
				;;
d770 1
a770 2
	delta | 3300 | motorola-3300 | motorola-delta \
	      | 3300-motorola | delta-motorola)
d774 6
a779 1
	dpx2*)
d782 8
a789 1
		basic_os=sysv3
a903 12
		case $basic_os in
		    openstep*)
		        ;;
		    nextstep*)
			;;
		    ns2*)
		      basic_os=nextstep2
			;;
		    *)
		      basic_os=nextstep3
			;;
		esac
a991 1
		# shellcheck disable=SC2162
d1026 6
a1031 2
	# Here we handle the default manufacturer of certain CPU types in canonical form. It is in
	# some cases the only manufacturer, in others, it is the most popular.
d1038 1
a1038 1
		basic_os=${Basic_os:-unicos}
d1084 18
a1101 3
	dpx20-unknown | dpx20-bull)
		cpu=rs6000
		vendor=bull
d1104 3
d1114 1
a1114 1
		basic_os=linux
d1137 1
a1137 1
		basic_os=linux
d1147 1
a1147 1
		basic_os=linux
a1160 3
	pc98-*)
		cpu=i386
		;;
a1193 3
	x64-*)
		cpu=x86_64
		;;
d1249 3
a1251 1
			1750a | 580 \
d1253 3
a1255 1
			| aarch64 | aarch64_be | aarch64c | arm64ec \
d1257 10
a1266 3
			| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
			| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
			| alphapca5[67] | alpha64pca5[67] \
d1269 10
a1278 3
			| arc | arceb | arc32 | arc64 \
			| arm | arm[lb]e | arme[lb] | armv* \
			| avr | avr32 \
d1280 2
d1283 43
a1325 7
			| be32 | be64 \
			| bfin | bpf | bs2000 \
			| c[123]* | c30 | [cjt]90 | c4x \
			| c8051 | clipper | craynv | csky | cydra \
			| d10v | d30v | dlx | dsp16xx \
			| e2k | elxsi | epiphany \
			| f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
a1326 5
			| h8300 | h8500 \
			| hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
			| hexagon \
			| i370 | i*86 | i860 | i960 | ia16 | ia64 \
			| ip2k | iq2000 \
d1329 2
a1330 1
			| le32 | le64 \
d1332 25
a1356 6
			| loongarch32 | loongarch64 \
			| m32c | m32r | m32rle \
			| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
			| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
			| m88110 | m88k | maxq | mb | mcore | mep | metag \
			| microblaze | microblazeel \
d1359 2
a1360 1
			| mn10200 | mn10300 \
d1362 1
d1364 4
a1367 2
			| msp430 \
			| nds32 | nds32le | nds32be \
d1369 9
a1377 2
			| nios | nios2 | nios2eb | nios2el \
			| none | np1 | ns16k | ns32k | nvptx \
d1382 2
d1385 9
a1393 2
			| pdp10 | pdp11 | pj | pjl | pn | power \
			| powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
d1396 11
a1406 3
			| riscv | riscv32 | riscv32be | riscv64 | riscv64be \
			| rl78 | romp | rs6000 | rx \
			| s390 | s390x \
d1408 19
a1426 4
			| sh | shl \
			| sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
			| sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
			| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
d1428 4
a1431 1
			| sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
d1433 2
d1437 6
a1442 1
			| tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
d1445 8
a1452 1
			| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
d1454 1
d1457 2
a1458 1
			| wasm32 | wasm64 \
d1460 7
a1466 2
			| x86 | x86_64 | xc16x | xgate | xps100 \
			| xstormy16 | xtensa* \
d1468 2
a1469 1
			| z8k | z80)
a1513 1
		# shellcheck disable=SC2162
d1560 17
d1647 1
d1664 5
a1668 1
	ctix* | uts*)
d1672 2
a1673 4
		os=rtmk-nova
		;;
	ns2)
		os=nextstep2
d1678 1
d1682 1
d1823 8
d1835 1
a1835 1
	mips*-*)
d1843 2
a1844 1
	*-tti)	# must be before sparc entry or we get the wrong os.
d1876 1
a1876 1
		os=hiux
a1919 6
	*-sgi)
		os=irix
		;;
	*-siemens)
		os=sysv4
		;;
d1954 1
a1954 1
	musl* | newlib* | relibc* | uclibc*)
a1965 1
	# The portable systems comes first.
d1967 186
a2152 32
	gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
	     | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
	     | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \
	     | hiux* | abug | nacl* | netware* | windows* \
	     | os9* | macos* | osx* | ios* | tvos* | watchos* \
	     | mpw* | magic* | mmixware* | mon960* | lnews* \
	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
	     | aos* | aros* | cloudabi* | sortix* | twizzler* \
	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
	     | mirbsd* | netbsd* | dicos* | openedition* | ose* \
	     | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
	     | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
	     | bosx* | nextstep* | cxux* | oabi* \
	     | ptx* | ecoff* | winnt* | domain* | vsta* \
	     | udi* | lites* | ieee* | go32* | aux* | hcos* \
	     | chorusrdb* | cegcc* | glidix* | serenity* \
	     | cygwin* | msys* | moss* | proelf* | rtems* \
	     | midipix* | mingw32* | mingw64* | mint* \
	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
	     | interix* | uwin* | mks* | rhapsody* | darwin* \
	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
	     | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
	     | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
	     | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
	     | fiwix* | mlibc* | cos* | mbr* )
d2158 7
d2211 3
a2213 2
	linux-gnu*- | linux-dietlibc*- | linux-android*- | linux-newlib*- \
		   | linux-musl*- | linux-relibc*- | linux-uclibc*- | linux-mlibc*- )
d2215 1
a2215 1
	uclinux-uclibc*- )
d2219 1
a2219 1
	windows*-gnu*- | windows*-msvc*-)
d2221 2
a2222 1
	-dietlibc*- | -newlib*- | -musl*- | -relibc*- | -uclibc*- | -mlibc*- )
d2240 1
a2240 1
	kfreebsd*-gnu*- | kopensolaris*-gnu*-)
d2248 2
d2276 1
a2276 1
			*-sunos*)
@


1.6
log
@merge conflicts
@
text
@d3 1
a3 1
#   Copyright 1992-2020 Free Software Foundation, Inc.
d5 3
a7 1
timestamp='2020-08-17'
d11 1
a11 1
# the Free Software Foundation; either version 3 of the License, or
d38 1
a38 1
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d55 7
d79 1
a79 1
Copyright 1992-2020 Free Software Foundation, Inc.
d85 1
a85 1
Try \`$me --help' for more information."
d124 1
d128 1
d133 1
a133 1
		echo Invalid configuration \`"$1"\': more than four components >&2
d148 2
a149 1
			| storm-chaos* | os2-emx* | rtmk-nova*)
d178 4
d941 1
d945 1
d947 1
a947 1
	# We use `pc' rather than `unknown'
d1024 5
d1079 1
a1079 1
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
d1130 1
a1130 1
	arm64-*)
d1184 1
a1184 1
			| aarch64 | aarch64_be \
d1191 1
a1191 1
			| arc | arceb \
d1203 1
d1210 1
d1213 1
d1219 1
a1219 21
			| mips | mipsbe | mipseb | mipsel | mipsle \
			| mips16 \
			| mips64 | mips64eb | mips64el \
			| mips64octeon | mips64octeonel \
			| mips64orion | mips64orionel \
			| mips64r5900 | mips64r5900el \
			| mips64vr | mips64vrel \
			| mips64vr4100 | mips64vr4100el \
			| mips64vr4300 | mips64vr4300el \
			| mips64vr5000 | mips64vr5000el \
			| mips64vr5900 | mips64vr5900el \
			| mipsisa32 | mipsisa32el \
			| mipsisa32r2 | mipsisa32r2el \
			| mipsisa32r6 | mipsisa32r6el \
			| mipsisa64 | mipsisa64el \
			| mipsisa64r2 | mipsisa64r2el \
			| mipsisa64r6 | mipsisa64r6el \
			| mipsisa64sb1 | mipsisa64sb1el \
			| mipsisa64sr71k | mipsisa64sr71kel \
			| mipsr5900 | mipsr5900el \
			| mipstx39 | mipstx39el \
d1238 1
a1238 1
			| riscv | riscv32 | riscv64 \
d1250 1
d1267 1
a1267 1
				echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
d1288 1
a1288 1
if test x$basic_os != x
d1291 1
a1291 1
# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
d1293 1
d1297 5
a1301 1
		os=`echo $basic_os | sed -e 's|gnu/linux|gnu|'`
d1305 1
a1305 1
		os=`echo $basic_os | sed -e 's|nto-qnx|qnx|'`
d1309 1
d1313 1
d1318 1
a1318 1
		os=`echo $basic_os | sed -e 's|nto|qnx|'`
d1322 5
a1326 1
		os=`echo $basic_os | sed -e 's|linux|gnu|'`
d1347 1
a1347 1
		os=`echo $os | sed -e 's|solaris1|sunos4|'`
d1376 1
a1376 1
		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
d1388 1
a1388 7
		case $cpu in
		    x86 | i*86)
			;;
		    *)
			os=nto-$os
			;;
		esac
d1452 1
a1452 1
		os=`echo $os | sed -e 's|sinix|sysv|'`
d1493 2
a1494 1
			os=elf
d1498 5
d1521 1
d1524 2
a1525 1
		os=elf
d1528 2
a1529 1
		os=elf
d1539 2
a1540 1
		os=aout
d1543 2
a1544 1
		os=coff
d1547 2
a1548 1
		os=elf
d1554 2
a1555 1
		os=elf
d1558 2
a1559 1
		os=coff
d1562 2
a1563 1
		os=coff
d1566 2
a1567 1
		os=coff
d1589 2
a1590 1
		os=aout
d1593 2
a1594 1
		os=elf
d1597 2
a1598 1
		os=elf
d1601 2
a1602 1
		os=elf
d1605 2
a1606 1
		os=coff
d1615 2
a1616 1
		os=elf
d1697 2
a1698 1
		os=coff
d1701 2
a1702 1
		os=coff
d1720 2
a1721 1
# Now, validate our (potentially fixed-up) OS.
d1723 5
a1727 2
	# Sometimes we do "kernel-abi", so those need to count as OSes.
	musl* | newlib* | uclibc*)
d1729 5
a1733 2
	# Likewise for "kernel-libc"
	eabi | eabihf | gnueabi | gnueabihf)
d1743 1
a1743 1
	     | os9* | macos* | osx* | ios* \
d1750 1
a1750 1
	     | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
d1752 2
a1753 2
	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
d1755 2
a1756 2
	     | chorusrdb* | cegcc* | glidix* \
	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
d1768 2
a1769 1
	     | nsk* | powerunix* | genode* | zvmoe* )
d1777 21
d1799 15
a1813 1
		echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
d1820 7
a1826 2
case $kernel-$os in
	linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* )
d1828 3
a1830 1
	-dietlibc* | -newlib* | -musl* | -uclibc* )
d1833 1
a1833 1
		echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
d1836 3
a1838 1
	kfreebsd*-gnu* | kopensolaris*-gnu*)
d1840 17
a1856 1
	nto-qnx*)
d1858 3
a1860 1
	*-eabi* | *-gnueabi*)
d1862 1
a1862 1
	-*)
d1865 5
a1869 2
	*-*)
		echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
d1952 1
a1952 1
echo "$cpu-$vendor-${kernel:+$kernel-}$os"
@


1.6.8.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
#   Copyright 1992-2023 Free Software Foundation, Inc.
d5 1
a5 3
# shellcheck disable=SC2006,SC2268 # see below for rationale

timestamp='2023-09-15'
d9 1
a9 1
# the Free Software Foundation, either version 3 of the License, or
d36 1
a36 1
# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
a52 7
# The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX.  However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.

d70 1
a70 1
Copyright 1992-2023 Free Software Foundation, Inc.
d76 1
a76 1
Try '$me --help' for more information."
a114 1
saved_IFS=$IFS
a117 1
IFS=$saved_IFS
d122 1
a122 1
		echo "Invalid configuration '$1': more than four components" >&2
d137 1
a137 2
			| storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \
			| windows-* )
a165 4
					zephyr*)
						basic_machine=$field1-unknown
						basic_os=$field2
						;;
a924 1
		saved_IFS=$IFS
a927 1
		IFS=$saved_IFS
d929 1
a929 1
	# We use 'pc' rather than 'unknown'
a1005 5
	armh-unknown | armh-alt)
		cpu=armv7l
		vendor=alt
		basic_os=${basic_os:-linux-gnueabihf}
		;;
d1056 1
a1056 1
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
d1107 1
a1107 1
	arm64-* | aarch64le-*)
d1161 1
a1161 1
			| aarch64 | aarch64_be | aarch64c | arm64ec \
d1168 1
a1168 1
			| arc | arceb | arc32 | arc64 \
a1179 1
			| javascript \
a1185 1
			| kvx \
a1187 1
			| loongarch32 | loongarch64 \
d1193 21
a1213 1
			| mips* \
d1232 1
a1232 1
			| riscv | riscv32 | riscv32be | riscv64 | riscv64be \
a1243 1
			| thumbv7* \
d1260 1
a1260 1
				echo "Invalid configuration '$1': machine '$cpu-$vendor' not recognized" 1>&2
d1281 1
a1281 1
if test x"$basic_os" != x
d1284 1
a1284 1
# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
a1285 1
obj=
d1289 1
a1289 5
		os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
		;;
	os2-emx)
		kernel=os2
		os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
d1293 1
a1293 1
		os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
a1296 1
		saved_IFS=$IFS
a1299 1
		IFS=$saved_IFS
d1304 1
a1304 1
		os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
d1308 1
a1308 5
		os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
		;;
	managarm*)
		kernel=managarm
		os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`
d1329 1
a1329 1
		os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
d1358 1
a1358 1
		os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
d1370 7
a1376 1
		os=qnx
d1440 1
a1440 1
		os=`echo "$os" | sed -e 's|sinix|sysv|'`
d1481 1
a1481 2
			os=
			obj=elf
a1484 5
	aout* | coff* | elf* | pe*)
		# These are machine code file formats, not OSes
		obj=$os
		os=
		;;
a1502 1
obj=
d1505 1
a1505 2
		os=
		obj=elf
d1508 1
a1508 2
		os=
		obj=elf
d1518 1
a1518 2
		os=
		obj=aout
d1521 1
a1521 2
		os=
		obj=coff
d1524 1
a1524 2
		os=
		obj=elf
d1530 1
a1530 2
		os=
		obj=elf
d1533 1
a1533 2
		os=
		obj=coff
d1536 1
a1536 2
		os=
		obj=coff
d1539 1
a1539 2
		os=
		obj=coff
d1561 1
a1561 2
		os=
		obj=aout
d1564 1
a1564 2
		os=
		obj=elf
d1567 1
a1567 2
		os=
		obj=elf
d1570 1
a1570 2
		os=
		obj=elf
d1573 1
a1573 2
		os=
		obj=coff
d1582 1
a1582 2
		os=
		obj=elf
d1663 1
a1663 2
		os=
		obj=coff
d1666 1
a1666 2
		os=
		obj=coff
d1684 1
a1684 2
# Now, validate our (potentially fixed-up) individual pieces (OS, OBJ).

d1686 2
a1687 5
	# Sometimes we do "kernel-libc", so those need to count as OSes.
	musl* | newlib* | relibc* | uclibc*)
		;;
	# Likewise for "kernel-abi"
	eabi* | gnueabi*)
d1689 2
a1690 5
	# VxWorks passes extra cpu info in the 4th filed.
	simlinux | simwindows | spe)
		;;
	# See `case $cpu-$os` validation below
	ghcjs)
d1700 1
a1700 1
	     | os9* | macos* | osx* | ios* | tvos* | watchos* \
d1707 1
a1707 1
	     | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
d1709 2
a1710 2
	     | bosx* | nextstep* | cxux* | oabi* \
	     | ptx* | ecoff* | winnt* | domain* | vsta* \
d1712 2
a1713 2
	     | chorusrdb* | cegcc* | glidix* | serenity* \
	     | cygwin* | msys* | moss* | proelf* | rtems* \
d1725 1
a1725 2
	     | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
	     | fiwix* | mlibc* | cos* | mbr* )
a1732 21
	kernel* | msvc* )
		# Restricted further below
		;;
	'')
		if test x"$obj" = x
		then
			echo "Invalid configuration '$1': Blank OS only allowed with explicit machine code file format" 1>&2
		fi
		;;
	*)
		echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2
		exit 1
		;;
esac

case $obj in
	aout* | coff* | elf* | pe*)
		;;
	'')
		# empty is fine
		;;
d1734 1
a1734 15
		echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2
		exit 1
		;;
esac

# Here we handle the constraint that a (synthetic) cpu and os are
# valid only in combination with each other and nowhere else.
case $cpu-$os in
	# The "javascript-unknown-ghcjs" triple is used by GHC; we
	# accept it here in order to tolerate that, but reject any
	# variations.
	javascript-ghcjs)
		;;
	javascript-* | *-ghcjs)
		echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2
d1741 2
a1742 7
case $kernel-$os-$obj in
	linux-gnu*- | linux-dietlibc*- | linux-android*- | linux-newlib*- \
		   | linux-musl*- | linux-relibc*- | linux-uclibc*- | linux-mlibc*- )
		;;
	uclinux-uclibc*- )
		;;
	managarm-mlibc*- | managarm-kernel*- )
d1744 1
a1744 3
	windows*-gnu*- | windows*-msvc*-)
		;;
	-dietlibc*- | -newlib*- | -musl*- | -relibc*- | -uclibc*- | -mlibc*- )
d1747 1
a1747 1
		echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2
d1750 1
a1750 3
	-kernel*- )
		echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2
		exit 1
d1752 1
a1752 13
	*-kernel*- )
		echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2
		exit 1
		;;
	*-msvc*- )
		echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2
		exit 1
		;;
	kfreebsd*-gnu*- | kopensolaris*-gnu*-)
		;;
	vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)
		;;
	nto-qnx*-)
d1754 1
a1754 1
	os2-emx-)
d1756 1
a1756 7
	*-eabi*- | *-gnueabi*-)
		;;
	none--*)
		# None (no kernel, i.e. freestanding / bare metal),
		# can be paired with an machine code file format
		;;
	-*-)
d1759 2
a1760 5
	--*)
		# Blank kernel and OS with real machine code file format is always fine.
		;;
	*-*-*)
		echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2
d1843 1
a1843 1
echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}"
@


1.5
log
@merge conflicts
@
text
@d3 1
a3 1
#   Copyright 1992-2019 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2019-05-23'
d70 1
a70 1
Copyright 1992-2019 Free Software Foundation, Inc.
d127 1
a127 1
		os=$field3-$field4
d134 1
a134 2
			nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
			| linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
d139 1
a139 1
				os=$maybe_os
d143 1
a143 1
				os=linux-android
d147 1
a147 1
				os=$field3
d156 1
a156 1
				os=
d164 1
a164 1
						os=$field2
d177 1
a177 1
						os=
d181 1
a181 1
						os=$field2
d193 1
a193 1
				os=bsd
d197 1
a197 1
				os=udi
d201 1
a201 1
				os=scout
d205 1
a205 1
				os=
d209 1
a209 1
				os=
d213 1
a213 1
				os=bsd
d217 1
a217 1
				os=sysv
d221 1
a221 1
				os=
d225 1
a225 1
				os=amigaos
d229 1
a229 1
				os=sysv4
d233 1
a233 1
				os=sysv
d237 1
a237 1
				os=bsd
d241 1
a241 1
				os=aros
d245 1
a245 1
				os=aux
d249 1
a249 1
				os=dynix
d253 1
a253 1
				os=linux
d257 1
a257 1
				os=cegcc
d261 1
a261 1
				os=bsd
d265 1
a265 1
				os=bsd
d269 1
a269 1
				os=bsd
d273 1
a273 1
				os=bsd
d277 1
a277 1
				os=bsd
d281 1
a281 1
				os=unicos
d285 1
a285 1
				os=
d289 1
a289 1
				os=
d293 1
a293 1
				os=
d297 1
a297 1
				os=sysv3
d301 1
a301 1
				os=dicos
d305 1
a305 1
				os=msdosdjgpp
d309 1
a309 1
				os=ebmon
d313 1
a313 1
				os=ose
d317 1
a317 1
				os=sysv
d321 1
a321 1
				os=go32
d325 1
a325 1
				os=hms
d329 1
a329 1
				os=xray
d333 1
a333 1
				os=hms
d337 1
a337 1
				os=sysv3
d339 1
a339 1
			hp300)
d341 1
d345 1
a345 5
				os=bsd
				;;
			hp300hpux)
				basic_machine=m68k-hp
				os=hpux
d349 1
a349 1
				os=osf
d353 1
a353 1
				os=proelf
d357 1
a357 5
				os=mach
				;;
			vsta)
				basic_machine=i386-pc
				os=vsta
d361 1
a361 1
				os=sysv
d365 1
a365 1
				os=linux
d369 1
a369 1
				os=sysv
d373 1
a373 1
				os=sysv
d377 1
a377 1
				os=mingw64
d381 1
a381 1
				os=mingw32
d385 1
a385 1
				os=mingw32ce
d389 1
a389 1
				os=coff
d393 1
a393 1
				os=morphos
d397 1
a397 1
				os=moxiebox
d401 1
a401 1
				os=msdos
d405 1
a405 1
				os=msys
d409 1
a409 1
				os=mvs
d413 1
a413 1
				os=nacl
d417 1
a417 1
				os=sysv4
d421 1
a421 1
				os=netbsd
d425 1
a425 1
				os=linux
d429 1
a429 1
				os=newsos
d433 1
a433 1
				os=newsos
d437 1
a437 1
				os=sysv
d441 1
a441 1
				os=cxux
d445 1
a445 1
				os=cxux
d449 1
a449 1
				os=nindy
d453 1
a453 1
				os=mon960
d457 1
a457 1
				os=nonstopux
d461 1
a461 1
				os=os400
d465 1
a465 1
				os=ose
d469 1
a469 1
				os=os68k
d473 1
a473 1
				os=osf
d477 5
a481 1
				os=linux
d485 1
a485 1
				os=pw32
d489 1
a489 1
				os=rdos
d493 1
a493 1
				os=rdos
d497 1
a497 1
				os=coff
d501 1
a501 1
				os=udi
d505 1
a505 1
				os=seiux
d509 1
a509 1
				os=
d513 1
a513 1
				os=sysv2
d517 1
a517 1
				os=
d521 1
a521 1
				os=sysv4
d525 1
a525 1
				os=
d529 1
a529 1
				os=sunos3
d533 1
a533 1
				os=sunos4
d537 1
a537 1
				os=
d541 1
a541 1
				os=sunos3
d545 1
a545 1
				os=sunos4
d549 1
a549 1
				os=
d553 1
a553 1
				os=sunos3
d557 1
a557 1
				os=sunos4
d561 1
a561 1
				os=solaris2
d565 1
a565 1
				os=
d569 1
a569 1
				os=unicos
d573 1
a573 1
				os=dynix
d577 1
a577 1
				os=unicos
d581 1
a581 1
				os=unicos
d585 1
a585 1
				os=tops20
d589 1
a589 1
				os=tpf
d593 1
a593 1
				os=udi
d597 1
a597 1
				os=sym1
d601 1
a601 1
				os=none
d605 1
a605 1
				os=sysv
d609 5
a613 1
				os=vms
d617 1
a617 1
				os=vxworks
d621 1
a621 1
				os=vxworks
d625 1
a625 1
				os=vxworks
d629 1
a629 1
				os=mingw32
d633 1
a633 1
				os=unicos
d637 1
a637 1
				os=
d689 1
a689 1
		os=cnk
d694 1
a694 1
		os=tops10
d699 1
a699 1
		os=tops20
d709 1
a709 1
		os=sysv3
d718 1
a718 1
		os=${os:-bsd}
d731 1
a731 1
		os=hiuxwe2
d774 1
a774 1
		os=sysv32
d779 1
a779 1
		os=sysv4
d784 1
a784 1
		os=sysv
d789 1
a789 1
		os=solaris2
d794 1
a794 1
		os=${os:-unicos}
d799 1
a799 1
		case $os in
d803 1
a803 1
			os=irix4
d814 1
a814 1
		os=mint
d819 1
a819 1
		os=newsos
d824 1
a824 1
		case $os in
d830 1
a830 1
		      os=nextstep2
d833 1
a833 1
		      os=nextstep3
d844 1
a844 1
		os=proelf
d849 1
a849 1
		os=hiuxwe2
d886 1
a886 1
		os=${os:-elf}
d891 1
a891 1
		os=vxworks
d908 1
a908 1
		os=proelf
d961 1
a961 1
		os=${os:-unicosmp}
d965 1
a965 1
		os=${os:-unicos}
d1009 1
a1009 1
		os=${os:-bosx}
d1018 1
a1018 1
		os=linux
d1031 1
a1031 1
		os=$os"spe"
d1041 1
a1041 1
		os=linux
d1051 1
a1051 1
		os=linux
d1107 3
d1114 1
a1114 1
		os=${os:-elf}
d1125 1
a1125 1
		os=${os:-elf}
d1147 3
a1149 7
	s390-*)
		cpu=s390
		vendor=ibm
		;;
	s390x-*)
		cpu=s390x
		vendor=ibm
d1152 1
a1152 1
		os=${os:-linux-gnu}
d1169 1
a1169 1
			| arm  | arm[lb]e | arme[lb] | armv* \
d1234 1
d1281 1
a1281 1
if [ x$os != x ]
d1283 35
a1336 3
	gnu/linux*)
		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
		;;
d1360 1
a1360 4
	sco3.2v[4-9]* | sco5v6*)
		# Don't forget version if it is 3.2v4 or newer.
		;;
	scout)
a1368 34
	# Now 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* | esix* | aix* | cnk* | sunos | sunos[34]*\
	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
	     | sym* | kopensolaris* | plan9* \
	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
	     | aos* | aros* | cloudabi* | sortix* \
	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
	     | knetbsd* | mirbsd* | netbsd* \
	     | bitrig* | openbsd* | solidbsd* | libertybsd* \
	     | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
	     | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
	     | chorusrdb* | cegcc* | glidix* \
	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
	     | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
	     | linux-newlib* | linux-musl* | linux-uclibc* \
	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
	     | interix* | uwin* | mks* | rhapsody* | darwin* \
	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
	     | os2* | vos* | palmos* | uclinux* | nucleus* \
	     | morphos* | superux* | rtmk* | windiss* \
	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi*)
	# Remember, each alternative MUST END IN *, to match a version number.
		;;
a1380 15
	nto-qnx*)
		;;
	nto*)
		os=`echo $os | sed -e 's|nto|nto-qnx|'`
		;;
	sim | xray | os68k* | v88r* \
	    | windows* | osx | abug | netware* | os9* \
	    | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
		;;
	linux-dietlibc)
		os=linux-dietlibc
		;;
	linux*)
		os=`echo $os | sed -e 's|linux|linux-gnu|'`
		;;
d1387 3
d1393 1
a1393 1
	mac*)
a1437 3
	nsk*)
		os=nsk
		;;
a1462 3
	# This must come after sysvr4.
	sysv*)
		;;
a1468 3
	zvmoe)
		os=zvmoe
		;;
a1484 8
	nacl*)
		;;
	ios)
		;;
	none)
		;;
	*-eabi)
		;;
d1486 1
a1486 2
		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
		exit 1
d1489 1
d1502 1
d1514 2
a1515 1
		os=linux
d1681 1
d1684 81
d1769 2
a1770 2
		case $os in
			riscix*)
d1773 1
a1773 1
			sunos*)
d1776 1
a1776 1
			cnk*|-aix*)
d1779 1
a1779 1
			beos*)
d1782 1
a1782 1
			hpux*)
d1785 1
a1785 1
			mpeix*)
d1788 1
a1788 1
			hiux*)
d1791 1
a1791 1
			unos*)
d1794 1
a1794 1
			dgux*)
d1797 1
a1797 1
			luna*)
d1800 1
a1800 1
			genix*)
d1803 1
a1803 1
			clix*)
d1806 4
a1809 1
			mvs* | opened*)
d1812 1
a1812 1
			os400*)
d1815 1
a1815 1
			ptx*)
d1818 1
a1818 1
			tpf*)
d1821 1
a1821 1
			vxsim* | vxworks* | windiss*)
d1824 1
a1824 1
			aux*)
d1827 1
a1827 1
			hms*)
d1830 1
a1830 1
			mpw* | macos*)
d1833 1
a1833 1
			*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
d1836 1
a1836 1
			vos*)
d1843 1
a1843 1
echo "$cpu-$vendor-$os"
@


1.4
log
@merge conflicts
@
text
@d3 1
a3 1
#   Copyright 1992-2018 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2018-01-15'
d70 1
a70 1
Copyright 1992-2018 Free Software Foundation, Inc.
d92 1
a92 1
       echo "$me: invalid option $1$help"
d113 11
a123 31
# 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* | linux-android* | linux-dietlibc | linux-newlib* | \
  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
  kopensolaris*-gnu* | cloudabi*-eabi* | \
  storm-chaos* | os2-emx* | rtmk-nova*)
    os=-$maybe_os
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
    ;;
  android-linux)
    os=-linux-android
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
    ;;
  *)
    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.
d125 3
a127 45
	-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 | -axis | -knuth | -cray | -microblaze*)
		os=
		basic_machine=$1
		;;
	-bluegene*)
		os=-cnk
		;;
	-sim | -cisco | -oki | -wec | -winbond)
		os=
		basic_machine=$1
		;;
	-scout)
		;;
	-wrs)
		os=-vxworks
		basic_machine=$1
		;;
	-chorusos*)
		os=-chorusos
		basic_machine=$1
		;;
	-chorusrdb)
		os=-chorusrdb
		basic_machine=$1
		;;
	-hiux*)
		os=-hiuxwe2
		;;
	-sco6)
		os=-sco5v6
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
		;;
	-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/'`
d129 22
a150 3
	-sco3.2.[4-9]*)
		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d152 35
a186 3
	-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/'`
d188 452
a639 39
	-sco5v6*)
		# 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*178)
		os=-lynxos178
		;;
	-lynx*5)
		os=-lynxos5
		;;
	-lynx*)
		os=-lynxos
		;;
	-ptx*)
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
		;;
	-psos*)
		os=-psos
		;;
	-mint | -mint[0-9]*)
		basic_machine=m68k-atari
		os=-mint
d643 1
a643 1
# Decode aliases for certain CPU-COMPANY combinations.
d645 5
a649 76
	# Recognize the basic CPU types without company name.
	# Some are omitted here because they have special meanings below.
	1750a | 580 \
	| a29k \
	| aarch64 | aarch64_be \
	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
	| am33_2.0 \
	| arc | arceb \
	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
	| avr | avr32 \
	| ba \
	| be32 | be64 \
	| bfin \
	| c4x | c8051 | clipper \
	| d10v | d30v | dlx | dsp16xx \
	| e2k | epiphany \
	| fido | fr30 | frv | ft32 \
	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
	| hexagon \
	| i370 | i860 | i960 | ia16 | ia64 \
	| ip2k | iq2000 \
	| k1om \
	| le32 | le64 \
	| lm32 \
	| m32c | m32r | m32rle | m68000 | m68k | m88k \
	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
	| mips | mipsbe | mipseb | mipsel | mipsle \
	| mips16 \
	| mips64 | mips64el \
	| mips64octeon | mips64octeonel \
	| mips64orion | mips64orionel \
	| mips64r5900 | mips64r5900el \
	| mips64vr | mips64vrel \
	| mips64vr4100 | mips64vr4100el \
	| mips64vr4300 | mips64vr4300el \
	| mips64vr5000 | mips64vr5000el \
	| mips64vr5900 | mips64vr5900el \
	| mipsisa32 | mipsisa32el \
	| mipsisa32r2 | mipsisa32r2el \
	| mipsisa32r6 | mipsisa32r6el \
	| mipsisa64 | mipsisa64el \
	| mipsisa64r2 | mipsisa64r2el \
	| mipsisa64r6 | mipsisa64r6el \
	| mipsisa64sb1 | mipsisa64sb1el \
	| mipsisa64sr71k | mipsisa64sr71kel \
	| mipsr5900 | mipsr5900el \
	| mipstx39 | mipstx39el \
	| mn10200 | mn10300 \
	| moxie \
	| mt \
	| msp430 \
	| nds32 | nds32le | nds32be \
	| nios | nios2 | nios2eb | nios2el \
	| ns16k | ns32k \
	| open8 | or1k | or1knd | or32 \
	| pdp10 | pj | pjl \
	| powerpc | powerpc64 | powerpc64le | powerpcle \
	| pru \
	| pyramid \
	| riscv32 | riscv64 \
	| rl78 | rx \
	| score \
	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
	| sh64 | sh64le \
	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
	| spu \
	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
	| ubicom32 \
	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
	| visium \
	| wasm32 \
	| x86 | xc16x | xstormy16 | xtensa \
	| z8k | z80)
		basic_machine=$basic_machine-unknown
d651 3
a653 2
	c54x)
		basic_machine=tic54x-unknown
d655 3
a657 2
	c55x)
		basic_machine=tic55x-unknown
d659 3
a661 2
	c6x)
		basic_machine=tic6x-unknown
d663 3
a665 2
	leon|leon[3-9])
		basic_machine=sparc-$basic_machine
d667 3
a669 3
	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
		basic_machine=$basic_machine-unknown
		os=-none
d671 3
a673 19
	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
		;;
	ms1)
		basic_machine=mt-unknown
		;;

	strongarm | thumb | xscale)
		basic_machine=arm-unknown
		;;
	xgate)
		basic_machine=$basic_machine-unknown
		os=-none
		;;
	xscaleeb)
		basic_machine=armeb-unknown
		;;

	xscaleel)
		basic_machine=armel-unknown
a675 100
	# 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*86 | x86_64)
	  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.
	580-* \
	| a29k-* \
	| aarch64-* | aarch64_be-* \
	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
	| avr-* | avr32-* \
	| ba-* \
	| be32-* | be64-* \
	| bfin-* | bs2000-* \
	| c[123]* | c30-* | [cjt]90-* | c4x-* \
	| c8051-* | clipper-* | craynv-* | cydra-* \
	| d10v-* | d30v-* | dlx-* \
	| e2k-* | elxsi-* \
	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
	| h8300-* | h8500-* \
	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
	| hexagon-* \
	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
	| ip2k-* | iq2000-* \
	| k1om-* \
	| le32-* | le64-* \
	| lm32-* \
	| m32c-* | m32r-* | m32rle-* \
	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
	| microblaze-* | microblazeel-* \
	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
	| mips16-* \
	| mips64-* | mips64el-* \
	| mips64octeon-* | mips64octeonel-* \
	| mips64orion-* | mips64orionel-* \
	| mips64r5900-* | mips64r5900el-* \
	| mips64vr-* | mips64vrel-* \
	| mips64vr4100-* | mips64vr4100el-* \
	| mips64vr4300-* | mips64vr4300el-* \
	| mips64vr5000-* | mips64vr5000el-* \
	| mips64vr5900-* | mips64vr5900el-* \
	| mipsisa32-* | mipsisa32el-* \
	| mipsisa32r2-* | mipsisa32r2el-* \
	| mipsisa32r6-* | mipsisa32r6el-* \
	| mipsisa64-* | mipsisa64el-* \
	| mipsisa64r2-* | mipsisa64r2el-* \
	| mipsisa64r6-* | mipsisa64r6el-* \
	| mipsisa64sb1-* | mipsisa64sb1el-* \
	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
	| mipsr5900-* | mipsr5900el-* \
	| mipstx39-* | mipstx39el-* \
	| mmix-* \
	| mt-* \
	| msp430-* \
	| nds32-* | nds32le-* | nds32be-* \
	| nios-* | nios2-* | nios2eb-* | nios2el-* \
	| none-* | np1-* | ns16k-* | ns32k-* \
	| open8-* \
	| or1k*-* \
	| orion-* \
	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
	| pru-* \
	| pyramid-* \
	| riscv32-* | riscv64-* \
	| rl78-* | romp-* | rs6000-* | rx-* \
	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
	| sparclite-* \
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
	| tahoe-* \
	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
	| tile*-* \
	| tron-* \
	| ubicom32-* \
	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
	| vax-* \
	| visium-* \
	| wasm32-* \
	| we32k-* \
	| x86-* | x86_64-* | xc16x-* | xps100-* \
	| xstormy16-* | xtensa*-* \
	| ymp-* \
	| z8k-* | z80-*)
		;;
	# Recognize the basic CPU types without company name, with glob match.
	xtensa*)
		basic_machine=$basic_machine-unknown
		;;
a677 4
	386bsd)
		basic_machine=i386-pc
		os=-bsd
		;;
d679 2
a680 1
		basic_machine=m68000-att
d683 2
a684 74
		basic_machine=we32k-att
		;;
	a29khif)
		basic_machine=a29k-amd
		os=-udi
		;;
	abacus)
		basic_machine=abacus-unknown
		;;
	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
		;;
	amd64)
		basic_machine=x86_64-pc
		;;
	amd64-*)
		basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		;;
	amdahl)
		basic_machine=580-amdahl
		os=-sysv
		;;
	amiga | amiga-*)
		basic_machine=m68k-unknown
		;;
	amigaos | amigados)
		basic_machine=m68k-unknown
		os=-amigaos
		;;
	amigaunix | amix)
		basic_machine=m68k-unknown
		os=-sysv4
		;;
	apollo68)
		basic_machine=m68k-apollo
		os=-sysv
		;;
	apollo68bsd)
		basic_machine=m68k-apollo
		os=-bsd
		;;
	aros)
		basic_machine=i386-pc
		os=-aros
		;;
	asmjs)
		basic_machine=asmjs-unknown
		;;
	aux)
		basic_machine=m68k-apple
		os=-aux
		;;
	balance)
		basic_machine=ns32k-sequent
		os=-dynix
		;;
	blackfin)
		basic_machine=bfin-unknown
		os=-linux
		;;
	blackfin-*)
		basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		os=-linux
d687 3
a689 70
		basic_machine=powerpc-ibm
		os=-cnk
		;;
	c54x-*)
		basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		;;
	c55x-*)
		basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		;;
	c6x-*)
		basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		;;
	c90)
		basic_machine=c90-cray
		os=-unicos
		;;
	cegcc)
		basic_machine=arm-unknown
		os=-cegcc
		;;
	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 | j90)
		basic_machine=j90-cray
		os=-unicos
		;;
	craynv)
		basic_machine=craynv-cray
		os=-unicosmp
		;;
	cr16 | cr16-*)
		basic_machine=cr16-unknown
		os=-elf
		;;
	crds | unos)
		basic_machine=m68k-crds
		;;
	crisv32 | crisv32-* | etraxfs*)
		basic_machine=crisv32-axis
		;;
	cris | cris-* | etrax*)
		basic_machine=cris-axis
		;;
	crx)
		basic_machine=crx-unknown
		os=-elf
		;;
	da30 | da30-*)
		basic_machine=m68k-da30
		;;
	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
		basic_machine=mips-dec
d692 3
a694 2
		basic_machine=pdp10-dec
		os=-tops10
d697 3
a699 2
		basic_machine=pdp10-dec
		os=-tops20
d703 2
a704 17
		basic_machine=m68k-motorola
		;;
	delta88)
		basic_machine=m88k-motorola
		os=-sysv3
		;;
	dicos)
		basic_machine=i686-pc
		os=-dicos
		;;
	djgpp)
		basic_machine=i586-pc
		os=-msdosdjgpp
		;;
	dpx20 | dpx20-*)
		basic_machine=rs6000-bull
		os=-bosx
d707 3
a709 2
		basic_machine=m68k-bull
		os=-sysv3
d711 3
a713 11
	e500v[12])
		basic_machine=powerpc-unknown
		os=$os"spe"
		;;
	e500v[12]-*)
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		os=$os"spe"
		;;
	ebmon29k)
		basic_machine=a29k-amd
		os=-ebmon
d716 3
a718 9
		basic_machine=elxsi-elxsi
		os=-bsd
		;;
	encore | umax | mmax)
		basic_machine=ns32k-encore
		;;
	es1800 | OSE68k | ose68k | ose | OSE)
		basic_machine=m68k-ericsson
		os=-ose
d721 2
a722 1
		basic_machine=i860-alliant
d725 2
a726 9
		basic_machine=ns32k-ns
		;;
	gmicro)
		basic_machine=tron-gmicro
		os=-sysv
		;;
	go32)
		basic_machine=i386-pc
		os=-go32
d729 3
a731 29
		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
d734 2
a735 1
		basic_machine=hppa1.0-hp
d738 2
a739 1
		basic_machine=m68000-hp
d742 2
a743 1
		basic_machine=m68k-hp
d746 2
a747 1
		basic_machine=hppa1.0-hp
d750 2
a751 1
		basic_machine=hppa1.1-hp
d755 2
a756 1
		basic_machine=hppa1.1-hp
d760 2
a761 1
		basic_machine=hppa1.1-hp
d764 2
a765 1
		basic_machine=hppa1.1-hp
d768 2
a769 12
		basic_machine=hppa1.0-hp
		;;
	hppaosf)
		basic_machine=hppa1.1-hp
		os=-osf
		;;
	hppro)
		basic_machine=hppa1.1-hp
		os=-proelf
		;;
	i370-ibm* | ibm*)
		basic_machine=i370-ibm
d772 3
a774 2
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
		os=-sysv32
d777 3
a779 2
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
		os=-sysv4
d782 3
a784 2
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
		os=-sysv
d787 8
a794 10
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
		os=-solaris2
		;;
	i386mach)
		basic_machine=i386-mach
		os=-mach
		;;
	vsta)
		basic_machine=i386-unknown
		os=-vsta
d797 2
a798 1
		basic_machine=mips-sgi
d800 1
a800 1
		    -irix*)
d803 1
a803 1
			os=-irix4
a806 38
	isi68 | isi)
		basic_machine=m68k-isi
		os=-sysv
		;;
	leon-*|leon[3-9]-*)
		basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
		;;
	m68knommu)
		basic_machine=m68k-unknown
		os=-linux
		;;
	m68knommu-*)
		basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		os=-linux
		;;
	magnum | m3230)
		basic_machine=mips-mips
		os=-sysv
		;;
	merlin)
		basic_machine=ns32k-utek
		os=-sysv
		;;
	microblaze*)
		basic_machine=microblaze-xilinx
		;;
	mingw64)
		basic_machine=x86_64-pc
		os=-mingw64
		;;
	mingw32)
		basic_machine=i686-pc
		os=-mingw32
		;;
	mingw32ce)
		basic_machine=arm-unknown
		os=-mingw32ce
		;;
d808 2
a809 27
		basic_machine=m68000-convergent
		;;
	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
		basic_machine=m68k-atari
		os=-mint
		;;
	mips3*-*)
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
		;;
	mips3*)
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
		;;
	monitor)
		basic_machine=m68k-rom68k
		os=-coff
		;;
	morphos)
		basic_machine=powerpc-unknown
		os=-morphos
		;;
	moxiebox)
		basic_machine=moxie-unknown
		os=-moxiebox
		;;
	msdos)
		basic_machine=i386-pc
		os=-msdos
d811 4
a814 34
	ms1-*)
		basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
		;;
	msys)
		basic_machine=i686-pc
		os=-msys
		;;
	mvs)
		basic_machine=i370-ibm
		os=-mvs
		;;
	nacl)
		basic_machine=le32-unknown
		os=-nacl
		;;
	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
d817 3
a819 6
		basic_machine=mips-sony
		os=-newsos
		;;
	necv70)
		basic_machine=v70-nec
		os=-sysv
d822 2
a823 1
		basic_machine=m68k-next
d825 3
a827 1
		    -nextstep* )
d829 2
a830 2
		    -ns2*)
		      os=-nextstep2
d833 1
a833 1
		      os=-nextstep3
a836 20
	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
		;;
	nonstopux)
		basic_machine=mips-compaq
		os=-nonstopux
		;;
d838 2
a839 16
		basic_machine=np1-gould
		;;
	neo-tandem)
		basic_machine=neo-tandem
		;;
	nse-tandem)
		basic_machine=nse-tandem
		;;
	nsr-tandem)
		basic_machine=nsr-tandem
		;;
	nsv-tandem)
		basic_machine=nsv-tandem
		;;
	nsx-tandem)
		basic_machine=nsx-tandem
d842 3
a844 17
		basic_machine=hppa1.1-oki
		os=-proelf
		;;
	openrisc | openrisc-*)
		basic_machine=or32-unknown
		;;
	os400)
		basic_machine=powerpc-ibm
		os=-os400
		;;
	OSE68000 | ose68000)
		basic_machine=m68000-ericsson
		os=-ose
		;;
	os68k)
		basic_machine=m68k-none
		os=-os68k
d847 3
a849 14
		basic_machine=hppa1.1-hitachi
		os=-hiuxwe2
		;;
	paragon)
		basic_machine=i860-intel
		os=-osf
		;;
	parisc)
		basic_machine=hppa-unknown
		os=-linux
		;;
	parisc-*)
		basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
		os=-linux
d852 2
a853 1
		basic_machine=sparc-tti
d856 2
a857 1
		basic_machine=m68k-tti
d859 3
a861 2
	pc532 | pc532-*)
		basic_machine=ns32k-pc532
d863 3
a865 2
	pc98)
		basic_machine=i386-pc
d867 3
a869 2
	pc98-*)
		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d871 3
a873 2
	pentium | p5 | k5 | k6 | nexgen | viac3)
		basic_machine=i586-pc
d875 3
a877 2
	pentiumpro | p6 | 6x86 | athlon | athlon_*)
		basic_machine=i686-pc
d879 3
a881 2
	pentiumii | pentium2 | pentiumiii | pentium3)
		basic_machine=i686-pc
d883 4
a886 2
	pentium4)
		basic_machine=i786-pc
d888 4
a891 2
	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d893 3
a895 2
	pentiumpro-* | p6-* | 6x86-* | athlon-*)
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d897 3
a899 2
	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d901 3
a903 2
	pentium4-*)
		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d905 4
a908 2
	pn)
		basic_machine=pn-gould
d910 3
a912 1
	power)	basic_machine=power-ibm
d914 3
a916 1
	ppc | ppcbe)	basic_machine=powerpc-unknown
d918 3
a920 2
	ppc-* | ppcbe-*)
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d922 6
a927 2
	ppcle | powerpclittle)
		basic_machine=powerpcle-unknown
d929 6
a934 2
	ppcle-* | powerpclittle-*)
		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d936 5
a940 1
	ppc64)	basic_machine=powerpc64-unknown
d942 3
a944 1
	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d946 4
a949 2
	ppc64le | powerpc64little)
		basic_machine=powerpc64le-unknown
d951 11
a961 2
	ppc64le-* | powerpc64little-*)
		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d963 3
a965 2
	ps2)
		basic_machine=i386-ibm
d967 2
a968 15
	pw32)
		basic_machine=i586-unknown
		os=-pw32
		;;
	rdos | rdos64)
		basic_machine=x86_64-pc
		os=-rdos
		;;
	rdos32)
		basic_machine=i386-pc
		os=-rdos
		;;
	rom68k)
		basic_machine=m68k-rom68k
		os=-coff
d970 2
a971 2
	rm[46]00)
		basic_machine=mips-siemens
d973 2
a974 2
	rtpc | rtpc-*)
		basic_machine=romp-ibm
d976 2
a977 2
	s390 | s390-*)
		basic_machine=s390-ibm
d979 2
a980 2
	s390x | s390x-*)
		basic_machine=s390x-ibm
d982 2
a983 3
	sa29200)
		basic_machine=a29k-amd
		os=-udi
d985 2
a986 2
	sb1)
		basic_machine=mipsisa64sb1-unknown
d988 2
a989 2
	sb1el)
		basic_machine=mipsisa64sb1el-unknown
d991 2
a992 3
	sde)
		basic_machine=mipsisa32-sde
		os=-elf
d994 2
a995 3
	sei)
		basic_machine=mips-sei
		os=-seiux
d997 2
a998 2
	sequent)
		basic_machine=i386-sequent
d1000 3
a1002 2
	sh5el)
		basic_machine=sh5le-unknown
d1004 6
a1009 3
	simso-wrs)
		basic_machine=sparclite-wrs
		os=-vxworks
d1011 4
a1014 13
	sps7)
		basic_machine=m68k-bull
		os=-sysv2
		;;
	spur)
		basic_machine=spur-unknown
		;;
	st2000)
		basic_machine=m68k-tandem
		;;
	stratus)
		basic_machine=i860-stratus
		os=-sysv4
d1016 3
a1018 2
	strongarm-* | thumb-*)
		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1020 2
a1021 2
	sun2)
		basic_machine=m68000-sun
d1023 2
a1024 3
	sun2os3)
		basic_machine=m68000-sun
		os=-sunos3
d1026 2
a1027 3
	sun2os4)
		basic_machine=m68000-sun
		os=-sunos4
d1029 3
a1031 3
	sun3os3)
		basic_machine=m68k-sun
		os=-sunos3
d1033 2
a1034 3
	sun3os4)
		basic_machine=m68k-sun
		os=-sunos4
d1036 2
a1037 3
	sun4os3)
		basic_machine=sparc-sun
		os=-sunos3
d1039 3
a1041 3
	sun4os4)
		basic_machine=sparc-sun
		os=-sunos4
d1043 2
a1044 3
	sun4sol2)
		basic_machine=sparc-sun
		os=-solaris2
d1046 2
a1047 2
	sun3 | sun3-*)
		basic_machine=m68k-sun
d1049 3
a1051 2
	sun4)
		basic_machine=sparc-sun
d1053 2
a1054 2
	sun386 | sun386i | roadrunner)
		basic_machine=i386-sun
d1056 2
a1057 3
	sv1)
		basic_machine=sv1-cray
		os=-unicos
d1059 2
a1060 3
	symmetry)
		basic_machine=i386-sequent
		os=-dynix
d1062 2
a1063 3
	t3e)
		basic_machine=alphaev5-cray
		os=-unicos
d1065 2
a1066 3
	t90)
		basic_machine=t90-cray
		os=-unicos
d1068 2
a1069 3
	tile*)
		basic_machine=$basic_machine-unknown
		os=-linux-gnu
d1071 2
a1072 2
	tx39)
		basic_machine=mipstx39-unknown
d1074 2
a1075 2
	tx39el)
		basic_machine=mipstx39el-unknown
d1077 2
a1078 3
	toad1)
		basic_machine=pdp10-xkl
		os=-tops20
d1080 2
a1081 2
	tower | tower-32)
		basic_machine=m68k-ncr
d1083 2
a1084 23
	tpf)
		basic_machine=s390x-ibm
		os=-tpf
		;;
	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
d1086 2
a1087 2
	vpp*|vx|vx-*)
		basic_machine=f301-fujitsu
d1089 2
a1090 15
	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
d1092 2
a1093 3
	w89k-*)
		basic_machine=hppa1.1-winbond
		os=-proelf
d1095 2
a1096 2
	x64)
		basic_machine=x86_64-pc
d1098 2
a1099 3
	xbox)
		basic_machine=i686-pc
		os=-mingw32
d1101 2
a1102 2
	xps | xps100)
		basic_machine=xps100-honeywell
d1105 1
a1105 9
		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
		;;
	ymp)
		basic_machine=ymp-cray
		os=-unicos
		;;
	none)
		basic_machine=none-none
		os=-none
d1108 4
a1111 4
# 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
d1113 3
a1115 2
	op50n)
		basic_machine=hppa1.1-oki
d1117 3
a1119 2
	op60c)
		basic_machine=hppa1.1-oki
d1121 2
a1122 2
	romp)
		basic_machine=romp-ibm
d1124 3
a1126 2
	mmix)
		basic_machine=mmix-knuth
d1128 3
a1130 2
	rs6000)
		basic_machine=rs6000-ibm
d1132 3
a1134 2
	vax)
		basic_machine=vax-dec
d1136 3
a1138 2
	pdp11)
		basic_machine=pdp11-dec
d1140 3
a1142 2
	we32k)
		basic_machine=we32k-att
d1144 7
a1150 2
	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
		basic_machine=sh-unknown
d1152 2
a1153 17
	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
		;;
	*-unknown)
		# Make sure to match an already-canonicalized machine name.
d1155 1
d1157 107
a1263 2
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
		exit 1
d1268 3
a1270 3
case $basic_machine in
	*-digital*)
		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
d1272 2
a1273 2
	*-commodore*)
		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
d1281 1
a1281 1
if [ x"$os" != x"" ]
d1286 3
a1288 3
	# -solaris* is a basic system type, with this one exception.
	-auroraux)
		os=-auroraux
d1290 4
a1293 1
	-solaris1 | -solaris1.*)
d1296 2
a1297 2
	-solaris)
		os=-solaris2
d1299 2
a1300 2
	-unixware*)
		os=-sysv4.2uw
d1302 1
a1302 1
	-gnu/linux*)
d1306 33
a1338 2
	-es1800*)
		os=-ose
d1343 29
a1371 28
	# -sysv* is not here because it comes later, after sysvr4.
	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
	      | -sym* | -kopensolaris* | -plan9* \
	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
	      | -aos* | -aros* | -cloudabi* | -sortix* \
	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
	      | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
	      | -morphos* | -superux* | -rtmk* | -windiss* \
	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme*)
d1374 3
a1376 3
	-qnx*)
		case $basic_machine in
		    x86-* | i*86-*)
d1379 1
a1379 1
			os=-nto$os
d1383 2
a1384 1
	-nto-qnx*)
d1386 3
a1388 1
	-nto*)
d1391 6
a1396 3
	-sim | -xray | -os68k* | -v88r* \
	      | -windows* | -osx | -abug | -netware* | -os9* \
	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
d1398 13
a1410 1
	-mac*)
d1413 2
a1414 2
	-linux-dietlibc)
		os=-linux-dietlibc
d1416 2
a1417 2
	-linux*)
		os=`echo $os | sed -e 's|linux|linux-gnu|'`
d1419 1
a1419 1
	-sunos5*)
d1422 1
a1422 1
	-sunos6*)
d1425 2
a1426 2
	-opened*)
		os=-openedition
d1428 2
a1429 2
	-os400*)
		os=-os400
d1431 2
a1432 2
	-wince*)
		os=-wince
d1434 2
a1435 2
	-utek*)
		os=-bsd
d1437 2
a1438 2
	-dynix*)
		os=-bsd
d1440 2
a1441 2
	-acis*)
		os=-aos
d1443 2
a1444 5
	-atheos*)
		os=-atheos
		;;
	-syllable*)
		os=-syllable
d1446 2
a1447 2
	-386bsd)
		os=-bsd
d1449 2
a1450 2
	-ctix* | -uts*)
		os=-sysv
d1452 2
a1453 2
	-nova*)
		os=-rtmk-nova
d1455 2
a1456 5
	-ns2)
		os=-nextstep2
		;;
	-nsk*)
		os=-nsk
d1459 1
a1459 1
	-sinix5.*)
d1462 2
a1463 2
	-sinix*)
		os=-sysv4
d1465 2
a1466 2
	-tpf*)
		os=-tpf
d1468 2
a1469 2
	-triton*)
		os=-sysv3
d1471 2
a1472 2
	-oss*)
		os=-sysv3
d1474 2
a1475 2
	-svr4*)
		os=-sysv4
d1477 2
a1478 2
	-svr3)
		os=-sysv3
d1480 2
a1481 2
	-sysvr4)
		os=-sysv4
d1483 2
a1484 2
	# This must come after -sysvr4.
	-sysv*)
d1486 2
a1487 2
	-ose*)
		os=-ose
d1489 2
a1490 2
	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
		os=-mint
d1492 2
a1493 2
	-zvmoe)
		os=-zvmoe
d1495 2
a1496 2
	-dicos*)
		os=-dicos
d1498 1
a1498 1
	-pikeos*)
d1502 1
a1502 1
		case $basic_machine in
d1504 1
a1504 1
			os=-eabi
d1507 1
a1507 1
			os=-elf
d1511 3
a1513 1
	-nacl*)
d1515 1
a1515 1
	-ios)
d1517 1
a1517 1
	-none)
a1519 2
		# Get rid of the `-' at the beginning of $os.
		os=`echo $os | sed 's/[^-]*-//'`
d1536 1
a1536 1
case $basic_machine in
d1538 1
a1538 1
		os=-elf
d1541 1
a1541 1
		os=-elf
d1544 1
a1544 1
		os=-riscix1.2
d1547 1
a1547 1
		os=-linux
d1550 1
a1550 1
		os=-aout
d1553 1
a1553 1
		os=-coff
d1556 4
a1559 1
		os=-elf
d1562 1
a1562 1
		os=-elf
d1565 1
a1565 1
		os=-coff
d1568 1
a1568 1
		os=-coff
d1571 1
a1571 1
		os=-coff
d1575 1
a1575 1
		os=-tops20
d1578 1
a1578 1
		os=-none
d1581 1
a1581 1
		os=-ultrix4.2
d1584 1
a1584 1
		os=-domain
d1587 1
a1587 1
		os=-sunos4.0.2
d1590 1
a1590 1
		os=-sunos3
d1593 1
a1593 1
		os=-aout
d1596 1
a1596 1
		os=-elf
d1599 1
a1599 1
		os=-elf
d1602 1
a1602 1
		os=-elf
d1605 1
a1605 1
		os=-coff
d1608 1
a1608 1
		os=-sysv3
d1611 1
a1611 1
		os=-sunos4.1.1
d1614 1
a1614 1
		os=-elf
d1617 1
a1617 1
		os=-beos
d1620 1
a1620 1
		os=-aix
d1623 1
a1623 1
		os=-mmixware
d1626 1
a1626 1
		os=-proelf
d1629 1
a1629 1
		os=-proelf
d1632 1
a1632 1
		os=-proelf
d1635 1
a1635 1
		os=-hpux
d1638 1
a1638 1
		os=-hiux
d1641 1
a1641 1
		os=-sysv
d1644 1
a1644 1
		os=-amigaos
d1647 1
a1647 1
		os=-dgux
d1650 1
a1650 1
		os=-sysv3
d1653 1
a1653 1
		os=-rtu
d1656 1
a1656 1
		os=-luna
d1659 1
a1659 1
		os=-nextstep
d1662 1
a1662 1
		os=-ptx
d1665 1
a1665 1
		os=-unos
d1668 1
a1668 1
		os=-genix
d1671 1
a1671 1
		os=-mvs
d1674 1
a1674 1
		os=-sysv
d1677 1
a1677 1
		os=-bsd
d1680 1
a1680 1
		os=-bsd
d1683 1
a1683 1
		os=-irix
d1686 1
a1686 1
		os=-sysv4
d1689 1
a1689 1
		os=-rtu
d1692 1
a1692 1
		os=-uxpv
d1695 1
a1695 1
		os=-coff
d1698 1
a1698 1
		os=-coff
d1701 1
a1701 1
		os=-macos
d1704 4
a1707 1
		os=-mint
d1710 1
a1710 1
		os=-none
d1717 2
a1718 3
vendor=unknown
case $basic_machine in
	*-unknown)
d1720 1
a1720 1
			-riscix*)
d1723 1
a1723 1
			-sunos*)
d1726 1
a1726 1
			-cnk*|-aix*)
d1729 1
a1729 1
			-beos*)
d1732 1
a1732 1
			-hpux*)
d1735 1
a1735 1
			-mpeix*)
d1738 1
a1738 1
			-hiux*)
d1741 1
a1741 1
			-unos*)
d1744 1
a1744 1
			-dgux*)
d1747 1
a1747 1
			-luna*)
d1750 1
a1750 1
			-genix*)
d1753 4
a1756 1
			-mvs* | -opened*)
d1759 1
a1759 1
			-os400*)
d1762 1
a1762 1
			-ptx*)
d1765 1
a1765 1
			-tpf*)
d1768 1
a1768 1
			-vxsim* | -vxworks* | -windiss*)
d1771 1
a1771 1
			-aux*)
d1774 1
a1774 1
			-hms*)
d1777 1
a1777 1
			-mpw* | -macos*)
d1780 1
a1780 1
			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
d1783 1
a1783 1
			-vos*)
a1786 1
		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
d1790 1
a1790 1
echo "$basic_machine$os"
d1794 1
a1794 1
# eval: (add-hook 'write-file-functions 'time-stamp)
@


1.3
log
@merge conflicts.
@
text
@d3 1
a3 1
#   Copyright 1992-2017 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2017-02-07'
d18 1
a18 1
# along with this program; if not, see <http://www.gnu.org/licenses/>.
d36 1
a36 1
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d60 1
a60 1
Operation modes:
d70 1
a70 1
Copyright 1992-2017 Free Software Foundation, Inc.
d97 1
a97 1
       echo $1
d115 1
a115 1
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
d123 1
a123 1
    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
d127 1
a127 1
    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
d130 3
a132 3
    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
    if [ $basic_machine != $1 ]
    then os=`echo $1 | sed 's/.*-/-/'`
d181 1
a181 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d185 1
a185 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d189 1
a189 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d193 1
a193 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d197 1
a197 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d201 1
a201 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d205 1
a205 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d208 1
a208 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d212 1
a212 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d218 1
a218 1
		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
d230 1
a230 4
		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
		;;
	-windowsnt*)
		os=`echo $os | sed -e 's/windowsnt/winnt/'`
d263 1
a263 1
	| i370 | i860 | i960 | ia64 \
d299 1
a299 1
	| pdp10 | pdp11 | pj | pjl \
d315 1
a315 1
	| we32k \
d336 1
a336 1
	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
d365 1
a365 1
		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
d388 1
a388 1
	| i*86-* | i860-* | i960-* | ia64-* \
d446 1
d460 1
a460 1
		basic_machine=i386-unknown
d494 1
a494 1
		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
d539 1
a539 1
		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
d547 1
a547 1
		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
d550 1
a550 1
		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
d553 1
a553 1
		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
d642 1
a642 1
	dpx2* | dpx2*-bull)
d651 1
a651 1
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
a742 3
	hppa-next)
		os=-nextstep3
		;;
d755 1
a755 1
		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
d759 1
a759 1
		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
d763 1
a763 1
		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
d767 1
a767 1
		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
d774 1
a774 1
	i386-vsta | vsta)
d793 1
a793 1
		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
d800 1
a800 1
		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
a802 3
	m88k-omron*)
		basic_machine=m88k-omron
		;;
d834 1
a834 1
		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
d837 1
a837 1
		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
d856 1
a856 1
		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
d898 1
a898 1
	next | m*-next )
d943 3
d981 1
a981 1
		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
d997 1
a997 1
		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
d1012 1
a1012 1
		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
d1015 1
a1015 1
		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
d1018 1
a1018 1
		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
d1021 1
a1021 1
		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
d1031 1
a1031 1
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
d1037 1
a1037 1
		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
d1041 1
a1041 1
	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
d1047 1
a1047 1
		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
a1100 4
	sh)
		basic_machine=sh-hitachi
		os=-hms
		;;
d1104 1
a1104 4
	sh64)
		basic_machine=sh64-unknown
		;;
	sparclite-wrs | simso-wrs)
d1123 1
a1123 1
		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
d1245 3
d1256 1
a1256 1
		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
a1261 8
	z8k-*-coff)
		basic_machine=z8k-unknown
		os=-sim
		;;
	z80-*-coff)
		basic_machine=z80-unknown
		os=-sim
		;;
a1289 4
	pdp10)
		# there are many clones, so DEC is not a safe bet
		basic_machine=pdp10-unknown
		;;
a1298 3
	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
		basic_machine=sparc-sun
		;;
d1318 1
a1318 1
		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
d1326 1
a1326 1
		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
d1329 1
a1329 1
		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
d1340 2
a1341 2
	# First match some system type aliases
	# that might get confused with valid system types.
a1351 3
	-svr4*)
		os=-sysv4
		;;
d1358 5
a1362 1
	# First accept the basic system types.
d1364 1
a1364 1
	# Each alternative MUST END IN A *, to match a version number.
d1374 1
a1374 1
	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
d1385 1
a1385 1
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
d1389 1
a1389 1
	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
d1392 1
a1392 1
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
d1409 2
a1410 2
	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
d1414 1
a1414 1
		os=`echo $os | sed -e 's|mac|macos|'`
d1423 1
a1423 1
		os=`echo $os | sed -e 's|sunos5|solaris2|'`
d1426 1
a1426 1
		os=`echo $os | sed -e 's|sunos6|solaris3|'`
a1436 6
	-osfrose*)
		os=-osfrose
		;;
	-osf*)
		os=-osf
		;;
d1461 1
a1461 1
	-ns2 )
d1483 1
a1483 1
	-svr4)
a1497 6
	-es1800*)
		os=-ose
		;;
	-xenix)
		os=-xenix
		;;
a1500 3
	-aros*)
		os=-aros
		;;
d1507 13
d1529 1
a1529 1
		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
a1624 3
	*-haiku)
		os=-haiku
		;;
d1664 1
a1664 1
	*-next )
a1678 3
	*-next)
		os=-nextstep3
		;;
d1788 1
a1788 1
		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
d1792 1
a1792 1
echo $basic_machine$os
d1796 1
a1796 1
# eval: (add-hook 'write-file-hooks 'time-stamp)
@


1.3.6.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
#   Copyright 1992-2018 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2018-01-15'
d18 1
a18 1
# along with this program; if not, see <https://www.gnu.org/licenses/>.
d36 1
a36 1
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d60 1
a60 1
Options:
d70 1
a70 1
Copyright 1992-2018 Free Software Foundation, Inc.
d97 1
a97 1
       echo "$1"
d115 1
a115 1
maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
d123 1
a123 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
d127 1
a127 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
d130 3
a132 3
    basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
    if [ "$basic_machine" != "$1" ]
    then os=`echo "$1" | sed 's/.*-/-/'`
d181 1
a181 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d185 1
a185 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d189 1
a189 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d193 1
a193 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d197 1
a197 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d201 1
a201 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d205 1
a205 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d208 1
a208 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d212 1
a212 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d218 1
a218 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d230 4
a233 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
d266 1
a266 1
	| i370 | i860 | i960 | ia16 | ia64 \
d302 1
a302 1
	| pdp10 | pj | pjl \
d318 1
a318 1
	| wasm32 \
d339 1
a339 1
	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
d368 1
a368 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d391 1
a391 1
	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
a448 1
	| wasm32-* \
d462 1
a462 1
		basic_machine=i386-pc
d496 1
a496 1
		basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d541 1
a541 1
		basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d549 1
a549 1
		basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d552 1
a552 1
		basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d555 1
a555 1
		basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d644 1
a644 1
	dpx2*)
d653 1
a653 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d745 3
d760 1
a760 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d764 1
a764 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d768 1
a768 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d772 1
a772 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d779 1
a779 1
	vsta)
d798 1
a798 1
		basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
d805 1
a805 1
		basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d808 3
d842 1
a842 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
d845 1
a845 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
d864 1
a864 1
		basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
d906 1
a906 1
	next | m*-next)
a950 3
	nsv-tandem)
		basic_machine=nsv-tandem
		;;
d986 1
a986 1
		basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1002 1
a1002 1
		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1017 1
a1017 1
		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1020 1
a1020 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1023 1
a1023 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1026 1
a1026 1
		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1036 1
a1036 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1042 1
a1042 1
		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1046 1
a1046 1
	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1052 1
a1052 1
		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1106 4
d1113 4
a1116 1
	simso-wrs)
d1135 1
a1135 1
		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
a1256 3
	x64)
		basic_machine=x86_64-pc
		;;
d1265 1
a1265 1
		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
d1271 8
d1307 4
d1320 3
d1342 1
a1342 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d1350 1
a1350 1
		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
d1353 1
a1353 1
		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
d1364 2
a1365 2
	# First match some system type aliases that might get confused
	# with valid system types.
d1376 3
d1385 1
a1385 5
	# es1800 is here to avoid being matched by es* (a different OS)
	-es1800*)
		os=-ose
		;;
	# Now accept the basic system types.
d1387 1
a1387 1
	# Each alternative MUST end in a * to match a version number.
d1397 1
a1397 1
	      | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
d1408 1
a1408 1
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
d1412 1
a1412 1
	      | -morphos* | -superux* | -rtmk* | -windiss* \
d1415 1
a1415 1
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme*)
d1432 2
a1433 2
	-sim | -xray | -os68k* | -v88r* \
	      | -windows* | -osx | -abug | -netware* | -os9* \
d1437 1
a1437 1
		os=`echo "$os" | sed -e 's|mac|macos|'`
d1446 1
a1446 1
		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
d1449 1
a1449 1
		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
d1460 6
d1490 1
a1490 1
	-ns2)
d1512 1
a1512 1
	-svr4*)
d1527 6
d1536 3
a1544 13
	-pikeos*)
		# Until real need of OS specific support for
		# particular features comes up, bare metal
		# configurations are quite functional.
		case $basic_machine in
		    arm*)
			os=-eabi
			;;
		    *)
			os=-elf
			;;
		esac
		;;
d1554 1
a1554 1
		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
d1650 3
d1692 1
a1692 1
	*-next)
d1707 3
d1819 1
a1819 1
		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
d1823 1
a1823 1
echo "$basic_machine$os"
d1827 1
a1827 1
# eval: (add-hook 'write-file-functions 'time-stamp)
@


1.3.6.2
log
@Mostly merge changes from HEAD upto 20200411
@
text
@d3 1
a3 1
#   Copyright 1992-2019 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2019-05-23'
d70 1
a70 1
Copyright 1992-2019 Free Software Foundation, Inc.
d92 1
a92 1
       echo "$me: invalid option $1$help" >&2
d113 112
a224 11
# Split fields of configuration type
# shellcheck disable=SC2162
IFS="-" read field1 field2 field3 field4 <<EOF
$1
EOF

# Separate into logical components for further validation
case $1 in
	*-*-*-*-*)
		echo Invalid configuration \`"$1"\': more than four components >&2
		exit 1
d226 2
a227 3
	*-*-*-*)
		basic_machine=$field1-$field2
		os=$field3-$field4
d229 2
a230 22
	*-*-*)
		# Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
		# parts
		maybe_os=$field2-$field3
		case $maybe_os in
			nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
			| linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
			| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
			| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
			| storm-chaos* | os2-emx* | rtmk-nova*)
				basic_machine=$field1
				os=$maybe_os
				;;
			android-linux)
				basic_machine=$field1-unknown
				os=linux-android
				;;
			*)
				basic_machine=$field1-$field2
				os=$field3
				;;
		esac
d232 2
a233 35
	*-*)
		# A lone config we happen to match not fitting any pattern
		case $field1-$field2 in
			decstation-3100)
				basic_machine=mips-dec
				os=
				;;
			*-*)
				# Second component is usually, but not always the OS
				case $field2 in
					# Prevent following clause from handling this valid os
					sun*os*)
						basic_machine=$field1
						os=$field2
						;;
					# Manufacturers
					dec* | mips* | sequent* | encore* | pc533* | 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 | axis | knuth | cray \
					| microblaze* | sim | cisco \
					| oki | wec | wrs | winbond)
						basic_machine=$field1-$field2
						os=
						;;
					*)
						basic_machine=$field1
						os=$field2
						;;
				esac
			;;
		esac
d235 3
a237 452
	*)
		# Convert single-component short-hands not valid as part of
		# multi-component configurations.
		case $field1 in
			386bsd)
				basic_machine=i386-pc
				os=bsd
				;;
			a29khif)
				basic_machine=a29k-amd
				os=udi
				;;
			adobe68k)
				basic_machine=m68010-adobe
				os=scout
				;;
			alliant)
				basic_machine=fx80-alliant
				os=
				;;
			altos | altos3068)
				basic_machine=m68k-altos
				os=
				;;
			am29k)
				basic_machine=a29k-none
				os=bsd
				;;
			amdahl)
				basic_machine=580-amdahl
				os=sysv
				;;
			amiga)
				basic_machine=m68k-unknown
				os=
				;;
			amigaos | amigados)
				basic_machine=m68k-unknown
				os=amigaos
				;;
			amigaunix | amix)
				basic_machine=m68k-unknown
				os=sysv4
				;;
			apollo68)
				basic_machine=m68k-apollo
				os=sysv
				;;
			apollo68bsd)
				basic_machine=m68k-apollo
				os=bsd
				;;
			aros)
				basic_machine=i386-pc
				os=aros
				;;
			aux)
				basic_machine=m68k-apple
				os=aux
				;;
			balance)
				basic_machine=ns32k-sequent
				os=dynix
				;;
			blackfin)
				basic_machine=bfin-unknown
				os=linux
				;;
			cegcc)
				basic_machine=arm-unknown
				os=cegcc
				;;
			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)
				basic_machine=j90-cray
				os=unicos
				;;
			crds | unos)
				basic_machine=m68k-crds
				os=
				;;
			da30)
				basic_machine=m68k-da30
				os=
				;;
			decstation | pmax | pmin | dec3100 | decstatn)
				basic_machine=mips-dec
				os=
				;;
			delta88)
				basic_machine=m88k-motorola
				os=sysv3
				;;
			dicos)
				basic_machine=i686-pc
				os=dicos
				;;
			djgpp)
				basic_machine=i586-pc
				os=msdosdjgpp
				;;
			ebmon29k)
				basic_machine=a29k-amd
				os=ebmon
				;;
			es1800 | OSE68k | ose68k | ose | OSE)
				basic_machine=m68k-ericsson
				os=ose
				;;
			gmicro)
				basic_machine=tron-gmicro
				os=sysv
				;;
			go32)
				basic_machine=i386-pc
				os=go32
				;;
			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
				;;
			hppaosf)
				basic_machine=hppa1.1-hp
				os=osf
				;;
			hppro)
				basic_machine=hppa1.1-hp
				os=proelf
				;;
			i386mach)
				basic_machine=i386-mach
				os=mach
				;;
			vsta)
				basic_machine=i386-pc
				os=vsta
				;;
			isi68 | isi)
				basic_machine=m68k-isi
				os=sysv
				;;
			m68knommu)
				basic_machine=m68k-unknown
				os=linux
				;;
			magnum | m3230)
				basic_machine=mips-mips
				os=sysv
				;;
			merlin)
				basic_machine=ns32k-utek
				os=sysv
				;;
			mingw64)
				basic_machine=x86_64-pc
				os=mingw64
				;;
			mingw32)
				basic_machine=i686-pc
				os=mingw32
				;;
			mingw32ce)
				basic_machine=arm-unknown
				os=mingw32ce
				;;
			monitor)
				basic_machine=m68k-rom68k
				os=coff
				;;
			morphos)
				basic_machine=powerpc-unknown
				os=morphos
				;;
			moxiebox)
				basic_machine=moxie-unknown
				os=moxiebox
				;;
			msdos)
				basic_machine=i386-pc
				os=msdos
				;;
			msys)
				basic_machine=i686-pc
				os=msys
				;;
			mvs)
				basic_machine=i370-ibm
				os=mvs
				;;
			nacl)
				basic_machine=le32-unknown
				os=nacl
				;;
			ncr3000)
				basic_machine=i486-ncr
				os=sysv4
				;;
			netbsd386)
				basic_machine=i386-pc
				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
				;;
			necv70)
				basic_machine=v70-nec
				os=sysv
				;;
			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
				;;
			nonstopux)
				basic_machine=mips-compaq
				os=nonstopux
				;;
			os400)
				basic_machine=powerpc-ibm
				os=os400
				;;
			OSE68000 | ose68000)
				basic_machine=m68000-ericsson
				os=ose
				;;
			os68k)
				basic_machine=m68k-none
				os=os68k
				;;
			paragon)
				basic_machine=i860-intel
				os=osf
				;;
			parisc)
				basic_machine=hppa-unknown
				os=linux
				;;
			pw32)
				basic_machine=i586-unknown
				os=pw32
				;;
			rdos | rdos64)
				basic_machine=x86_64-pc
				os=rdos
				;;
			rdos32)
				basic_machine=i386-pc
				os=rdos
				;;
			rom68k)
				basic_machine=m68k-rom68k
				os=coff
				;;
			sa29200)
				basic_machine=a29k-amd
				os=udi
				;;
			sei)
				basic_machine=mips-sei
				os=seiux
				;;
			sequent)
				basic_machine=i386-sequent
				os=
				;;
			sps7)
				basic_machine=m68k-bull
				os=sysv2
				;;
			st2000)
				basic_machine=m68k-tandem
				os=
				;;
			stratus)
				basic_machine=i860-stratus
				os=sysv4
				;;
			sun2)
				basic_machine=m68000-sun
				os=
				;;
			sun2os3)
				basic_machine=m68000-sun
				os=sunos3
				;;
			sun2os4)
				basic_machine=m68000-sun
				os=sunos4
				;;
			sun3)
				basic_machine=m68k-sun
				os=
				;;
			sun3os3)
				basic_machine=m68k-sun
				os=sunos3
				;;
			sun3os4)
				basic_machine=m68k-sun
				os=sunos4
				;;
			sun4)
				basic_machine=sparc-sun
				os=
				;;
			sun4os3)
				basic_machine=sparc-sun
				os=sunos3
				;;
			sun4os4)
				basic_machine=sparc-sun
				os=sunos4
				;;
			sun4sol2)
				basic_machine=sparc-sun
				os=solaris2
				;;
			sun386 | sun386i | roadrunner)
				basic_machine=i386-sun
				os=
				;;
			sv1)
				basic_machine=sv1-cray
				os=unicos
				;;
			symmetry)
				basic_machine=i386-sequent
				os=dynix
				;;
			t3e)
				basic_machine=alphaev5-cray
				os=unicos
				;;
			t90)
				basic_machine=t90-cray
				os=unicos
				;;
			toad1)
				basic_machine=pdp10-xkl
				os=tops20
				;;
			tpf)
				basic_machine=s390x-ibm
				os=tpf
				;;
			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
				;;
			vxworks960)
				basic_machine=i960-wrs
				os=vxworks
				;;
			vxworks68)
				basic_machine=m68k-wrs
				os=vxworks
				;;
			vxworks29k)
				basic_machine=a29k-wrs
				os=vxworks
				;;
			xbox)
				basic_machine=i686-pc
				os=mingw32
				;;
			ymp)
				basic_machine=ymp-cray
				os=unicos
				;;
			*)
				basic_machine=$1
				os=
				;;
		esac
d241 1
a241 1
# Decode 1-component or ad-hoc basic machines
d243 92
a334 5
	# 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)
		cpu=hppa1.1
		vendor=winbond
d336 1
a336 3
	op50n)
		cpu=hppa1.1
		vendor=oki
d338 2
a339 3
	op60c)
		cpu=hppa1.1
		vendor=oki
d341 3
a343 3
	ibm*)
		cpu=i370
		vendor=ibm
d345 3
a347 3
	orion105)
		cpu=clipper
		vendor=highlevel
d349 2
a350 3
	mac | mpw | mac-mpw)
		cpu=m68k
		vendor=apple
d352 3
a354 3
	pmac | pmac-mpw)
		cpu=powerpc
		vendor=apple
d357 100
d459 4
d464 1
a464 2
		cpu=m68000
		vendor=att
d467 74
a540 2
		cpu=we32k
		vendor=att
d543 70
a612 3
		cpu=powerpc
		vendor=ibm
		os=cnk
d615 2
a616 3
		cpu=pdp10
		vendor=dec
		os=tops10
d619 2
a620 3
		cpu=pdp10
		vendor=dec
		os=tops20
d624 17
a640 2
		cpu=m68k
		vendor=motorola
d643 18
a660 3
		cpu=m68k
		vendor=bull
		os=sysv3
d663 1
a663 2
		cpu=ns32k
		vendor=encore
d665 3
a667 4
	elxsi)
		cpu=elxsi
		vendor=elxsi
		os=${os:-bsd}
d670 1
a670 2
		cpu=i860
		vendor=alliant
d673 9
a681 2
		cpu=ns32k
		vendor=ns
d684 29
a712 3
		cpu=hppa1.1
		vendor=hitachi
		os=hiuxwe2
d715 1
a715 2
		cpu=hppa1.0
		vendor=hp
d718 1
a718 2
		cpu=m68000
		vendor=hp
d721 1
a721 2
		cpu=m68k
		vendor=hp
d724 1
a724 2
		cpu=hppa1.0
		vendor=hp
d727 1
a727 2
		cpu=hppa1.1
		vendor=hp
d731 1
a731 2
		cpu=hppa1.1
		vendor=hp
d735 1
a735 2
		cpu=hppa1.1
		vendor=hp
d738 1
a738 2
		cpu=hppa1.1
		vendor=hp
d741 12
a752 2
		cpu=hppa1.0
		vendor=hp
d755 2
a756 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv32
d759 2
a760 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv4
d763 2
a764 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv
d767 10
a776 8
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=solaris2
		;;
	j90 | j90-cray)
		cpu=j90
		vendor=cray
		os=${os:-unicos}
d779 1
a779 2
		cpu=mips
		vendor=sgi
d781 1
a781 1
		    irix*)
d784 1
a784 1
			os=irix4
d788 38
d827 27
a853 2
		cpu=m68000
		vendor=convergent
d855 34
a888 4
	*mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
		cpu=m68k
		vendor=atari
		os=mint
d891 6
a896 3
		cpu=mips
		vendor=sony
		os=newsos
d899 1
a899 2
		cpu=m68k
		vendor=next
d901 1
a901 3
		    openstep*)
		        ;;
		    nextstep*)
d903 2
a904 2
		    ns2*)
		      os=nextstep2
d907 1
a907 1
		      os=nextstep3
d911 20
d932 16
a947 2
		cpu=np1
		vendor=gould
d950 17
a966 3
		cpu=hppa1.1
		vendor=oki
		os=proelf
d969 14
a982 3
		cpu=hppa1.1
		vendor=hitachi
		os=hiuxwe2
d985 1
a985 2
		cpu=sparc
		vendor=tti
d988 1
a988 2
		cpu=m68k
		vendor=tti
d990 2
a991 3
	pc532)
		cpu=ns32k
		vendor=pc532
d993 2
a994 3
	pn)
		cpu=pn
		vendor=gould
d996 2
a997 3
	power)
		cpu=power
		vendor=ibm
d999 2
a1000 3
	ps2)
		cpu=i386
		vendor=ibm
d1002 2
a1003 3
	rm[46]00)
		cpu=mips
		vendor=siemens
d1005 2
a1006 3
	rtpc | rtpc-*)
		cpu=romp
		vendor=ibm
d1008 2
a1009 4
	sde)
		cpu=mipsisa32
		vendor=sde
		os=${os:-elf}
d1011 2
a1012 4
	simso-wrs)
		cpu=sparclite
		vendor=wrs
		os=vxworks
d1014 2
a1015 3
	tower | tower-32)
		cpu=m68k
		vendor=ncr
d1017 2
a1018 3
	vpp*|vx|vx-*)
		cpu=f301
		vendor=fujitsu
d1020 2
a1021 3
	w65)
		cpu=w65
		vendor=wdc
d1023 2
a1024 4
	w89k-*)
		cpu=hppa1.1
		vendor=winbond
		os=proelf
d1026 1
a1026 3
	none)
		cpu=none
		vendor=none
d1028 1
a1028 3
	leon|leon[3-9])
		cpu=sparc
		vendor=$basic_machine
d1030 2
a1031 3
	leon-*|leon[3-9]-*)
		cpu=sparc
		vendor=`echo "$basic_machine" | sed 's/-.*//'`
d1033 2
a1034 6

	*-*)
		# shellcheck disable=SC2162
		IFS="-" read cpu vendor <<EOF
$basic_machine
EOF
d1036 2
a1037 6
	# 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*86 | x86_64)
		cpu=$basic_machine
		vendor=pc
d1039 1
a1039 5
	# These rules are duplicated from below for sake of the special case above;
	# i.e. things that normalized to x86 arches should also default to "pc"
	pc98)
		cpu=i386
		vendor=pc
d1041 1
a1041 3
	x64 | amd64)
		cpu=x86_64
		vendor=pc
d1043 2
a1044 4
	# Recognize the basic CPU types without company name.
	*)
		cpu=$basic_machine
		vendor=unknown
d1046 2
a1047 11
esac

unset -v basic_machine

# Decode basic machines in the full and proper CPU-Company form.
case $cpu-$vendor in
	# Here we handle the default manufacturer of certain CPU types in canonical form. It is in
	# some cases the only manufacturer, in others, it is the most popular.
	craynv-unknown)
		vendor=cray
		os=${os:-unicosmp}
d1049 2
a1050 3
	c90-unknown | c90-cray)
		vendor=cray
		os=${os:-unicos}
d1052 15
a1066 2
	fx80-unknown)
		vendor=alliant
d1068 2
a1069 2
	romp-unknown)
		vendor=ibm
d1071 2
a1072 2
	mmix-unknown)
		vendor=knuth
d1074 2
a1075 2
	microblaze-unknown | microblazeel-unknown)
		vendor=xilinx
d1077 2
a1078 2
	rs6000-unknown)
		vendor=ibm
d1080 3
a1082 2
	vax-unknown)
		vendor=dec
d1084 2
a1085 2
	pdp11-unknown)
		vendor=dec
d1087 2
a1088 2
	we32k-unknown)
		vendor=att
d1090 3
a1092 2
	cydra-unknown)
		vendor=cydrome
d1094 3
a1096 2
	i370-ibm*)
		vendor=ibm
d1098 2
a1099 2
	orion-unknown)
		vendor=highlevel
d1101 2
a1102 3
	xps-unknown | xps100-unknown)
		cpu=xps100
		vendor=honeywell
d1104 3
a1106 6

	# Here we normalize CPU types with a missing or matching vendor
	dpx20-unknown | dpx20-bull)
		cpu=rs6000
		vendor=bull
		os=${os:-bosx}
d1108 13
a1120 4

	# Here we normalize CPU types irrespective of the vendor
	amd64-*)
		cpu=x86_64
d1122 2
a1123 3
	blackfin-*)
		cpu=bfin
		os=linux
d1125 2
a1126 2
	c54x-*)
		cpu=tic54x
d1128 3
a1130 2
	c55x-*)
		cpu=tic55x
d1132 3
a1134 2
	c6x-*)
		cpu=tic6x
d1136 3
a1138 3
	e500v[12]-*)
		cpu=powerpc
		os=$os"spe"
d1140 3
a1142 2
	mips3*-*)
		cpu=mips64
d1144 3
a1146 2
	ms1-*)
		cpu=mt
d1148 3
a1150 3
	m68knommu-*)
		cpu=m68k
		os=linux
d1152 3
a1154 2
	m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
		cpu=s12z
d1156 2
a1157 2
	openrisc-*)
		cpu=or32
d1159 2
a1160 3
	parisc-*)
		cpu=hppa
		os=linux
d1162 2
a1163 2
	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
		cpu=i586
d1165 3
a1167 2
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
		cpu=i686
d1169 3
a1171 2
	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
		cpu=i686
d1173 3
a1175 2
	pentium4-*)
		cpu=i786
d1177 3
a1179 2
	pc98-*)
		cpu=i386
d1181 3
a1183 2
	ppc-* | ppcbe-*)
		cpu=powerpc
d1185 2
a1186 2
	ppcle-* | powerpclittle-*)
		cpu=powerpcle
d1188 2
a1189 2
	ppc64-*)
		cpu=powerpc64
d1191 3
a1193 2
	ppc64le-* | powerpc64little-*)
		cpu=powerpc64le
d1195 2
a1196 2
	sb1-*)
		cpu=mipsisa64sb1
d1198 23
a1220 2
	sb1el-*)
		cpu=mipsisa64sb1el
d1222 2
a1223 2
	sh5e[lb]-*)
		cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
d1225 15
a1239 2
	spur-*)
		cpu=spur
d1241 3
a1243 2
	strongarm-* | thumb-*)
		cpu=arm
d1245 2
a1246 2
	tx39-*)
		cpu=mipstx39
d1248 3
a1250 2
	tx39el-*)
		cpu=mipstx39el
d1252 2
a1253 2
	x64-*)
		cpu=x86_64
d1256 9
a1264 1
		cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
d1267 10
a1276 4
	# Recognize the canonical CPU Types that limit and/or modify the
	# company names they are paired with.
	cr16-*)
		os=${os:-elf}
d1278 2
a1279 3
	crisv32-* | etraxfs*-*)
		cpu=crisv32
		vendor=axis
d1281 2
a1282 3
	cris-* | etrax*-*)
		cpu=cris
		vendor=axis
d1284 2
a1285 2
	crx-*)
		os=${os:-elf}
d1287 11
a1297 3
	neo-tandem)
		cpu=neo
		vendor=tandem
d1299 2
a1300 3
	nse-tandem)
		cpu=nse
		vendor=tandem
d1302 2
a1303 3
	nsr-tandem)
		cpu=nsr
		vendor=tandem
d1305 2
a1306 3
	nsv-tandem)
		cpu=nsv
		vendor=tandem
d1308 2
a1309 3
	nsx-tandem)
		cpu=nsx
		vendor=tandem
d1311 2
a1312 7
	s390-*)
		cpu=s390
		vendor=ibm
		;;
	s390x-*)
		cpu=s390x
		vendor=ibm
d1314 2
a1315 2
	tile*-*)
		os=${os:-linux-gnu}
a1316 1

d1318 2
a1319 107
		# Recognize the canonical CPU types that are allowed with any
		# company name.
		case $cpu in
			1750a | 580 \
			| a29k \
			| aarch64 | aarch64_be \
			| abacus \
			| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
			| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
			| alphapca5[67] | alpha64pca5[67] \
			| am33_2.0 \
			| amdgcn \
			| arc | arceb \
			| arm  | arm[lb]e | arme[lb] | armv* \
			| avr | avr32 \
			| asmjs \
			| ba \
			| be32 | be64 \
			| bfin | bpf | bs2000 \
			| c[123]* | c30 | [cjt]90 | c4x \
			| c8051 | clipper | craynv | csky | cydra \
			| d10v | d30v | dlx | dsp16xx \
			| e2k | elxsi | epiphany \
			| f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
			| h8300 | h8500 \
			| hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
			| hexagon \
			| i370 | i*86 | i860 | i960 | ia16 | ia64 \
			| ip2k | iq2000 \
			| k1om \
			| le32 | le64 \
			| lm32 \
			| m32c | m32r | m32rle \
			| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
			| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
			| m88110 | m88k | maxq | mb | mcore | mep | metag \
			| microblaze | microblazeel \
			| mips | mipsbe | mipseb | mipsel | mipsle \
			| mips16 \
			| mips64 | mips64eb | mips64el \
			| mips64octeon | mips64octeonel \
			| mips64orion | mips64orionel \
			| mips64r5900 | mips64r5900el \
			| mips64vr | mips64vrel \
			| mips64vr4100 | mips64vr4100el \
			| mips64vr4300 | mips64vr4300el \
			| mips64vr5000 | mips64vr5000el \
			| mips64vr5900 | mips64vr5900el \
			| mipsisa32 | mipsisa32el \
			| mipsisa32r2 | mipsisa32r2el \
			| mipsisa32r6 | mipsisa32r6el \
			| mipsisa64 | mipsisa64el \
			| mipsisa64r2 | mipsisa64r2el \
			| mipsisa64r6 | mipsisa64r6el \
			| mipsisa64sb1 | mipsisa64sb1el \
			| mipsisa64sr71k | mipsisa64sr71kel \
			| mipsr5900 | mipsr5900el \
			| mipstx39 | mipstx39el \
			| mmix \
			| mn10200 | mn10300 \
			| moxie \
			| mt \
			| msp430 \
			| nds32 | nds32le | nds32be \
			| nfp \
			| nios | nios2 | nios2eb | nios2el \
			| none | np1 | ns16k | ns32k | nvptx \
			| open8 \
			| or1k* \
			| or32 \
			| orion \
			| picochip \
			| pdp10 | pdp11 | pj | pjl | pn | power \
			| powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
			| pru \
			| pyramid \
			| riscv | riscv32 | riscv64 \
			| rl78 | romp | rs6000 | rx \
			| score \
			| sh | shl \
			| sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
			| sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
			| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
			| sparclite \
			| sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
			| spu \
			| tahoe \
			| tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
			| tron \
			| ubicom32 \
			| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
			| vax \
			| visium \
			| w65 \
			| wasm32 | wasm64 \
			| we32k \
			| x86 | x86_64 | xc16x | xgate | xps100 \
			| xstormy16 | xtensa* \
			| ymp \
			| z8k | z80)
				;;

			*)
				echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
				exit 1
				;;
		esac
d1324 3
a1326 3
case $vendor in
	digital*)
		vendor=dec
d1328 2
a1329 2
	commodore*)
		vendor=cbm
d1337 1
a1337 1
if [ x$os != x ]
d1342 3
a1344 3
	# solaris* is a basic system type, with this one exception.
	auroraux)
		os=auroraux
d1346 1
a1346 4
	bluegene*)
		os=cnk
		;;
	solaris1 | solaris1.*)
d1349 2
a1350 2
	solaris)
		os=solaris2
d1352 2
a1353 2
	unixware*)
		os=sysv4.2uw
d1355 1
a1355 1
	gnu/linux*)
d1359 2
a1360 33
	es1800*)
		os=ose
		;;
	# Some version numbers need modification
	chorusos*)
		os=chorusos
		;;
	isc)
		os=isc2.2
		;;
	sco6)
		os=sco5v6
		;;
	sco5)
		os=sco3.2v5
		;;
	sco4)
		os=sco3.2v4
		;;
	sco3.2.[4-9]*)
		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
		;;
	sco3.2v[4-9]* | sco5v6*)
		# Don't forget version if it is 3.2v4 or newer.
		;;
	scout)
		# Don't match below
		;;
	sco*)
		os=sco3.2v2
		;;
	psos*)
		os=psos
d1365 28
a1392 29
	# sysv* is not here because it comes later, after sysvr4.
	gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
	     | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
	     | sym* | kopensolaris* | plan9* \
	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
	     | aos* | aros* | cloudabi* | sortix* \
	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
	     | knetbsd* | mirbsd* | netbsd* \
	     | bitrig* | openbsd* | solidbsd* | libertybsd* \
	     | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
	     | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
	     | chorusrdb* | cegcc* | glidix* \
	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
	     | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
	     | linux-newlib* | linux-musl* | linux-uclibc* \
	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
	     | interix* | uwin* | mks* | rhapsody* | darwin* \
	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
	     | os2* | vos* | palmos* | uclinux* | nucleus* \
	     | morphos* | superux* | rtmk* | windiss* \
	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi*)
d1395 3
a1397 3
	qnx*)
		case $cpu in
		    x86 | i*86)
d1400 1
a1400 1
			os=nto-$os
d1404 1
a1404 2
	hiux*)
		os=hiuxwe2
d1406 1
a1406 3
	nto-qnx*)
		;;
	nto*)
d1409 3
a1411 6
	sim | xray | os68k* | v88r* \
	    | windows* | osx | abug | netware* | os9* \
	    | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
		;;
	linux-dietlibc)
		os=linux-dietlibc
d1413 1
a1413 13
	linux*)
		os=`echo $os | sed -e 's|linux|linux-gnu|'`
		;;
	lynx*178)
		os=lynxos178
		;;
	lynx*5)
		os=lynxos5
		;;
	lynx*)
		os=lynxos
		;;
	mac*)
d1416 2
a1417 2
	opened*)
		os=openedition
d1419 2
a1420 2
	os400*)
		os=os400
d1422 1
a1422 1
	sunos5*)
d1425 1
a1425 1
	sunos6*)
d1428 8
a1435 2
	wince*)
		os=wince
d1437 2
a1438 2
	utek*)
		os=bsd
d1440 2
a1441 2
	dynix*)
		os=bsd
d1443 2
a1444 2
	acis*)
		os=aos
d1446 2
a1447 2
	atheos*)
		os=atheos
d1449 2
a1450 2
	syllable*)
		os=syllable
d1452 2
a1453 2
	386bsd)
		os=bsd
d1455 2
a1456 2
	ctix* | uts*)
		os=sysv
d1458 2
a1459 2
	nova*)
		os=rtmk-nova
d1461 2
a1462 2
	ns2)
		os=nextstep2
d1464 2
a1465 2
	nsk*)
		os=nsk
d1468 1
a1468 1
	sinix5.*)
d1471 2
a1472 2
	sinix*)
		os=sysv4
d1474 2
a1475 2
	tpf*)
		os=tpf
d1477 2
a1478 2
	triton*)
		os=sysv3
d1480 2
a1481 2
	oss*)
		os=sysv3
d1483 2
a1484 2
	svr4*)
		os=sysv4
d1486 2
a1487 2
	svr3)
		os=sysv3
d1489 2
a1490 2
	sysvr4)
		os=sysv4
d1492 2
a1493 2
	# This must come after sysvr4.
	sysv*)
d1495 2
a1496 2
	ose*)
		os=ose
d1498 2
a1499 2
	*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
		os=mint
d1501 2
a1502 2
	zvmoe)
		os=zvmoe
d1504 2
a1505 2
	dicos*)
		os=dicos
d1507 1
a1507 1
	pikeos*)
d1511 1
a1511 1
		case $cpu in
d1513 1
a1513 1
			os=eabi
d1516 1
a1516 1
			os=elf
d1520 1
a1520 3
	nacl*)
		;;
	ios)
d1522 1
a1522 1
	none)
d1524 1
a1524 1
	*-eabi)
d1527 2
d1545 1
a1545 1
case $cpu-$vendor in
d1547 1
a1547 1
		os=elf
d1550 1
a1550 1
		os=elf
d1553 1
a1553 1
		os=riscix1.2
d1556 1
a1556 1
		os=linux
d1559 1
a1559 1
		os=aout
d1562 1
a1562 1
		os=coff
d1565 1
a1565 4
		os=elf
		;;
	clipper-intergraph)
		os=clix
d1568 1
a1568 1
		os=elf
d1571 1
a1571 1
		os=coff
d1574 1
a1574 1
		os=coff
d1577 1
a1577 1
		os=coff
d1581 1
a1581 1
		os=tops20
d1584 1
a1584 1
		os=none
d1587 1
a1587 1
		os=ultrix4.2
d1590 1
a1590 1
		os=domain
d1593 1
a1593 1
		os=sunos4.0.2
d1596 1
a1596 1
		os=sunos3
d1599 1
a1599 1
		os=aout
d1602 1
a1602 1
		os=elf
d1605 1
a1605 1
		os=elf
d1608 1
a1608 1
		os=elf
d1611 1
a1611 1
		os=coff
d1614 1
a1614 1
		os=sysv3
d1617 1
a1617 1
		os=sunos4.1.1
d1620 1
a1620 1
		os=elf
d1623 1
a1623 1
		os=beos
d1626 1
a1626 1
		os=aix
d1629 1
a1629 1
		os=mmixware
d1632 1
a1632 1
		os=proelf
d1635 1
a1635 1
		os=proelf
d1638 1
a1638 1
		os=proelf
d1641 1
a1641 1
		os=hpux
d1644 1
a1644 1
		os=hiux
d1647 1
a1647 1
		os=sysv
d1650 1
a1650 1
		os=amigaos
d1653 1
a1653 1
		os=dgux
d1656 1
a1656 1
		os=sysv3
d1659 1
a1659 1
		os=rtu
d1662 1
a1662 1
		os=luna
d1665 1
a1665 1
		os=nextstep
d1668 1
a1668 1
		os=ptx
d1671 1
a1671 1
		os=unos
d1674 1
a1674 1
		os=genix
d1677 1
a1677 1
		os=mvs
d1680 1
a1680 1
		os=sysv
d1683 1
a1683 1
		os=bsd
d1686 1
a1686 1
		os=bsd
d1689 1
a1689 1
		os=irix
d1692 1
a1692 1
		os=sysv4
d1695 1
a1695 1
		os=rtu
d1698 1
a1698 1
		os=uxpv
d1701 1
a1701 1
		os=coff
d1704 1
a1704 1
		os=coff
d1707 1
a1707 1
		os=macos
d1710 1
a1710 4
		os=mint
		;;
	*-wrs)
		os=vxworks
d1713 1
a1713 1
		os=none
d1720 3
a1722 2
case $vendor in
	unknown)
d1724 1
a1724 1
			riscix*)
d1727 1
a1727 1
			sunos*)
d1730 1
a1730 1
			cnk*|-aix*)
d1733 1
a1733 1
			beos*)
d1736 1
a1736 1
			hpux*)
d1739 1
a1739 1
			mpeix*)
d1742 1
a1742 1
			hiux*)
d1745 1
a1745 1
			unos*)
d1748 1
a1748 1
			dgux*)
d1751 1
a1751 1
			luna*)
d1754 1
a1754 1
			genix*)
d1757 1
a1757 4
			clix*)
				vendor=intergraph
				;;
			mvs* | opened*)
d1760 1
a1760 1
			os400*)
d1763 1
a1763 1
			ptx*)
d1766 1
a1766 1
			tpf*)
d1769 1
a1769 1
			vxsim* | vxworks* | windiss*)
d1772 1
a1772 1
			aux*)
d1775 1
a1775 1
			hms*)
d1778 1
a1778 1
			mpw* | macos*)
d1781 1
a1781 1
			*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
d1784 1
a1784 1
			vos*)
d1788 1
d1792 1
a1792 1
echo "$cpu-$vendor-$os"
d1796 1
a1796 1
# eval: (add-hook 'before-save-hook 'time-stamp)
@


1.3.4.1
log
@Sync with HEAD, resolve a few conflicts
@
text
@d3 1
a3 1
#   Copyright 1992-2018 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2018-01-15'
d18 1
a18 1
# along with this program; if not, see <https://www.gnu.org/licenses/>.
d36 1
a36 1
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d60 1
a60 1
Options:
d70 1
a70 1
Copyright 1992-2018 Free Software Foundation, Inc.
d97 1
a97 1
       echo "$1"
d115 1
a115 1
maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
d123 1
a123 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
d127 1
a127 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
d130 3
a132 3
    basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
    if [ "$basic_machine" != "$1" ]
    then os=`echo "$1" | sed 's/.*-/-/'`
d181 1
a181 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d185 1
a185 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d189 1
a189 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d193 1
a193 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d197 1
a197 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d201 1
a201 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d205 1
a205 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d208 1
a208 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d212 1
a212 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d218 1
a218 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d230 4
a233 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
d266 1
a266 1
	| i370 | i860 | i960 | ia16 | ia64 \
d302 1
a302 1
	| pdp10 | pj | pjl \
d318 1
a318 1
	| wasm32 \
d339 1
a339 1
	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
d368 1
a368 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d391 1
a391 1
	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
a448 1
	| wasm32-* \
d462 1
a462 1
		basic_machine=i386-pc
d496 1
a496 1
		basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d541 1
a541 1
		basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d549 1
a549 1
		basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d552 1
a552 1
		basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d555 1
a555 1
		basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d644 1
a644 1
	dpx2*)
d653 1
a653 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d745 3
d760 1
a760 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d764 1
a764 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d768 1
a768 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d772 1
a772 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d779 1
a779 1
	vsta)
d798 1
a798 1
		basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
d805 1
a805 1
		basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d808 3
d842 1
a842 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
d845 1
a845 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
d864 1
a864 1
		basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
d906 1
a906 1
	next | m*-next)
a950 3
	nsv-tandem)
		basic_machine=nsv-tandem
		;;
d986 1
a986 1
		basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1002 1
a1002 1
		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1017 1
a1017 1
		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1020 1
a1020 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1023 1
a1023 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1026 1
a1026 1
		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1036 1
a1036 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1042 1
a1042 1
		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1046 1
a1046 1
	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1052 1
a1052 1
		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1106 4
d1113 4
a1116 1
	simso-wrs)
d1135 1
a1135 1
		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
a1256 3
	x64)
		basic_machine=x86_64-pc
		;;
d1265 1
a1265 1
		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
d1271 8
d1307 4
d1320 3
d1342 1
a1342 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d1350 1
a1350 1
		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
d1353 1
a1353 1
		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
d1364 2
a1365 2
	# First match some system type aliases that might get confused
	# with valid system types.
d1376 3
d1385 1
a1385 5
	# es1800 is here to avoid being matched by es* (a different OS)
	-es1800*)
		os=-ose
		;;
	# Now accept the basic system types.
d1387 1
a1387 1
	# Each alternative MUST end in a * to match a version number.
d1397 1
a1397 1
	      | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
d1408 1
a1408 1
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
d1412 1
a1412 1
	      | -morphos* | -superux* | -rtmk* | -windiss* \
d1415 1
a1415 1
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme*)
d1432 2
a1433 2
	-sim | -xray | -os68k* | -v88r* \
	      | -windows* | -osx | -abug | -netware* | -os9* \
d1437 1
a1437 1
		os=`echo "$os" | sed -e 's|mac|macos|'`
d1446 1
a1446 1
		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
d1449 1
a1449 1
		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
d1460 6
d1490 1
a1490 1
	-ns2)
d1512 1
a1512 1
	-svr4*)
d1527 6
d1536 3
a1544 13
	-pikeos*)
		# Until real need of OS specific support for
		# particular features comes up, bare metal
		# configurations are quite functional.
		case $basic_machine in
		    arm*)
			os=-eabi
			;;
		    *)
			os=-elf
			;;
		esac
		;;
d1554 1
a1554 1
		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
d1650 3
d1692 1
a1692 1
	*-next)
d1707 3
d1819 1
a1819 1
		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
d1823 1
a1823 1
echo "$basic_machine$os"
d1827 1
a1827 1
# eval: (add-hook 'write-file-functions 'time-stamp)
@


1.2
log
@Update supporting files for components which rely on autoconf to allow systems
introducing since release of software to be recognised. This should hopefully
allow the builds to progress a littles further on systems such as the POWER8
which features a little endian 64-bit PowerPC CPU identified as ppc64le.
@
text
@d5 1
a5 1
timestamp='2017-01-01'
d951 3
@


1.2.4.1
log
@Pull up following revision(s) (requested by jmcneill in ticket #114):
	doc/3RDPARTY: 1.1445
	external/bsd/byacc/bin/Makefile: up to 1.7
	external/bsd/byacc/byacc2netbsd: up to 1.5
	external/bsd/byacc/dist/CHANGES: up to 1.1.1.8
	external/bsd/byacc/dist/MANIFEST: up to 1.1.1.4
	external/bsd/byacc/dist/VERSION: up to 1.1.1.8
	external/bsd/byacc/dist/btyaccpar.c: up to 1.4
	external/bsd/byacc/dist/btyaccpar.skel: up to 1.4
	external/bsd/byacc/dist/config.guess: up to 1.3
	external/bsd/byacc/dist/config.sub: up to 1.3
	external/bsd/byacc/dist/defs.h: up to 1.12
	external/bsd/byacc/dist/main.c: up to 1.14
	external/bsd/byacc/dist/output.c: up to 1.18
	external/bsd/byacc/dist/package/byacc.spec: up to 1.1.1.7
	external/bsd/byacc/dist/package/debian/changelog: up to 1.1.1.7
	external/bsd/byacc/dist/package/mingw-byacc.spec: up to 1.1.1.4
	external/bsd/byacc/dist/package/pkgsrc/Makefile: up to 1.1.1.7
	external/bsd/byacc/dist/test/btyacc/btyacc_calc1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/btyacc_demo.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/btyacc_destroy1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/btyacc_destroy2.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/btyacc_destroy3.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/calc.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/calc1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/calc2.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/calc3.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/code_calc.code.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/code_error.code.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/empty.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_inherit3.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_inherit4.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_syntax10.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_syntax11.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_syntax12.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_syntax18.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/err_syntax20.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/error.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/expr.oxout.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/grammar.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/inherit0.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/inherit1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/inherit2.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/ok_syntax1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/pure_calc.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/pure_error.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc-s.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc2-s.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc2.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc3-s.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc3.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc4-s.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/quote_calc4.tab.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/rename_debug.c: up to 1.3
	external/bsd/byacc/dist/test/btyacc/varsyntax_calc1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/yacc/big_l.output: up to 1.1.1.2
	external/bsd/byacc/dist/test/yacc/calc3.tab.c: up to 1.3
	external/bsd/byacc/dist/test/yacc/ok_syntax1.tab.c: up to 1.3
	external/bsd/byacc/dist/test/yacc/pure_calc.tab.c: up to 1.3
	external/bsd/byacc/dist/test/yacc/pure_error.tab.c: up to 1.3
	external/bsd/byacc/dist/yaccpar.c: up to 1.5
	external/bsd/byacc/dist/yaccpar.skel: up to 1.1.1.5
Import byacc 20170430.
@
text
@d5 1
a5 1
timestamp='2017-02-07'
a950 3
	nsx-tandem)
		basic_machine=nsx-tandem
		;;
@


1.1
log
@Initial revision
@
text
@d3 7
a9 13
#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
#   Free Software Foundation, Inc.

timestamp='2009-08-19'

# 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
d12 4
a15 4
# 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.
d18 1
a18 3
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
# 02110-1301, USA.
d23 3
a25 1
# the same distribution terms that you use for the rest of that program.
d28 1
a28 2
# Please send patches to <config-patches@@gnu.org>.  Submit a context
# diff and a properly formatted GNU ChangeLog entry.
d36 1
a36 1
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
d56 1
a56 2
Usage: $0 [OPTION] CPU-MFR-OPSYS
       $0 [OPTION] ALIAS
d70 1
a70 2
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
d117 4
a120 3
  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
  kopensolaris*-gnu* | \
d125 4
d151 1
a151 1
	-apple | -axis | -knuth | -cray | -microblaze)
d155 2
a156 2
        -bluegene*)
	        os=-cnk
d172 2
a173 2
 	-chorusrdb)
 		os=-chorusrdb
d175 1
a175 1
 		;;
d220 6
d250 1
d254 5
a258 1
	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
d260 1
a260 1
	| c4x | clipper \
d262 2
a263 1
	| fido | fr30 | frv \
d265 1
d268 2
d272 1
a272 1
	| maxq | mb | microblaze | mcore | mep | metag \
d286 1
d289 1
d292 1
d298 2
a299 1
	| nios | nios2 \
d301 1
a301 1
	| or32 \
d303 2
a304 1
	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
d306 2
d309 1
a309 1
	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
d313 5
a317 3
	| spu | strongarm \
	| tahoe | thumb | tic4x | tic80 | tron \
	| v850 | v850e \
d319 1
a319 1
	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
d323 13
a335 2
	m6811 | m68hc11 | m6812 | m68hc12)
		# Motorola 68HC11/12.
d345 15
d374 1
d377 1
a377 1
	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
d380 2
d383 2
a384 2
	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
	| clipper-* | craynv-* | cydra-* \
d386 1
a386 1
	| elxsi-* \
d390 1
d393 2
d398 2
a399 1
	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
d413 1
d416 1
d419 1
d424 2
a425 1
	| nios-* | nios2-* \
d427 2
d431 2
a432 1
	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
d434 2
a435 1
	| romp-* | rs6000-* \
d440 4
a443 3
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
	| tahoe-* | thumb-* \
	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
d445 4
a448 1
	| v850-* | v850e-* | vax-* \
d450 1
a450 1
	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
d475 1
a475 1
    	abacus)
d525 3
d548 9
d561 1
a561 1
        cegcc)
d593 1
a593 1
	cr16)
d648 8
a758 1
# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
d797 3
d819 1
a819 1
        microblaze)
d822 4
d827 1
a827 1
		basic_machine=i386-pc
d855 4
d866 4
d874 4
d942 6
d1030 1
a1030 1
	ppc)	basic_machine=powerpc-unknown
d1032 2
a1033 1
	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
d1035 1
a1035 1
	ppcle | powerpclittle | ppc-le | powerpc-little)
d1045 1
a1045 1
	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
d1058 5
a1062 1
	rdos)
d1131 3
a1189 12
	tic54x | c54x*)
		basic_machine=tic54x-unknown
		os=-coff
		;;
	tic55x | c55x*)
		basic_machine=tic55x-unknown
		os=-coff
		;;
	tic6x | c6x*)
		basic_machine=tic6x-unknown
		os=-coff
		;;
d1191 1
a1191 1
		basic_machine=tile-unknown
d1261 3
d1361 2
a1362 2
        # First match some system type aliases
        # that might get confused with valid system types.
d1364 3
d1388 2
a1389 2
	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
	      | -kopensolaris* \
d1391 1
a1391 1
	      | -aos* | -aros* \
d1395 1
a1395 1
	      | -openbsd* | -solidbsd* \
d1400 5
a1404 4
	      | -chorusos* | -chorusrdb* | -cegcc* \
	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
	      | -uxpv* | -beos* | -mpeix* | -udk* \
d1411 2
a1412 1
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
d1451 1
a1451 1
        -os400*)
d1500 1
a1500 1
        -tpf*)
a1535 3
	-kaos*)
		os=-kaos
		;;
d1542 4
d1568 1
a1568 1
        score-*)
d1571 1
a1571 1
        spu-*)
d1583 17
a1599 2
        c4x-* | tic4x-*)
        	os=-coff
a1618 3
		# This also exists in the configure program, but was not the
		# default.
		# os=-sunos4
d1623 1
a1623 1
        mep-*)
d1641 3
d1653 1
a1653 1
    	*-knuth)
@


1.1.1.1
log
@from http://invisible-island.net/byacc/byacc.html
@
text
@@


1.1.1.2
log
@import latest byacc
@
text
@d4 1
a4 1
#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
d7 1
a7 1
timestamp='2009-12-31'
d78 2
a79 3
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
Software Foundation, Inc.
a289 1
	| rx \
a296 1
	| ubicom32 \
d303 1
a303 1
	m6811 | m68hc11 | m6812 | m68hc12 | picochip)
d374 1
a374 1
	| romp-* | rs6000-* | rx-* \
a382 1
	| ubicom32-* \
a1255 3
        -auroraux)
	        os=-auroraux
		;;
d1277 2
a1278 2
	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
	      | -sym* | -kopensolaris* \
d1299 1
a1299 1
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
a1431 2
        -nacl*)
	        ;;
@


1.1.1.3
log
@Import byacc 20110908
@
text
@d5 1
a5 1
#   2011 Free Software Foundation, Inc.
d7 1
a7 1
timestamp='2011-04-01'
d79 2
a80 2
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
d127 2
a128 3
  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
  knetbsd*-gnu* | netbsd*-gnu* | \
d160 2
a161 2
	-bluegene*)
		os=-cnk
d177 2
a178 2
	-chorusrdb)
		os=-chorusrdb
d180 1
a180 1
		;;
a284 1
	| nds32 | nds32le | nds32be \
a286 1
	| open8 \
d289 1
a289 1
	| powerpc | powerpc64 | powerpc64le | powerpcle \
d297 2
a298 2
	| spu \
	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
d302 1
a302 1
	| x86 | xc16x | xstormy16 | xtensa \
a305 9
	c54x)
		basic_machine=tic54x-unknown
		;;
	c55x)
		basic_machine=tic55x-unknown
		;;
	c6x)
		basic_machine=tic6x-unknown
		;;
d316 1
a316 9
	strongarm | thumb | xscale)
		basic_machine=arm-unknown
		;;
	xscaleeb)
		basic_machine=armeb-unknown
		;;
	xscaleel)
		basic_machine=armel-unknown
		;;
d321 2
a322 2
		basic_machine=$basic_machine-pc
		;;
d337 1
a337 1
	| c[123]* | c30-* | [cjt]90-* | c4x-* \
a370 1
	| nds32-* | nds32le-* | nds32be-* \
a372 1
	| open8-* \
d375 1
a375 1
	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
d382 3
a384 4
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
	| tahoe-* \
	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
	| tile-* | tilegx-* \
d389 1
a389 1
	| x86-* | x86_64-* | xc16x-* | xps100-* \
d414 1
a414 1
	abacus)
a483 9
	c54x-*)
		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
		;;
	c55x-*)
		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
		;;
	c6x-*)
		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
		;;
d488 1
a488 1
	cegcc)
d520 1
a520 1
	cr16 | cr16-*)
d736 1
a736 1
	microblaze)
d807 1
a807 1
	next | m*-next)
d810 1
a810 1
		    -nextstep*)
a842 6
	neo-tandem)
		basic_machine=neo-tandem
		;;
	nse-tandem)
		basic_machine=nse-tandem
		;;
d923 1
a923 2
	power)
		basic_machine=power-ibm
d925 1
a925 2
	ppc | ppcbe)
		basic_machine=powerpc-unknown
d927 1
a927 2
	ppc-* | ppcbe-*)
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
d935 1
a935 2
	ppc64)
		basic_machine=powerpc64-unknown
d937 1
a937 2
	ppc64-*)
		basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
a1020 3
	strongarm-* | thumb-*)
		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
		;;
d1077 11
a1087 4
	# This must be matched before tile*.
	tilegx*)
		basic_machine=tilegx-unknown
		os=-linux-gnu
a1159 3
	xscale-* | xscalee[bl]-*)
		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
		;;
d1257 2
a1258 2
	# First match some system type aliases
	# that might get confused with valid system types.
d1260 2
a1261 2
	-auroraux)
		os=-auroraux
d1298 1
a1298 2
	      | -mingw32* | -linux-gnu* | -linux-android* \
	      | -linux-newlib* | -linux-uclibc* \
d1345 1
a1345 1
	-os400*)
d1381 1
a1381 1
	-ns2)
d1394 1
a1394 1
	-tpf*)
d1439 2
a1440 2
	-nacl*)
		;;
d1463 1
a1463 1
	score-*)
d1466 1
a1466 1
	spu-*)
d1478 2
a1479 11
	c4x-* | tic4x-*)
		os=-coff
		;;
	tic54x-*)
		os=-coff
		;;
	tic55x-*)
		os=-coff
		;;
	tic6x-*)
		os=-coff
d1506 1
a1506 1
	mep-*)
d1533 1
a1533 1
	*-knuth)
d1569 1
a1569 1
	*-next)
@


1.1.1.3.2.1
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d3 13
a15 7
#   Copyright 1992-2013 Free Software Foundation, Inc.

timestamp='2013-02-04'

# 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 3 of the License, or
d18 4
a21 4
# 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.
d24 3
a26 1
# along with this program; if not, see <http://www.gnu.org/licenses/>.
d31 1
a31 3
# the same distribution terms that you use for the rest of that
# program.  This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
d34 2
a35 1
# Please send patches with a ChangeLog entry to config-patches@@gnu.org.
d78 3
a80 1
Copyright 1992-2013 Free Software Foundation, Inc.
d128 1
a128 1
  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
a134 4
  android-linux)
    os=-linux-android
    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
    ;;
d157 1
a157 1
	-apple | -axis | -knuth | -cray | -microblaze*)
a225 6
	-lynx*178)
		os=-lynxos178
		;;
	-lynx*5)
		os=-lynxos5
		;;
a249 1
	| aarch64 | aarch64_be \
d253 1
a253 4
	| arc \
	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
	| avr | avr32 \
	| be32 | be64 \
a256 1
	| epiphany \
a258 1
	| hexagon \
a260 1
	| le32 | le64 \
d263 1
a263 1
	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
a280 1
	| mipsr5900 | mipsr5900el \
d287 1
a287 1
	| nios | nios2 | nios2eb | nios2el \
d294 1
a294 1
	| rl78 | rx \
d303 1
a303 1
	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
d318 2
a319 1
	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
a327 1

a330 4
	xgate)
		basic_machine=$basic_machine-unknown
		os=-none
		;;
a333 1

a336 1

d341 2
a342 2
	  basic_machine=$basic_machine-pc
	  ;;
a350 1
	| aarch64-* | aarch64_be-* \
a355 1
	| be32-* | be64-* \
a363 1
	| hexagon-* \
a365 1
	| le32-* | le64-* \
d369 1
a369 2
	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
	| microblaze-* | microblazeel-* \
a386 1
	| mipsr5900-* | mipsr5900el-* \
d392 1
a392 1
	| nios-* | nios2-* | nios2eb-* | nios2el-* \
d399 1
a399 1
	| rl78-* | romp-* | rs6000-* | rx-* \
d407 1
a407 1
	| tile*-* \
d410 1
a410 2
	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
	| vax-* \
d710 1
d768 1
a768 1
	microblaze*)
a770 4
	mingw64)
		basic_machine=x86_64-pc
		os=-mingw64
		;;
a806 4
	msys)
		basic_machine=i386-pc
		os=-msys
		;;
a810 4
	nacl)
		basic_machine=le32-unknown
		os=-nacl
		;;
d839 1
a839 1
	next | m*-next )
d842 1
a842 1
		    -nextstep* )
d961 2
a962 1
	power)	basic_machine=power-ibm
d964 2
a965 1
	ppc | ppcbe)	basic_machine=powerpc-unknown
d976 2
a977 1
	ppc64)	basic_machine=powerpc64-unknown
d979 2
a980 1
	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
d995 1
a995 5
	rdos | rdos64)
		basic_machine=x86_64-pc
		os=-rdos
		;;
	rdos32)
d1123 5
d1129 1
a1129 1
		basic_machine=$basic_machine-unknown
d1327 1
a1327 1
	      | -sym* | -kopensolaris* | -plan9* \
d1333 1
a1333 1
	      | -bitrig* | -openbsd* | -solidbsd* \
d1339 3
a1341 3
	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
d1424 1
a1424 1
	-ns2 )
d1473 3
a1523 3
	hexagon-*)
		os=-elf
		;;
d1551 3
d1621 1
a1621 1
	*-next )
@


1.1.1.3.8.1
log
@resync from head
@
text
@d3 13
a15 7
#   Copyright 1992-2013 Free Software Foundation, Inc.

timestamp='2013-02-04'

# 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 3 of the License, or
d18 4
a21 4
# 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.
d24 3
a26 1
# along with this program; if not, see <http://www.gnu.org/licenses/>.
d31 1
a31 3
# the same distribution terms that you use for the rest of that
# program.  This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
d34 2
a35 1
# Please send patches with a ChangeLog entry to config-patches@@gnu.org.
d78 3
a80 1
Copyright 1992-2013 Free Software Foundation, Inc.
d128 1
a128 1
  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
a134 4
  android-linux)
    os=-linux-android
    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
    ;;
d157 1
a157 1
	-apple | -axis | -knuth | -cray | -microblaze*)
a225 6
	-lynx*178)
		os=-lynxos178
		;;
	-lynx*5)
		os=-lynxos5
		;;
a249 1
	| aarch64 | aarch64_be \
d253 1
a253 4
	| arc \
	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
	| avr | avr32 \
	| be32 | be64 \
a256 1
	| epiphany \
a258 1
	| hexagon \
a260 1
	| le32 | le64 \
d263 1
a263 1
	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
a280 1
	| mipsr5900 | mipsr5900el \
d287 1
a287 1
	| nios | nios2 | nios2eb | nios2el \
d294 1
a294 1
	| rl78 | rx \
d303 1
a303 1
	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
d318 2
a319 1
	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
a327 1

a330 4
	xgate)
		basic_machine=$basic_machine-unknown
		os=-none
		;;
a333 1

a336 1

d341 2
a342 2
	  basic_machine=$basic_machine-pc
	  ;;
a350 1
	| aarch64-* | aarch64_be-* \
a355 1
	| be32-* | be64-* \
a363 1
	| hexagon-* \
a365 1
	| le32-* | le64-* \
d369 1
a369 2
	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
	| microblaze-* | microblazeel-* \
a386 1
	| mipsr5900-* | mipsr5900el-* \
d392 1
a392 1
	| nios-* | nios2-* | nios2eb-* | nios2el-* \
d399 1
a399 1
	| rl78-* | romp-* | rs6000-* | rx-* \
d407 1
a407 1
	| tile*-* \
d410 1
a410 2
	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
	| vax-* \
d710 1
d768 1
a768 1
	microblaze*)
a770 4
	mingw64)
		basic_machine=x86_64-pc
		os=-mingw64
		;;
a806 4
	msys)
		basic_machine=i386-pc
		os=-msys
		;;
a810 4
	nacl)
		basic_machine=le32-unknown
		os=-nacl
		;;
d839 1
a839 1
	next | m*-next )
d842 1
a842 1
		    -nextstep* )
d961 2
a962 1
	power)	basic_machine=power-ibm
d964 2
a965 1
	ppc | ppcbe)	basic_machine=powerpc-unknown
d976 2
a977 1
	ppc64)	basic_machine=powerpc64-unknown
d979 2
a980 1
	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
d995 1
a995 5
	rdos | rdos64)
		basic_machine=x86_64-pc
		os=-rdos
		;;
	rdos32)
d1123 5
d1129 1
a1129 1
		basic_machine=$basic_machine-unknown
d1327 1
a1327 1
	      | -sym* | -kopensolaris* | -plan9* \
d1333 1
a1333 1
	      | -bitrig* | -openbsd* | -solidbsd* \
d1339 3
a1341 3
	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
d1424 1
a1424 1
	-ns2 )
d1473 3
a1523 3
	hexagon-*)
		os=-elf
		;;
d1551 3
d1621 1
a1621 1
	*-next )
@


1.1.1.4
log
@Import byacc 20130304
@
text
@d3 13
a15 7
#   Copyright 1992-2013 Free Software Foundation, Inc.

timestamp='2013-02-04'

# 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 3 of the License, or
d18 4
a21 4
# 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.
d24 3
a26 1
# along with this program; if not, see <http://www.gnu.org/licenses/>.
d31 1
a31 3
# the same distribution terms that you use for the rest of that
# program.  This Exception is an additional permission under section 7
# of the GNU General Public License, version 3 ("GPLv3").
d34 2
a35 1
# Please send patches with a ChangeLog entry to config-patches@@gnu.org.
d78 3
a80 1
Copyright 1992-2013 Free Software Foundation, Inc.
d128 1
a128 1
  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
a134 4
  android-linux)
    os=-linux-android
    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
    ;;
d157 1
a157 1
	-apple | -axis | -knuth | -cray | -microblaze*)
a225 6
	-lynx*178)
		os=-lynxos178
		;;
	-lynx*5)
		os=-lynxos5
		;;
a249 1
	| aarch64 | aarch64_be \
d253 1
a253 4
	| arc \
	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
	| avr | avr32 \
	| be32 | be64 \
a256 1
	| epiphany \
a258 1
	| hexagon \
a260 1
	| le32 | le64 \
d263 1
a263 1
	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \
a280 1
	| mipsr5900 | mipsr5900el \
d287 1
a287 1
	| nios | nios2 | nios2eb | nios2el \
d294 1
a294 1
	| rl78 | rx \
d303 1
a303 1
	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
d318 2
a319 1
	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
a327 1

a330 4
	xgate)
		basic_machine=$basic_machine-unknown
		os=-none
		;;
a333 1

a336 1

d341 2
a342 2
	  basic_machine=$basic_machine-pc
	  ;;
a350 1
	| aarch64-* | aarch64_be-* \
a355 1
	| be32-* | be64-* \
a363 1
	| hexagon-* \
a365 1
	| le32-* | le64-* \
d369 1
a369 2
	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
	| microblaze-* | microblazeel-* \
a386 1
	| mipsr5900-* | mipsr5900el-* \
d392 1
a392 1
	| nios-* | nios2-* | nios2eb-* | nios2el-* \
d399 1
a399 1
	| rl78-* | romp-* | rs6000-* | rx-* \
d407 1
a407 1
	| tile*-* \
d410 1
a410 2
	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
	| vax-* \
d710 1
d768 1
a768 1
	microblaze*)
a770 4
	mingw64)
		basic_machine=x86_64-pc
		os=-mingw64
		;;
a806 4
	msys)
		basic_machine=i386-pc
		os=-msys
		;;
a810 4
	nacl)
		basic_machine=le32-unknown
		os=-nacl
		;;
d839 1
a839 1
	next | m*-next )
d842 1
a842 1
		    -nextstep* )
d961 2
a962 1
	power)	basic_machine=power-ibm
d964 2
a965 1
	ppc | ppcbe)	basic_machine=powerpc-unknown
d976 2
a977 1
	ppc64)	basic_machine=powerpc64-unknown
d979 2
a980 1
	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
d995 1
a995 5
	rdos | rdos64)
		basic_machine=x86_64-pc
		os=-rdos
		;;
	rdos32)
d1123 5
d1129 1
a1129 1
		basic_machine=$basic_machine-unknown
d1327 1
a1327 1
	      | -sym* | -kopensolaris* | -plan9* \
d1333 1
a1333 1
	      | -bitrig* | -openbsd* | -solidbsd* \
d1339 3
a1341 3
	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
d1424 1
a1424 1
	-ns2 )
d1473 3
a1523 3
	hexagon-*)
		os=-elf
		;;
d1551 3
d1621 1
a1621 1
	*-next )
@


1.1.1.5
log
@Import byacc 20141128
@
text
@d3 1
a3 1
#   Copyright 1992-2014 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2014-07-28'
d71 1
a71 1
Copyright 1992-2014 Free Software Foundation, Inc.
d255 1
a255 1
	| arc | arceb \
d260 1
a260 1
	| c4x | c8051 | clipper \
a267 1
	| k1om \
a284 1
	| mipsisa32r6 | mipsisa32r6el \
a286 1
	| mipsisa64r6 | mipsisa64r6el \
d298 2
a299 1
	| open8 | or1k | or1knd | or32 \
d327 1
a327 1
	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
d369 1
a369 1
	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
d375 1
a375 1
	| c8051-* | clipper-* | craynv-* | cydra-* \
a383 1
	| k1om-* \
a402 1
	| mipsisa32r6-* | mipsisa32r6el-* \
a404 1
	| mipsisa64r6-* | mipsisa64r6el-* \
a415 1
	| or1k*-* \
d797 1
a797 1
		basic_machine=i686-pc
a824 4
	moxiebox)
		basic_machine=moxie-unknown
		os=-moxiebox
		;;
d833 1
a833 1
		basic_machine=i686-pc
d1370 1
a1370 1
	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
d1377 1
a1377 1
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
a1548 3
	c8051-*)
		os=-elf
		;;
@


1.1.1.6
log
@Import byacc 20150711
@
text
@d3 1
a3 1
#   Copyright 1992-2015 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2015-03-08'
d28 1
a28 1
# Please send patches to <config-patches@@gnu.org>.
d71 1
a71 1
Copyright 1992-2015 Free Software Foundation, Inc.
d120 1
a120 1
  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
d262 2
a263 2
	| e2k | epiphany \
	| fido | fr30 | frv | ft32 \
a304 1
	| riscv32 | riscv64 \
a314 1
	| visium \
a328 3
	leon|leon[3-9])
		basic_machine=sparc-$basic_machine
		;;
d379 1
a379 1
	| e2k-* | elxsi-* \
a438 1
	| visium-* \
a514 3
        asmjs)
		basic_machine=asmjs-unknown
		;;
a775 3
	leon-*|leon[3-9]-*)
		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
		;;
d1367 1
a1367 1
	      | -aos* | -aros* | -cloudabi* \
@


1.1.1.6.4.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
#   Copyright 1992-2017 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2017-01-01'
d36 1
a36 1
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d56 2
a57 1
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
d71 1
a71 1
Copyright 1992-2017 Free Software Foundation, Inc.
d121 1
a121 1
  kopensolaris*-gnu* | cloudabi*-eabi* | \
a257 1
	| ba \
a303 1
	| pru \
d308 1
a308 1
	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
a378 1
	| ba-* \
a429 1
	| pru-* \
a430 1
	| riscv32-* | riscv64-* \
d436 1
a436 1
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
d521 1
a521 1
	asmjs)
a643 8
	e500v[12])
		basic_machine=powerpc-unknown
		os=$os"spe"
		;;
	e500v[12]-*)
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
		os=$os"spe"
		;;
d1023 1
a1023 1
	ppcle | powerpclittle)
d1033 1
a1033 1
	ppc64le | powerpc64little)
d1379 1
a1379 1
	      | -aos* | -aros* | -cloudabi* | -sortix* \
d1383 1
a1383 1
	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
d1388 1
a1388 1
	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
d1390 1
a1390 1
	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
d1399 1
a1399 2
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
a1530 2
	-ios)
		;;
a1625 3
	pru-*)
		os=-elf
		;;
@


1.1.1.6.2.1
log
@Sync with HEAD
@
text
@d3 1
a3 1
#   Copyright 1992-2017 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2017-01-01'
d36 1
a36 1
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d56 2
a57 1
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
d71 1
a71 1
Copyright 1992-2017 Free Software Foundation, Inc.
d121 1
a121 1
  kopensolaris*-gnu* | cloudabi*-eabi* | \
a257 1
	| ba \
a303 1
	| pru \
d308 1
a308 1
	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
a378 1
	| ba-* \
a429 1
	| pru-* \
a430 1
	| riscv32-* | riscv64-* \
d436 1
a436 1
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
d521 1
a521 1
	asmjs)
a643 8
	e500v[12])
		basic_machine=powerpc-unknown
		os=$os"spe"
		;;
	e500v[12]-*)
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
		os=$os"spe"
		;;
d1023 1
a1023 1
	ppcle | powerpclittle)
d1033 1
a1033 1
	ppc64le | powerpc64little)
d1379 1
a1379 1
	      | -aos* | -aros* | -cloudabi* | -sortix* \
d1383 1
a1383 1
	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
d1388 1
a1388 1
	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
d1390 1
a1390 1
	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
d1399 1
a1399 2
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
a1530 2
	-ios)
		;;
a1625 3
	pru-*)
		os=-elf
		;;
@


1.1.1.7
log
@2017-02-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/expr.oxout.error, test/btyacc/expr.oxout.output, test/btyacc/expr.oxout.tab.c, test/btyacc/expr.oxout.tab.h, test/yacc/expr.oxout.error, test/yacc/expr.oxout.output, test/yacc/expr.oxout.tab.c, test/yacc/expr.oxout.tab.h:
	RCS_BASE

	* package/debian/copyright: update copyright

	* reader.c, defs.h, main.c:
	avoid using regex.h since some low-end platforms do not have this

	* test/expr.oxout.y: RCS_BASE

	* configure: regen

	* aclocal.m4: quiet a strict gcc warning in CF_MKSTEMP

2017-02-01  Tom.Shields

	* main.c, reader.c, defs.h:
	process #line directives, like bison and flex

2017-02-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2016-12-31  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2017-01-01

2016-12-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/quote_calc4-s.tab.c, test/btyacc/varsyntax_calc1.tab.c, test/btyacc/error.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/rename_debug.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, btyaccpar.c:
	regen

	* btyaccpar.skel: changes from NetBSD
	+ use YYINT rather than short in btyaccpar.skel
	  (some of this had already been done by Tom Shields)
	+ remove some casts of malloc/realloc

	* yaccpar.c, yaccpar.skel, output.c: changes from NetBSD
	- Add some more bison stuff to make the mesa/gallium parser work:
	    %initial-action (add missing source struct member in location)
	    %debug (unimplemented)
	    %error-verbose (unimplemented)

	This changes some existing code:
	+ yylloc is now a pointer, so
	+ the first parameter to YYERROR_DECL() is a pointer
	+ struct YYLTYPE now has a "source" field

	* test/btyacc/btyacc_demo.tab.h, test/btyacc/code_calc.tab.c, test/btyacc/code_error.tab.c, test/btyacc/err_inherit4.tab.h:
	regen

	* btyaccpar.c, btyaccpar.skel, reader.c: changes from NetBSD
	- Add some more bison stuff to make the mesa/gallium parser work:
	    %initial-action (add missing source struct member in location)
	    %debug (unimplemented)
	    %error-verbose (unimplemented)

	This changes some existing code:
	+ yylloc is now a pointer, so
	+ the first parameter to YYERROR_DECL() is a pointer
	+ struct YYLTYPE now has a "source" field

	* reader.c:
	fix from NetBSD: correct off-by-one when adding a null in copy_param()

	* reader.c: adapted from NetBSD
	- Convert *most* error fingerprints to:
	    -unterminated_arglist(int a_lineno, char *a_line, char *a_cptr)
	    +unterminated_arglist(const struct ainfo *a)
	- Cast new <ctype.h> args to unsigned char

	* defs.h: changes from NetBSD
	- Add some more bison stuff to make the mesa/gallium parser work:
	    %initial-action (add missing source struct member in location)
	    %debug (unimplemented)
	    %error-verbose (unimplemented)

	This changes some existing code:
	+ yylloc is now a pointer, so
	+ the first parameter to YYERROR_DECL() is a pointer
	+ struct YYLTYPE now has a "source" field

	* defs.h: adapted from NetBSD
	- Convert *most* error fingerprints to:
	    -unterminated_arglist(int a_lineno, char *a_line, char *a_cptr)
	    +unterminated_arglist(const struct ainfo *a)
	- Cast new <ctype.h> args to unsigned char

	* main.c: changes from NetBSD
	- Add some more bison stuff to make the mesa/gallium parser work:
	    %initial-action (add missing source struct member in location)
	    %debug (unimplemented)
	    %error-verbose (unimplemented)

	This changes some existing code:
	+ yylloc is now a pointer, so
	+ the first parameter to YYERROR_DECL() is a pointer
	+ struct YYLTYPE now has a "source" field

	* error.c: adapted from NetBSD
	- Convert *most* error fingerprints to:
	    -unterminated_arglist(int a_lineno, char *a_line, char *a_cptr)
	    +unterminated_arglist(const struct ainfo *a)
	- Cast new <ctype.h> args to unsigned char

	* mstring.c: adapted change from NetBSD to add casts for ctype macros

	* test/btyacc/btyacc_demo.tab.h, test/btyacc/err_inherit4.tab.h: regen

	* output.c: reorder to eliminate a forward-reference

2016-12-02  Tom.Shields

	* output.c:
	modify output to enable compilation of a lexer generated by flex (using
	"%option bison-bridge" and "%option bison-locations") to be used with a parser
	generated by b(t)yacc (using directives "%locations" and "%pure-parser").

2016-12-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: Improved autoconf macros
	CF_CC_ENV_FLAGS
	+ improve split between compiler and options, prompted by report where user
	  had "ccache" before the compiler
	+ leave non-preprocessor options in "$CC" (but still copy them to "$CFLAGS"
	  since that's where they should be)
	CF_GNU_SOURCE,v
	+ recent glibc (Debian 2.23-4 for example) has misordered ifdef/checks for new
	  symbol _DEFAULT_SOURCE, producing warning messages when only _GNU_SOURCE is
	  defined.  Add a followup check to define _DEFAULT_SOURCE.
	CF_XOPEN_SOURCE
	+ add "uclinux" to list of Linux's (patch by Yann E.  Morin)
	+ use _GNU_SOURCE for cygwin headers
	+ build-fixes for OS/2

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2016-11-20  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2016-11-19

	* config.guess: 2016-10-02

2016-06-06  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: improved autoconf macros:
	CF_CC_ENV_FLAGS - don't limit the check to -I, -U and -D options, since the
		added options can include various compiler options before and after
		preprocessor options.
	CF_PROG_LINT - add cpplint to programs to use; drop ad hoc tdlint and alint.

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* lalr.c: indented

	* btyaccpar.c: regen

	* skel2c:
	adjust whitespace so that generated skeleton will follow the same format
	as other code

	* mkpar.c, verbose.c, lr0.c, reader.c, error.c, output.c: indented

	* reader.c: fix two compiler warnings

	* test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/varsyntax_calc1.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/rename_debug.c, btyaccpar.c, test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c, test/yacc/varsyntax_calc1.tab.c, test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c, test/yacc/grammar.tab.c, test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c, test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c, test/yacc/quote_calc.tab.c, test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c, test/yacc/calc3.tab.c, test/yacc/code_calc.code.c, test/yacc/code_error.code.c, test/yacc/empty.tab.c, test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c, test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c, test/yacc/rename_debug.c, yaccpar.c:
	regen

2016-06-06  Tom.Shields

	* btyaccpar.skel, yaccpar.skel:
	small fix for an edge case of initialized data in Chris Dodd's btyacc changes:
	"Avoid crash when input pops up an Action error at the first token"

2016-06-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c, test/yacc/varsyntax_calc1.tab.c, test/yacc/err_syntax18.tab.c, test/yacc/err_syntax20.tab.c, test/yacc/err_syntax24.error, test/yacc/error.tab.c, test/yacc/grammar.tab.c, test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c, test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c, test/yacc/quote_calc.tab.c, test/yacc/quote_calc2.tab.c, test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c, test/yacc/calc3.tab.c, test/yacc/code_calc.code.c, test/yacc/code_calc.tab.c, test/yacc/code_calc.tab.h, test/yacc/code_error.code.c, test/yacc/empty.tab.c, test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c, test/yacc/err_syntax12.tab.c, test/yacc/rename_debug.c, yaccpar.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/varsyntax_calc1.tab.c, test/btyacc/err_syntax13.tab.c, test/btyacc/err_syntax14.tab.c, test/btyacc/err_syntax15.tab.c, test/btyacc/err_syntax16.tab.c, test/btyacc/err_syntax17.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax19.tab.c, test/btyacc/err_syntax2.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/err_syntax21.tab.c, test/btyacc/err_syntax22.tab.c, test/btyacc/err_syntax23.tab.c, test/btyacc/err_syntax24.error, test/btyacc/err_syntax24.tab.c, test/btyacc/err_syntax25.tab.c, test/btyacc/err_syntax26.tab.c, test/btyacc/err_syntax27.tab.c, test/btyacc/err_syntax3.tab.c, test/btyacc/err_syntax4.tab.c, test/btyacc/err_syntax5.tab.c, test/btyacc/err_syntax6.tab.c, test/btyacc/err_syntax7.tab.c, test/btyacc/err_syntax7a.tab.c, test/btyacc/err_syntax7b.tab.c, test/btyacc/err_syntax8.tab.c, test/btyacc/err_syntax8a.tab.c, test/btyacc/err_syntax9.tab.c, test/btyacc/error.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.output, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.error, test/btyacc/btyacc_demo.output, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_calc.tab.c, test/btyacc/code_calc.tab.h, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit1.tab.c, test/btyacc/err_inherit2.tab.c, test/btyacc/err_inherit3.output, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.output, test/btyacc/err_inherit4.tab.c, test/btyacc/err_inherit5.tab.c, test/btyacc/err_syntax1.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/rename_debug.c, btyaccpar.c:
	regen

2016-06-01  Tom.Shields

	* btyaccpar.skel, defs.h, error.c, output.c, reader.c, test/code_calc.y, test/err_inherit4.y, test/run_make.sh, yaccpar.skel:
	fixes for issues in btyacc (report by Francis Andre):

	+ correction to the placement of the #line directive for a %union specification

	+ recovery of a set of casts originally added into btyaccpar.c rather than into
	  btyaccpar.skel, and so are lost whenever building from scratch

	+ Chris Dodd's btyacc improved handling of inherited attributes to eliminate
	  implicit empty copy rules that are not necessary, and thereby avoiding the
	  introduction of extra parsing ambiguity

	+ Chris Dodd's added support for @@-N syntax to reference inherited position
	  information

	+ correction to bad interaction between %token-table and YYDEBUG, where YYDEBUG
	  was required to be defined in order to compile the generated code

	+ correction to yyname[] access in code included with YYDEBUG defined for
	  single character symbols not recognized (e.g., input containing '&' character
	  where grammar doesn't define that as a symbol) - map to existing
	  "illegal-symbol" entry in byname[]

	+ fixes to test/run_make.sh:  skip test-err_* files; in the bison test phase
	  skip additional files that contain features not supported by bison and
	  inhibit new bison warning messages

	+ minor changes to btyaccpar.skel & yaccpar.skel so they are more similar in
	  their commonality; makes it easier to maintain the pair of files using
	  vimdiff

	+ changes to a couple of test cases for coverage of #3, #4 and #5 above

2016-06-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2016-03-24  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: unused variable

	* package/pkgsrc/Makefile, package/debian/copyright: bump

2016-03-24  Jung-uk.Kim

	* main.c:
	correct logic for finding output suffix in the "-o" option, which matched
	the first occurrence of ".c" in the name in 2005-08-13 changes rather than
	at the end of the filename (patch by Jung-uk Kim)

2016-03-24  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4:
	update CF_WITH_MAN2HTML to use configured shell rather than /bin/sh

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2016-01-25  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2016-01-01
@
text
@d3 1
a3 1
#   Copyright 1992-2017 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2017-01-01'
d36 1
a36 1
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d56 2
a57 1
Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
d71 1
a71 1
Copyright 1992-2017 Free Software Foundation, Inc.
d121 1
a121 1
  kopensolaris*-gnu* | cloudabi*-eabi* | \
a257 1
	| ba \
a303 1
	| pru \
d308 1
a308 1
	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
a378 1
	| ba-* \
a429 1
	| pru-* \
a430 1
	| riscv32-* | riscv64-* \
d436 1
a436 1
	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
d521 1
a521 1
	asmjs)
a643 8
	e500v[12])
		basic_machine=powerpc-unknown
		os=$os"spe"
		;;
	e500v[12]-*)
		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
		os=$os"spe"
		;;
d1023 1
a1023 1
	ppcle | powerpclittle)
d1033 1
a1033 1
	ppc64le | powerpc64little)
d1379 1
a1379 1
	      | -aos* | -aros* | -cloudabi* | -sortix* \
d1383 1
a1383 1
	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
d1388 1
a1388 1
	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
d1390 1
a1390 1
	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
d1399 1
a1399 2
	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*)
a1530 2
	-ios)
		;;
a1625 3
	pru-*)
		os=-elf
		;;
@


1.1.1.8
log
@Import byacc 20170430
@
text
@d5 1
a5 1
timestamp='2017-02-07'
a950 3
	nsx-tandem)
		basic_machine=nsx-tandem
		;;
@


1.1.1.9
log
@2018-06-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* yacc.1: minor typographical fixes

	* test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c, test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/varsyntax_calc1.tab.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/rename_debug.c, btyaccpar.c:
	regen

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2018-06-09  Tom.Shields

	* btyaccpar.skel:
	add casts to fix g++ (clang++) compile errors in the backtracking skeleton
	due to assignment of ‘void *’ to another pointer type.

2018-05-25  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/run_make.sh:
	check if this is bison 3+ before adding options to suppress warnings

	* package/byacc.spec: build-fix for Mageia 6

	* package/byacc.spec: add btyacc package

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* package/debian/control: add a package for btyacc

	* package/debian/rules: generate a package for btyacc

2018-05-24  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/varsyntax_calc1.tab.c, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c, test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, btyaccpar.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/rename_debug.c:
	regen

	* btyaccpar.skel: fix typo

2018-05-21  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/run_make.sh:
	ignore case for "%" directives to skip with old-yacc, and add %token-table
	to the list

	* btyaccpar.c: regen

2018-05-21  Christos.Zoulas

	* btyaccpar.skel:
	improve compatibility with bison by changing the YYLLOC_DEFAULT macro to use
	YYRHSLOC() macro, and adjusting the array indices of yyerror_loc_range[] for
	consistency.

2018-05-10  Thomas E. Dickey  <dickey@@invisible-island.net>

	* output.c:
	add a fallback definition for YYDEBUG to the -i externs file.

	* test/btyacc/rename_debug.i, test/yacc/rename_debug.i: regen

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2018-05-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* test/btyacc/rename_debug.i, btyaccpar.c, test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c, test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/rename_debug.c, test/btyacc/varsyntax_calc1.tab.c:
	regen

	* btyaccpar.skel: apply Guy Harris' changes here as well

	* test/btyacc/rename_debug.i, test/yacc/rename_debug.i: regen

	* output.c: correct/improve fallback prototype for yylex()

	* test/btyacc/rename_debug.i, test/yacc/rename_debug.i: regen

2018-05-08  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/grammar.tab.c, test/yacc/grammar.tab.c: regen

	* test/grammar.y:
	quiet some warnings from gcc 7 when doing "make check_make"

	* package/debian/watch, package/pkgsrc/Makefile: update ftp-url

	* test/btyacc/ok_syntax1.tab.h, test/btyacc/btyacc_calc1.tab.h: regen

	* output.c:
	provide yylex() declaration for simple case (request by "Mutiny")

	* test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c, test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c, test/yacc/ok_syntax1.tab.c, test/yacc/ok_syntax1.tab.h, test/yacc/pure_calc.tab.c, test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c, test/yacc/quote_calc.tab.c, test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c, test/yacc/varsyntax_calc1.tab.c, test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c, test/yacc/calc3.tab.c, test/yacc/code_calc.code.c, test/yacc/code_error.code.c, test/yacc/empty.tab.c, test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c, test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c, test/yacc/rename_debug.c, test/yacc/rename_debug.i, yaccpar.c:
	regen

	* VERSION, package/byacc.spec, package/debian/changelog, package/debian/copyright, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2018-05-06  Guy.Harris

	* yaccpar.skel: two fixes:
	1) define yydebug only if YYDEBUG is defined and
	2) make yynerrs a parser-local variable if the parser is reentrant.

2018-02-24  Guy.Harris

	* output.c: do not emit "extern YYSTYPE yylval;" for pure parsers

2018-02-05  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2018-01-15

	* config.guess: 2018-01-26

2017-12-04  erik.b.andersen

	* main.c: A proper path for temporary files is needed by byacc under
	Windows commandline, otherwise there's a risk of empty files.
	The TEMP environment variable is always defined in Windows.

	* defs.h: The noreturn attribute needs to be specified before function
	to be portable among compilers (gcc, clang, msvc).

2017-12-04  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: adapted fix by Erik B:
	 a) increase the length of name[] to account for a trailing null
	 b) note that calling syntax_error() from get_number() does not return

2017-09-14  Tom.Shields

	* yacc.1: fix typo

2017-07-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/byacc.spec, package/mingw-byacc.spec:
	use predefined "configure"

	* reader.c: remove unused assignment

	* package/debian/rules: use dpkg-buildflags

	* configure: regen

	* aclocal.m4: resync with my-autoconf

	* reader.c, output.c, defs.h:
	add/use IS_NAME1() and IS_NAME2() to reduce clutter

	* reader.c, output.c, defs.h:
	guard against sign-extension in ctype-macros

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* reader.c: check for numeric overflow in get_number()

	* reader.c:
	correct limit-checks for input filename and line-number, in case no valid
	filename and/or number was found.
@
text
@d3 1
a3 1
#   Copyright 1992-2018 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2018-01-15'
d18 1
a18 1
# along with this program; if not, see <https://www.gnu.org/licenses/>.
d36 1
a36 1
# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
d60 1
a60 1
Options:
d70 1
a70 1
Copyright 1992-2018 Free Software Foundation, Inc.
d97 1
a97 1
       echo "$1"
d115 1
a115 1
maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
d123 1
a123 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
d127 1
a127 1
    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
d130 3
a132 3
    basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
    if [ "$basic_machine" != "$1" ]
    then os=`echo "$1" | sed 's/.*-/-/'`
d181 1
a181 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d185 1
a185 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d189 1
a189 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d193 1
a193 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d197 1
a197 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d201 1
a201 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d205 1
a205 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d208 1
a208 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d212 1
a212 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d218 1
a218 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
d230 4
a233 1
		basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
d266 1
a266 1
	| i370 | i860 | i960 | ia16 | ia64 \
d302 1
a302 1
	| pdp10 | pj | pjl \
d318 1
a318 1
	| wasm32 \
d339 1
a339 1
	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
d368 1
a368 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d391 1
a391 1
	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
a448 1
	| wasm32-* \
d462 1
a462 1
		basic_machine=i386-pc
d496 1
a496 1
		basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d541 1
a541 1
		basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d549 1
a549 1
		basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d552 1
a552 1
		basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d555 1
a555 1
		basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d644 1
a644 1
	dpx2*)
d653 1
a653 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d745 3
d760 1
a760 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d764 1
a764 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d768 1
a768 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d772 1
a772 1
		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
d779 1
a779 1
	vsta)
d798 1
a798 1
		basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
d805 1
a805 1
		basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d808 3
d842 1
a842 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
d845 1
a845 1
		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
d864 1
a864 1
		basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
d906 1
a906 1
	next | m*-next)
a950 3
	nsv-tandem)
		basic_machine=nsv-tandem
		;;
d986 1
a986 1
		basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1002 1
a1002 1
		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1017 1
a1017 1
		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1020 1
a1020 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1023 1
a1023 1
		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1026 1
a1026 1
		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1036 1
a1036 1
		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1042 1
a1042 1
		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1046 1
a1046 1
	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1052 1
a1052 1
		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
d1106 4
d1113 4
a1116 1
	simso-wrs)
d1135 1
a1135 1
		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
a1256 3
	x64)
		basic_machine=x86_64-pc
		;;
d1265 1
a1265 1
		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
d1271 8
d1307 4
d1320 3
d1342 1
a1342 1
		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
d1350 1
a1350 1
		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
d1353 1
a1353 1
		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
d1364 2
a1365 2
	# First match some system type aliases that might get confused
	# with valid system types.
d1376 3
d1385 1
a1385 5
	# es1800 is here to avoid being matched by es* (a different OS)
	-es1800*)
		os=-ose
		;;
	# Now accept the basic system types.
d1387 1
a1387 1
	# Each alternative MUST end in a * to match a version number.
d1397 1
a1397 1
	      | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
d1408 1
a1408 1
	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
d1412 1
a1412 1
	      | -morphos* | -superux* | -rtmk* | -windiss* \
d1415 1
a1415 1
	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme*)
d1432 2
a1433 2
	-sim | -xray | -os68k* | -v88r* \
	      | -windows* | -osx | -abug | -netware* | -os9* \
d1437 1
a1437 1
		os=`echo "$os" | sed -e 's|mac|macos|'`
d1446 1
a1446 1
		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
d1449 1
a1449 1
		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
d1460 6
d1490 1
a1490 1
	-ns2)
d1512 1
a1512 1
	-svr4*)
d1527 6
d1536 3
a1544 13
	-pikeos*)
		# Until real need of OS specific support for
		# particular features comes up, bare metal
		# configurations are quite functional.
		case $basic_machine in
		    arm*)
			os=-eabi
			;;
		    *)
			os=-elf
			;;
		esac
		;;
d1554 1
a1554 1
		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
d1650 3
d1692 1
a1692 1
	*-next)
d1707 3
d1819 1
a1819 1
		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
d1823 1
a1823 1
echo "$basic_machine$os"
d1827 1
a1827 1
# eval: (add-hook 'write-file-functions 'time-stamp)
@


1.1.1.10
log
@2019-06-17  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/big_b.error, test/btyacc/big_l.error, test/btyacc/help.error, test/btyacc/no_b_opt.error, test/btyacc/no_output2.error, test/btyacc/no_p_opt.error, test/btyacc/nostdin.error, test/yacc/big_b.error, test/yacc/big_l.error, test/yacc/help.error, test/yacc/no_b_opt.error, test/yacc/no_output2.error, test/yacc/no_p_opt.error, test/yacc/nostdin.error:
	regen

	* test/run_test.sh: test "-H" rather than "-D"

2019-06-16  Thomas E. Dickey  <dickey@@invisible-island.net>

	* main.c, yacc.1:
	change "-D" option to "-H" (discussion with Ethan Sommer)

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c, test/btyacc/defines3.calc.c:
	RCS_BASE

	* test/run_test.sh: in test_defines, save the ".c" file too

	* test/yacc/defines3.calc.c, test/yacc/defines2.calc.c, test/yacc/defines1.calc.c:
	RCS_BASE

	* test/run_test.sh:
	output of test_defines should be a header ".h", not ".c"

	* test/btyacc/defines1.calc.h, test/btyacc/defines1.error, test/btyacc/defines1.output, test/btyacc/defines2.calc.h, test/btyacc/defines2.error, test/btyacc/defines2.output, test/btyacc/defines3.calc.h, test/btyacc/defines3.error, test/btyacc/defines3.output:
	RCS_BASE

	* main.c: however, a subsequent -d cancels -D

	* test/yacc/defines1.calc.h, test/yacc/defines3.calc.h: RCS_BASE

	* main.c: -D option implies -d

	* test/yacc/defines1.error, test/yacc/defines1.output, test/yacc/defines2.calc.h, test/yacc/defines2.error, test/yacc/defines2.output, test/yacc/defines3.error, test/yacc/defines3.output:
	RCS_BASE

	* yacc.1: align macro definitions with my other manpages

	* test/run_test.sh: add test for -D after -d or -b options

	* test/btyacc/stdin1.calc.c, test/btyacc/stdin1.error, test/btyacc/stdin1.output, test/btyacc/stdin2.calc.c, test/btyacc/stdin2.error, test/btyacc/stdin2.output:
	RCS_BASE

	* test/btyacc/big_b.error, test/btyacc/big_b.output, test/btyacc/big_l.error, test/btyacc/big_l.output, test/btyacc/help.error, test/btyacc/help.output, test/btyacc/no_b_opt.error, test/btyacc/no_b_opt.output, test/btyacc/no_b_opt1.error, test/btyacc/no_b_opt1.output, test/btyacc/no_code_c.error, test/btyacc/no_code_c.output, test/btyacc/no_defines.error, test/btyacc/no_defines.output, test/btyacc/no_graph.error, test/btyacc/no_graph.output, test/btyacc/no_include.error, test/btyacc/no_include.output, test/btyacc/no_opts.error, test/btyacc/no_opts.output, test/btyacc/no_output.error, test/btyacc/no_output.output, test/btyacc/no_output1.error, test/btyacc/no_output1.output, test/btyacc/no_output2.error, test/btyacc/no_output2.output, test/btyacc/no_p_opt.error, test/btyacc/no_p_opt.output, test/btyacc/no_p_opt1.error, test/btyacc/no_p_opt1.output, test/btyacc/no_verbose.error, test/btyacc/no_verbose.output, test/btyacc/nostdin.error, test/btyacc/nostdin.output, test/yacc/big_b.error, test/yacc/big_b.output, test/yacc/big_l.error, test/yacc/big_l.output, test/yacc/help.error, test/yacc/help.output, test/yacc/no_b_opt.error, test/yacc/no_b_opt.output, test/yacc/no_b_opt1.error, test/yacc/no_b_opt1.output, test/yacc/no_code_c.error, test/yacc/no_code_c.output, test/yacc/no_defines.error, test/yacc/no_defines.output, test/yacc/no_graph.error, test/yacc/no_graph.output, test/yacc/no_include.error, test/yacc/no_include.output, test/yacc/no_opts.error, test/yacc/no_opts.output, test/yacc/no_output.error, test/yacc/no_output.output, test/yacc/no_output1.error, test/yacc/no_output1.output, test/yacc/no_output2.error, test/yacc/no_output2.output, test/yacc/no_p_opt.error, test/yacc/no_p_opt.output, test/yacc/no_p_opt1.error, test/yacc/no_p_opt1.output, test/yacc/no_verbose.error, test/yacc/no_verbose.output, test/yacc/nostdin.error, test/yacc/nostdin.output:
	regen

	* test/run_test.sh:
	add a test for stdin "-" vs end-options "--", and correct a redirection
	of stderr in test_flags

	* test/yacc/stdin2.output, test/yacc/stdin2.calc.c, test/yacc/stdin1.calc.c, test/yacc/stdin1.error, test/yacc/stdin1.output, test/yacc/stdin2.error:
	RCS_BASE

	* test/btyacc/big_b.output, test/btyacc/big_l.output, test/btyacc/help.output, test/btyacc/no_b_opt.output, test/btyacc/no_output2.output, test/btyacc/no_p_opt.output, test/btyacc/nostdin.output, test/yacc/big_b.output, test/yacc/big_l.output, test/yacc/help.output, test/yacc/no_b_opt.output, test/yacc/no_output2.output, test/yacc/no_p_opt.output, test/yacc/nostdin.output:
	regen

	* main.c: add -D option, to specify filename vs y.tab.h for -d

	* defs.h: add dflag2, for -D option

	* yacc.1: document -D option

	* config_h.in: updated with autoheader-252

	* configure: regen

	* package/debian/copyright: bump

	* aclocal.m4: add CF_GETOPT_HEADER

	* aclocal.m4: Improved autoconf macros:
	+ CF_CC_ENV_FLAGS
		putting preprocessor flags in CFLAGS also is a nuisance, which can be
		addressed in the same way.
	+ CF_GCC_WARNINGS
		factor out workaround for XTSTRINGDEFINES as CF_CONST_X_STRING
	+ CF_GNU_SOURCE
		The check for _DEFAULT_SOURCE should apply to "recent" Cygwin (since early 2016),
		and except for "NEWLIB" vs "GLIBC" in the test, acts the same if I pretend
		that "newlib" is the GNU C library.  Without this, the check falls through
		to the _XOPEN_SOURCE test, which breaks the pseudoterminal checks for xterm.
	+ CF_POSIX_C_SOURCE
		add/use CF_POSIX_VISIBLE
	+ CF_TRY_XOPEN_SOURCE
		use CF_APPEND_TEXT
	+ CF_WITH_MAN2HTML
		use sed to work around non-POSIX tail utility
	+ CF_XOPEN_SOURCE
		use CF_APPEND_TEXT
		add/use CF_POSIX_VISIBLE

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2019-06-10  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2019-06-10

2019-05-22  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2019-05-22
@
text
@d3 1
a3 1
#   Copyright 1992-2019 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2019-05-23'
d70 1
a70 1
Copyright 1992-2019 Free Software Foundation, Inc.
d92 1
a92 1
       echo "$me: invalid option $1$help" >&2
d113 112
a224 11
# Split fields of configuration type
# shellcheck disable=SC2162
IFS="-" read field1 field2 field3 field4 <<EOF
$1
EOF

# Separate into logical components for further validation
case $1 in
	*-*-*-*-*)
		echo Invalid configuration \`"$1"\': more than four components >&2
		exit 1
d226 2
a227 3
	*-*-*-*)
		basic_machine=$field1-$field2
		os=$field3-$field4
d229 2
a230 22
	*-*-*)
		# Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
		# parts
		maybe_os=$field2-$field3
		case $maybe_os in
			nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
			| linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
			| uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
			| netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
			| storm-chaos* | os2-emx* | rtmk-nova*)
				basic_machine=$field1
				os=$maybe_os
				;;
			android-linux)
				basic_machine=$field1-unknown
				os=linux-android
				;;
			*)
				basic_machine=$field1-$field2
				os=$field3
				;;
		esac
d232 2
a233 35
	*-*)
		# A lone config we happen to match not fitting any pattern
		case $field1-$field2 in
			decstation-3100)
				basic_machine=mips-dec
				os=
				;;
			*-*)
				# Second component is usually, but not always the OS
				case $field2 in
					# Prevent following clause from handling this valid os
					sun*os*)
						basic_machine=$field1
						os=$field2
						;;
					# Manufacturers
					dec* | mips* | sequent* | encore* | pc533* | 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 | axis | knuth | cray \
					| microblaze* | sim | cisco \
					| oki | wec | wrs | winbond)
						basic_machine=$field1-$field2
						os=
						;;
					*)
						basic_machine=$field1
						os=$field2
						;;
				esac
			;;
		esac
d235 3
a237 452
	*)
		# Convert single-component short-hands not valid as part of
		# multi-component configurations.
		case $field1 in
			386bsd)
				basic_machine=i386-pc
				os=bsd
				;;
			a29khif)
				basic_machine=a29k-amd
				os=udi
				;;
			adobe68k)
				basic_machine=m68010-adobe
				os=scout
				;;
			alliant)
				basic_machine=fx80-alliant
				os=
				;;
			altos | altos3068)
				basic_machine=m68k-altos
				os=
				;;
			am29k)
				basic_machine=a29k-none
				os=bsd
				;;
			amdahl)
				basic_machine=580-amdahl
				os=sysv
				;;
			amiga)
				basic_machine=m68k-unknown
				os=
				;;
			amigaos | amigados)
				basic_machine=m68k-unknown
				os=amigaos
				;;
			amigaunix | amix)
				basic_machine=m68k-unknown
				os=sysv4
				;;
			apollo68)
				basic_machine=m68k-apollo
				os=sysv
				;;
			apollo68bsd)
				basic_machine=m68k-apollo
				os=bsd
				;;
			aros)
				basic_machine=i386-pc
				os=aros
				;;
			aux)
				basic_machine=m68k-apple
				os=aux
				;;
			balance)
				basic_machine=ns32k-sequent
				os=dynix
				;;
			blackfin)
				basic_machine=bfin-unknown
				os=linux
				;;
			cegcc)
				basic_machine=arm-unknown
				os=cegcc
				;;
			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)
				basic_machine=j90-cray
				os=unicos
				;;
			crds | unos)
				basic_machine=m68k-crds
				os=
				;;
			da30)
				basic_machine=m68k-da30
				os=
				;;
			decstation | pmax | pmin | dec3100 | decstatn)
				basic_machine=mips-dec
				os=
				;;
			delta88)
				basic_machine=m88k-motorola
				os=sysv3
				;;
			dicos)
				basic_machine=i686-pc
				os=dicos
				;;
			djgpp)
				basic_machine=i586-pc
				os=msdosdjgpp
				;;
			ebmon29k)
				basic_machine=a29k-amd
				os=ebmon
				;;
			es1800 | OSE68k | ose68k | ose | OSE)
				basic_machine=m68k-ericsson
				os=ose
				;;
			gmicro)
				basic_machine=tron-gmicro
				os=sysv
				;;
			go32)
				basic_machine=i386-pc
				os=go32
				;;
			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
				;;
			hppaosf)
				basic_machine=hppa1.1-hp
				os=osf
				;;
			hppro)
				basic_machine=hppa1.1-hp
				os=proelf
				;;
			i386mach)
				basic_machine=i386-mach
				os=mach
				;;
			vsta)
				basic_machine=i386-pc
				os=vsta
				;;
			isi68 | isi)
				basic_machine=m68k-isi
				os=sysv
				;;
			m68knommu)
				basic_machine=m68k-unknown
				os=linux
				;;
			magnum | m3230)
				basic_machine=mips-mips
				os=sysv
				;;
			merlin)
				basic_machine=ns32k-utek
				os=sysv
				;;
			mingw64)
				basic_machine=x86_64-pc
				os=mingw64
				;;
			mingw32)
				basic_machine=i686-pc
				os=mingw32
				;;
			mingw32ce)
				basic_machine=arm-unknown
				os=mingw32ce
				;;
			monitor)
				basic_machine=m68k-rom68k
				os=coff
				;;
			morphos)
				basic_machine=powerpc-unknown
				os=morphos
				;;
			moxiebox)
				basic_machine=moxie-unknown
				os=moxiebox
				;;
			msdos)
				basic_machine=i386-pc
				os=msdos
				;;
			msys)
				basic_machine=i686-pc
				os=msys
				;;
			mvs)
				basic_machine=i370-ibm
				os=mvs
				;;
			nacl)
				basic_machine=le32-unknown
				os=nacl
				;;
			ncr3000)
				basic_machine=i486-ncr
				os=sysv4
				;;
			netbsd386)
				basic_machine=i386-pc
				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
				;;
			necv70)
				basic_machine=v70-nec
				os=sysv
				;;
			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
				;;
			nonstopux)
				basic_machine=mips-compaq
				os=nonstopux
				;;
			os400)
				basic_machine=powerpc-ibm
				os=os400
				;;
			OSE68000 | ose68000)
				basic_machine=m68000-ericsson
				os=ose
				;;
			os68k)
				basic_machine=m68k-none
				os=os68k
				;;
			paragon)
				basic_machine=i860-intel
				os=osf
				;;
			parisc)
				basic_machine=hppa-unknown
				os=linux
				;;
			pw32)
				basic_machine=i586-unknown
				os=pw32
				;;
			rdos | rdos64)
				basic_machine=x86_64-pc
				os=rdos
				;;
			rdos32)
				basic_machine=i386-pc
				os=rdos
				;;
			rom68k)
				basic_machine=m68k-rom68k
				os=coff
				;;
			sa29200)
				basic_machine=a29k-amd
				os=udi
				;;
			sei)
				basic_machine=mips-sei
				os=seiux
				;;
			sequent)
				basic_machine=i386-sequent
				os=
				;;
			sps7)
				basic_machine=m68k-bull
				os=sysv2
				;;
			st2000)
				basic_machine=m68k-tandem
				os=
				;;
			stratus)
				basic_machine=i860-stratus
				os=sysv4
				;;
			sun2)
				basic_machine=m68000-sun
				os=
				;;
			sun2os3)
				basic_machine=m68000-sun
				os=sunos3
				;;
			sun2os4)
				basic_machine=m68000-sun
				os=sunos4
				;;
			sun3)
				basic_machine=m68k-sun
				os=
				;;
			sun3os3)
				basic_machine=m68k-sun
				os=sunos3
				;;
			sun3os4)
				basic_machine=m68k-sun
				os=sunos4
				;;
			sun4)
				basic_machine=sparc-sun
				os=
				;;
			sun4os3)
				basic_machine=sparc-sun
				os=sunos3
				;;
			sun4os4)
				basic_machine=sparc-sun
				os=sunos4
				;;
			sun4sol2)
				basic_machine=sparc-sun
				os=solaris2
				;;
			sun386 | sun386i | roadrunner)
				basic_machine=i386-sun
				os=
				;;
			sv1)
				basic_machine=sv1-cray
				os=unicos
				;;
			symmetry)
				basic_machine=i386-sequent
				os=dynix
				;;
			t3e)
				basic_machine=alphaev5-cray
				os=unicos
				;;
			t90)
				basic_machine=t90-cray
				os=unicos
				;;
			toad1)
				basic_machine=pdp10-xkl
				os=tops20
				;;
			tpf)
				basic_machine=s390x-ibm
				os=tpf
				;;
			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
				;;
			vxworks960)
				basic_machine=i960-wrs
				os=vxworks
				;;
			vxworks68)
				basic_machine=m68k-wrs
				os=vxworks
				;;
			vxworks29k)
				basic_machine=a29k-wrs
				os=vxworks
				;;
			xbox)
				basic_machine=i686-pc
				os=mingw32
				;;
			ymp)
				basic_machine=ymp-cray
				os=unicos
				;;
			*)
				basic_machine=$1
				os=
				;;
		esac
d241 1
a241 1
# Decode 1-component or ad-hoc basic machines
d243 92
a334 5
	# 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)
		cpu=hppa1.1
		vendor=winbond
d336 1
a336 3
	op50n)
		cpu=hppa1.1
		vendor=oki
d338 2
a339 3
	op60c)
		cpu=hppa1.1
		vendor=oki
d341 3
a343 3
	ibm*)
		cpu=i370
		vendor=ibm
d345 3
a347 3
	orion105)
		cpu=clipper
		vendor=highlevel
d349 2
a350 3
	mac | mpw | mac-mpw)
		cpu=m68k
		vendor=apple
d352 3
a354 3
	pmac | pmac-mpw)
		cpu=powerpc
		vendor=apple
d357 100
d459 4
d464 1
a464 2
		cpu=m68000
		vendor=att
d467 74
a540 2
		cpu=we32k
		vendor=att
d543 70
a612 3
		cpu=powerpc
		vendor=ibm
		os=cnk
d615 2
a616 3
		cpu=pdp10
		vendor=dec
		os=tops10
d619 2
a620 3
		cpu=pdp10
		vendor=dec
		os=tops20
d624 17
a640 2
		cpu=m68k
		vendor=motorola
d643 18
a660 3
		cpu=m68k
		vendor=bull
		os=sysv3
d663 1
a663 2
		cpu=ns32k
		vendor=encore
d665 3
a667 4
	elxsi)
		cpu=elxsi
		vendor=elxsi
		os=${os:-bsd}
d670 1
a670 2
		cpu=i860
		vendor=alliant
d673 9
a681 2
		cpu=ns32k
		vendor=ns
d684 29
a712 3
		cpu=hppa1.1
		vendor=hitachi
		os=hiuxwe2
d715 1
a715 2
		cpu=hppa1.0
		vendor=hp
d718 1
a718 2
		cpu=m68000
		vendor=hp
d721 1
a721 2
		cpu=m68k
		vendor=hp
d724 1
a724 2
		cpu=hppa1.0
		vendor=hp
d727 1
a727 2
		cpu=hppa1.1
		vendor=hp
d731 1
a731 2
		cpu=hppa1.1
		vendor=hp
d735 1
a735 2
		cpu=hppa1.1
		vendor=hp
d738 1
a738 2
		cpu=hppa1.1
		vendor=hp
d741 12
a752 2
		cpu=hppa1.0
		vendor=hp
d755 2
a756 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv32
d759 2
a760 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv4
d763 2
a764 3
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=sysv
d767 10
a776 8
		cpu=`echo "$1" | sed -e 's/86.*/86/'`
		vendor=pc
		os=solaris2
		;;
	j90 | j90-cray)
		cpu=j90
		vendor=cray
		os=${os:-unicos}
d779 1
a779 2
		cpu=mips
		vendor=sgi
d781 1
a781 1
		    irix*)
d784 1
a784 1
			os=irix4
d788 38
d827 27
a853 2
		cpu=m68000
		vendor=convergent
d855 34
a888 4
	*mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
		cpu=m68k
		vendor=atari
		os=mint
d891 6
a896 3
		cpu=mips
		vendor=sony
		os=newsos
d899 1
a899 2
		cpu=m68k
		vendor=next
d901 1
a901 3
		    openstep*)
		        ;;
		    nextstep*)
d903 2
a904 2
		    ns2*)
		      os=nextstep2
d907 1
a907 1
		      os=nextstep3
d911 20
d932 16
a947 2
		cpu=np1
		vendor=gould
d950 17
a966 3
		cpu=hppa1.1
		vendor=oki
		os=proelf
d969 14
a982 3
		cpu=hppa1.1
		vendor=hitachi
		os=hiuxwe2
d985 1
a985 2
		cpu=sparc
		vendor=tti
d988 1
a988 2
		cpu=m68k
		vendor=tti
d990 2
a991 3
	pc532)
		cpu=ns32k
		vendor=pc532
d993 2
a994 3
	pn)
		cpu=pn
		vendor=gould
d996 2
a997 3
	power)
		cpu=power
		vendor=ibm
d999 2
a1000 3
	ps2)
		cpu=i386
		vendor=ibm
d1002 2
a1003 3
	rm[46]00)
		cpu=mips
		vendor=siemens
d1005 2
a1006 3
	rtpc | rtpc-*)
		cpu=romp
		vendor=ibm
d1008 2
a1009 4
	sde)
		cpu=mipsisa32
		vendor=sde
		os=${os:-elf}
d1011 2
a1012 4
	simso-wrs)
		cpu=sparclite
		vendor=wrs
		os=vxworks
d1014 2
a1015 3
	tower | tower-32)
		cpu=m68k
		vendor=ncr
d1017 2
a1018 3
	vpp*|vx|vx-*)
		cpu=f301
		vendor=fujitsu
d1020 2
a1021 3
	w65)
		cpu=w65
		vendor=wdc
d1023 2
a1024 4
	w89k-*)
		cpu=hppa1.1
		vendor=winbond
		os=proelf
d1026 1
a1026 3
	none)
		cpu=none
		vendor=none
d1028 1
a1028 3
	leon|leon[3-9])
		cpu=sparc
		vendor=$basic_machine
d1030 2
a1031 3
	leon-*|leon[3-9]-*)
		cpu=sparc
		vendor=`echo "$basic_machine" | sed 's/-.*//'`
d1033 2
a1034 6

	*-*)
		# shellcheck disable=SC2162
		IFS="-" read cpu vendor <<EOF
$basic_machine
EOF
d1036 2
a1037 6
	# 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*86 | x86_64)
		cpu=$basic_machine
		vendor=pc
d1039 1
a1039 5
	# These rules are duplicated from below for sake of the special case above;
	# i.e. things that normalized to x86 arches should also default to "pc"
	pc98)
		cpu=i386
		vendor=pc
d1041 1
a1041 3
	x64 | amd64)
		cpu=x86_64
		vendor=pc
d1043 2
a1044 4
	# Recognize the basic CPU types without company name.
	*)
		cpu=$basic_machine
		vendor=unknown
d1046 2
a1047 11
esac

unset -v basic_machine

# Decode basic machines in the full and proper CPU-Company form.
case $cpu-$vendor in
	# Here we handle the default manufacturer of certain CPU types in canonical form. It is in
	# some cases the only manufacturer, in others, it is the most popular.
	craynv-unknown)
		vendor=cray
		os=${os:-unicosmp}
d1049 2
a1050 3
	c90-unknown | c90-cray)
		vendor=cray
		os=${os:-unicos}
d1052 15
a1066 2
	fx80-unknown)
		vendor=alliant
d1068 2
a1069 2
	romp-unknown)
		vendor=ibm
d1071 2
a1072 2
	mmix-unknown)
		vendor=knuth
d1074 2
a1075 2
	microblaze-unknown | microblazeel-unknown)
		vendor=xilinx
d1077 2
a1078 2
	rs6000-unknown)
		vendor=ibm
d1080 3
a1082 2
	vax-unknown)
		vendor=dec
d1084 2
a1085 2
	pdp11-unknown)
		vendor=dec
d1087 2
a1088 2
	we32k-unknown)
		vendor=att
d1090 3
a1092 2
	cydra-unknown)
		vendor=cydrome
d1094 3
a1096 2
	i370-ibm*)
		vendor=ibm
d1098 2
a1099 2
	orion-unknown)
		vendor=highlevel
d1101 2
a1102 3
	xps-unknown | xps100-unknown)
		cpu=xps100
		vendor=honeywell
d1104 3
a1106 6

	# Here we normalize CPU types with a missing or matching vendor
	dpx20-unknown | dpx20-bull)
		cpu=rs6000
		vendor=bull
		os=${os:-bosx}
d1108 13
a1120 4

	# Here we normalize CPU types irrespective of the vendor
	amd64-*)
		cpu=x86_64
d1122 2
a1123 3
	blackfin-*)
		cpu=bfin
		os=linux
d1125 2
a1126 2
	c54x-*)
		cpu=tic54x
d1128 3
a1130 2
	c55x-*)
		cpu=tic55x
d1132 3
a1134 2
	c6x-*)
		cpu=tic6x
d1136 3
a1138 3
	e500v[12]-*)
		cpu=powerpc
		os=$os"spe"
d1140 3
a1142 2
	mips3*-*)
		cpu=mips64
d1144 3
a1146 2
	ms1-*)
		cpu=mt
d1148 3
a1150 3
	m68knommu-*)
		cpu=m68k
		os=linux
d1152 3
a1154 2
	m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
		cpu=s12z
d1156 2
a1157 2
	openrisc-*)
		cpu=or32
d1159 2
a1160 3
	parisc-*)
		cpu=hppa
		os=linux
d1162 2
a1163 2
	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
		cpu=i586
d1165 3
a1167 2
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athalon_*-*)
		cpu=i686
d1169 3
a1171 2
	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
		cpu=i686
d1173 3
a1175 2
	pentium4-*)
		cpu=i786
d1177 3
a1179 2
	pc98-*)
		cpu=i386
d1181 3
a1183 2
	ppc-* | ppcbe-*)
		cpu=powerpc
d1185 2
a1186 2
	ppcle-* | powerpclittle-*)
		cpu=powerpcle
d1188 2
a1189 2
	ppc64-*)
		cpu=powerpc64
d1191 3
a1193 2
	ppc64le-* | powerpc64little-*)
		cpu=powerpc64le
d1195 2
a1196 2
	sb1-*)
		cpu=mipsisa64sb1
d1198 23
a1220 2
	sb1el-*)
		cpu=mipsisa64sb1el
d1222 2
a1223 2
	sh5e[lb]-*)
		cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
d1225 15
a1239 2
	spur-*)
		cpu=spur
d1241 3
a1243 2
	strongarm-* | thumb-*)
		cpu=arm
d1245 2
a1246 2
	tx39-*)
		cpu=mipstx39
d1248 3
a1250 2
	tx39el-*)
		cpu=mipstx39el
d1252 2
a1253 2
	x64-*)
		cpu=x86_64
d1256 9
a1264 1
		cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
d1267 10
a1276 4
	# Recognize the canonical CPU Types that limit and/or modify the
	# company names they are paired with.
	cr16-*)
		os=${os:-elf}
d1278 2
a1279 3
	crisv32-* | etraxfs*-*)
		cpu=crisv32
		vendor=axis
d1281 2
a1282 3
	cris-* | etrax*-*)
		cpu=cris
		vendor=axis
d1284 2
a1285 2
	crx-*)
		os=${os:-elf}
d1287 11
a1297 3
	neo-tandem)
		cpu=neo
		vendor=tandem
d1299 2
a1300 3
	nse-tandem)
		cpu=nse
		vendor=tandem
d1302 2
a1303 3
	nsr-tandem)
		cpu=nsr
		vendor=tandem
d1305 2
a1306 3
	nsv-tandem)
		cpu=nsv
		vendor=tandem
d1308 2
a1309 3
	nsx-tandem)
		cpu=nsx
		vendor=tandem
d1311 2
a1312 7
	s390-*)
		cpu=s390
		vendor=ibm
		;;
	s390x-*)
		cpu=s390x
		vendor=ibm
d1314 2
a1315 2
	tile*-*)
		os=${os:-linux-gnu}
a1316 1

d1318 2
a1319 107
		# Recognize the canonical CPU types that are allowed with any
		# company name.
		case $cpu in
			1750a | 580 \
			| a29k \
			| aarch64 | aarch64_be \
			| abacus \
			| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
			| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
			| alphapca5[67] | alpha64pca5[67] \
			| am33_2.0 \
			| amdgcn \
			| arc | arceb \
			| arm  | arm[lb]e | arme[lb] | armv* \
			| avr | avr32 \
			| asmjs \
			| ba \
			| be32 | be64 \
			| bfin | bpf | bs2000 \
			| c[123]* | c30 | [cjt]90 | c4x \
			| c8051 | clipper | craynv | csky | cydra \
			| d10v | d30v | dlx | dsp16xx \
			| e2k | elxsi | epiphany \
			| f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
			| h8300 | h8500 \
			| hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
			| hexagon \
			| i370 | i*86 | i860 | i960 | ia16 | ia64 \
			| ip2k | iq2000 \
			| k1om \
			| le32 | le64 \
			| lm32 \
			| m32c | m32r | m32rle \
			| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
			| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
			| m88110 | m88k | maxq | mb | mcore | mep | metag \
			| microblaze | microblazeel \
			| mips | mipsbe | mipseb | mipsel | mipsle \
			| mips16 \
			| mips64 | mips64eb | mips64el \
			| mips64octeon | mips64octeonel \
			| mips64orion | mips64orionel \
			| mips64r5900 | mips64r5900el \
			| mips64vr | mips64vrel \
			| mips64vr4100 | mips64vr4100el \
			| mips64vr4300 | mips64vr4300el \
			| mips64vr5000 | mips64vr5000el \
			| mips64vr5900 | mips64vr5900el \
			| mipsisa32 | mipsisa32el \
			| mipsisa32r2 | mipsisa32r2el \
			| mipsisa32r6 | mipsisa32r6el \
			| mipsisa64 | mipsisa64el \
			| mipsisa64r2 | mipsisa64r2el \
			| mipsisa64r6 | mipsisa64r6el \
			| mipsisa64sb1 | mipsisa64sb1el \
			| mipsisa64sr71k | mipsisa64sr71kel \
			| mipsr5900 | mipsr5900el \
			| mipstx39 | mipstx39el \
			| mmix \
			| mn10200 | mn10300 \
			| moxie \
			| mt \
			| msp430 \
			| nds32 | nds32le | nds32be \
			| nfp \
			| nios | nios2 | nios2eb | nios2el \
			| none | np1 | ns16k | ns32k | nvptx \
			| open8 \
			| or1k* \
			| or32 \
			| orion \
			| picochip \
			| pdp10 | pdp11 | pj | pjl | pn | power \
			| powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
			| pru \
			| pyramid \
			| riscv | riscv32 | riscv64 \
			| rl78 | romp | rs6000 | rx \
			| score \
			| sh | shl \
			| sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
			| sh[1234]e[lb] |  sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
			| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
			| sparclite \
			| sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
			| spu \
			| tahoe \
			| tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
			| tron \
			| ubicom32 \
			| v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
			| vax \
			| visium \
			| w65 \
			| wasm32 | wasm64 \
			| we32k \
			| x86 | x86_64 | xc16x | xgate | xps100 \
			| xstormy16 | xtensa* \
			| ymp \
			| z8k | z80)
				;;

			*)
				echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
				exit 1
				;;
		esac
d1324 3
a1326 3
case $vendor in
	digital*)
		vendor=dec
d1328 2
a1329 2
	commodore*)
		vendor=cbm
d1337 1
a1337 1
if [ x$os != x ]
d1342 3
a1344 3
	# solaris* is a basic system type, with this one exception.
	auroraux)
		os=auroraux
d1346 1
a1346 4
	bluegene*)
		os=cnk
		;;
	solaris1 | solaris1.*)
d1349 2
a1350 2
	solaris)
		os=solaris2
d1352 2
a1353 2
	unixware*)
		os=sysv4.2uw
d1355 1
a1355 1
	gnu/linux*)
d1359 2
a1360 33
	es1800*)
		os=ose
		;;
	# Some version numbers need modification
	chorusos*)
		os=chorusos
		;;
	isc)
		os=isc2.2
		;;
	sco6)
		os=sco5v6
		;;
	sco5)
		os=sco3.2v5
		;;
	sco4)
		os=sco3.2v4
		;;
	sco3.2.[4-9]*)
		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
		;;
	sco3.2v[4-9]* | sco5v6*)
		# Don't forget version if it is 3.2v4 or newer.
		;;
	scout)
		# Don't match below
		;;
	sco*)
		os=sco3.2v2
		;;
	psos*)
		os=psos
d1365 28
a1392 29
	# sysv* is not here because it comes later, after sysvr4.
	gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
	     | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
	     | sym* | kopensolaris* | plan9* \
	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
	     | aos* | aros* | cloudabi* | sortix* \
	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
	     | knetbsd* | mirbsd* | netbsd* \
	     | bitrig* | openbsd* | solidbsd* | libertybsd* \
	     | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
	     | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
	     | chorusrdb* | cegcc* | glidix* \
	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
	     | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
	     | linux-newlib* | linux-musl* | linux-uclibc* \
	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
	     | interix* | uwin* | mks* | rhapsody* | darwin* \
	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
	     | os2* | vos* | palmos* | uclinux* | nucleus* \
	     | morphos* | superux* | rtmk* | windiss* \
	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi*)
d1395 3
a1397 3
	qnx*)
		case $cpu in
		    x86 | i*86)
d1400 1
a1400 1
			os=nto-$os
d1404 1
a1404 2
	hiux*)
		os=hiuxwe2
d1406 1
a1406 3
	nto-qnx*)
		;;
	nto*)
d1409 3
a1411 6
	sim | xray | os68k* | v88r* \
	    | windows* | osx | abug | netware* | os9* \
	    | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
		;;
	linux-dietlibc)
		os=linux-dietlibc
d1413 1
a1413 13
	linux*)
		os=`echo $os | sed -e 's|linux|linux-gnu|'`
		;;
	lynx*178)
		os=lynxos178
		;;
	lynx*5)
		os=lynxos5
		;;
	lynx*)
		os=lynxos
		;;
	mac*)
d1416 2
a1417 2
	opened*)
		os=openedition
d1419 2
a1420 2
	os400*)
		os=os400
d1422 1
a1422 1
	sunos5*)
d1425 1
a1425 1
	sunos6*)
d1428 8
a1435 2
	wince*)
		os=wince
d1437 2
a1438 2
	utek*)
		os=bsd
d1440 2
a1441 2
	dynix*)
		os=bsd
d1443 2
a1444 2
	acis*)
		os=aos
d1446 2
a1447 2
	atheos*)
		os=atheos
d1449 2
a1450 2
	syllable*)
		os=syllable
d1452 2
a1453 2
	386bsd)
		os=bsd
d1455 2
a1456 2
	ctix* | uts*)
		os=sysv
d1458 2
a1459 2
	nova*)
		os=rtmk-nova
d1461 2
a1462 2
	ns2)
		os=nextstep2
d1464 2
a1465 2
	nsk*)
		os=nsk
d1468 1
a1468 1
	sinix5.*)
d1471 2
a1472 2
	sinix*)
		os=sysv4
d1474 2
a1475 2
	tpf*)
		os=tpf
d1477 2
a1478 2
	triton*)
		os=sysv3
d1480 2
a1481 2
	oss*)
		os=sysv3
d1483 2
a1484 2
	svr4*)
		os=sysv4
d1486 2
a1487 2
	svr3)
		os=sysv3
d1489 2
a1490 2
	sysvr4)
		os=sysv4
d1492 2
a1493 2
	# This must come after sysvr4.
	sysv*)
d1495 2
a1496 2
	ose*)
		os=ose
d1498 2
a1499 2
	*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
		os=mint
d1501 2
a1502 2
	zvmoe)
		os=zvmoe
d1504 2
a1505 2
	dicos*)
		os=dicos
d1507 1
a1507 1
	pikeos*)
d1511 1
a1511 1
		case $cpu in
d1513 1
a1513 1
			os=eabi
d1516 1
a1516 1
			os=elf
d1520 1
a1520 3
	nacl*)
		;;
	ios)
d1522 1
a1522 1
	none)
d1524 1
a1524 1
	*-eabi)
d1527 2
d1545 1
a1545 1
case $cpu-$vendor in
d1547 1
a1547 1
		os=elf
d1550 1
a1550 1
		os=elf
d1553 1
a1553 1
		os=riscix1.2
d1556 1
a1556 1
		os=linux
d1559 1
a1559 1
		os=aout
d1562 1
a1562 1
		os=coff
d1565 1
a1565 4
		os=elf
		;;
	clipper-intergraph)
		os=clix
d1568 1
a1568 1
		os=elf
d1571 1
a1571 1
		os=coff
d1574 1
a1574 1
		os=coff
d1577 1
a1577 1
		os=coff
d1581 1
a1581 1
		os=tops20
d1584 1
a1584 1
		os=none
d1587 1
a1587 1
		os=ultrix4.2
d1590 1
a1590 1
		os=domain
d1593 1
a1593 1
		os=sunos4.0.2
d1596 1
a1596 1
		os=sunos3
d1599 1
a1599 1
		os=aout
d1602 1
a1602 1
		os=elf
d1605 1
a1605 1
		os=elf
d1608 1
a1608 1
		os=elf
d1611 1
a1611 1
		os=coff
d1614 1
a1614 1
		os=sysv3
d1617 1
a1617 1
		os=sunos4.1.1
d1620 1
a1620 1
		os=elf
d1623 1
a1623 1
		os=beos
d1626 1
a1626 1
		os=aix
d1629 1
a1629 1
		os=mmixware
d1632 1
a1632 1
		os=proelf
d1635 1
a1635 1
		os=proelf
d1638 1
a1638 1
		os=proelf
d1641 1
a1641 1
		os=hpux
d1644 1
a1644 1
		os=hiux
d1647 1
a1647 1
		os=sysv
d1650 1
a1650 1
		os=amigaos
d1653 1
a1653 1
		os=dgux
d1656 1
a1656 1
		os=sysv3
d1659 1
a1659 1
		os=rtu
d1662 1
a1662 1
		os=luna
d1665 1
a1665 1
		os=nextstep
d1668 1
a1668 1
		os=ptx
d1671 1
a1671 1
		os=unos
d1674 1
a1674 1
		os=genix
d1677 1
a1677 1
		os=mvs
d1680 1
a1680 1
		os=sysv
d1683 1
a1683 1
		os=bsd
d1686 1
a1686 1
		os=bsd
d1689 1
a1689 1
		os=irix
d1692 1
a1692 1
		os=sysv4
d1695 1
a1695 1
		os=rtu
d1698 1
a1698 1
		os=uxpv
d1701 1
a1701 1
		os=coff
d1704 1
a1704 1
		os=coff
d1707 1
a1707 1
		os=macos
d1710 1
a1710 4
		os=mint
		;;
	*-wrs)
		os=vxworks
d1713 1
a1713 1
		os=none
d1720 3
a1722 2
case $vendor in
	unknown)
d1724 1
a1724 1
			riscix*)
d1727 1
a1727 1
			sunos*)
d1730 1
a1730 1
			cnk*|-aix*)
d1733 1
a1733 1
			beos*)
d1736 1
a1736 1
			hpux*)
d1739 1
a1739 1
			mpeix*)
d1742 1
a1742 1
			hiux*)
d1745 1
a1745 1
			unos*)
d1748 1
a1748 1
			dgux*)
d1751 1
a1751 1
			luna*)
d1754 1
a1754 1
			genix*)
d1757 1
a1757 4
			clix*)
				vendor=intergraph
				;;
			mvs* | opened*)
d1760 1
a1760 1
			os400*)
d1763 1
a1763 1
			ptx*)
d1766 1
a1766 1
			tpf*)
d1769 1
a1769 1
			vxsim* | vxworks* | windiss*)
d1772 1
a1772 1
			aux*)
d1775 1
a1775 1
			hms*)
d1778 1
a1778 1
			mpw* | macos*)
d1781 1
a1781 1
			*mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
d1784 1
a1784 1
			vos*)
d1788 1
d1792 1
a1792 1
echo "$cpu-$vendor-$os"
d1796 1
a1796 1
# eval: (add-hook 'before-save-hook 'time-stamp)
@


1.1.1.11
log
@2021-01-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/copyright, VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-01-05  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

2020-09-22  Thomas E. Dickey  <dickey@@invisible-island.net>

	* closure.c, warshall.c:
	fix undefined-behavior diagnosed with gcc -fsanitize=undefined (report by
	Alexander Richardson)

2020-09-10  Thomas E. Dickey  <dickey@@invisible-island.net>

	* LICENSE: RCS_BASE

	* reader.c, output.c: cppcheck -- reduce scope

	* defs.h: update to 2.0

	* test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c, test/btyacc/calc_code_all.tab.c, test/btyacc/calc_code_default.tab.c, test/btyacc/calc_code_imports.tab.c, test/btyacc/calc_code_provides.tab.c, test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c, test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c, test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c, test/btyacc/defines3.calc.c, test/btyacc/empty.tab.c, test/btyacc/err_inherit1.tab.c, test/btyacc/err_inherit2.tab.c, test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c, test/btyacc/err_inherit5.tab.c, test/btyacc/err_syntax1.tab.c, test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c, test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax13.tab.c, test/btyacc/err_syntax14.tab.c, test/btyacc/err_syntax15.tab.c, test/btyacc/err_syntax16.tab.c, test/btyacc/err_syntax17.tab.c, test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax19.tab.c, test/btyacc/err_syntax2.tab.c, test/btyacc/err_syntax20.tab.c, test/btyacc/err_syntax21.tab.c, test/btyacc/err_syntax22.tab.c, test/btyacc/err_syntax23.tab.c, test/btyacc/err_syntax24.tab.c, test/btyacc/err_syntax25.tab.c, test/btyacc/err_syntax26.tab.c, test/btyacc/err_syntax27.tab.c, test/btyacc/err_syntax3.tab.c, test/btyacc/err_syntax4.tab.c, test/btyacc/err_syntax5.tab.c, test/btyacc/err_syntax6.tab.c, test/btyacc/err_syntax7.tab.c, test/btyacc/err_syntax7a.tab.c, test/btyacc/err_syntax7b.tab.c, test/btyacc/err_syntax8.tab.c, test/btyacc/err_syntax8a.tab.c, test/btyacc/err_syntax9.tab.c, test/btyacc/error.tab.c, test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c, test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c, test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c, test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c, test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c, test/btyacc/rename_debug.c, test/btyacc/stdin1.calc.c, test/btyacc/stdin2.calc.c, test/btyacc/varsyntax_calc1.tab.c, test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c, test/yacc/calc3.tab.c, test/yacc/calc_code_all.tab.c, test/yacc/calc_code_default.tab.c, test/yacc/calc_code_imports.tab.c, test/yacc/calc_code_provides.tab.c, test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c, test/yacc/code_calc.code.c, test/yacc/code_error.code.c, test/yacc/defines1.calc.c, test/yacc/defines2.calc.c, test/yacc/defines3.calc.c, test/yacc/empty.tab.c, test/yacc/err_syntax1.tab.c, test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c, test/yacc/err_syntax12.tab.c, test/yacc/err_syntax13.tab.c, test/yacc/err_syntax14.tab.c, test/yacc/err_syntax15.tab.c, test/yacc/err_syntax16.tab.c, test/yacc/err_syntax17.tab.c, test/yacc/err_syntax18.tab.c, test/yacc/err_syntax19.tab.c, test/yacc/err_syntax2.tab.c, test/yacc/err_syntax20.tab.c, test/yacc/err_syntax21.tab.c, test/yacc/err_syntax22.tab.c, test/yacc/err_syntax23.tab.c, test/yacc/err_syntax24.tab.c, test/yacc/err_syntax25.tab.c, test/yacc/err_syntax26.tab.c, test/yacc/err_syntax27.tab.c, test/yacc/err_syntax3.tab.c, test/yacc/err_syntax4.tab.c, test/yacc/err_syntax5.tab.c, test/yacc/err_syntax6.tab.c, test/yacc/err_syntax7.tab.c, test/yacc/err_syntax7a.tab.c, test/yacc/err_syntax7b.tab.c, test/yacc/err_syntax8.tab.c, test/yacc/err_syntax8a.tab.c, test/yacc/err_syntax9.tab.c, test/yacc/error.tab.c, test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c, test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c, test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c, test/yacc/quote_calc.tab.c, test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c, test/yacc/rename_debug.c, test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c, test/yacc/varsyntax_calc1.tab.c:
	update to version 2.0

	* reader.c:
	improve loop which skips backward through a (possibly nested) sequence of
	square-brackets.

	* reader.c: simplify a check to quiet a bogus cppcheck-warning

	* yacc.1: bump date

	* reader.c: add a note about a bogus cppcheck warning

	* configure: regen

	* configure.in:
	always check for gcc attributes, to work around defect in clang's imitation
	of this feature

	* reader.c: cppcheck -- scope reduction
	cppcheck -- eliminate bogus returns after no-return functions

	* verbose.c, output.c, mkpar.c, main.c, warshall.c, lr0.c, lalr.c, graph.c, closure.c:
	cppcheck -- scope reduction

	* package/debian/compat: quiet compatibility-warning

	* yacc.1: use "ASCII" for dashes which are part of proper names

	* configure: regen

	* configure.in: switch to --enable-warnings, for consistency

	* aclocal.m4:
	resync with my-autoconf, for compiler-warning fixes with macOS

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2020-08-16  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2020-08-17

2020-06-28  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2020/06/28

2020-06-14  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2020/04/26

2020-03-30  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/copyright: bump

	* test/yacc/grammar.tab.c, test/btyacc/grammar.tab.c, test/grammar.y, reader.c:
	typo found with codespell

	* yacc.1: fixes noted in the original report, overlooked in followup

2020-03-30  Bjarni.Ingi.Gislason

	* yacc.1: typography/spelling fixes - Debian #955175

2020-03-30  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2020-03-10  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4:
	resync with my-autoconf, mostly fixes for compiler-warnings

	* configure.in: use macro to suppress X-dependency from newer macros

2019-12-20  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2019-12-21

2019-11-25  Tom.Shields

	* main.c:
	fix an inconsistency between the getopt and non-getopt configuration.
	In the former, getopt always used "yacc", not the name of the executable.

2019-11-25  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/run_make.sh:
	suppress bison's -Wyacc warning, which is not useful.

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2019-11-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* yacc.1: new version of manpage

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* yacc.1: document %code

	* test/btyacc/calc_code_all.error, test/btyacc/calc_code_all.output, test/btyacc/calc_code_all.tab.c, test/btyacc/calc_code_all.tab.h, test/btyacc/calc_code_default.error, test/btyacc/calc_code_default.output, test/btyacc/calc_code_default.tab.c, test/btyacc/calc_code_default.tab.h, test/btyacc/calc_code_imports.error, test/btyacc/calc_code_imports.output, test/btyacc/calc_code_imports.tab.c, test/btyacc/calc_code_imports.tab.h, test/btyacc/calc_code_provides.error, test/btyacc/calc_code_provides.output, test/btyacc/calc_code_provides.tab.c, test/btyacc/calc_code_provides.tab.h, test/btyacc/calc_code_requires.error, test/btyacc/calc_code_requires.output, test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_requires.tab.h, test/btyacc/calc_code_top.error, test/btyacc/calc_code_top.output, test/btyacc/calc_code_top.tab.c, test/btyacc/calc_code_top.tab.h, test/yacc/calc_code_all.tab.c, test/yacc/calc_code_all.tab.h, test/yacc/calc_code_default.tab.c, test/yacc/calc_code_provides.tab.c, test/yacc/calc_code_provides.tab.h, test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_requires.tab.h, test/yacc/calc_code_top.tab.c:
	RCS_BASE

	* output.c:
	amend updates for 'outline' when processing "%code" in code-file

	* output.c:
	modify output_code_lines() to show begin/end block comments which were in
	reader.c, and to generate a #line for the code-file.

	* reader.c:
	modify copy_code() to allow for multiple %code directives for a given
	section, recording the input line-number for each directive as a #line
	in the resulting string.  remove the block start/end comments, since those
	will be done for a whole section in output.c

	* mstring.c, defs.h: add msrenew()

	* test/yacc/calc_code_all.error, test/yacc/calc_code_all.output, test/yacc/calc_code_default.error, test/yacc/calc_code_default.output, test/yacc/calc_code_default.tab.h, test/yacc/calc_code_imports.error, test/yacc/calc_code_imports.output, test/yacc/calc_code_imports.tab.c, test/yacc/calc_code_imports.tab.h, test/yacc/calc_code_provides.error, test/yacc/calc_code_provides.output, test/yacc/calc_code_requires.error, test/yacc/calc_code_requires.output, test/yacc/calc_code_top.error, test/yacc/calc_code_top.output, test/yacc/calc_code_top.tab.h:
	RCS_BASE

2019-11-18  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/calc_code_imports.y, test/calc_code_all.y, test/calc_code_default.y, test/calc_code_top.y, test/calc_code_provides.y, test/calc_code_requires.y:
	RCS_BASE

2019-11-04  Michael.Forney

	* defs.h: add missing "extern" for new variable "code_lines"

2019-11-03  Thomas E. Dickey  <dickey@@invisible-island.net>

	* main.c: build-fix for MinGW cross-compiling

	* output.c, reader.c: gcc-warnings

	* output.c: check validity of text_file before rewind
	remove redundant check of iflag

	* main.c: fix memory-leak reported by clang

	* mkpar.c: guard against a null-reference reported by clang (unlikely)

	* reader.c: fix two coverity warnings:
	a) resource leak on malloc-failure
	b) possible null-pointer dereference on parse-error

	* test/btyacc/err_inherit4.tab.h, test/btyacc/btyacc_demo.tab.h: regen

	* defs.h: use enum's to simplify recent change

	* mstring.c:
	enable mstring() in regular byacc, since Zoulas' change relies upon it

2019-11-03  Christos.Zoulas

	* defs.h, reader.c, output.c: add support for bison's "%code" feature
	also fix a small bug: declare YYLTYPE externally when producing locations

2019-11-03  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/help.error, test/btyacc/no_b_opt.error, test/btyacc/no_output2.error, test/btyacc/no_p_opt.error, test/yacc/help.error, test/yacc/no_b_opt.error, test/yacc/no_output2.error, test/yacc/no_p_opt.error:
	regen

	* test/run_test.sh:
	there's no standard wording for the options-errors from getopt;
	filter that to "error message" in the test reference files.

	* main.c:
	provide for using getopt(), to accommodate a case where developers have
	relied upon non-POSIX behavior.

	* test/run_test.sh:
	getopt's messages do not print the full pathname of yacc in some cases;
	adjust the sed-script which changes those to "YACC"

	* configure: regen

	* config_h.in: regen, using autoheader-252

	* configure.in: add configure check for getopt

	* configure: regen

	* aclocal.m4:
	resync with my-autoconf adds a fix which accommodates a difference in
	warning options between gcc/clang when --enable-warnings is not set.

	* VERSION, package/byacc.spec, package/debian/changelog, package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2019-09-11  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2019-09-10
@
text
@d3 1
a3 1
#   Copyright 1992-2020 Free Software Foundation, Inc.
d5 1
a5 1
timestamp='2020-08-17'
d70 1
a70 1
Copyright 1992-2020 Free Software Foundation, Inc.
d127 1
a127 1
		basic_os=$field3-$field4
d134 2
a135 1
			nto-qnx* | linux-* | uclinux-uclibc* \
d140 1
a140 1
				basic_os=$maybe_os
d144 1
a144 1
				basic_os=linux-android
d148 1
a148 1
				basic_os=$field3
d157 1
a157 1
				basic_os=
d165 1
a165 1
						basic_os=$field2
d178 1
a178 1
						basic_os=
d182 1
a182 1
						basic_os=$field2
d194 1
a194 1
				basic_os=bsd
d198 1
a198 1
				basic_os=udi
d202 1
a202 1
				basic_os=scout
d206 1
a206 1
				basic_os=
d210 1
a210 1
				basic_os=
d214 1
a214 1
				basic_os=bsd
d218 1
a218 1
				basic_os=sysv
d222 1
a222 1
				basic_os=
d226 1
a226 1
				basic_os=amigaos
d230 1
a230 1
				basic_os=sysv4
d234 1
a234 1
				basic_os=sysv
d238 1
a238 1
				basic_os=bsd
d242 1
a242 1
				basic_os=aros
d246 1
a246 1
				basic_os=aux
d250 1
a250 1
				basic_os=dynix
d254 1
a254 1
				basic_os=linux
d258 1
a258 1
				basic_os=cegcc
d262 1
a262 1
				basic_os=bsd
d266 1
a266 1
				basic_os=bsd
d270 1
a270 1
				basic_os=bsd
d274 1
a274 1
				basic_os=bsd
d278 1
a278 1
				basic_os=bsd
d282 1
a282 1
				basic_os=unicos
d286 1
a286 1
				basic_os=
d290 1
a290 1
				basic_os=
d294 1
a294 1
				basic_os=
d298 1
a298 1
				basic_os=sysv3
d302 1
a302 1
				basic_os=dicos
d306 1
a306 1
				basic_os=msdosdjgpp
d310 1
a310 1
				basic_os=ebmon
d314 1
a314 1
				basic_os=ose
d318 1
a318 1
				basic_os=sysv
d322 1
a322 1
				basic_os=go32
d326 1
a326 1
				basic_os=hms
d330 1
a330 1
				basic_os=xray
d334 1
a334 1
				basic_os=hms
d338 1
a338 1
				basic_os=sysv3
d340 1
a340 1
			hp300 | hp300hpux)
a341 1
				basic_os=hpux
d345 5
a349 1
				basic_os=bsd
d353 1
a353 1
				basic_os=osf
d357 1
a357 1
				basic_os=proelf
d361 5
a365 1
				basic_os=mach
d369 1
a369 1
				basic_os=sysv
d373 1
a373 1
				basic_os=linux
d377 1
a377 1
				basic_os=sysv
d381 1
a381 1
				basic_os=sysv
d385 1
a385 1
				basic_os=mingw64
d389 1
a389 1
				basic_os=mingw32
d393 1
a393 1
				basic_os=mingw32ce
d397 1
a397 1
				basic_os=coff
d401 1
a401 1
				basic_os=morphos
d405 1
a405 1
				basic_os=moxiebox
d409 1
a409 1
				basic_os=msdos
d413 1
a413 1
				basic_os=msys
d417 1
a417 1
				basic_os=mvs
d421 1
a421 1
				basic_os=nacl
d425 1
a425 1
				basic_os=sysv4
d429 1
a429 1
				basic_os=netbsd
d433 1
a433 1
				basic_os=linux
d437 1
a437 1
				basic_os=newsos
d441 1
a441 1
				basic_os=newsos
d445 1
a445 1
				basic_os=sysv
d449 1
a449 1
				basic_os=cxux
d453 1
a453 1
				basic_os=cxux
d457 1
a457 1
				basic_os=nindy
d461 1
a461 1
				basic_os=mon960
d465 1
a465 1
				basic_os=nonstopux
d469 1
a469 1
				basic_os=os400
d473 1
a473 1
				basic_os=ose
d477 1
a477 1
				basic_os=os68k
d481 1
a481 1
				basic_os=osf
d485 1
a485 5
				basic_os=linux
				;;
			psp)
				basic_machine=mipsallegrexel-sony
				basic_os=psp
d489 1
a489 1
				basic_os=pw32
d493 1
a493 1
				basic_os=rdos
d497 1
a497 1
				basic_os=rdos
d501 1
a501 1
				basic_os=coff
d505 1
a505 1
				basic_os=udi
d509 1
a509 1
				basic_os=seiux
d513 1
a513 1
				basic_os=
d517 1
a517 1
				basic_os=sysv2
d521 1
a521 1
				basic_os=
d525 1
a525 1
				basic_os=sysv4
d529 1
a529 1
				basic_os=
d533 1
a533 1
				basic_os=sunos3
d537 1
a537 1
				basic_os=sunos4
d541 1
a541 1
				basic_os=
d545 1
a545 1
				basic_os=sunos3
d549 1
a549 1
				basic_os=sunos4
d553 1
a553 1
				basic_os=
d557 1
a557 1
				basic_os=sunos3
d561 1
a561 1
				basic_os=sunos4
d565 1
a565 1
				basic_os=solaris2
d569 1
a569 1
				basic_os=
d573 1
a573 1
				basic_os=unicos
d577 1
a577 1
				basic_os=dynix
d581 1
a581 1
				basic_os=unicos
d585 1
a585 1
				basic_os=unicos
d589 1
a589 1
				basic_os=tops20
d593 1
a593 1
				basic_os=tpf
d597 1
a597 1
				basic_os=udi
d601 1
a601 1
				basic_os=sym1
d605 1
a605 1
				basic_os=none
d609 1
a609 1
				basic_os=sysv
d613 1
a613 5
				basic_os=vms
				;;
			vsta)
				basic_machine=i386-pc
				basic_os=vsta
d617 1
a617 1
				basic_os=vxworks
d621 1
a621 1
				basic_os=vxworks
d625 1
a625 1
				basic_os=vxworks
d629 1
a629 1
				basic_os=mingw32
d633 1
a633 1
				basic_os=unicos
d637 1
a637 1
				basic_os=
d689 1
a689 1
		basic_os=cnk
d694 1
a694 1
		basic_os=tops10
d699 1
a699 1
		basic_os=tops20
d709 1
a709 1
		basic_os=sysv3
d718 1
a718 1
		basic_os=${basic_os:-bsd}
d731 1
a731 1
		basic_os=hiuxwe2
d774 1
a774 1
		basic_os=sysv32
d779 1
a779 1
		basic_os=sysv4
d784 1
a784 1
		basic_os=sysv
d789 1
a789 1
		basic_os=solaris2
d794 1
a794 1
		basic_os=${basic_os:-unicos}
d799 1
a799 1
		case $basic_os in
d803 1
a803 1
			basic_os=irix4
d814 1
a814 1
		basic_os=mint
d819 1
a819 1
		basic_os=newsos
d824 1
a824 1
		case $basic_os in
d830 1
a830 1
		      basic_os=nextstep2
d833 1
a833 1
		      basic_os=nextstep3
d844 1
a844 1
		basic_os=proelf
d849 1
a849 1
		basic_os=hiuxwe2
d886 1
a886 1
		basic_os=${basic_os:-elf}
d891 1
a891 1
		basic_os=vxworks
d908 1
a908 1
		basic_os=proelf
d961 1
a961 1
		basic_os=${basic_os:-unicosmp}
d965 1
a965 1
		basic_os=${Basic_os:-unicos}
d1009 1
a1009 1
		basic_os=${basic_os:-bosx}
d1018 1
a1018 1
		basic_os=linux
d1031 1
a1031 1
		basic_os=${basic_os}"spe"
d1041 1
a1041 1
		basic_os=linux
d1051 1
a1051 1
		basic_os=linux
a1106 3
	arm64-*)
		cpu=aarch64
		;;
d1111 1
a1111 1
		basic_os=${basic_os:-elf}
d1122 1
a1122 1
		basic_os=${basic_os:-elf}
d1144 7
a1150 3
	mipsallegrexel-sony)
		cpu=mipsallegrexel
		vendor=sony
d1153 1
a1153 1
		basic_os=${basic_os:-linux-gnu}
d1170 1
a1170 1
			| arm | arm[lb]e | arme[lb] | armv* \
a1234 1
			| s390 | s390x \
d1281 1
a1281 1
if test x$basic_os != x
a1282 35

# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
# set os.
case $basic_os in
	gnu/linux*)
		kernel=linux
		os=`echo $basic_os | sed -e 's|gnu/linux|gnu|'`
		;;
	nto-qnx*)
		kernel=nto
		os=`echo $basic_os | sed -e 's|nto-qnx|qnx|'`
		;;
	*-*)
		# shellcheck disable=SC2162
		IFS="-" read kernel os <<EOF
$basic_os
EOF
		;;
	# Default OS when just kernel was specified
	nto*)
		kernel=nto
		os=`echo $basic_os | sed -e 's|nto|qnx|'`
		;;
	linux*)
		kernel=linux
		os=`echo $basic_os | sed -e 's|linux|gnu|'`
		;;
	*)
		kernel=
		os=$basic_os
		;;
esac

# Now, normalize the OS (knowing we just have one component, it's not a kernel,
# etc.)
d1302 3
d1328 4
a1331 1
	sco*v* | scout)
d1340 34
d1386 15
a1406 3
	lynxos*)
		# don't get caught up in next wildcard
		;;
d1410 1
a1410 1
	mac[0-9]*)
d1455 3
d1483 3
d1492 3
d1511 8
d1520 2
a1521 1
		# No normalization, but not necessarily accepted, that comes below.
a1523 1

a1535 1
kernel=
d1547 1
a1547 2
		kernel=linux
		os=gnu
a1712 1

a1714 81
# Now, validate our (potentially fixed-up) OS.
case $os in
	# Sometimes we do "kernel-abi", so those need to count as OSes.
	musl* | newlib* | uclibc*)
		;;
	# Likewise for "kernel-libc"
	eabi | eabihf | gnueabi | gnueabihf)
		;;
	# Now accept the basic system types.
	# The portable systems comes first.
	# Each alternative MUST end in a * to match a version number.
	gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
	     | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
	     | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
	     | sym* |  plan9* | psp* | sim* | xray* | os68k* | v88r* \
	     | hiux* | abug | nacl* | netware* | windows* \
	     | os9* | macos* | osx* | ios* \
	     | mpw* | magic* | mmixware* | mon960* | lnews* \
	     | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
	     | aos* | aros* | cloudabi* | sortix* | twizzler* \
	     | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
	     | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
	     | mirbsd* | netbsd* | dicos* | openedition* | ose* \
	     | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
	     | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
	     | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
	     | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
	     | udi* | lites* | ieee* | go32* | aux* | hcos* \
	     | chorusrdb* | cegcc* | glidix* \
	     | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
	     | midipix* | mingw32* | mingw64* | mint* \
	     | uxpv* | beos* | mpeix* | udk* | moxiebox* \
	     | interix* | uwin* | mks* | rhapsody* | darwin* \
	     | openstep* | oskit* | conix* | pw32* | nonstopux* \
	     | storm-chaos* | tops10* | tenex* | tops20* | its* \
	     | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
	     | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
	     | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
	     | skyos* | haiku* | rdos* | toppers* | drops* | es* \
	     | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
	     | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
	     | nsk* | powerunix* | genode* | zvmoe* )
		;;
	# This one is extra strict with allowed versions
	sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
		# Don't forget version if it is 3.2v4 or newer.
		;;
	none)
		;;
	*)
		echo Invalid configuration \`"$1"\': OS \`"$os"\' not recognized 1>&2
		exit 1
		;;
esac

# As a final step for OS-related things, validate the OS-kernel combination
# (given a valid OS), if there is a kernel.
case $kernel-$os in
	linux-gnu* | linux-dietlibc* | linux-android* | linux-newlib* | linux-musl* | linux-uclibc* )
		;;
	-dietlibc* | -newlib* | -musl* | -uclibc* )
		# These are just libc implementations, not actual OSes, and thus
		# require a kernel.
		echo "Invalid configuration \`$1': libc \`$os' needs explicit kernel." 1>&2
		exit 1
		;;
	kfreebsd*-gnu* | kopensolaris*-gnu*)
		;;
	nto-qnx*)
		;;
	*-eabi* | *-gnueabi*)
		;;
	-*)
		# Blank kernel with real OS is always fine.
		;;
	*-*)
		echo "Invalid configuration \`$1': Kernel \`$kernel' not known to work with OS \`$os'." 1>&2
		exit 1
		;;
esac

d1719 2
a1720 2
		case $cpu-$os in
			*-riscix*)
d1723 1
a1723 1
			*-sunos*)
d1726 1
a1726 1
			*-cnk* | *-aix*)
d1729 1
a1729 1
			*-beos*)
d1732 1
a1732 1
			*-hpux*)
d1735 1
a1735 1
			*-mpeix*)
d1738 1
a1738 1
			*-hiux*)
d1741 1
a1741 1
			*-unos*)
d1744 1
a1744 1
			*-dgux*)
d1747 1
a1747 1
			*-luna*)
d1750 1
a1750 1
			*-genix*)
d1753 1
a1753 1
			*-clix*)
d1756 1
a1756 4
			*-mvs* | *-opened*)
				vendor=ibm
				;;
			*-os400*)
d1759 1
a1759 1
			s390-* | s390x-*)
d1762 1
a1762 1
			*-ptx*)
d1765 1
a1765 1
			*-tpf*)
d1768 1
a1768 1
			*-vxsim* | *-vxworks* | *-windiss*)
d1771 1
a1771 1
			*-aux*)
d1774 1
a1774 1
			*-hms*)
d1777 1
a1777 1
			*-mpw* | *-macos*)
d1780 1
a1780 1
			*-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
d1783 1
a1783 1
			*-vos*)
d1790 1
a1790 1
echo "$cpu-$vendor-${kernel:+$kernel-}$os"
@


1.1.1.12
log
@Import byacc 20240109, previous was 20210109

Changes:

2024-01-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* yacc.1: minor cleanup

	* package/debian/copyright: bump

	* configure: regen

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2023-12-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4:
	resync with my-autoconf: CF_CONST_X_STRING CF_MKSTEMP CF_WITH_MAN2HTML CF_XOPEN_SOURCE

2023-09-15  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2023-09-15

2023-08-22  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2023-08-22

2023-05-21  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* configure: regen

	* aclocal.m4:
	updates for CF_INSTALL_MAN from reflex, which needs the symbolic link feature

	* aclocal.m4:
	improve install-man by adding sed commands for --program-transform-name

2023-05-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* makefile.in: use CF_INSTALL_MAN

	* aclocal.m4:
	add CF_INSTALL_MAN, to begin refactoring install rule for manpage

	* configure: regen

	* configure.in: use CF_INSTALL_MAN

2023-05-18  Thomas E. Dickey  <dickey@@invisible-island.net>

	* error.c, defs.h, reader.c:
	allow @@1 or $@@ with a warning if no %locations was given

2023-05-17  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: clear pointer in end_ainfo() after freeing it.

2023-05-16  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: report errors in %define as "unexpected value"

	* reader.c:
	add/use macros begin_ainfo() and end_ainfo() to reduce clutter

	* defs.h, error.c: add function unexpected_value()

	* reader.c:
	recognize bison's "%define api.pure" as an alternative to "%pure-parser"

	* reader.c:
	add %nterm as an alias for %type, since bison made that confusion.

	* reader.c:
	ensure that filler_buf and prefix_buf are initialized for the special case
	where they are empty (report by Martin Jansa, cf: 20230219)

	* output.c:
	make test-differences smaller when compiling with YY_NO_LEAKS by replacing
	a blank line with the generated #define rather than adding 3 lines.

	* reader.c: gcc-warnings

2023-05-15  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* reader.c:
	when copying parameters, check for a case where the last token is not a
	name, e.g., "foo [1]" would have "[1]".  In this case, scan back to find
	the actual parameter name.

	* reader.c:
	correct a use-after-free in more_curly, which could occur if a %lex-param
	or %parse-param was multi-line (Redhat #2183006).

2023-05-11  Thomas E. Dickey  <dickey@@invisible-island.net>

	* main.c: rename no_space() to on_error()

	* error.c: rename no_space() to no_error(), handling any errno

	* defs.h: rename no_space() to on_error()

2023-04-03  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4: resync with my-autoconf: CF_GCC_VERSION CF_XOPEN_SOURCE

2023-02-26  Thomas E. Dickey  <dickey@@invisible-island.net>

	* mstring.c, reader.c: yak-indent

2023-02-26  mingodad

	* reader.c:
	patch for byacc #6: Segmentation fault when trying to parse bison-3.8.2 grammar

2023-02-26  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2023-02-20  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

2023-02-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/yacc/ok_syntax1.tab.h, test/yacc/ok_syntax1.tab.c,
	  test/btyacc/ok_syntax1.tab.h, test/btyacc/ok_syntax1.tab.c:
	regen

	* test/ok_syntax1.y:
	modify test for %union to add tag for testing reader.c

	* reader.c:
	provide for a named union, e.g., "%union foo" by detecting the name and
	deferring the typedef in that case until the end of copying the union
	definition (report by Dag-Erling Smørgrav).

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2023-02-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* configure.in: initialize $ac_includes_default

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/debian/copyright, package/mingw-byacc.spec,
	  package/pkgsrc/Makefile:
	bump

2023-01-05  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4: resync with my-autoconf

2022-12-29  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* configure.in:
	correct help-message for --disable-btyacc option, and fix the reporting of
	the selected option value in the configure script's output (report by Daniel
	Weaver)

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2022-12-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4: resync with my-autconf

2022-11-06  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/run_test.sh: use context diff, to work with AIX

	* defs.h:
	fprintf_lineno might be passed a null, when reading from stdin - show "(null)"

	* makefile.in, test/run_make.sh, test/run_test.sh, test/run_lint.sh:
	fgrep-fixes

	* yacc.1: mention use of stderr/stdout for usage/debugging

	* yacc.1: document %empty

	* yacc.1: document %debug

	* yacc.1: minor fixes with check-manpage

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2022-10-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

2022-08-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2022-08-01

2022-01-28  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/copyright: update, fix typo

	* package/debian/rules, package/debian/control:
	adapt from current Debian package

	* configure: regen

	* configure.in:
	change default for the backtracking option to match the most-common usage
	of byacc

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	update packaging, renaming debian folder back to its original location to
	verify that the version-mangling used in the accepted Debian package will work
	with the continuous-integration system.

2022-01-18  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/watch: adapt from current Debian package

2022-01-14  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/detest/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2022-01-09  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/detest/changelog: build-script

	* package/debian/changelog:
	update to use oldstable-compatible rules/config, for testing version upgrade

	* package/detest/watch: build-script

	* package/debian/watch:
	update to use oldstable-compatible rules/config, for testing version upgrade

	* package/detest/control: build-script

	* package/debian/control:
	update to use oldstable-compatible rules/config, for testing version upgrade

	* package/byacc.spec, package/mingw-byacc.spec:
	use rpmlint, etc., to "update" these to follow Redhat7 and later.
	due to incompatbilities in that route, this package will not build with #6.

	* reader.c, output.c:
	change a few malloc's to calloc's so clang analyzer can see initialized data

	* closure.c:
	modify address computation in closure.c to avoid undefined behavior on
	machines which do not support large offsets (analysis/patch by Jessica Clarke,
	cf: 2014-09-17)

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2022-01-08  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/detest/copyright, package/detest/rules: build-script

	* package/debian/copyright, package/debian/rules:
	update to use oldstable-compatible rules/config, for testing version upgrade

2022-01-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/control: minor fixes adapted from btyacc package

	* package/debian/byacc.docs: RCS_BASE

	* package/detest/byacc.docs: build-script

	* package/debian/byacc2.prerm: RCS_BASE

	* package/detest/byacc2.prerm: build-script

	* package/debian/byacc2.postinst: RCS_BASE

	* package/detest/byacc2.postinst: build-script

	* package/debian/byacc.postinst: RCS_BASE

	* package/detest/byacc.postinst: build-script

	* package/debian/byacc.prerm: RCS_BASE

	* package/detest/byacc.prerm: build-script

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2022-01-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/run_test.sh:
	adjust to ignore NetBSD's difference in getopt warnings.

	* package/pkgsrc/Makefile: resync with pkgsrc

	* test/yacc/expr.oxout.tab.c, test/btyacc/expr.oxout.tab.c: regen

	* test/expr.oxout.y, test/expr.oxout.h: fix gcc warnings

	* test/yacc/expr.oxout.tab.c, test/yacc/expr.oxout.tab.h: regen

	* test/run_make.sh: workaround for compiling the expr.oxout.y files

	* test/expr.oxout.y: fix syntax error

	* test/btyacc/expr.oxout.tab.c: regen

	* test/expr.oxout.h: RCS_BASE

	* test/yacc/expr.oxout.tab.c: fix syntax error

	* test/btyacc/expr.oxout.tab.c: regen, s/expr.oxout/expr_oxout/g

	* test/btyacc/expr.oxout.tab.h: regen

	* test/run_test.sh:
	filter the default prefix to change "." to "_", so that the generated
	files will compile consistently with run_make.sh

	* package/debian/control, package/debian/prerm, package/debian/postinst:
	add "byacc2" as an alternative for "yacc"

	* package/byacc.spec, package/debian/control, package/debian/rules:
	rename "btyacc" to "byacc2" to co-exist with traditional "btyacc" package

	* package/debian/copyright, VERSION, package/byacc.spec,
	  package/debian/changelog, package/mingw-byacc.spec,
	  package/pkgsrc/Makefile:
	bump

2021-12-24  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/debian/rules: fixes from Debian package for lintian warnings

	* package/debian/control: updates for Debian standard

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

	* package/debian/byacc2.docs: RCS_BASE

	* package/detest/byacc2.docs: build-script

	* package/debian/docs, package/debian/copyright, package/debian/control:
	errata from Debian package

	* config.sub: 2021-12-24
	    From: Dmitry V. Levin <ldv@@altlinux.org>
	    config.sub: alias aarch64le to aarch64

	    Apparently, QNX reports aarch64 as aarch64le on little-endian machines.

	    * config.sub (aarch64le-*): Set cpu to aarch64.
	    (timestamp): Update.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data (aarch64le-qnx): New test.

	    Reported-by: Elad Lahav <e2lahav@@gmail.com>
	    Link: https://lists.gnu.org/archive/html/config-patches/2021-12/msg00009.html

2021-12-16  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

2021-12-13  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-10-27
	    From: Dmitry V. Levin <ldv@@altlinux.org>
	    config.sub: fix typo in timestamp

	    * config.sub: Fix timestamp.
	    * doc/config.sub.1: Regenerate.

	    Reported-by: Jordi Sanfeliu <jordi@@fibranet.cat>
	    Fixes: a013aac61edfa2a03727521508286480010e7bf3
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-11-30  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-11-30
	    From: Andreas F. Borchert <github@@andreas-borchert.de>
	    config.guess: x86_64-pc-solaris2.11 is not properly recognized

	    config.guess guesses Solaris 11 to run on a 32-bit platform
	    despite Solaris 11 no longer supporting any 32-bit platform.

	    See the following code at lines 434 to 445:

	    | SUN_ARCH=i386
	    | # If there is a compiler, see if it is configured for 64-bit objects.
	    | # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
	    | # This test works for both compilers.
	    | if test "$CC_FOR_BUILD" != no_compiler_found; then
	    |     if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
	    |         (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
	    |         grep IS_64BIT_ARCH >/dev/null
	    |     then
	    |         SUN_ARCH=x86_64
	    |     fi
	    | fi

	    If "cc" is installed, i.e. the Oracle Studio compiler, this one is
	    chosen for $CC_FOR_BUILD.  This compiler, the gcc provided by Oracle
	    and also gcc bootstrapped from sources on that platform with a default
	    configuration will by default generate 32-bit binaries -- even on
	    a 64-bit platform.  And __amd64 will not be defined for compilations
	    targeting a 32-bit platform.  This is different from the corresponding
	    behaviour on GNU/Linux systems where the local platform is targeted by
	    default.

	    Thus, as long as you do not add "-m64" or if you have a custom-built
	    gcc which defaults to 64 bit, you will get 32-bit binaries on Solaris
	    despite living on a 64-bit platform.

	    * config.guess (i86pc:SunOS:5.*:* || i86xen:SunOS:5.*:*): Adapt the
	    test by adding the "-m64" flag.  This will work properly for Solaris
	    10 as well (the last Solaris release that supported x86 32-bit
	    platforms).
	    * doc/config.guess.1: Regenerate.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-10-27  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-10-27
	    From: Jordi Sanfeliu <jordi@@fibranet.cat>
	    Recognize Fiwix

	    $ make check
	    cd testsuite && bash config-guess.sh && rm uname
	    PASS: config.guess checks (137 tests)
	    cd testsuite && bash config-sub.sh
	    PASS: config.sub checks (882 tests)
	    PASS: config.sub idempotency checks (819 tests)
	    PASS: config.sub canonicalise each config.guess testcase (137 tests)

	    * config.guess (i*86:Fiwix:*:*): Recognize.
	    * config.sub (fiwix*): Likewise.
	    * doc/config.guess.1: Regenerate.
	    * doc/config.sub.1: Likewise.
	    * testsuite/config-guess.data: Add a test case for Fiwix.
	    * testsuite/config-sub.data (i386-fiwix): New test.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

	* config.sub: 2021-20-27
	    From: Jordi Sanfeliu <jordi@@fibranet.cat>
	    Recognize Fiwix

	    $ make check
	    cd testsuite && bash config-guess.sh && rm uname
	    PASS: config.guess checks (137 tests)
	    cd testsuite && bash config-sub.sh
	    PASS: config.sub checks (882 tests)
	    PASS: config.sub idempotency checks (819 tests)
	    PASS: config.sub canonicalise each config.guess testcase (137 tests)

	    * config.guess (i*86:Fiwix:*:*): Recognize.
	    * config.sub (fiwix*): Likewise.
	    * doc/config.guess.1: Regenerate.
	    * doc/config.sub.1: Likewise.
	    * testsuite/config-guess.data: Add a test case for Fiwix.
	    * testsuite/config-sub.data (i386-fiwix): New test.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-10-18  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-08-14
	    From: Kinshuk Dua <kinshukdua@@gmail.com>
	    config.sub: Fix typo in comment

	    Fixes: 5e531d391852a54e7fab2d8ff55625fca514b305
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-08-14  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-08-14
	    From: Nick Bowler <nbowler@@draconx.ca>
	    config.sub: work around command assignment bug in some shells

	    When combining variable assignments with a shell command, some older
	    shells (notably heirloom-sh and presumably also Solaris 10 /bin/sh)
	    have a bug which causes the assignment to alter the current execution
	    environment whenever the command is a shell built-in.  For example:

	      % dash -c 'x=good; x=bad echo >/dev/null; echo $x'
	      good

	      % jsh -c 'x=good; x=bad echo >/dev/null; echo $x'
	      bad

	    The config.sub script contains a few commands of the form:

	      IFS=- read ...

	    which triggers this bug, causing the IFS assignment to persist for the
	    remainder of the script.  This can cause misbehaviour in certain cases,
	    for example:

	      % jsh config.sub i386-linux-gnu
	      config.sub: test: unknown operator gnu

	      % jsh config.sub i386-gnu/linux
	      sed: can't read s|gnu/linux|gnu|: No such file or directory
	      Invalid configuration `i386-gnu/linux': OS `' not recognized

	    * config.sub: Save and restore IFS explicitly to avoid shell bugs.
	    * doc/config.sub.1: Regenerate.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-08-08  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c:
	fix memory-leak when replacing $$'s in destructor code (report/testcase
	by Boris Kolpackov).

	* main.c: account for a memory-leak

	* test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c,
	  test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c,
	  test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c,
	  test/btyacc/calc3.tab.c, test/btyacc/calc_code_all.tab.c,
	  test/btyacc/calc_code_default.tab.c,
	  test/btyacc/calc_code_imports.tab.c,
	  test/btyacc/calc_code_provides.tab.c,
	  test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c,
	  test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c,
	  test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c,
	  test/btyacc/defines3.calc.c, test/btyacc/empty.tab.c,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c,
	  test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c,
	  test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c,
	  test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c,
	  test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c,
	  test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c,
	  test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c,
	  test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c,
	  test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c,
	  test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c,
	  test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c,
	  test/btyacc/rename_debug.c, test/btyacc/stdin1.calc.c,
	  test/btyacc/stdin2.calc.c, test/btyacc/varsyntax_calc1.tab.c,
	  test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c,
	  test/yacc/calc3.tab.c, test/yacc/calc_code_all.tab.c,
	  test/yacc/calc_code_default.tab.c, test/yacc/calc_code_imports.tab.c,
	  test/yacc/calc_code_provides.tab.c,
	  test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c,
	  test/yacc/code_calc.code.c, test/yacc/code_error.code.c,
	  test/yacc/defines1.calc.c, test/yacc/defines2.calc.c,
	  test/yacc/defines3.calc.c, test/yacc/empty.tab.c,
	  test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c,
	  test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c,
	  test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c,
	  test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c,
	  test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c,
	  test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c,
	  test/yacc/quote_calc.tab.c, test/yacc/quote_calc2-s.tab.c,
	  test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c,
	  test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c,
	  test/yacc/quote_calc4.tab.c, test/yacc/rename_debug.c,
	  test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c,
	  test/yacc/varsyntax_calc1.tab.c, btyaccpar.c, yaccpar.c:
	regen

	* btyaccpar.skel, yaccpar.skel:
	revert change to initialization of yystate, which confuses gcc, making a
	different warning

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-08-04  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-08-04
	    From: Jeremy Soller <jackpot51@@gmail.com>
	    config.sub: add Linux Relibc Target

	    $ make check
	    cd testsuite && bash config-guess.sh && rm uname
	    PASS: config.guess checks (136 tests)
	    cd testsuite && bash config-sub.sh
	    PASS: config.sub checks (881 tests)
	    PASS: config.sub idempotency checks (818 tests)
	    PASS: config.sub canonicalise each config.guess testcase (136 tests)

	    * config.sub (relibc*): Recognize.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data (x86_64-linux-relibc): New test.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-08-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* main.c, yacc.1: add "-h" option

	* yacc.1: fix date

	* test/btyacc/no_b_opt.error, test/btyacc/no_output2.error,
	  test/btyacc/no_p_opt.error, test/btyacc/big_b.error,
	  test/btyacc/big_l.error, test/btyacc/help.error,
	  test/btyacc/nostdin.error, test/yacc/big_b.error,
	  test/yacc/big_l.error, test/yacc/help.error, test/yacc/no_b_opt.error,
	  test/yacc/no_output2.error, test/yacc/no_p_opt.error,
	  test/yacc/nostdin.error:
	regen

	* main.c:
	map any of bison's long-options which have a corresponding yacc option
	into the latter, without depending upon getopt_long().

	* main.c: suggested patch:
	From: Boris Kolpackov <boris@@codesynthesis.com>
	Subject: Re: [PATCH] support bison's --defines and --output options in byacc

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-08-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/inherit2.tab.c, test/btyacc/btyacc_destroy2.tab.c,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/err_inherit3.tab.c,
	  test/btyacc/err_inherit4.tab.c, test/btyacc/btyacc_demo.tab.c,
	  test/btyacc/btyacc_destroy1.tab.c:
	regen

	* output.c:
	fix a misplaced #line, which was after a generated line in the code-file

	* test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c,
	  test/yacc/quote_calc-s.tab.c, test/yacc/quote_calc.tab.c,
	  test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc2.tab.c,
	  test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c,
	  test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c,
	  test/yacc/varsyntax_calc1.tab.c, test/yacc/err_syntax18.tab.c,
	  test/yacc/err_syntax20.tab.c, test/yacc/expr.oxout.tab.c,
	  test/yacc/grammar.tab.c, test/yacc/calc.tab.c, test/yacc/calc1.tab.c,
	  test/yacc/calc2.tab.c, test/yacc/calc3.tab.c,
	  test/yacc/calc_code_all.tab.c, test/yacc/calc_code_default.tab.c,
	  test/yacc/calc_code_imports.tab.c, test/yacc/calc_code_provides.tab.c,
	  test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c,
	  test/yacc/code_calc.code.c, test/yacc/defines1.calc.c,
	  test/yacc/defines2.calc.c, test/yacc/defines3.calc.c,
	  test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c:
	regen

	* output.c:
	add a state-machine to output_semantic_actions() to detect and replace
	the "#line" directives added by Roland Illig's change, making them show
	the actual line-numbers in the code-file.

	* test/btyacc/pure_calc.tab.c, test/btyacc/quote_calc-s.tab.c,
	  test/btyacc/quote_calc.tab.c, test/btyacc/quote_calc2-s.tab.c,
	  test/btyacc/quote_calc2.tab.c, test/btyacc/quote_calc3-s.tab.c,
	  test/btyacc/quote_calc3.tab.c, test/btyacc/quote_calc4-s.tab.c,
	  test/btyacc/quote_calc4.tab.c, test/btyacc/varsyntax_calc1.tab.c,
	  test/btyacc/err_syntax18.tab.c, test/btyacc/err_syntax20.tab.c,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c,
	  test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c,
	  test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c,
	  test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c,
	  test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c,
	  test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c,
	  test/btyacc/calc3.tab.c, test/btyacc/calc_code_all.tab.c,
	  test/btyacc/calc_code_default.tab.c,
	  test/btyacc/calc_code_imports.tab.c,
	  test/btyacc/calc_code_provides.tab.c,
	  test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c,
	  test/btyacc/code_calc.code.c, test/btyacc/defines1.calc.c,
	  test/btyacc/defines2.calc.c, test/btyacc/defines3.calc.c,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c,
	  test/btyacc/stdin1.calc.c, test/btyacc/stdin2.calc.c:
	regen

	* reader.c:
	adapt a patch by Roland Illig which added #line directives with dummy
	filename and line number, because the debug information was incorrect.
	The actual fix (see output_semantic_actions) is to emit #line directives
	which correspond to the code-file.

	* reader.c: simplify an ifdef so I can balance {/}

	* output.c: use new macro

	* defs.h: add fprintf_lineno macro

	* reader.c:
	make that a little simpler - but I see that this should be using the
	code-file's line-numbering rather than ""

	* reader.c:
	make that into a macro, and add a begin_case() to more/less match (the
	#line's are not together in some btyacc cases...)

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-07-14  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: From: Roland Illig <roland.illig@@gmx.de>
	Subject: small patch for byacc
	...
	this splits up "\nbreak;\n" output to put #line directives after first "\n"

2021-07-06  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-07-06
	    From: Stephanos Ioannidis <root@@stephanos.io>
	    config.sub: add Zephyr RTOS support

	    This adds the Zephyr RTOS targets in preparation for implementing the
	    Zephyr RTOS-specific toolchain support.

	    $ make check
	    cd testsuite && bash config-guess.sh && rm uname
	    PASS: config.guess checks (136 tests)
	    cd testsuite && bash config-sub.sh
	    PASS: config.sub checks (880 tests)
	    PASS: config.sub idempotency checks (817 tests)
	    PASS: config.sub canonicalise each config.guess testcase (136 tests)

	    * config.sub (zephyr*): Recognize.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data: Add testcases for *-zephyr.

	    Signed-off-by: Stephanos Ioannidis <root@@stephanos.io>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-07-03  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-07-03
	    From: Ozkan Sezer <sezero@@users.sourceforge.net>
	    config.sub: disable shellcheck SC2006 / SC2268 warnings

	    This is in line with the recent config.guess change in commit
	    12fcf67c9108f4c4b581eaa302088782f0ee40ea

	    * config.sub (shellcheck disable): Add SC2006,SC2268.

	    Suggested-by: Jacob Bachmeyer <jcb@@gnu.org>
	    Signed-off-by: Ozkan Sezer <sezero@@users.sourceforge.net>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

	* config.sub: 2021-07-03
	    From: Ozkan Sezer <sezero@@users.sourceforge.net>
	    config.sub: normalize the quoting in the `echo FOO | sed ...`

	    Some cases quote the argument to echo and some do not.  At runtime
	    it probably does not matter because the substituted values will never
	    contain whitespace, but quoting them all would make shellcheck more
	    useful.

	    * config.sub: Consistently quote the argument of echo.
	    * doc/config.sub.1: Regenerate.

	    Suggested-by: Jacob Bachmeyer <jcb@@gnu.org>
	    Signed-off-by: Ozkan Sezer <sezero@@users.sourceforge.net>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-07-02  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-06-03
	    From: Ozkan Sezer <sezero@@users.sourceforge.net>
	    config.sub: replace POSIX $( ) with classic ` ` throughout

	    This is in line with the recent config.guess change in commit
	    d70c4fa934de164178054c3a60aaa0024ed07c91.

	    The patch was generated using patch-6.gawk script introduced in that
	    commit.

	    * config.sub: Revert POSIX command substitutions to classic form.

	    Signed-off-by: Ozkan Sezer <sezero@@users.sourceforge.net>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-06-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

	* test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c,
	  test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c,
	  test/btyacc/varsyntax_calc1.tab.c, test/btyacc/err_syntax18.tab.c,
	  test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c,
	  test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c,
	  test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c,
	  test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c,
	  test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c,
	  test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c,
	  test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c,
	  test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c,
	  test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c,
	  test/btyacc/calc3.tab.c, test/btyacc/calc_code_all.tab.c,
	  test/btyacc/calc_code_default.tab.c,
	  test/btyacc/calc_code_imports.tab.c,
	  test/btyacc/calc_code_provides.tab.c,
	  test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c,
	  test/btyacc/code_calc.code.c, test/btyacc/code_error.code.c,
	  test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c,
	  test/btyacc/defines3.calc.c, test/btyacc/empty.tab.c,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c,
	  test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c,
	  test/btyacc/err_syntax12.tab.c, test/btyacc/rename_debug.c,
	  btyaccpar.c, test/btyacc/stdin1.calc.c, test/btyacc/stdin2.calc.c,
	  test/yacc/quote_calc2-s.tab.c, test/yacc/quote_calc2.tab.c,
	  test/yacc/quote_calc3-s.tab.c, test/yacc/quote_calc3.tab.c,
	  test/yacc/quote_calc4-s.tab.c, test/yacc/quote_calc4.tab.c,
	  test/yacc/varsyntax_calc1.tab.c, test/yacc/err_syntax11.tab.c,
	  test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c,
	  test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c,
	  test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c,
	  test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c,
	  test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c,
	  test/yacc/quote_calc.tab.c, test/yacc/calc.tab.c,
	  test/yacc/calc1.tab.c, test/yacc/calc2.tab.c, test/yacc/calc3.tab.c,
	  test/yacc/calc_code_all.tab.c, test/yacc/calc_code_default.tab.c,
	  test/yacc/calc_code_imports.tab.c, test/yacc/calc_code_provides.tab.c,
	  test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c,
	  test/yacc/code_calc.code.c, test/yacc/code_error.code.c,
	  test/yacc/defines1.calc.c, test/yacc/defines2.calc.c,
	  test/yacc/defines3.calc.c, test/yacc/empty.tab.c,
	  test/yacc/err_syntax10.tab.c, test/yacc/rename_debug.c,
	  test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c, yaccpar.c:
	regen

	* btyaccpar.skel, yaccpar.skel: cancel unused assignments

	* output.c: gcc warning

	* test/run_test.sh, test/run_lint.sh, test/run_make.sh:
	shellcheck-warnings

2021-06-19  jannick0

	* test/run_test.sh: changes suggested at
		https://github.com/jannick0/byacc-snapshots/tree/YYINT-fix-20210520

2021-06-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-06-13  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4: resync with my-autoconf

2021-06-04  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-06-03
	    From: Vineet Gupta <Vineet.Gupta1@@synopsys.com>
	    Recognize arc32

	    This is the 32-bit variant of ARCv3 ISA (which is not compatible with the
	    32-bit ARCv2 ISA)

	    | make check
	    | cd testsuite && bash config-guess.sh && rm uname
	    | PASS: config.guess checks (136 tests)
	    | cd testsuite && bash config-sub.sh
	    | PASS: config.sub checks (864 tests)
	    | PASS: config.sub idempotency checks (801 tests)
	    | PASS: config.sub canonicalise each config.guess testcase (136 tests)

	    * config.guess (arc32:Linux:*:*): Recognize.
	    * config.sub (arc32): Likewise.
	    * doc/config.guess.1: Regenerate.
	    * doc/config.sub.1: Likewise.
	    * testsuite/config-guess.data: Add a test case for arc32.
	    * testsuite/config-sub.data (arc32, arc*-elf): Add test cases.

	    Signed-off-by: Vineet Gupta <vgupta@@synopsys.com>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

	* config.sub: 2021-06-03 (repaired)
	    From: Vineet Gupta <Vineet.Gupta1@@synopsys.com>
	    Recognize arc32

	    This is the 32-bit variant of ARCv3 ISA (which is not compatible with the
	    32-bit ARCv2 ISA)

	    | make check
	    | cd testsuite && bash config-guess.sh && rm uname
	    | PASS: config.guess checks (136 tests)
	    | cd testsuite && bash config-sub.sh
	    | PASS: config.sub checks (864 tests)
	    | PASS: config.sub idempotency checks (801 tests)
	    | PASS: config.sub canonicalise each config.guess testcase (136 tests)

	    * config.guess (arc32:Linux:*:*): Recognize.
	    * config.sub (arc32): Likewise.
	    * doc/config.guess.1: Regenerate.
	    * doc/config.sub.1: Likewise.
	    * testsuite/config-guess.data: Add a test case for arc32.
	    * testsuite/config-sub.data (arc32, arc*-elf): Add test cases.

	    Signed-off-by: Vineet Gupta <vgupta@@synopsys.com>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-05-26  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-05-24
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: manual fixups after previous automatic patch

	    The tool could not handle command substitutions that span lines, but
	    fortunately there were only two such substitutions in the script.

	    The test for which universe is active on Pyramid is rewritten into a
	    case block because it was the only use of a command substitution as an
	    argument to the test command, which would require quoting.

	    * config.guess: Rewrite "if" for Pyramid systems to "case".

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: replace POSIX $( ) with classic ` ` throughout

	    The previous replacement of backticks with POSIX command substitutions
	    was ill-considered and illogical: this script recognizes many archaic
	    machine types that probably never had POSIX shells, therefore it needs
	    to be able to run successfully under pre-POSIX shells.

	    This patch was generated using the included GNU Awk program.

	    * config.guess: Revert POSIX command substitutions to classic form.
	    * patch-6.gawk: Store the tool that produced the automated patch.

2021-05-25  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: manual fixup after previous automated patches

	    This patch provides the special handling for the GNU system.  As these
	    were two small and unique edits, they were not included in the scripts.

	    This patch also cleans up other minor issues that must be addressed
	    before reverting to classic command substitutions and updates
	    "shellcheck" directives to account for changes in this script and the
	    change in "shellcheck" towards reporting individual portability issues.

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: automatic fixups after previous automated patch

	    This patch was generated using the following command:

	      sed -i config.guess \
	          -e '/="[^"]\+"\(-\|$\)/s/="\([^"([:space:])]\+\)"/=\1/' \
	          -e '/="[^"]\+"[[:alnum:]]/s/="\$\([^([:space:])]\+\)"/=${\1}/' \
	          -e \
	    '/\$(echo[^|]\+|/s/\([^[:space:]]\)[[:space:]]*|[[:space:]]*sed/\1 | sed/g'

	    * config.guess: Remove unneeded quotes in other variable assignments,
	    standardize spacing for "echo ... | sed" substitutions.

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: remove unneeded quotes and factor command substitutions

	    This is further cleanup and simplifies some constructs that can confuse
	    Emacs' syntax highlighting while generally reducing required quoting.

	    This patch was generated using the included GNU Awk program.

	    * config.guess: Remove unneeded variable quotes and factor out command
	    substitutions when setting GUESS.
	    * patch-3.gawk: Store the tool that produced the automated patch.

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: manual fixups after previous automatic patch

	    * config.guess: Adjust a few "leftover" cases that the tool could not
	    easily recognize and fixes comment indentation in a few other special
	    cases.

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: introduce intermediate variable with uname results

	    This will allow quoting to be significantly simplified in another
	    pass through the file.

	    * config.guess: Introduce GUESS variable to hold results of uname analysis.

	* config.guess: 2021-05-24 (repaired)
	    From: Jacob Bachmeyer <jcb@@gnu.org>
	    config.guess: use intermediate variable with uname results

	    This will allow quoting to be significantly simplified in another
	    pass through the file.

	    This patch was generated using the included GNU Awk program.

	    * config.guess: Use GUESS variable to hold results of uname analysis.
	    * patch-1.gawk: Store the tool that produced the automated patch.

2021-05-24  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-05-24 (repaired)
	    From: Dmitry V. Levin <ldv@@altlinux.org>
	    config.guess: fix shellcheck warning SC2154

	    While, according to Plan 9 documentation, the environment variable
	    $cputype is set to the name of the kernel's CPU's architecture,
	    shellcheck warns that cputype is referenced but not assigned.
	    Be on the safe side and do not use cputype if it is not defined
	    or empty.

	    * config.guess (*:Plan9:*:*): Fix shellcheck warning SC2154.

	* config.guess: 2021-05-24 (repaired)
	    From: Dmitry V. Levin <ldv@@altlinux.org>
	    config.guess: remove redundant quotes in case commands

	    According to the GNU Autoconf Portable Shell Programming manual,
	    the Bourne shell does not systematically split variables and back-quoted
	    expressions, in particular on the right-hand side of assignments and in
	    the argument of 'case'.

	    The change is made automatically using the following command:
	    $ sed -E -i 's/(\<case )"(\$[^"]+)"( in\>)/\1\2\3/' config.guess

	    * config.guess: Simplify case commands by removing quotes around the
	    argument.

	    Suggested-by: Jacob Bachmeyer <jcb@@gnu.org>

	* config.guess: 2021-05-24 (repaired)
	    From: Dmitry V. Levin <ldv@@altlinux.org>
	    config.guess: simplify exit status workaround on alphaev67-dec-osf5.1

	    Commit 29865ea8a5622cdd80b7a69a0afa78004b4cd311 introduced an exit trap
	    reset before exiting to avoid a spurious non-zero exit status on
	    alphaev67-dec-osf5.1.  Simplify that code a bit by moving the exit trap
	    reset around.

	    * config.guess (alpha:OSF1:*:*): Reset exit trap earlier.
	    * doc/config.guess.1: Regenerate.

2021-05-20  Thomas E. Dickey  <dickey@@invisible-island.net>

	* test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_demo.tab.c,
	  test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy2.tab.c,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/calc.tab.c,
	  test/btyacc/calc1.tab.c, test/btyacc/calc2.tab.c,
	  test/btyacc/calc3.tab.c, test/btyacc/calc_code_all.tab.c,
	  test/btyacc/calc_code_default.tab.c,
	  test/btyacc/calc_code_imports.tab.c,
	  test/btyacc/calc_code_provides.tab.c,
	  test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c,
	  test/btyacc/code_calc.code.c, test/btyacc/code_calc.tab.c,
	  test/btyacc/code_error.code.c, test/btyacc/code_error.tab.c,
	  test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c,
	  test/btyacc/defines3.calc.c, test/btyacc/empty.tab.c,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c,
	  test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c,
	  test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c,
	  test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c,
	  test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c,
	  test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c,
	  test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c,
	  test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c,
	  test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c,
	  test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c,
	  test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c,
	  test/btyacc/rename_debug.c, test/btyacc/stdin1.calc.c,
	  test/btyacc/stdin2.calc.c, test/btyacc/varsyntax_calc1.tab.c,
	  test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c,
	  test/yacc/calc3.tab.c, test/yacc/calc_code_all.tab.c,
	  test/yacc/calc_code_default.tab.c, test/yacc/calc_code_imports.tab.c,
	  test/yacc/calc_code_provides.tab.c,
	  test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c,
	  test/yacc/code_calc.code.c, test/yacc/code_calc.tab.c,
	  test/yacc/code_error.code.c, test/yacc/code_error.tab.c,
	  test/yacc/defines1.calc.c, test/yacc/defines2.calc.c,
	  test/yacc/defines3.calc.c, test/yacc/empty.tab.c,
	  test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c,
	  test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c,
	  test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c,
	  test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c,
	  test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c,
	  test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c,
	  test/yacc/quote_calc.tab.c, test/yacc/quote_calc2-s.tab.c,
	  test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c,
	  test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c,
	  test/yacc/quote_calc4.tab.c, test/yacc/rename_debug.c,
	  test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c,
	  test/yacc/varsyntax_calc1.tab.c:
	regen

	* mkpar.c, reader.c: change printf format to allow for long-YYINT

	* lalr.c, lr0.c: change type, fix gcc warnings

	* verbose.c: change type, fix gcc warnings
	also change printf format, to allow for long YYINT

	* output.c: change type, fix gcc warnings
	also change printf format, to allow for long-YYINT

	* package/debian/rules, package/byacc.spec:
	change max-table-size to correspond with switch of YYINT from short to int

	* defs.h:
	change default for MAXTABLE to INT_MAX, like the FreeBSD port.
	that requires changing some types to eliminate type-mismatches.

	* configure: regen

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-05-01  Thomas E. Dickey  <dickey@@invisible-island.net>

	* aclocal.m4: resync with my-autoconf

2021-04-30  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-04-30 (repaired)
	    From: Maciej W. Rozycki <macro@@orcam.me.uk>
	    config.sub: Handle MIPS R3 and R5 ISA levels with CPU names

	    Complement binutils commit ae52f4830604 ("Add MIPS r3 and r5 support.")
	    and recognize MIPS CPU patterns for the R3 and R5 ISA levels, used by
	    GAS to set defaults.

	    * config.sub (mipsisa32r3, mipsisa32r3el, mipsisa32r5, mipsisa32r5el,
	    mipsisa64r3, mipsisa64r3el, mipsisa64r5, mipsisa64r5el): Recognize.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data: Add test cases.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-04-21  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess, config.sub: 2021-04-21 (repaired)
	    From: Vineet Gupta <Vineet.Gupta1@@synopsys.com>
	    Recognize arc64

	    This paves way for setting up arc64 software ecosystem.

	    $ make check
	    cd testsuite && bash config-guess.sh && rm uname
	    PASS: config.guess checks (136 tests)
	    cd testsuite && bash config-sub.sh
	    PASS: config.sub checks (853 tests)
	    PASS: config.sub idempotency checks (790 tests)
	    PASS: config.sub canonicalise each config.guess testcase (136 tests)

	    * config.guess (arc64:Linux:*:*): Recognize.
	    * config.sub (arc64): Likewise.
	    * doc/config.guess.1: Regenerate.
	    * doc/config.sub.1: Likewise.
	    * testsuite/config-guess.data: Add a test case for arc64.
	    * testsuite/config-sub.data (arc64, arc*-elf): Add test cases.

	    Signed-off-by: Vineet Gupta <vgupta@@synopsys.com>
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-04-16  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-04-16 (repaired)
	    From: Purple Rain <purplerain@@secbsd.org>
	    config.guess: add SecBSD support

	    * config.guess (*:SecBSD:*:*): Recognize.
	    * doc/config.guess.1: Regenerate.
	    * testsuite/config-guess.data: Add a test case.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

	* config.sub: 2021-04-16 (repaired)
	    From: Purple Rain <purplerain@@secbsd.org>
	    config.sub: add SecBSD support

	    * config.sub (secbsd*): Recognize.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data: Add x86_64-secbsd.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-03-28  Thomas E. Dickey  <dickey@@invisible-island.net>

	* reader.c: ignore bison's "%empty" extension

	* reader.c, defs.h:
	%debug was a trivial bison "extension", mark it as such

	* yacc.1: use italics in a few places where bold was inappropriate

	* test/btyacc/varsyntax_calc1.tab.c, test/btyacc/varsyntax_calc1.tab.h,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/expr.oxout.tab.h,
	  test/btyacc/inherit1.tab.c, test/btyacc/inherit1.tab.h,
	  test/btyacc/inherit2.tab.c, test/btyacc/inherit2.tab.h,
	  test/btyacc/ok_syntax1.tab.c, test/btyacc/ok_syntax1.tab.h,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit3.tab.h,
	  test/btyacc/err_inherit4.tab.c, test/btyacc/err_inherit4.tab.h,
	  test/btyacc/btyacc_calc1.tab.c, test/btyacc/btyacc_calc1.tab.h,
	  test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_demo.tab.h,
	  test/btyacc/btyacc_destroy1.tab.c, test/btyacc/btyacc_destroy1.tab.h,
	  test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy2.tab.h,
	  test/btyacc/btyacc_destroy3.tab.c, test/btyacc/btyacc_destroy3.tab.h,
	  test/btyacc/calc1.tab.c, test/btyacc/calc1.tab.h,
	  test/yacc/varsyntax_calc1.tab.c, test/yacc/varsyntax_calc1.tab.h,
	  test/yacc/expr.oxout.tab.c, test/yacc/expr.oxout.tab.h,
	  test/yacc/ok_syntax1.tab.c, test/yacc/ok_syntax1.tab.h,
	  test/yacc/calc1.tab.c, test/yacc/calc1.tab.h:
	regen

	* reader.c:
	add union tag to YYSTYPE structure for compatibility with a feature which
	bison copied from Solaris yacc (request by Ella Stanforth)

	* configure: regen

	* config_h.in: update for _Noreturn feature

	* aclocal.m4: updated to work with autoheader

	* defs.h: apply syntax change needed for _Noreturn keyword

	* package/byacc.spec, package/debian/rules: use stdnoreturn

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2021-03-20  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4:
	resync with my-autoconf (adds --enable-stdnoreturn option)

2021-03-10  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2021-03-10 (repaired)
	    From: Idan Horo <idan.horowitz@@gmail.com>
	    config.sub: Add support for SerenityOS

	    * config.sub (serenity*): Recognize.
	    * doc/config.sub.1: Regenerate.
	    * testsuite/config-sub.data: Add i386-serenity.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-01-25  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-01-25 (repaired)
	    From: Kalamatee <kalamatee@@gmail.com>
	    config.guess: update AROS system detection

	    * config.guess: Recognize *:AROS:*:*.
	    * doc/config.guess.1: Regenerate.
	    * testsuite/config-guess.data: Add test cases.

	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>

2021-01-19  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2021-01-19 (repaired)
	    From: M. Levinson <mlevins@@users.sourceforge.net>
	    config.guess: fix shell variable quoting bug

	    * config.guess (*:NetBSD:*:*): Spell out the full sysctl command twice
	    instead of using a shell variable.
	    * doc/config.guess.1: Regenerate.

	    Fixes: 827c77253b396c07306927b2a4b794a3251c48eb
	    Signed-off-by: Dmitry V. Levin <ldv@@altlinux.org>
@
text
@d3 1
a3 1
#   Copyright 1992-2023 Free Software Foundation, Inc.
d5 1
a5 3
# shellcheck disable=SC2006,SC2268 # see below for rationale

timestamp='2023-09-15'
d9 1
a9 1
# the Free Software Foundation, either version 3 of the License, or
d36 1
a36 1
# https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
a52 7
# The "shellcheck disable" line above the timestamp inhibits complaints
# about features and limitations of the classic Bourne shell that were
# superseded or lifted in POSIX.  However, this script identifies a wide
# variety of pre-POSIX systems that do not have POSIX shells at all, and
# even some reasonably current systems (Solaris 10 as case-in-point) still
# have a pre-POSIX /bin/sh.

d70 1
a70 1
Copyright 1992-2023 Free Software Foundation, Inc.
d76 1
a76 1
Try '$me --help' for more information."
a114 1
saved_IFS=$IFS
a117 1
IFS=$saved_IFS
d122 1
a122 1
		echo "Invalid configuration '$1': more than four components" >&2
d137 1
a137 2
			| storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \
			| windows-* )
a165 4
					zephyr*)
						basic_machine=$field1-unknown
						basic_os=$field2
						;;
a924 1
		saved_IFS=$IFS
a927 1
		IFS=$saved_IFS
d929 1
a929 1
	# We use 'pc' rather than 'unknown'
a1005 5
	armh-unknown | armh-alt)
		cpu=armv7l
		vendor=alt
		basic_os=${basic_os:-linux-gnueabihf}
		;;
d1056 1
a1056 1
	pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
d1107 1
a1107 1
	arm64-* | aarch64le-*)
d1161 1
a1161 1
			| aarch64 | aarch64_be | aarch64c | arm64ec \
d1168 1
a1168 1
			| arc | arceb | arc32 | arc64 \
a1179 1
			| javascript \
a1185 1
			| kvx \
a1187 1
			| loongarch32 | loongarch64 \
d1193 21
a1213 1
			| mips* \
d1232 1
a1232 1
			| riscv | riscv32 | riscv32be | riscv64 | riscv64be \
a1243 1
			| thumbv7* \
d1260 1
a1260 1
				echo "Invalid configuration '$1': machine '$cpu-$vendor' not recognized" 1>&2
d1281 1
a1281 1
if test x"$basic_os" != x
d1284 1
a1284 1
# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
a1285 1
obj=
d1289 1
a1289 5
		os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
		;;
	os2-emx)
		kernel=os2
		os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
d1293 1
a1293 1
		os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
a1296 1
		saved_IFS=$IFS
a1299 1
		IFS=$saved_IFS
d1304 1
a1304 1
		os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
d1308 1
a1308 5
		os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
		;;
	managarm*)
		kernel=managarm
		os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`
d1329 1
a1329 1
		os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
d1358 1
a1358 1
		os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
d1370 7
a1376 1
		os=qnx
d1440 1
a1440 1
		os=`echo "$os" | sed -e 's|sinix|sysv|'`
d1481 1
a1481 2
			os=
			obj=elf
a1484 5
	aout* | coff* | elf* | pe*)
		# These are machine code file formats, not OSes
		obj=$os
		os=
		;;
a1502 1
obj=
d1505 1
a1505 2
		os=
		obj=elf
d1508 1
a1508 2
		os=
		obj=elf
d1518 1
a1518 2
		os=
		obj=aout
d1521 1
a1521 2
		os=
		obj=coff
d1524 1
a1524 2
		os=
		obj=elf
d1530 1
a1530 2
		os=
		obj=elf
d1533 1
a1533 2
		os=
		obj=coff
d1536 1
a1536 2
		os=
		obj=coff
d1539 1
a1539 2
		os=
		obj=coff
d1561 1
a1561 2
		os=
		obj=aout
d1564 1
a1564 2
		os=
		obj=elf
d1567 1
a1567 2
		os=
		obj=elf
d1570 1
a1570 2
		os=
		obj=elf
d1573 1
a1573 2
		os=
		obj=coff
d1582 1
a1582 2
		os=
		obj=elf
d1663 1
a1663 2
		os=
		obj=coff
d1666 1
a1666 2
		os=
		obj=coff
d1684 1
a1684 2
# Now, validate our (potentially fixed-up) individual pieces (OS, OBJ).

d1686 2
a1687 5
	# Sometimes we do "kernel-libc", so those need to count as OSes.
	musl* | newlib* | relibc* | uclibc*)
		;;
	# Likewise for "kernel-abi"
	eabi* | gnueabi*)
d1689 2
a1690 5
	# VxWorks passes extra cpu info in the 4th filed.
	simlinux | simwindows | spe)
		;;
	# See `case $cpu-$os` validation below
	ghcjs)
d1700 1
a1700 1
	     | os9* | macos* | osx* | ios* | tvos* | watchos* \
d1707 1
a1707 1
	     | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
d1709 2
a1710 2
	     | bosx* | nextstep* | cxux* | oabi* \
	     | ptx* | ecoff* | winnt* | domain* | vsta* \
d1712 2
a1713 2
	     | chorusrdb* | cegcc* | glidix* | serenity* \
	     | cygwin* | msys* | moss* | proelf* | rtems* \
d1725 1
a1725 2
	     | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
	     | fiwix* | mlibc* | cos* | mbr* )
a1732 21
	kernel* | msvc* )
		# Restricted further below
		;;
	'')
		if test x"$obj" = x
		then
			echo "Invalid configuration '$1': Blank OS only allowed with explicit machine code file format" 1>&2
		fi
		;;
	*)
		echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2
		exit 1
		;;
esac

case $obj in
	aout* | coff* | elf* | pe*)
		;;
	'')
		# empty is fine
		;;
d1734 1
a1734 15
		echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2
		exit 1
		;;
esac

# Here we handle the constraint that a (synthetic) cpu and os are
# valid only in combination with each other and nowhere else.
case $cpu-$os in
	# The "javascript-unknown-ghcjs" triple is used by GHC; we
	# accept it here in order to tolerate that, but reject any
	# variations.
	javascript-ghcjs)
		;;
	javascript-* | *-ghcjs)
		echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2
d1741 2
a1742 7
case $kernel-$os-$obj in
	linux-gnu*- | linux-dietlibc*- | linux-android*- | linux-newlib*- \
		   | linux-musl*- | linux-relibc*- | linux-uclibc*- | linux-mlibc*- )
		;;
	uclinux-uclibc*- )
		;;
	managarm-mlibc*- | managarm-kernel*- )
d1744 1
a1744 3
	windows*-gnu*- | windows*-msvc*-)
		;;
	-dietlibc*- | -newlib*- | -musl*- | -relibc*- | -uclibc*- | -mlibc*- )
d1747 1
a1747 1
		echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2
d1750 1
a1750 3
	-kernel*- )
		echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2
		exit 1
d1752 1
a1752 13
	*-kernel*- )
		echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2
		exit 1
		;;
	*-msvc*- )
		echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2
		exit 1
		;;
	kfreebsd*-gnu*- | kopensolaris*-gnu*-)
		;;
	vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)
		;;
	nto-qnx*-)
d1754 1
a1754 1
	os2-emx-)
d1756 1
a1756 7
	*-eabi*- | *-gnueabi*-)
		;;
	none--*)
		# None (no kernel, i.e. freestanding / bare metal),
		# can be paired with an machine code file format
		;;
	-*-)
d1759 2
a1760 5
	--*)
		# Blank kernel and OS with real machine code file format is always fine.
		;;
	*-*-*)
		echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2
d1843 1
a1843 1
echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}"
@


1.1.1.13
log
@Import byacc-2024-12-31, previous was 2024-01-09

2024-12-31  Thomas E. Dickey  <dickey@@invisible-island.net>

	* package/pkgsrc/distinfo: regen

	* main.c: s/0/NULL/

	* main.c: gcc warning

	* reader.c:
	make UCH() consistent wrt IS_xxxx macros (prompted by patch by Christos Zoulas)

2024-12-31  Christos Zoulas <christos@@NetBSD.org>

	* main.c:
	from NetBSD - if "-o" option is given, derive the filename of the ".h"
	definitions-file by stripping commonly-used C/C++ suffixes such as ".c"
	and then adding ".h"

2024-12-31  Thomas E. Dickey  <dickey@@invisible-island.net>

	* main.c: provide a fallback definition for W_OK, e.g., for Windows

	* package/pkgsrc/Makefile:
	resync with pkgsrc in NetBSD 10 (report by Roland Illig)

	* yacc.1: minor typographical fixes

	* main.c: correct condition for using $TEMP environment variable
	(report by Johann 'Myrkraverk' Oskarsson)

	* VERSION, package/byacc.spec, package/debian/changelog,
	  package/mingw-byacc.spec, package/pkgsrc/Makefile:
	bump

2024-12-21  Thomas E. Dickey  <dickey@@invisible-island.net>

	* configure: regen

	* aclocal.m4: resync with my-autoconf

2024-12-14  Thomas E. Dickey  <dickey@@invisible-island.net>

	* output.c, yaccpar.c: gcc15 zero vs null warnings

	* test/yacc/calc.tab.c, test/yacc/calc1.tab.c, test/yacc/calc2.tab.c,
	  test/yacc/calc3.tab.c, test/yacc/calc_code_all.tab.c,
	  test/yacc/calc_code_default.tab.c, test/yacc/calc_code_imports.tab.c,
	  test/yacc/calc_code_provides.tab.c,
	  test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_top.tab.c,
	  test/yacc/code_calc.code.c, test/yacc/code_calc.tab.c,
	  test/yacc/code_error.code.c, test/yacc/code_error.tab.c,
	  test/yacc/defines1.calc.c, test/yacc/defines2.calc.c,
	  test/yacc/defines3.calc.c, test/yacc/empty.tab.c,
	  test/yacc/err_syntax10.tab.c, test/yacc/err_syntax11.tab.c,
	  test/yacc/err_syntax12.tab.c, test/yacc/err_syntax18.tab.c,
	  test/yacc/err_syntax20.tab.c, test/yacc/error.tab.c,
	  test/yacc/expr.oxout.tab.c, test/yacc/grammar.tab.c,
	  test/yacc/ok_syntax1.tab.c, test/yacc/pure_calc.tab.c,
	  test/yacc/pure_error.tab.c, test/yacc/quote_calc-s.tab.c,
	  test/yacc/quote_calc.tab.c, test/yacc/quote_calc2-s.tab.c,
	  test/yacc/quote_calc2.tab.c, test/yacc/quote_calc3-s.tab.c,
	  test/yacc/quote_calc3.tab.c, test/yacc/quote_calc4-s.tab.c,
	  test/yacc/quote_calc4.tab.c, test/yacc/rename_debug.c,
	  test/yacc/stdin1.calc.c, test/yacc/stdin2.calc.c,
	  test/yacc/varsyntax_calc1.tab.c, test/btyacc/btyacc_calc1.tab.c,
	  test/btyacc/btyacc_demo.tab.c, test/btyacc/btyacc_destroy1.tab.c,
	  test/btyacc/btyacc_destroy2.tab.c, test/btyacc/btyacc_destroy3.tab.c,
	  test/btyacc/calc.tab.c, test/btyacc/calc1.tab.c,
	  test/btyacc/calc2.tab.c, test/btyacc/calc3.tab.c,
	  test/btyacc/calc_code_all.tab.c, test/btyacc/calc_code_default.tab.c,
	  test/btyacc/calc_code_imports.tab.c,
	  test/btyacc/calc_code_provides.tab.c,
	  test/btyacc/calc_code_requires.tab.c, test/btyacc/calc_code_top.tab.c,
	  test/btyacc/code_calc.code.c, test/btyacc/code_calc.tab.c,
	  test/btyacc/code_error.code.c, test/btyacc/code_error.tab.c,
	  test/btyacc/defines1.calc.c, test/btyacc/defines2.calc.c,
	  test/btyacc/defines3.calc.c, test/btyacc/empty.tab.c,
	  test/btyacc/err_inherit3.tab.c, test/btyacc/err_inherit4.tab.c,
	  test/btyacc/err_syntax10.tab.c, test/btyacc/err_syntax11.tab.c,
	  test/btyacc/err_syntax12.tab.c, test/btyacc/err_syntax18.tab.c,
	  test/btyacc/err_syntax20.tab.c, test/btyacc/error.tab.c,
	  test/btyacc/expr.oxout.tab.c, test/btyacc/grammar.tab.c,
	  test/btyacc/inherit0.tab.c, test/btyacc/inherit1.tab.c,
	  test/btyacc/inherit2.tab.c, test/btyacc/ok_syntax1.tab.c,
	  test/btyacc/pure_calc.tab.c, test/btyacc/pure_error.tab.c,
	  test/btyacc/quote_calc-s.tab.c, test/btyacc/quote_calc.tab.c,
	  test/btyacc/quote_calc2-s.tab.c, test/btyacc/quote_calc2.tab.c,
	  test/btyacc/quote_calc3-s.tab.c, test/btyacc/quote_calc3.tab.c,
	  test/btyacc/quote_calc4-s.tab.c, test/btyacc/quote_calc4.tab.c,
	  test/btyacc/rename_debug.c, test/btyacc/stdin1.calc.c,
	  test/btyacc/stdin2.calc.c, test/btyacc/varsyntax_calc1.tab.c:
	regen

	* lalr.c, mstring.c, reader.c, btyaccpar.c, test/expr.oxout.y,
	  test/grammar.y, test/varsyntax_calc1.y, test/err_syntax27.y,
	  test/calc1.y, test/btyacc_demo.y, test/btyacc_calc1.y, symtab.c,
	  main.c, mkpar.c, lr0.c, defs.h, error.c:
	gcc15 zero vs null warnings

	* configure: regen

	* aclocal.m4: resync with my-autoconf

	* package/pkgsrc/Makefile, VERSION, package/byacc.spec,
	  package/debian/changelog, package/mingw-byacc.spec:
	bump

2024-07-28  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.guess: 2024-07-27

2024-06-03  Thomas E. Dickey  <dickey@@invisible-island.net>

	* config.sub: 2024-05-27
@
text
@d3 1
a3 1
#   Copyright 1992-2024 Free Software Foundation, Inc.
d5 1
a5 1
# shellcheck disable=SC2006,SC2268,SC2162 # see below for rationale
d7 1
a7 1
timestamp='2024-05-27'
d79 1
a79 1
Copyright 1992-2024 Free Software Foundation, Inc.
d123 1
d145 4
a148 14
			  cloudabi*-eabi* \
			| kfreebsd*-gnu* \
			| knetbsd*-gnu* \
			| kopensolaris*-gnu* \
			| linux-* \
			| managarm-* \
			| netbsd*-eabi* \
			| netbsd*-gnu* \
			| nto-qnx* \
			| os2-emx* \
			| rtmk-nova* \
			| storm-chaos* \
			| uclinux-gnu* \
			| uclinux-uclibc* \
d164 1
a165 5
			# Shorthands that happen to contain a single dash
			convex-c[12] | convex-c3[248])
				basic_machine=$field2-convex
				basic_os=
				;;
d173 1
a173 1
					# Do not treat sunos as a manufacturer
d178 4
d183 9
a191 69
					  3100* \
					| 32* \
					| 3300* \
					| 3600* \
					| 7300* \
					| acorn \
					| altos* \
					| apollo \
					| apple \
					| atari \
					| att* \
					| axis \
					| be \
					| bull \
					| cbm \
					| ccur \
					| cisco \
					| commodore \
					| convergent* \
					| convex* \
					| cray \
					| crds \
					| dec* \
					| delta* \
					| dg \
					| digital \
					| dolphin \
					| encore* \
					| gould \
					| harris \
					| highlevel \
					| hitachi* \
					| hp \
					| ibm* \
					| intergraph \
					| isi* \
					| knuth \
					| masscomp \
					| microblaze* \
					| mips* \
					| motorola* \
					| ncr* \
					| news \
					| next \
					| ns \
					| oki \
					| omron* \
					| pc533* \
					| rebel \
					| rom68k \
					| rombug \
					| semi \
					| sequent* \
					| siemens \
					| sgi* \
					| siemens \
					| sim \
					| sni \
					| sony* \
					| stratus \
					| sun \
					| sun[234]* \
					| tektronix \
					| tti* \
					| ultra \
					| unicom* \
					| wec \
					| winbond \
					| wrs)
a194 4
					zephyr*)
						basic_machine=$field1-unknown
						basic_os=$field2
						;;
d275 20
d717 2
a718 1
	delta | 3300 | delta-motorola | 3300-motorola | motorola-delta | motorola-3300)
d722 1
a722 6
	# This used to be dpx2*, but that gets the RS6000-based
	# DPX/20 and the x86-based DPX/2-100 wrong.  See
	# https://oldskool.silicium.org/stations/bull_dpx20.htm
	# https://www.feb-patrimoine.com/english/bull_dpx2.htm
	# https://www.feb-patrimoine.com/english/unix_and_bull.htm
	dpx2 | dpx2[23]00 | dpx2[23]xx)
d725 1
a725 8
		;;
	dpx2100 | dpx21xx)
		cpu=i386
		vendor=bull
		;;
	dpx20)
		cpu=rs6000
		vendor=bull
d840 12
d940 1
d975 2
a976 6
	# Here we handle the default manufacturer of certain CPU types in canonical form.
	# It is in some cases the only manufacturer, in others, it is the most popular.
	c[12]-convex | c[12]-unknown | c3[248]-convex | c3[248]-unknown)
		vendor=convex
		basic_os=${basic_os:-bsd}
		;;
d983 1
a983 1
		basic_os=${basic_os:-unicos}
d1029 3
a1031 18

	# Normalized CPU+vendor pairs that imply an OS, if not otherwise specified
	m68k-isi)
		basic_os=${basic_os:-sysv}
		;;
	m68k-sony)
		basic_os=${basic_os:-newsos}
		;;
	m68k-tektronix)
		basic_os=${basic_os:-bsd}
		;;
	m88k-harris)
		basic_os=${basic_os:-sysv3}
		;;
	i386-bull | m68k-bull)
		basic_os=${basic_os:-sysv3}
		;;
	rs6000-bull)
a1033 3
	mips-sni)
		basic_os=${basic_os:-sysv4}
		;;
d1041 1
a1041 1
		basic_os=${basic_os:-linux}
d1064 1
a1064 1
		basic_os=${basic_os:-linux}
d1074 1
a1074 1
		basic_os=${basic_os:-linux}
d1088 3
d1124 3
d1182 1
a1182 3
			  1750a \
			| 580 \
			| [cjt]90 \
d1184 1
a1184 3
			| aarch64 \
			| aarch64_be \
			| aarch64c \
d1186 3
a1188 10
			| alpha \
			| alpha64 \
			| alpha64ev56 \
			| alpha64ev6[78] \
			| alpha64ev[4-8] \
			| alpha64pca5[67] \
			| alphaev56 \
			| alphaev6[78] \
			| alphaev[4-8] \
			| alphapca5[67] \
d1191 3
a1193 10
			| arc \
			| arc32 \
			| arc64 \
			| arceb \
			| arm \
			| arm64e \
			| arm64ec \
			| arm[lb]e \
			| arme[lb] \
			| armv* \
a1194 2
			| avr \
			| avr32 \
d1196 10
a1205 29
			| be32 \
			| be64 \
			| bfin \
			| bpf \
			| bs2000 \
			| c30 \
			| c4x \
			| c8051 \
			| c[123]* \
			| clipper \
			| craynv \
			| csky \
			| cydra \
			| d10v \
			| d30v \
			| dlx \
			| dsp16xx \
			| e2k \
			| elxsi \
			| epiphany \
			| f30[01] \
			| f700 \
			| fido \
			| fr30 \
			| frv \
			| ft32 \
			| fx80 \
			| h8300 \
			| h8500 \
d1207 2
a1208 14
			| hppa \
			| hppa1.[01] \
			| hppa2.0 \
			| hppa2.0[nw] \
			| hppa64 \
			| i*86 \
			| i370 \
			| i860 \
			| i960 \
			| ia16 \
			| ia64 \
			| ip2k \
			| iq2000 \
			| javascript \
d1211 1
a1211 2
			| le32 \
			| le64 \
d1213 6
a1218 25
			| loongarch32 \
			| loongarch64 \
			| m32c \
			| m32r \
			| m32rle \
			| m5200 \
			| m68000 \
			| m680[012346]0 \
			| m6811 \
			| m6812 \
			| m68360 \
			| m683?2 \
			| m68hc11 \
			| m68hc12 \
			| m68hcs12x \
			| m68k \
			| m88110 \
			| m88k \
			| maxq \
			| mb \
			| mcore \
			| mep \
			| metag \
			| microblaze \
			| microblazeel \
d1221 1
a1221 2
			| mn10200 \
			| mn10300 \
d1223 1
d1225 1
a1225 5
			| mt \
			| nanomips* \
			| nds32 \
			| nds32be \
			| nds32le \
d1227 2
a1228 9
			| nios \
			| nios2 \
			| nios2eb \
			| nios2el \
			| none \
			| np1 \
			| ns16k \
			| ns32k \
			| nvptx \
a1232 2
			| pdp10 \
			| pdp11 \
d1234 2
a1235 9
			| pj \
			| pjl \
			| pn \
			| power \
			| powerpc \
			| powerpc64 \
			| powerpc64le \
			| powerpcle \
			| powerpcspe \
d1238 3
a1240 11
			| riscv \
			| riscv32 \
			| riscv32be \
			| riscv64 \
			| riscv64be \
			| rl78 \
			| romp \
			| rs6000 \
			| rx \
			| s390 \
			| s390x \
d1242 4
a1245 19
			| sh \
			| sh64 \
			| sh64le \
			| sh[12345][lb]e \
			| sh[1234] \
			| sh[1234]e[lb] \
			| sh[23]e \
			| sh[23]ele \
			| sh[24]a \
			| sh[24]ae[lb] \
			| sh[lb]e \
			| she[lb] \
			| shl \
			| sparc \
			| sparc64 \
			| sparc64b \
			| sparc64v \
			| sparc86x \
			| sparclet \
d1247 1
a1247 4
			| sparcv8 \
			| sparcv9 \
			| sparcv9b \
			| sparcv9v \
a1248 2
			| sv1 \
			| sx* \
d1251 1
a1251 6
			| tic30 \
			| tic4x \
			| tic54x \
			| tic55x \
			| tic6x \
			| tic80 \
d1254 1
a1254 8
			| v70 \
			| v810 \
			| v850 \
			| v850e \
			| v850e1 \
			| v850e2 \
			| v850e2v3 \
			| v850es \
a1255 1
			| vc4 \
d1258 1
a1258 2
			| wasm32 \
			| wasm64 \
d1260 2
a1261 7
			| x86 \
			| x86_64 \
			| xc16x \
			| xgate \
			| xps100 \
			| xstormy16 \
			| xtensa* \
d1263 1
a1263 2
			| z80 \
			| z8k)
d1308 1
a1354 17
	# The marketing names for NeXT's operating systems were
	# NeXTSTEP, NeXTSTEP 2, OpenSTEP 3, OpenSTEP 4.  'openstep' is
	# mapped to 'openstep3', but 'openstep1' and 'openstep2' are
	# mapped to 'nextstep' and 'nextstep2', consistent with the
	# treatment of SunOS/Solaris.
	ns | ns1 | nextstep | nextstep1 | openstep1)
		os=nextstep
		;;
	ns2 | nextstep2 | openstep2)
		os=nextstep2
		;;
	ns3 | nextstep3 | openstep | openstep3)
		os=openstep3
		;;
	ns4 | nextstep4 | openstep4)
		os=openstep4
		;;
a1424 1
		vendor=`echo "$vendor" | sed -e 's|^unknown$|tektronix|'`
d1441 1
a1441 1
	ctix*)
a1442 1
		vendor=`echo "$vendor" | sed -e 's|^unknown$|convergent|'`
d1444 2
a1445 2
	uts*)
		os=sysv
d1447 2
a1448 3
	nova*)
		kernel=rtmk
		os=nova
a1452 1
		vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
a1455 1
		vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
a1595 8
	# The -sgi and -siemens entries must be before the mips- entry
	# or we get the wrong os.
	*-sgi)
		os=irix
		;;
	*-siemens)
		os=sysv4
		;;
d1600 1
a1600 1
	mips*-*|nanomips*-*)
d1608 1
a1608 2
	# This must be before the sparc-* entry or we get the wrong os.
	*-tti)
d1640 1
a1640 1
		os=hiuxwe2
d1684 6
d1724 1
a1724 1
	llvm* | musl* | newlib* | relibc* | uclibc*)
d1736 1
d1738 32
a1769 186
	  abug \
	| aix* \
	| amdhsa* \
	| amigados* \
	| amigaos* \
	| android* \
	| aof* \
	| aos* \
	| aros* \
	| atheos* \
	| auroraux* \
	| aux* \
	| beos* \
	| bitrig* \
	| bme* \
	| bosx* \
	| bsd* \
	| cegcc* \
	| chorusos* \
	| chorusrdb* \
	| clix* \
	| cloudabi* \
	| cnk* \
	| conix* \
	| cos* \
	| cxux* \
	| cygwin* \
	| darwin* \
	| dgux* \
	| dicos* \
	| dnix* \
	| domain* \
	| dragonfly* \
	| drops* \
	| ebmon* \
	| ecoff* \
	| ekkobsd* \
	| emscripten* \
	| emx* \
	| es* \
	| fiwix* \
	| freebsd* \
	| fuchsia* \
	| genix* \
	| genode* \
	| glidix* \
	| gnu* \
	| go32* \
	| haiku* \
	| hcos* \
	| hiux* \
	| hms* \
	| hpux* \
	| ieee* \
	| interix* \
	| ios* \
	| iris* \
	| irix* \
	| ironclad* \
	| isc* \
	| its* \
	| l4re* \
	| libertybsd* \
	| lites* \
	| lnews* \
	| luna* \
	| lynxos* \
	| mach* \
	| macos* \
	| magic* \
	| mbr* \
	| midipix* \
	| midnightbsd* \
	| mingw32* \
	| mingw64* \
	| minix* \
	| mint* \
	| mirbsd* \
	| mks* \
	| mlibc* \
	| mmixware* \
	| mon960* \
	| morphos* \
	| moss* \
	| moxiebox* \
	| mpeix* \
	| mpw* \
	| msdos* \
	| msys* \
	| mvs* \
	| nacl* \
	| netbsd* \
	| netware* \
	| newsos* \
	| nextstep* \
	| nindy* \
	| nonstopux* \
	| nova* \
	| nsk* \
	| nucleus* \
	| nx6 \
	| nx7 \
	| oabi* \
	| ohos* \
	| onefs* \
	| openbsd* \
	| openedition* \
	| openstep* \
	| os108* \
	| os2* \
	| os400* \
	| os68k* \
	| os9* \
	| ose* \
	| osf* \
	| oskit* \
	| osx* \
	| palmos* \
	| phoenix* \
	| plan9* \
	| powermax* \
	| powerunix* \
	| proelf* \
	| psos* \
	| psp* \
	| ptx* \
	| pw32* \
	| qnx* \
	| rdos* \
	| redox* \
	| rhapsody* \
	| riscix* \
	| riscos* \
	| rtems* \
	| rtmk* \
	| rtu* \
	| scout* \
	| secbsd* \
	| sei* \
	| serenity* \
	| sim* \
	| skyos* \
	| solaris* \
	| solidbsd* \
	| sortix* \
	| storm-chaos* \
	| sunos \
	| sunos[34]* \
	| superux* \
	| syllable* \
	| sym* \
	| sysv* \
	| tenex* \
	| tirtos* \
	| toppers* \
	| tops10* \
	| tops20* \
	| tpf* \
	| tvos* \
	| twizzler* \
	| uclinux* \
	| udi* \
	| udk* \
	| ultrix* \
	| unicos* \
	| uniplus* \
	| unleashed* \
	| unos* \
	| uwin* \
	| uxpv* \
	| v88r* \
	|*vms* \
	| vos* \
	| vsta* \
	| vxsim* \
	| vxworks* \
	| wasi* \
	| watchos* \
	| wince* \
	| windiss* \
	| windows* \
	| winnt* \
	| xenix* \
	| xray* \
	| zephyr* \
	| zvmoe* )
a1774 7
	# This refers to builds using the UEFI calling convention
	# (which depends on the architecture) and PE file format.
	# Note that this is both a different calling convention and
	# different file format than that of GNU-EFI
	# (x86_64-w64-mingw32).
	uefi)
		;;
d1821 2
a1822 3
	linux-gnu*- | linux-android*- | linux-dietlibc*- | linux-llvm*- \
		    | linux-mlibc*- | linux-musl*- | linux-newlib*- \
		    | linux-relibc*- | linux-uclibc*- | linux-ohos*- )
d1824 1
a1824 1
	uclinux-uclibc*- | uclinux-gnu*- )
d1828 1
a1828 1
	windows*-msvc*-)
d1830 1
a1830 2
	-dietlibc*- | -llvm*- | -mlibc*- | -musl*- | -newlib*- | -relibc*- \
		    | -uclibc*- )
d1848 1
a1848 1
	kfreebsd*-gnu*- | knetbsd*-gnu*- | netbsd*-gnu*- | kopensolaris*-gnu*-)
a1855 2
	rtmk-nova-)
		;;
d1882 1
a1882 1
			*-sunos* | *-solaris*)
@


1.1.1.14
log
@Import byacc-20260126 (previous was 20241231)

2026-01-24  Thomas E. Dickey  <dickey@@invisible-island.net>

    * test/expr.oxout.h, test/btyacc/calc_code_all.tab.c,
      test/btyacc/calc_code_all.tab.h, test/btyacc/calc_code_default.tab.c,
      test/btyacc/calc_code_provides.tab.c,
      test/btyacc/calc_code_provides.tab.h,
      test/btyacc/calc_code_requires.tab.c,
      test/btyacc/calc_code_requires.tab.h, test/btyacc/calc_code_top.tab.c,
      test/btyacc/ok_syntax1.tab.c, test/btyacc/ok_syntax1.tab.h,
      test/yacc/calc_code_all.tab.c, test/yacc/calc_code_all.tab.h,
      test/yacc/calc_code_default.tab.c, test/yacc/calc_code_provides.tab.c,
      test/yacc/calc_code_provides.tab.h,
      test/yacc/calc_code_requires.tab.c, test/yacc/calc_code_requires.tab.h,
      test/yacc/calc_code_top.tab.c, test/yacc/ok_syntax1.tab.c,
      test/yacc/ok_syntax1.tab.h:
    trim

    * output.c, defs.h, reader.c:
    add/use puts_trim() to trim trailing blanks from output files

    * package/debian/copyright: bump

    * configure: regen

    * VERSION, package/byacc.spec, package/debian/changelog,
      package/mingw-byacc.spec, package/pkgsrc/Makefile:
    bump

2025-12-25  Thomas E. Dickey  <dickey@@invisible-island.net>

    * aclocal.m4: resync with my-autoconf

2025-12-14  Thomas E. Dickey  <dickey@@invisible-island.net>

    * VERSION, package/byacc.spec, package/debian/changelog,
      package/mingw-byacc.spec, package/pkgsrc/Makefile:
    bump

    * configure: regen

    * aclocal.m4:
    resync with my-autoconf: reduces warnings if "modern" autoconf is used

    * configure.in: adjusted with autoupdate

2025-11-11  Thomas E. Dickey  <dickey@@invisible-island.net>

    * configure: regen

    * aclocal.m4: resync with my-autoconf
    fixes for portability vs "t64" variants of glibc

2025-10-07  Thomas E. Dickey  <dickey@@invisible-island.net>

    * main.c, closure.c, graph.c, lalr.c, lr0.c, mkpar.c, output.c,
      reader.c, verbose.c, warshall.c:
    cppcheck

    * package/debian/copyright, VERSION, package/byacc.spec,
      package/debian/changelog, package/mingw-byacc.spec,
      package/pkgsrc/Makefile:
    bump

    * configure: regen

    * aclocal.m4: resync with my-autoconf
    use CF_PROG_INSTALL

    * configure.in: use CF_PROG_INSTALL

2025-07-09  Thomas E. Dickey  <dickey@@invisible-island.net>

    * config.guess, config.sub: update to 2025-07-10

2025-06-08  Thomas E. Dickey  <dickey@@invisible-island.net>

    * install-sh: fix license
@
text
@d3 1
a3 1
#   Copyright 1992-2025 Free Software Foundation, Inc.
d7 1
a7 1
timestamp='2025-07-10'
d79 1
a79 1
Copyright 1992-2025 Free Software Foundation, Inc.
a147 1
			| ironclad-* \
d245 1
d264 1
a264 1
					tock* | zephyr*)
d1197 1
a1197 1
	arm64-* | aarch64le-* | arm64_32-*)
a1323 1
			| intelgt \
a1524 4
	ironclad*)
		kernel=ironclad
		os=`echo "$basic_os" | sed -e 's|ironclad|mlibc|'`
		;;
a1978 1
	| banan_os* \
d2025 1
a2120 1
	| tock* \
a2216 2
	ironclad-mlibc*-)
		;;
a2251 2
	ios*-simulator- | tvos*-simulator- | watchos*-simulator- )
		;;
d2350 1
a2350 1
# eval: (add-hook 'before-save-hook 'time-stamp nil t)
d2352 1
a2352 1
# time-stamp-format: "%Y-%02m-%02d"
@


