@ 260915.5

230821.5 · 67ff835028d45557d37ecd3b222b8c973fe5a415

update docs

reading declarations

.gitattributes

new file mode 100644@@ -0,0 +1,2 @@+# Auto detect text files and perform LF normalization+* text=auto

CODE_OF_CONDUCT.md

new file mode 100644@@ -0,0 +1,80 @@+Contributor Covenant Code of Conduct+====================================++Our Pledge+----------++In the interest of fostering an open and welcoming environment, we as+contributors and maintainers pledge to making participation in our project and+our community a harassment-free experience for everyone, regardless of age,+body size, disability, ethnicity, gender identity and expression, level of+experience, nationality, personal appearance, race, religion, or sexual+identity and orientation.++Our Standards+-------------++Examples of behavior that contributes to creating a positive environment+include:++- Using welcoming and inclusive language+- Being respectful of differing viewpoints and experiences+- Gracefully accepting constructive criticism+- Focusing on what is best for the community+- Showing empathy towards other community members++Examples of unacceptable behavior by participants include:++- The use of sexualized language or imagery and unwelcome sexual attention or+  advances+- Trolling, insulting/derogatory comments, and personal or political attacks+- Public or private harassment+- Publishing others' private information, such as a physical or electronic+  address, without explicit permission+- Other conduct which could reasonably be considered inappropriate in a+  professional setting++Our Responsibilities+--------------------++Project maintainers are responsible for clarifying the standards of acceptable+behavior and are expected to take appropriate and fair corrective action in+response to any instances of unacceptable behavior.++Project maintainers have the right and responsibility to remove, edit, or+reject comments, commits, code, wiki edits, issues, and other contributions+that are not aligned to this Code of Conduct, or to ban temporarily or+permanently any contributor for other behaviors that they deem inappropriate,+threatening, offensive, or harmful.++Scope+-----++This Code of Conduct applies both within project spaces and in public spaces+when an individual is representing the project or its community. Examples of+representing a project or community include using an official project e-mail+address, posting via an official social media account, or acting as an+appointed representative at an online or offline event. Representation of a+project may be further defined and clarified by project maintainers.++Enforcement+-----------++Instances of abusive, harassing, or otherwise unacceptable behavior may be+reported by contacting the project team at <contact@genivia.com>. All+complaints will be reviewed and investigated and will result in a response that+is deemed necessary and appropriate to the circumstances. The project team is+obligated to maintain confidentiality with regard to the reporter of an+incident. Further details of specific enforcement policies may be posted+separately.++Project maintainers who do not follow or enforce the Code of Conduct in good+faith may face temporary or permanent repercussions as determined by other+members of the project's leadership.++Attribution+-----------++This Code of Conduct is adapted from the Contributor Covenant, version 1.4,+available at <http://contributor-covenant.org/version/1/4>.+

LICENSE.txt

new file mode 100644@@ -0,0 +1,29 @@+BSD 3-Clause License++Copyright (c) 2023, Robert van Engelen, Genivia Inc.+All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++1. Redistributions of source code must retain the above copyright notice, this+   list of conditions and the following disclaimer.++2. Redistributions in binary form must reproduce the above copyright notice,+   this list of conditions and the following disclaimer in the documentation+   and/or other materials provided with the distribution.++3. Neither the name of the copyright holder nor the names of its+   contributors may be used to endorse or promote products derived from+   this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

ar-lib

new file mode 100755@@ -0,0 +1,270 @@+#! /bin/sh+# Wrapper for Microsoft lib.exe++me=ar-lib+scriptversion=2012-03-01.08; # UTC++# Copyright (C) 2010-2018 Free Software Foundation, Inc.+# Written by Peter Rosin <peda@lysator.liu.se>.+#+# This program 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, 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 file is maintained in Automake, please report+# bugs to <bug-automake@gnu.org> or send patches to+# <automake-patches@gnu.org>.+++# func_error message+func_error ()+{+  echo "$me: $1" 1>&2+  exit 1+}++file_conv=++# func_file_conv build_file+# Convert a $build file to $host form and store it in $file+# Currently only supports Windows hosts.+func_file_conv ()+{+  file=$1+  case $file in+    / | /[!/]*) # absolute file, and not a UNC file+      if test -z "$file_conv"; then+	# lazily determine how to convert abs files+	case `uname -s` in+	  MINGW*)+	    file_conv=mingw+	    ;;+	  CYGWIN*)+	    file_conv=cygwin+	    ;;+	  *)+	    file_conv=wine+	    ;;+	esac+      fi+      case $file_conv in+	mingw)+	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`+	  ;;+	cygwin)+	  file=`cygpath -m "$file" || echo "$file"`+	  ;;+	wine)+	  file=`winepath -w "$file" || echo "$file"`+	  ;;+      esac+      ;;+  esac+}++# func_at_file at_file operation archive+# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE+# for each of them.+# When interpreting the content of the @FILE, do NOT use func_file_conv,+# since the user would need to supply preconverted file names to+# binutils ar, at least for MinGW.+func_at_file ()+{+  operation=$2+  archive=$3+  at_file_contents=`cat "$1"`+  eval set x "$at_file_contents"+  shift++  for member+  do+    $AR -NOLOGO $operation:"$member" "$archive" || exit $?+  done+}++case $1 in+  '')+     func_error "no command.  Try '$0 --help' for more information."+     ;;+  -h | --h*)+    cat <<EOF+Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]++Members may be specified in a file named with @FILE.+EOF+    exit $?+    ;;+  -v | --v*)+    echo "$me, version $scriptversion"+    exit $?+    ;;+esac++if test $# -lt 3; then+  func_error "you must specify a program, an action and an archive"+fi++AR=$1+shift+while :+do+  if test $# -lt 2; then+    func_error "you must specify a program, an action and an archive"+  fi+  case $1 in+    -lib | -LIB \+    | -ltcg | -LTCG \+    | -machine* | -MACHINE* \+    | -subsystem* | -SUBSYSTEM* \+    | -verbose | -VERBOSE \+    | -wx* | -WX* )+      AR="$AR $1"+      shift+      ;;+    *)+      action=$1+      shift+      break+      ;;+  esac+done+orig_archive=$1+shift+func_file_conv "$orig_archive"+archive=$file++# strip leading dash in $action+action=${action#-}++delete=+extract=+list=+quick=+replace=+index=+create=++while test -n "$action"+do+  case $action in+    d*) delete=yes  ;;+    x*) extract=yes ;;+    t*) list=yes    ;;+    q*) quick=yes   ;;+    r*) replace=yes ;;+    s*) index=yes   ;;+    S*)             ;; # the index is always updated implicitly+    c*) create=yes  ;;+    u*)             ;; # TODO: don't ignore the update modifier+    v*)             ;; # TODO: don't ignore the verbose modifier+    *)+      func_error "unknown action specified"+      ;;+  esac+  action=${action#?}+done++case $delete$extract$list$quick$replace,$index in+  yes,* | ,yes)+    ;;+  yesyes*)+    func_error "more than one action specified"+    ;;+  *)+    func_error "no action specified"+    ;;+esac++if test -n "$delete"; then+  if test ! -f "$orig_archive"; then+    func_error "archive not found"+  fi+  for member+  do+    case $1 in+      @*)+        func_at_file "${1#@}" -REMOVE "$archive"+        ;;+      *)+        func_file_conv "$1"+        $AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?+        ;;+    esac+  done++elif test -n "$extract"; then+  if test ! -f "$orig_archive"; then+    func_error "archive not found"+  fi+  if test $# -gt 0; then+    for member+    do+      case $1 in+        @*)+          func_at_file "${1#@}" -EXTRACT "$archive"+          ;;+        *)+          func_file_conv "$1"+          $AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?+          ;;+      esac+    done+  else+    $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member+    do+      $AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?+    done+  fi++elif test -n "$quick$replace"; then+  if test ! -f "$orig_archive"; then+    if test -z "$create"; then+      echo "$me: creating $orig_archive"+    fi+    orig_archive=+  else+    orig_archive=$archive+  fi++  for member+  do+    case $1 in+    @*)+      func_file_conv "${1#@}"+      set x "$@" "@$file"+      ;;+    *)+      func_file_conv "$1"+      set x "$@" "$file"+      ;;+    esac+    shift+    shift+  done++  if test -n "$orig_archive"; then+    $AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?+  else+    $AR -NOLOGO -OUT:"$archive" "$@" || exit $?+  fi++elif test -n "$list"; then+  if test ! -f "$orig_archive"; then+    func_error "archive not found"+  fi+  $AR -NOLOGO -LIST "$archive" || exit $?+fi

compile

new file mode 100755@@ -0,0 +1,348 @@+#! /bin/sh+# Wrapper for compilers which do not understand '-c -o'.++scriptversion=2018-03-07.03; # UTC++# Copyright (C) 1999-2018 Free Software Foundation, Inc.+# Written by Tom Tromey <tromey@cygnus.com>.+#+# This program 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, 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 file is maintained in Automake, please report+# bugs to <bug-automake@gnu.org> or send patches to+# <automake-patches@gnu.org>.++nl='+'++# We need space, tab and new line, in precisely that order.  Quoting is+# there to prevent tools from complaining about whitespace usage.+IFS=" ""	$nl"++file_conv=++# func_file_conv build_file lazy+# Convert a $build file to $host form and store it in $file+# Currently only supports Windows hosts. If the determined conversion+# type is listed in (the comma separated) LAZY, no conversion will+# take place.+func_file_conv ()+{+  file=$1+  case $file in+    / | /[!/]*) # absolute file, and not a UNC file+      if test -z "$file_conv"; then+	# lazily determine how to convert abs files+	case `uname -s` in+	  MINGW*)+	    file_conv=mingw+	    ;;+	  CYGWIN*)+	    file_conv=cygwin+	    ;;+	  *)+	    file_conv=wine+	    ;;+	esac+      fi+      case $file_conv/,$2, in+	*,$file_conv,*)+	  ;;+	mingw/*)+	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`+	  ;;+	cygwin/*)+	  file=`cygpath -m "$file" || echo "$file"`+	  ;;+	wine/*)+	  file=`winepath -w "$file" || echo "$file"`+	  ;;+      esac+      ;;+  esac+}++# func_cl_dashL linkdir+# Make cl look for libraries in LINKDIR+func_cl_dashL ()+{+  func_file_conv "$1"+  if test -z "$lib_path"; then+    lib_path=$file+  else+    lib_path="$lib_path;$file"+  fi+  linker_opts="$linker_opts -LIBPATH:$file"+}++# func_cl_dashl library+# Do a library search-path lookup for cl+func_cl_dashl ()+{+  lib=$1+  found=no+  save_IFS=$IFS+  IFS=';'+  for dir in $lib_path $LIB+  do+    IFS=$save_IFS+    if $shared && test -f "$dir/$lib.dll.lib"; then+      found=yes+      lib=$dir/$lib.dll.lib+      break+    fi+    if test -f "$dir/$lib.lib"; then+      found=yes+      lib=$dir/$lib.lib+      break+    fi+    if test -f "$dir/lib$lib.a"; then+      found=yes+      lib=$dir/lib$lib.a+      break+    fi+  done+  IFS=$save_IFS++  if test "$found" != yes; then+    lib=$lib.lib+  fi+}++# func_cl_wrapper cl arg...+# Adjust compile command to suit cl+func_cl_wrapper ()+{+  # Assume a capable shell+  lib_path=+  shared=:+  linker_opts=+  for arg+  do+    if test -n "$eat"; then+      eat=+    else+      case $1 in+	-o)+	  # configure might choose to run compile as 'compile cc -o foo foo.c'.+	  eat=1+	  case $2 in+	    *.o | *.[oO][bB][jJ])+	      func_file_conv "$2"+	      set x "$@" -Fo"$file"+	      shift+	      ;;+	    *)+	      func_file_conv "$2"+	      set x "$@" -Fe"$file"+	      shift+	      ;;+	  esac+	  ;;+	-I)+	  eat=1+	  func_file_conv "$2" mingw+	  set x "$@" -I"$file"+	  shift+	  ;;+	-I*)+	  func_file_conv "${1#-I}" mingw+	  set x "$@" -I"$file"+	  shift+	  ;;+	-l)+	  eat=1+	  func_cl_dashl "$2"+	  set x "$@" "$lib"+	  shift+	  ;;+	-l*)+	  func_cl_dashl "${1#-l}"+	  set x "$@" "$lib"+	  shift+	  ;;+	-L)+	  eat=1+	  func_cl_dashL "$2"+	  ;;+	-L*)+	  func_cl_dashL "${1#-L}"+	  ;;+	-static)+	  shared=false+	  ;;+	-Wl,*)+	  arg=${1#-Wl,}+	  save_ifs="$IFS"; IFS=','+	  for flag in $arg; do+	    IFS="$save_ifs"+	    linker_opts="$linker_opts $flag"+	  done+	  IFS="$save_ifs"+	  ;;+	-Xlinker)+	  eat=1+	  linker_opts="$linker_opts $2"+	  ;;+	-*)+	  set x "$@" "$1"+	  shift+	  ;;+	*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)+	  func_file_conv "$1"+	  set x "$@" -Tp"$file"+	  shift+	  ;;+	*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])+	  func_file_conv "$1" mingw+	  set x "$@" "$file"+	  shift+	  ;;+	*)+	  set x "$@" "$1"+	  shift+	  ;;+      esac+    fi+    shift+  done+  if test -n "$linker_opts"; then+    linker_opts="-link$linker_opts"+  fi+  exec "$@" $linker_opts+  exit 1+}++eat=++case $1 in+  '')+     echo "$0: No command.  Try '$0 --help' for more information." 1>&2+     exit 1;+     ;;+  -h | --h*)+    cat <<\EOF+Usage: compile [--help] [--version] PROGRAM [ARGS]++Wrapper for compilers which do not understand '-c -o'.+Remove '-o dest.o' from ARGS, run PROGRAM with the remaining+arguments, and rename the output as expected.++If you are trying to build a whole package this is not the+right script to run: please start by reading the file 'INSTALL'.++Report bugs to <bug-automake@gnu.org>.+EOF+    exit $?+    ;;+  -v | --v*)+    echo "compile $scriptversion"+    exit $?+    ;;+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \+  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )+    func_cl_wrapper "$@"      # Doesn't return...+    ;;+esac++ofile=+cfile=++for arg+do+  if test -n "$eat"; then+    eat=+  else+    case $1 in+      -o)+	# configure might choose to run compile as 'compile cc -o foo foo.c'.+	# So we strip '-o arg' only if arg is an object.+	eat=1+	case $2 in+	  *.o | *.obj)+	    ofile=$2+	    ;;+	  *)+	    set x "$@" -o "$2"+	    shift+	    ;;+	esac+	;;+      *.c)+	cfile=$1+	set x "$@" "$1"+	shift+	;;+      *)+	set x "$@" "$1"+	shift+	;;+    esac+  fi+  shift+done++if test -z "$ofile" || test -z "$cfile"; then+  # If no '-o' option was seen then we might have been invoked from a+  # pattern rule where we don't need one.  That is ok -- this is a+  # normal compilation that the losing compiler can handle.  If no+  # '.c' file was seen then we are probably linking.  That is also+  # ok.+  exec "$@"+fi++# Name of file we expect compiler to create.+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`++# Create the lock directory.+# Note: use '[/\\:.-]' here to ensure that we don't use the same name+# that we are using for the .o file.  Also, base the name on the expected+# object file name, since that is what matters with a parallel build.+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d+while true; do+  if mkdir "$lockdir" >/dev/null 2>&1; then+    break+  fi+  sleep 1+done+# FIXME: race condition here if user kills between mkdir and trap.+trap "rmdir '$lockdir'; exit 1" 1 2 15++# Run the compile.+"$@"+ret=$?++if test -f "$cofile"; then+  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"+elif test -f "${cofile}bj"; then+  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"+fi++rmdir "$lockdir"+exit $ret++# Local Variables:+# mode: shell-script+# sh-indentation: 2+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "scriptversion="+# time-stamp-format: "%:y-%02m-%02d.%02H"+# time-stamp-time-zone: "UTC0"+# time-stamp-end: "; # UTC"+# End:

config.guess

new file mode 100755@@ -0,0 +1,1476 @@+#! /bin/sh+# Attempt to guess a canonical system name.+#   Copyright 1992-2018 Free Software Foundation, Inc.++timestamp='2018-03-08'++# 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").+#+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.+#+# You can get the latest version of this script from:+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess+#+# Please send patches to <config-patches@gnu.org>.+++me=`echo "$0" | sed -e 's,.*/,,'`++usage="\+Usage: $0 [OPTION]++Output the configuration name of the system \`$me' is run on.++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.guess ($timestamp)++Originally written by Per Bothner.+Copyright 1992-2018 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 ;;+    * )+       break ;;+  esac+done++if test $# != 0; then+  echo "$me: too many arguments$help" >&2+  exit 1+fi++trap 'exit 1' 1 2 15++# CC_FOR_BUILD -- compiler used by this script. Note that the use of a+# compiler to aid in system detection is discouraged as it requires+# temporary files to be created and, as you can see below, it is a+# headache to deal with in a portable fashion.++# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still+# use `HOST_CC' if defined, but it is deprecated.++# Portable tmp directory creation inspired by the Autoconf team.++set_cc_for_build='+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;+: ${TMPDIR=/tmp} ;+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;+dummy=$tmp/dummy ;+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;+case $CC_FOR_BUILD,$HOST_CC,$CC in+ ,,)    echo "int x;" > "$dummy.c" ;+	for c in cc gcc c89 c99 ; do+	  if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then+	     CC_FOR_BUILD="$c"; break ;+	  fi ;+	done ;+	if test x"$CC_FOR_BUILD" = x ; then+	  CC_FOR_BUILD=no_compiler_found ;+	fi+	;;+ ,,*)   CC_FOR_BUILD=$CC ;;+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;+esac ; set_cc_for_build= ;'++# This is needed to find uname on a Pyramid OSx when run in the BSD universe.+# (ghazi@noc.rutgers.edu 1994-08-24)+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then+	PATH=$PATH:/.attbin ; export PATH+fi++UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown++case "$UNAME_SYSTEM" in+Linux|GNU|GNU/*)+	# If the system lacks a compiler, then just pick glibc.+	# We could probably try harder.+	LIBC=gnu++	eval "$set_cc_for_build"+	cat <<-EOF > "$dummy.c"+	#include <features.h>+	#if defined(__UCLIBC__)+	LIBC=uclibc+	#elif defined(__dietlibc__)+	LIBC=dietlibc+	#else+	LIBC=gnu+	#endif+	EOF+	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"++	# If ldd exists, use it to detect musl libc.+	if command -v ldd >/dev/null && \+		ldd --version 2>&1 | grep -q ^musl+	then+	    LIBC=musl+	fi+	;;+esac++# Note: order is significant - the case branches are not exclusive.++case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in+    *:NetBSD:*:*)+	# NetBSD (nbsd) targets should (where applicable) match one or+	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently+	# switched to ELF, *-*-netbsd* would select the old+	# object file format.  This provides both forward+	# compatibility and a consistent mechanism for selecting the+	# object file format.+	#+	# Note: NetBSD doesn't particularly care about the vendor+	# portion of the name.  We always set it to "unknown".+	sysctl="sysctl -n hw.machine_arch"+	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \+	    "/sbin/$sysctl" 2>/dev/null || \+	    "/usr/sbin/$sysctl" 2>/dev/null || \+	    echo unknown)`+	case "$UNAME_MACHINE_ARCH" in+	    armeb) machine=armeb-unknown ;;+	    arm*) machine=arm-unknown ;;+	    sh3el) machine=shl-unknown ;;+	    sh3eb) machine=sh-unknown ;;+	    sh5el) machine=sh5le-unknown ;;+	    earmv*)+		arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`+		endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`+		machine="${arch}${endian}"-unknown+		;;+	    *) machine="$UNAME_MACHINE_ARCH"-unknown ;;+	esac+	# The Operating System including object format, if it has switched+	# to ELF recently (or will in the future) and ABI.+	case "$UNAME_MACHINE_ARCH" in+	    earm*)+		os=netbsdelf+		;;+	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)+		eval "$set_cc_for_build"+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \+			| grep -q __ELF__+		then+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).+		    # Return netbsd for either.  FIX?+		    os=netbsd+		else+		    os=netbsdelf+		fi+		;;+	    *)+		os=netbsd+		;;+	esac+	# Determine ABI tags.+	case "$UNAME_MACHINE_ARCH" in+	    earm*)+		expr='s/^earmv[0-9]/-eabi/;s/eb$//'+		abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`+		;;+	esac+	# The OS release+	# Debian GNU/NetBSD machines have a different userland, and+	# thus, need a distinct triplet. However, they do not need+	# kernel version information, so it can be replaced with a+	# suitable tag, in the style of linux-gnu.+	case "$UNAME_VERSION" in+	    Debian*)+		release='-gnu'+		;;+	    *)+		release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`+		;;+	esac+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:+	# contains redundant information, the shorter form:+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.+	echo "$machine-${os}${release}${abi}"+	exit ;;+    *:Bitrig:*:*)+	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`+	echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"+	exit ;;+    *:OpenBSD:*:*)+	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`+	echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"+	exit ;;+    *:LibertyBSD:*:*)+	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`+	echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"+	exit ;;+    *:MidnightBSD:*:*)+	echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"+	exit ;;+    *:ekkoBSD:*:*)+	echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"+	exit ;;+    *:SolidBSD:*:*)+	echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"+	exit ;;+    macppc:MirBSD:*:*)+	echo powerpc-unknown-mirbsd"$UNAME_RELEASE"+	exit ;;+    *:MirBSD:*:*)+	echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"+	exit ;;+    *:Sortix:*:*)+	echo "$UNAME_MACHINE"-unknown-sortix+	exit ;;+    *:Redox:*:*)+	echo "$UNAME_MACHINE"-unknown-redox+	exit ;;+    mips:OSF1:*.*)+        echo mips-dec-osf1+        exit ;;+    alpha:OSF1:*:*)+	case $UNAME_RELEASE in+	*4.0)+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`+		;;+	*5.*)+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`+		;;+	esac+	# According to Compaq, /usr/sbin/psrinfo has been available on+	# OSF/1 and Tru64 systems produced since 1995.  I hope that+	# covers most systems running today.  This code pipes the CPU+	# types through head -n 1, so we only detect the type of CPU 0.+	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`+	case "$ALPHA_CPU_TYPE" in+	    "EV4 (21064)")+		UNAME_MACHINE=alpha ;;+	    "EV4.5 (21064)")+		UNAME_MACHINE=alpha ;;+	    "LCA4 (21066/21068)")+		UNAME_MACHINE=alpha ;;+	    "EV5 (21164)")+		UNAME_MACHINE=alphaev5 ;;+	    "EV5.6 (21164A)")+		UNAME_MACHINE=alphaev56 ;;+	    "EV5.6 (21164PC)")+		UNAME_MACHINE=alphapca56 ;;+	    "EV5.7 (21164PC)")+		UNAME_MACHINE=alphapca57 ;;+	    "EV6 (21264)")+		UNAME_MACHINE=alphaev6 ;;+	    "EV6.7 (21264A)")+		UNAME_MACHINE=alphaev67 ;;+	    "EV6.8CB (21264C)")+		UNAME_MACHINE=alphaev68 ;;+	    "EV6.8AL (21264B)")+		UNAME_MACHINE=alphaev68 ;;+	    "EV6.8CX (21264D)")+		UNAME_MACHINE=alphaev68 ;;+	    "EV6.9A (21264/EV69A)")+		UNAME_MACHINE=alphaev69 ;;+	    "EV7 (21364)")+		UNAME_MACHINE=alphaev7 ;;+	    "EV7.9 (21364A)")+		UNAME_MACHINE=alphaev79 ;;+	esac+	# A Pn.n version is a patched version.+	# A Vn.n version is a released version.+	# A Tn.n version is a released field test version.+	# A Xn.n version is an unreleased experimental baselevel.+	# 1.2 uses "1.2" for uname -r.+	echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"+	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.+	exitcode=$?+	trap '' 0+	exit $exitcode ;;+    Amiga*:UNIX_System_V:4.0:*)+	echo m68k-unknown-sysv4+	exit ;;+    *:[Aa]miga[Oo][Ss]:*:*)+	echo "$UNAME_MACHINE"-unknown-amigaos+	exit ;;+    *:[Mm]orph[Oo][Ss]:*:*)+	echo "$UNAME_MACHINE"-unknown-morphos+	exit ;;+    *:OS/390:*:*)+	echo i370-ibm-openedition+	exit ;;+    *:z/VM:*:*)+	echo s390-ibm-zvmoe+	exit ;;+    *:OS400:*:*)+	echo powerpc-ibm-os400+	exit ;;+    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)+	echo arm-acorn-riscix"$UNAME_RELEASE"+	exit ;;+    arm*:riscos:*:*|arm*:RISCOS:*:*)+	echo arm-unknown-riscos+	exit ;;+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)+	echo hppa1.1-hitachi-hiuxmpp+	exit ;;+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)+	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.+	if test "`(/bin/universe) 2>/dev/null`" = att ; then+		echo pyramid-pyramid-sysv3+	else+		echo pyramid-pyramid-bsd+	fi+	exit ;;+    NILE*:*:*:dcosx)+	echo pyramid-pyramid-svr4+	exit ;;+    DRS?6000:unix:4.0:6*)+	echo sparc-icl-nx6+	exit ;;+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)+	case `/usr/bin/uname -p` in+	    sparc) echo sparc-icl-nx7; exit ;;+	esac ;;+    s390x:SunOS:*:*)+	echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"+	exit ;;+    sun4H:SunOS:5.*:*)+	echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"+	exit ;;+    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)+	echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"+	exit ;;+    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)+	echo i386-pc-auroraux"$UNAME_RELEASE"+	exit ;;+    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)+	eval "$set_cc_for_build"+	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 [ "$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+	echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"+	exit ;;+    sun4*:SunOS:6*:*)+	# According to config.sub, this is the proper way to canonicalize+	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but+	# it's likely to be more like Solaris than SunOS4.+	echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"+	exit ;;+    sun4*:SunOS:*:*)+	case "`/usr/bin/arch -k`" in+	    Series*|S4*)+		UNAME_RELEASE=`uname -v`+		;;+	esac+	# Japanese Language versions have a version number like `4.1.3-JL'.+	echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"+	exit ;;+    sun3*:SunOS:*:*)+	echo m68k-sun-sunos"$UNAME_RELEASE"+	exit ;;+    sun*:*:4.2BSD:*)+	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`+	test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3+	case "`/bin/arch`" in+	    sun3)+		echo m68k-sun-sunos"$UNAME_RELEASE"+		;;+	    sun4)+		echo sparc-sun-sunos"$UNAME_RELEASE"+		;;+	esac+	exit ;;+    aushp:SunOS:*:*)+	echo sparc-auspex-sunos"$UNAME_RELEASE"+	exit ;;+    # The situation for MiNT is a little confusing.  The machine name+    # can be virtually everything (everything which is not+    # "atarist" or "atariste" at least should have a processor+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"+    # to the lowercase version "mint" (or "freemint").  Finally+    # the system name "TOS" denotes a system which is actually not+    # MiNT.  But MiNT is downward compatible to TOS, so this should+    # be no problem.+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)+	echo m68k-atari-mint"$UNAME_RELEASE"+	exit ;;+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)+	echo m68k-atari-mint"$UNAME_RELEASE"+	exit ;;+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)+	echo m68k-atari-mint"$UNAME_RELEASE"+	exit ;;+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)+	echo m68k-milan-mint"$UNAME_RELEASE"+	exit ;;+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)+	echo m68k-hades-mint"$UNAME_RELEASE"+	exit ;;+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)+	echo m68k-unknown-mint"$UNAME_RELEASE"+	exit ;;+    m68k:machten:*:*)+	echo m68k-apple-machten"$UNAME_RELEASE"+	exit ;;+    powerpc:machten:*:*)+	echo powerpc-apple-machten"$UNAME_RELEASE"+	exit ;;+    RISC*:Mach:*:*)+	echo mips-dec-mach_bsd4.3+	exit ;;+    RISC*:ULTRIX:*:*)+	echo mips-dec-ultrix"$UNAME_RELEASE"+	exit ;;+    VAX*:ULTRIX*:*:*)+	echo vax-dec-ultrix"$UNAME_RELEASE"+	exit ;;+    2020:CLIX:*:* | 2430:CLIX:*:*)+	echo clipper-intergraph-clix"$UNAME_RELEASE"+	exit ;;+    mips:*:*:UMIPS | mips:*:*:RISCos)+	eval "$set_cc_for_build"+	sed 's/^	//' << EOF > "$dummy.c"+#ifdef __cplusplus+#include <stdio.h>  /* for printf() prototype */+	int main (int argc, char *argv[]) {+#else+	int main (argc, argv) int argc; char *argv[]; {+#endif+	#if defined (host_mips) && defined (MIPSEB)+	#if defined (SYSTYPE_SYSV)+	  printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);+	#endif+	#if defined (SYSTYPE_SVR4)+	  printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);+	#endif+	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)+	  printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);+	#endif+	#endif+	  exit (-1);+	}+EOF+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" &&+	  dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&+	  SYSTEM_NAME=`"$dummy" "$dummyarg"` &&+	    { echo "$SYSTEM_NAME"; exit; }+	echo mips-mips-riscos"$UNAME_RELEASE"+	exit ;;+    Motorola:PowerMAX_OS:*:*)+	echo powerpc-motorola-powermax+	exit ;;+    Motorola:*:4.3:PL8-*)+	echo powerpc-harris-powermax+	exit ;;+    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)+	echo powerpc-harris-powermax+	exit ;;+    Night_Hawk:Power_UNIX:*:*)+	echo powerpc-harris-powerunix+	exit ;;+    m88k:CX/UX:7*:*)+	echo m88k-harris-cxux7+	exit ;;+    m88k:*:4*:R4*)+	echo m88k-motorola-sysv4+	exit ;;+    m88k:*:3*:R3*)+	echo m88k-motorola-sysv3+	exit ;;+    AViiON:dgux:*:*)+	# DG/UX returns AViiON for all architectures+	UNAME_PROCESSOR=`/usr/bin/uname -p`+	if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]+	then+	    if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \+	       [ "$TARGET_BINARY_INTERFACE"x = x ]+	    then+		echo m88k-dg-dgux"$UNAME_RELEASE"+	    else+		echo m88k-dg-dguxbcs"$UNAME_RELEASE"+	    fi+	else+	    echo i586-dg-dgux"$UNAME_RELEASE"+	fi+	exit ;;+    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)+	echo m88k-dolphin-sysv3+	exit ;;+    M88*:*:R3*:*)+	# Delta 88k system running SVR3+	echo m88k-motorola-sysv3+	exit ;;+    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)+	echo m88k-tektronix-sysv3+	exit ;;+    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)+	echo m68k-tektronix-bsd+	exit ;;+    *:IRIX*:*:*)+	echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"+	exit ;;+    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.+	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id+	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '+    i*86:AIX:*:*)+	echo i386-ibm-aix+	exit ;;+    ia64:AIX:*:*)+	if [ -x /usr/bin/oslevel ] ; then+		IBM_REV=`/usr/bin/oslevel`+	else+		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"+	fi+	echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"+	exit ;;+    *:AIX:2:3)+	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then+		eval "$set_cc_for_build"+		sed 's/^		//' << EOF > "$dummy.c"+		#include <sys/systemcfg.h>++		main()+			{+			if (!__power_pc())+				exit(1);+			puts("powerpc-ibm-aix3.2.5");+			exit(0);+			}+EOF+		if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`+		then+			echo "$SYSTEM_NAME"+		else+			echo rs6000-ibm-aix3.2.5+		fi+	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then+		echo rs6000-ibm-aix3.2.4+	else+		echo rs6000-ibm-aix3.2+	fi+	exit ;;+    *:AIX:*:[4567])+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`+	if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then+		IBM_ARCH=rs6000+	else+		IBM_ARCH=powerpc+	fi+	if [ -x /usr/bin/lslpp ] ; then+		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |+			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`+	else+		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"+	fi+	echo "$IBM_ARCH"-ibm-aix"$IBM_REV"+	exit ;;+    *:AIX:*:*)+	echo rs6000-ibm-aix+	exit ;;+    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)+	echo romp-ibm-bsd4.4+	exit ;;+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and+	echo romp-ibm-bsd"$UNAME_RELEASE"   # 4.3 with uname added to+	exit ;;                             # report: romp-ibm BSD 4.3+    *:BOSX:*:*)+	echo rs6000-bull-bosx+	exit ;;+    DPX/2?00:B.O.S.:*:*)+	echo m68k-bull-sysv3+	exit ;;+    9000/[34]??:4.3bsd:1.*:*)+	echo m68k-hp-bsd+	exit ;;+    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)+	echo m68k-hp-bsd4.4+	exit ;;+    9000/[34678]??:HP-UX:*:*)+	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`+	case "$UNAME_MACHINE" in+	    9000/31?)            HP_ARCH=m68000 ;;+	    9000/[34]??)         HP_ARCH=m68k ;;+	    9000/[678][0-9][0-9])+		if [ -x /usr/bin/getconf ]; then+		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`+		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`+		    case "$sc_cpu_version" in+		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0+		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1+		      532)                      # CPU_PA_RISC2_0+			case "$sc_kernel_bits" in+			  32) HP_ARCH=hppa2.0n ;;+			  64) HP_ARCH=hppa2.0w ;;+			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20+			esac ;;+		    esac+		fi+		if [ "$HP_ARCH" = "" ]; then+		    eval "$set_cc_for_build"+		    sed 's/^		//' << EOF > "$dummy.c"++		#define _HPUX_SOURCE+		#include <stdlib.h>+		#include <unistd.h>++		int main ()+		{+		#if defined(_SC_KERNEL_BITS)+		    long bits = sysconf(_SC_KERNEL_BITS);+		#endif+		    long cpu  = sysconf (_SC_CPU_VERSION);++		    switch (cpu)+			{+			case CPU_PA_RISC1_0: puts ("hppa1.0"); break;+			case CPU_PA_RISC1_1: puts ("hppa1.1"); break;+			case CPU_PA_RISC2_0:+		#if defined(_SC_KERNEL_BITS)+			    switch (bits)+				{+				case 64: puts ("hppa2.0w"); break;+				case 32: puts ("hppa2.0n"); break;+				default: puts ("hppa2.0"); break;+				} break;+		#else  /* !defined(_SC_KERNEL_BITS) */+			    puts ("hppa2.0"); break;+		#endif+			default: puts ("hppa1.0"); break;+			}+		    exit (0);+		}+EOF+		    (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`+		    test -z "$HP_ARCH" && HP_ARCH=hppa+		fi ;;+	esac+	if [ "$HP_ARCH" = hppa2.0w ]+	then+	    eval "$set_cc_for_build"++	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating+	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler+	    # generating 64-bit code.  GNU and HP use different nomenclature:+	    #+	    # $ CC_FOR_BUILD=cc ./config.guess+	    # => hppa2.0w-hp-hpux11.23+	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess+	    # => hppa64-hp-hpux11.23++	    if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |+		grep -q __LP64__+	    then+		HP_ARCH=hppa2.0w+	    else+		HP_ARCH=hppa64+	    fi+	fi+	echo "$HP_ARCH"-hp-hpux"$HPUX_REV"+	exit ;;+    ia64:HP-UX:*:*)+	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`+	echo ia64-hp-hpux"$HPUX_REV"+	exit ;;+    3050*:HI-UX:*:*)+	eval "$set_cc_for_build"+	sed 's/^	//' << EOF > "$dummy.c"+	#include <unistd.h>+	int+	main ()+	{+	  long cpu = sysconf (_SC_CPU_VERSION);+	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns+	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct+	     results, however.  */+	  if (CPU_IS_PA_RISC (cpu))+	    {+	      switch (cpu)+		{+		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;+		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;+		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;+		  default: puts ("hppa-hitachi-hiuxwe2"); break;+		}+	    }+	  else if (CPU_IS_HP_MC68K (cpu))+	    puts ("m68k-hitachi-hiuxwe2");+	  else puts ("unknown-hitachi-hiuxwe2");+	  exit (0);+	}+EOF+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&+		{ echo "$SYSTEM_NAME"; exit; }+	echo unknown-hitachi-hiuxwe2+	exit ;;+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)+	echo hppa1.1-hp-bsd+	exit ;;+    9000/8??:4.3bsd:*:*)+	echo hppa1.0-hp-bsd+	exit ;;+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)+	echo hppa1.0-hp-mpeix+	exit ;;+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)+	echo hppa1.1-hp-osf+	exit ;;+    hp8??:OSF1:*:*)+	echo hppa1.0-hp-osf+	exit ;;+    i*86:OSF1:*:*)+	if [ -x /usr/sbin/sysversion ] ; then+	    echo "$UNAME_MACHINE"-unknown-osf1mk+	else+	    echo "$UNAME_MACHINE"-unknown-osf1+	fi+	exit ;;+    parisc*:Lites*:*:*)+	echo hppa1.1-hp-lites+	exit ;;+    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)+	echo c1-convex-bsd+	exit ;;+    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)+	if getsysinfo -f scalar_acc+	then echo c32-convex-bsd+	else echo c2-convex-bsd+	fi+	exit ;;+    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)+	echo c34-convex-bsd+	exit ;;+    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)+	echo c38-convex-bsd+	exit ;;+    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)+	echo c4-convex-bsd+	exit ;;+    CRAY*Y-MP:*:*:*)+	echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'+	exit ;;+    CRAY*[A-Z]90:*:*:*)+	echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \+	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \+	      -e 's/\.[^.]*$/.X/'+	exit ;;+    CRAY*TS:*:*:*)+	echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'+	exit ;;+    CRAY*T3E:*:*:*)+	echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'+	exit ;;+    CRAY*SV1:*:*:*)+	echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'+	exit ;;+    *:UNICOS/mp:*:*)+	echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'+	exit ;;+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)+	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`+	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`+	FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`+	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"+	exit ;;+    5000:UNIX_System_V:4.*:*)+	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`+	FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`+	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"+	exit ;;+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)+	echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"+	exit ;;+    sparc*:BSD/OS:*:*)+	echo sparc-unknown-bsdi"$UNAME_RELEASE"+	exit ;;+    *:BSD/OS:*:*)+	echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"+	exit ;;+    *:FreeBSD:*:*)+	UNAME_PROCESSOR=`/usr/bin/uname -p`+	case "$UNAME_PROCESSOR" in+	    amd64)+		UNAME_PROCESSOR=x86_64 ;;+	    i386)+		UNAME_PROCESSOR=i586 ;;+	esac+	echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"+	exit ;;+    i*:CYGWIN*:*)+	echo "$UNAME_MACHINE"-pc-cygwin+	exit ;;+    *:MINGW64*:*)+	echo "$UNAME_MACHINE"-pc-mingw64+	exit ;;+    *:MINGW*:*)+	echo "$UNAME_MACHINE"-pc-mingw32+	exit ;;+    *:MSYS*:*)+	echo "$UNAME_MACHINE"-pc-msys+	exit ;;+    i*:PW*:*)+	echo "$UNAME_MACHINE"-pc-pw32+	exit ;;+    *:Interix*:*)+	case "$UNAME_MACHINE" in+	    x86)+		echo i586-pc-interix"$UNAME_RELEASE"+		exit ;;+	    authenticamd | genuineintel | EM64T)+		echo x86_64-unknown-interix"$UNAME_RELEASE"+		exit ;;+	    IA64)+		echo ia64-unknown-interix"$UNAME_RELEASE"+		exit ;;+	esac ;;+    i*:UWIN*:*)+	echo "$UNAME_MACHINE"-pc-uwin+	exit ;;+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)+	echo x86_64-unknown-cygwin+	exit ;;+    prep*:SunOS:5.*:*)+	echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"+	exit ;;+    *:GNU:*:*)+	# the GNU system+	echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"+	exit ;;+    *:GNU/*:*:*)+	# other systems with GNU libc and userland+	echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"+	exit ;;+    i*86:Minix:*:*)+	echo "$UNAME_MACHINE"-pc-minix+	exit ;;+    aarch64:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    aarch64_be:Linux:*:*)+	UNAME_MACHINE=aarch64_be+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    alpha:Linux:*:*)+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in+	  EV5)   UNAME_MACHINE=alphaev5 ;;+	  EV56)  UNAME_MACHINE=alphaev56 ;;+	  PCA56) UNAME_MACHINE=alphapca56 ;;+	  PCA57) UNAME_MACHINE=alphapca56 ;;+	  EV6)   UNAME_MACHINE=alphaev6 ;;+	  EV67)  UNAME_MACHINE=alphaev67 ;;+	  EV68*) UNAME_MACHINE=alphaev68 ;;+	esac+	objdump --private-headers /bin/sh | grep -q ld.so.1+	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    arc:Linux:*:* | arceb:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    arm*:Linux:*:*)+	eval "$set_cc_for_build"+	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \+	    | grep -q __ARM_EABI__+	then+	    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	else+	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \+		| grep -q __ARM_PCS_VFP+	    then+		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi+	    else+		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf+	    fi+	fi+	exit ;;+    avr32*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    cris:Linux:*:*)+	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"+	exit ;;+    crisv32:Linux:*:*)+	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"+	exit ;;+    e2k:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    frv:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    hexagon:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    i*86:Linux:*:*)+	echo "$UNAME_MACHINE"-pc-linux-"$LIBC"+	exit ;;+    ia64:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    k1om:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    m32r*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    m68*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    mips:Linux:*:* | mips64:Linux:*:*)+	eval "$set_cc_for_build"+	sed 's/^	//' << EOF > "$dummy.c"+	#undef CPU+	#undef ${UNAME_MACHINE}+	#undef ${UNAME_MACHINE}el+	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)+	CPU=${UNAME_MACHINE}el+	#else+	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)+	CPU=${UNAME_MACHINE}+	#else+	CPU=+	#endif+	#endif+EOF+	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"+	test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }+	;;+    mips64el:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    openrisc*:Linux:*:*)+	echo or1k-unknown-linux-"$LIBC"+	exit ;;+    or32:Linux:*:* | or1k*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    padre:Linux:*:*)+	echo sparc-unknown-linux-"$LIBC"+	exit ;;+    parisc64:Linux:*:* | hppa64:Linux:*:*)+	echo hppa64-unknown-linux-"$LIBC"+	exit ;;+    parisc:Linux:*:* | hppa:Linux:*:*)+	# Look for CPU level+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in+	  PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;+	  PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;+	  *)    echo hppa-unknown-linux-"$LIBC" ;;+	esac+	exit ;;+    ppc64:Linux:*:*)+	echo powerpc64-unknown-linux-"$LIBC"+	exit ;;+    ppc:Linux:*:*)+	echo powerpc-unknown-linux-"$LIBC"+	exit ;;+    ppc64le:Linux:*:*)+	echo powerpc64le-unknown-linux-"$LIBC"+	exit ;;+    ppcle:Linux:*:*)+	echo powerpcle-unknown-linux-"$LIBC"+	exit ;;+    riscv32:Linux:*:* | riscv64:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    s390:Linux:*:* | s390x:Linux:*:*)+	echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"+	exit ;;+    sh64*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    sh*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    sparc:Linux:*:* | sparc64:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    tile*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    vax:Linux:*:*)+	echo "$UNAME_MACHINE"-dec-linux-"$LIBC"+	exit ;;+    x86_64:Linux:*:*)+	echo "$UNAME_MACHINE"-pc-linux-"$LIBC"+	exit ;;+    xtensa*:Linux:*:*)+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"+	exit ;;+    i*86:DYNIX/ptx:4*:*)+	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.+	# earlier versions are messed up and put the nodename in both+	# sysname and nodename.+	echo i386-sequent-sysv4+	exit ;;+    i*86:UNIX_SV:4.2MP:2.*)+	# Unixware is an offshoot of SVR4, but it has its own version+	# number series starting with 2...+	# I am not positive that other SVR4 systems won't match this,+	# I just have to hope.  -- rms.+	# Use sysv4.2uw... so that sysv4* matches it.+	echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"+	exit ;;+    i*86:OS/2:*:*)+	# If we were able to find `uname', then EMX Unix compatibility+	# is probably installed.+	echo "$UNAME_MACHINE"-pc-os2-emx+	exit ;;+    i*86:XTS-300:*:STOP)+	echo "$UNAME_MACHINE"-unknown-stop+	exit ;;+    i*86:atheos:*:*)+	echo "$UNAME_MACHINE"-unknown-atheos+	exit ;;+    i*86:syllable:*:*)+	echo "$UNAME_MACHINE"-pc-syllable+	exit ;;+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)+	echo i386-unknown-lynxos"$UNAME_RELEASE"+	exit ;;+    i*86:*DOS:*:*)+	echo "$UNAME_MACHINE"-pc-msdosdjgpp+	exit ;;+    i*86:*:4.*:*)+	UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`+	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then+		echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"+	else+		echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"+	fi+	exit ;;+    i*86:*:5:[678]*)+	# UnixWare 7.x, OpenUNIX and OpenServer 6.+	case `/bin/uname -X | grep "^Machine"` in+	    *486*)	     UNAME_MACHINE=i486 ;;+	    *Pentium)	     UNAME_MACHINE=i586 ;;+	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;+	esac+	echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"+	exit ;;+    i*86:*:3.2:*)+	if test -f /usr/options/cb.name; then+		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`+		echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"+	elif /bin/uname -X 2>/dev/null >/dev/null ; then+		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`+		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486+		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \+			&& UNAME_MACHINE=i586+		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \+			&& UNAME_MACHINE=i686+		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \+			&& UNAME_MACHINE=i686+		echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"+	else+		echo "$UNAME_MACHINE"-pc-sysv32+	fi+	exit ;;+    pc:*:*:*)+	# Left here for compatibility:+	# uname -m prints for DJGPP always 'pc', but it prints nothing about+	# the processor, so we play safe by assuming i586.+	# Note: whatever this is, it MUST be the same as what config.sub+	# prints for the "djgpp" host, or else GDB configure will decide that+	# this is a cross-build.+	echo i586-pc-msdosdjgpp+	exit ;;+    Intel:Mach:3*:*)+	echo i386-pc-mach3+	exit ;;+    paragon:*:*:*)+	echo i860-intel-osf1+	exit ;;+    i860:*:4.*:*) # i860-SVR4+	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then+	  echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4+	else # Add other i860-SVR4 vendors below as they are discovered.+	  echo i860-unknown-sysv"$UNAME_RELEASE"  # Unknown i860-SVR4+	fi+	exit ;;+    mini*:CTIX:SYS*5:*)+	# "miniframe"+	echo m68010-convergent-sysv+	exit ;;+    mc68k:UNIX:SYSTEM5:3.51m)+	echo m68k-convergent-sysv+	exit ;;+    M680?0:D-NIX:5.3:*)+	echo m68k-diab-dnix+	exit ;;+    M68*:*:R3V[5678]*:*)+	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)+	OS_REL=''+	test -r /etc/.relid \+	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \+	  && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \+	  && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;+    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \+	  && { echo i486-ncr-sysv4; exit; } ;;+    NCR*:*:4.2:* | MPRAS*:*:4.2:*)+	OS_REL='.3'+	test -r /etc/.relid \+	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \+	    && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }+	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)+	echo m68k-unknown-lynxos"$UNAME_RELEASE"+	exit ;;+    mc68030:UNIX_System_V:4.*:*)+	echo m68k-atari-sysv4+	exit ;;+    TSUNAMI:LynxOS:2.*:*)+	echo sparc-unknown-lynxos"$UNAME_RELEASE"+	exit ;;+    rs6000:LynxOS:2.*:*)+	echo rs6000-unknown-lynxos"$UNAME_RELEASE"+	exit ;;+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)+	echo powerpc-unknown-lynxos"$UNAME_RELEASE"+	exit ;;+    SM[BE]S:UNIX_SV:*:*)+	echo mips-dde-sysv"$UNAME_RELEASE"+	exit ;;+    RM*:ReliantUNIX-*:*:*)+	echo mips-sni-sysv4+	exit ;;+    RM*:SINIX-*:*:*)+	echo mips-sni-sysv4+	exit ;;+    *:SINIX-*:*:*)+	if uname -p 2>/dev/null >/dev/null ; then+		UNAME_MACHINE=`(uname -p) 2>/dev/null`+		echo "$UNAME_MACHINE"-sni-sysv4+	else+		echo ns32k-sni-sysv+	fi+	exit ;;+    PENTIUM:*:4.0*:*)	# Unisys `ClearPath HMP IX 4000' SVR4/MP effort+			# says <Richard.M.Bartel@ccMail.Census.GOV>+	echo i586-unisys-sysv4+	exit ;;+    *:UNIX_System_V:4*:FTX*)+	# From Gerald Hewes <hewes@openmarket.com>.+	# How about differentiating between stratus architectures? -djm+	echo hppa1.1-stratus-sysv4+	exit ;;+    *:*:*:FTX*)+	# From seanf@swdc.stratus.com.+	echo i860-stratus-sysv4+	exit ;;+    i*86:VOS:*:*)+	# From Paul.Green@stratus.com.+	echo "$UNAME_MACHINE"-stratus-vos+	exit ;;+    *:VOS:*:*)+	# From Paul.Green@stratus.com.+	echo hppa1.1-stratus-vos+	exit ;;+    mc68*:A/UX:*:*)+	echo m68k-apple-aux"$UNAME_RELEASE"+	exit ;;+    news*:NEWS-OS:6*:*)+	echo mips-sony-newsos6+	exit ;;+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)+	if [ -d /usr/nec ]; then+		echo mips-nec-sysv"$UNAME_RELEASE"+	else+		echo mips-unknown-sysv"$UNAME_RELEASE"+	fi+	exit ;;+    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.+	echo powerpc-be-beos+	exit ;;+    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.+	echo powerpc-apple-beos+	exit ;;+    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.+	echo i586-pc-beos+	exit ;;+    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.+	echo i586-pc-haiku+	exit ;;+    x86_64:Haiku:*:*)+	echo x86_64-unknown-haiku+	exit ;;+    SX-4:SUPER-UX:*:*)+	echo sx4-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-5:SUPER-UX:*:*)+	echo sx5-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-6:SUPER-UX:*:*)+	echo sx6-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-7:SUPER-UX:*:*)+	echo sx7-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-8:SUPER-UX:*:*)+	echo sx8-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-8R:SUPER-UX:*:*)+	echo sx8r-nec-superux"$UNAME_RELEASE"+	exit ;;+    SX-ACE:SUPER-UX:*:*)+	echo sxace-nec-superux"$UNAME_RELEASE"+	exit ;;+    Power*:Rhapsody:*:*)+	echo powerpc-apple-rhapsody"$UNAME_RELEASE"+	exit ;;+    *:Rhapsody:*:*)+	echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"+	exit ;;+    *:Darwin:*:*)+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown+	eval "$set_cc_for_build"+	if test "$UNAME_PROCESSOR" = unknown ; then+	    UNAME_PROCESSOR=powerpc+	fi+	if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then+	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then+		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \+		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \+		       grep IS_64BIT_ARCH >/dev/null+		then+		    case $UNAME_PROCESSOR in+			i386) UNAME_PROCESSOR=x86_64 ;;+			powerpc) UNAME_PROCESSOR=powerpc64 ;;+		    esac+		fi+		# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc+		if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \+		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \+		       grep IS_PPC >/dev/null+		then+		    UNAME_PROCESSOR=powerpc+		fi+	    fi+	elif test "$UNAME_PROCESSOR" = i386 ; then+	    # Avoid executing cc on OS X 10.9, as it ships with a stub+	    # that puts up a graphical alert prompting to install+	    # developer tools.  Any system running Mac OS X 10.7 or+	    # later (Darwin 11 and later) is required to have a 64-bit+	    # processor. This is not true of the ARM version of Darwin+	    # that Apple uses in portable devices.+	    UNAME_PROCESSOR=x86_64+	fi+	echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"+	exit ;;+    *:procnto*:*:* | *:QNX:[0123456789]*:*)+	UNAME_PROCESSOR=`uname -p`+	if test "$UNAME_PROCESSOR" = x86; then+		UNAME_PROCESSOR=i386+		UNAME_MACHINE=pc+	fi+	echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"+	exit ;;+    *:QNX:*:4*)+	echo i386-pc-qnx+	exit ;;+    NEO-*:NONSTOP_KERNEL:*:*)+	echo neo-tandem-nsk"$UNAME_RELEASE"+	exit ;;+    NSE-*:NONSTOP_KERNEL:*:*)+	echo nse-tandem-nsk"$UNAME_RELEASE"+	exit ;;+    NSR-*:NONSTOP_KERNEL:*:*)+	echo nsr-tandem-nsk"$UNAME_RELEASE"+	exit ;;+    NSV-*:NONSTOP_KERNEL:*:*)+	echo nsv-tandem-nsk"$UNAME_RELEASE"+	exit ;;+    NSX-*:NONSTOP_KERNEL:*:*)+	echo nsx-tandem-nsk"$UNAME_RELEASE"+	exit ;;+    *:NonStop-UX:*:*)+	echo mips-compaq-nonstopux+	exit ;;+    BS2000:POSIX*:*:*)+	echo bs2000-siemens-sysv+	exit ;;+    DS/*:UNIX_System_V:*:*)+	echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"+	exit ;;+    *:Plan9:*:*)+	# "uname -m" is not consistent, so use $cputype instead. 386+	# is converted to i386 for consistency with other x86+	# operating systems.+	if test "$cputype" = 386; then+	    UNAME_MACHINE=i386+	else+	    UNAME_MACHINE="$cputype"+	fi+	echo "$UNAME_MACHINE"-unknown-plan9+	exit ;;+    *:TOPS-10:*:*)+	echo pdp10-unknown-tops10+	exit ;;+    *:TENEX:*:*)+	echo pdp10-unknown-tenex+	exit ;;+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)+	echo pdp10-dec-tops20+	exit ;;+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)+	echo pdp10-xkl-tops20+	exit ;;+    *:TOPS-20:*:*)+	echo pdp10-unknown-tops20+	exit ;;+    *:ITS:*:*)+	echo pdp10-unknown-its+	exit ;;+    SEI:*:*:SEIUX)+	echo mips-sei-seiux"$UNAME_RELEASE"+	exit ;;+    *:DragonFly:*:*)+	echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"+	exit ;;+    *:*VMS:*:*)+	UNAME_MACHINE=`(uname -p) 2>/dev/null`+	case "$UNAME_MACHINE" in+	    A*) echo alpha-dec-vms ; exit ;;+	    I*) echo ia64-dec-vms ; exit ;;+	    V*) echo vax-dec-vms ; exit ;;+	esac ;;+    *:XENIX:*:SysV)+	echo i386-pc-xenix+	exit ;;+    i*86:skyos:*:*)+	echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"+	exit ;;+    i*86:rdos:*:*)+	echo "$UNAME_MACHINE"-pc-rdos+	exit ;;+    i*86:AROS:*:*)+	echo "$UNAME_MACHINE"-pc-aros+	exit ;;+    x86_64:VMkernel:*:*)+	echo "$UNAME_MACHINE"-unknown-esx+	exit ;;+    amd64:Isilon\ OneFS:*:*)+	echo x86_64-unknown-onefs+	exit ;;+esac++echo "$0: unable to guess system type" >&2++case "$UNAME_MACHINE:$UNAME_SYSTEM" in+    mips:Linux | mips64:Linux)+	# If we got here on MIPS GNU/Linux, output extra information.+	cat >&2 <<EOF++NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize+the system type. Please install a C compiler and try again.+EOF+	;;+esac++cat >&2 <<EOF++This script (version $timestamp), has failed to recognize the+operating system you are using. If your script is old, overwrite *all*+copies of config.guess and config.sub with the latest versions from:++  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess+and+  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub++If $0 has already been updated, send the following data and any+information you think might be pertinent to config-patches@gnu.org to+provide the necessary information to handle your system.++config.guess timestamp = $timestamp++uname -m = `(uname -m) 2>/dev/null || echo unknown`+uname -r = `(uname -r) 2>/dev/null || echo unknown`+uname -s = `(uname -s) 2>/dev/null || echo unknown`+uname -v = `(uname -v) 2>/dev/null || echo unknown`++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`++hostinfo               = `(hostinfo) 2>/dev/null`+/bin/universe          = `(/bin/universe) 2>/dev/null`+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`+/bin/arch              = `(/bin/arch) 2>/dev/null`+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`++UNAME_MACHINE = "$UNAME_MACHINE"+UNAME_RELEASE = "$UNAME_RELEASE"+UNAME_SYSTEM  = "$UNAME_SYSTEM"+UNAME_VERSION = "$UNAME_VERSION"+EOF++exit 1++# Local variables:+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "timestamp='"+# time-stamp-format: "%:y-%02m-%02d"+# time-stamp-end: "'"+# End:

config.sub

new file mode 100755@@ -0,0 +1,1801 @@+#! /bin/sh+# Configuration validation subroutine script.+#   Copyright 1992-2018 Free Software Foundation, Inc.++timestamp='2018-03-08'++# 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/gitweb/?p=config.git;a=blob_plain;f=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.++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-2018 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"+       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++# 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.+		;;+	-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/'`+		;;+	-sco3.2.[4-9]*)+		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`+		;;+	-sco3.2v[4-9]*)+		# Don't forget version if it is 3.2v4 or newer.+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`+		;;+	-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+		;;+esac++# Decode aliases for certain CPU-COMPANY combinations.+case $basic_machine in+	# Recognize the basic CPU types without company name.+	# Some are omitted here because they have special meanings below.+	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+		;;+	c54x)+		basic_machine=tic54x-unknown+		;;+	c55x)+		basic_machine=tic55x-unknown+		;;+	c6x)+		basic_machine=tic6x-unknown+		;;+	leon|leon[3-9])+		basic_machine=sparc-$basic_machine+		;;+	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)+		basic_machine=$basic_machine-unknown+		os=-none+		;;+	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+		;;++	# 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+		;;+	# Recognize the various machine names and aliases which stand+	# for a CPU type and a company and sometimes even an OS.+	386bsd)+		basic_machine=i386-pc+		os=-bsd+		;;+	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)+		basic_machine=m68000-att+		;;+	3b*)+		basic_machine=we32k-att+		;;+	a29khif)+		basic_machine=a29k-amd+		os=-udi+		;;+	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+		;;+	bluegene*)+		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+		;;+	decsystem10* | dec10*)+		basic_machine=pdp10-dec+		os=-tops10+		;;+	decsystem20* | dec20*)+		basic_machine=pdp10-dec+		os=-tops20+		;;+	delta | 3300 | motorola-3300 | motorola-delta \+	      | 3300-motorola | delta-motorola)+		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+		;;+	dpx2*)+		basic_machine=m68k-bull+		os=-sysv3+		;;+	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+		;;+	elxsi)+		basic_machine=elxsi-elxsi+		os=-bsd+		;;+	encore | umax | mmax)+		basic_machine=ns32k-encore+		;;+	es1800 | OSE68k | ose68k | ose | OSE)+		basic_machine=m68k-ericsson+		os=-ose+		;;+	fx2800)+		basic_machine=i860-alliant+		;;+	genix)+		basic_machine=ns32k-ns+		;;+	gmicro)+		basic_machine=tron-gmicro+		os=-sysv+		;;+	go32)+		basic_machine=i386-pc+		os=-go32+		;;+	h3050r* | hiux*)+		basic_machine=hppa1.1-hitachi+		os=-hiuxwe2+		;;+	h8300hms)+		basic_machine=h8300-hitachi+		os=-hms+		;;+	h8300xray)+		basic_machine=h8300-hitachi+		os=-xray+		;;+	h8500hms)+		basic_machine=h8500-hitachi+		os=-hms+		;;+	harris)+		basic_machine=m88k-harris+		os=-sysv3+		;;+	hp300-*)+		basic_machine=m68k-hp+		;;+	hp300bsd)+		basic_machine=m68k-hp+		os=-bsd+		;;+	hp300hpux)+		basic_machine=m68k-hp+		os=-hpux+		;;+	hp3k9[0-9][0-9] | hp9[0-9][0-9])+		basic_machine=hppa1.0-hp+		;;+	hp9k2[0-9][0-9] | hp9k31[0-9])+		basic_machine=m68000-hp+		;;+	hp9k3[2-9][0-9])+		basic_machine=m68k-hp+		;;+	hp9k6[0-9][0-9] | hp6[0-9][0-9])+		basic_machine=hppa1.0-hp+		;;+	hp9k7[0-79][0-9] | hp7[0-79][0-9])+		basic_machine=hppa1.1-hp+		;;+	hp9k78[0-9] | hp78[0-9])+		# FIXME: really hppa2.0-hp+		basic_machine=hppa1.1-hp+		;;+	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)+		# FIXME: really hppa2.0-hp+		basic_machine=hppa1.1-hp+		;;+	hp9k8[0-9][13679] | hp8[0-9][13679])+		basic_machine=hppa1.1-hp+		;;+	hp9k8[0-9][0-9] | hp8[0-9][0-9])+		basic_machine=hppa1.0-hp+		;;+	hppaosf)+		basic_machine=hppa1.1-hp+		os=-osf+		;;+	hppro)+		basic_machine=hppa1.1-hp+		os=-proelf+		;;+	i370-ibm* | ibm*)+		basic_machine=i370-ibm+		;;+	i*86v32)+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`+		os=-sysv32+		;;+	i*86v4*)+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`+		os=-sysv4+		;;+	i*86v)+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`+		os=-sysv+		;;+	i*86sol2)+		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+		;;+	iris | iris4d)+		basic_machine=mips-sgi+		case $os in+		    -irix*)+			;;+		    *)+			os=-irix4+			;;+		esac+		;;+	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+		;;+	miniframe)+		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+		;;+	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+		;;+	news-3600 | risc-news)+		basic_machine=mips-sony+		os=-newsos+		;;+	necv70)+		basic_machine=v70-nec+		os=-sysv+		;;+	next | m*-next)+		basic_machine=m68k-next+		case $os in+		    -nextstep* )+			;;+		    -ns2*)+		      os=-nextstep2+			;;+		    *)+		      os=-nextstep3+			;;+		esac+		;;+	nh3000)+		basic_machine=m68k-harris+		os=-cxux+		;;+	nh[45]000)+		basic_machine=m88k-harris+		os=-cxux+		;;+	nindy960)+		basic_machine=i960-intel+		os=-nindy+		;;+	mon960)+		basic_machine=i960-intel+		os=-mon960+		;;+	nonstopux)+		basic_machine=mips-compaq+		os=-nonstopux+		;;+	np1)+		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+		;;+	op50n-* | op60c-*)+		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+		;;+	pa-hitachi)+		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+		;;+	pbd)+		basic_machine=sparc-tti+		;;+	pbb)+		basic_machine=m68k-tti+		;;+	pc532 | pc532-*)+		basic_machine=ns32k-pc532+		;;+	pc98)+		basic_machine=i386-pc+		;;+	pc98-*)+		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	pentium | p5 | k5 | k6 | nexgen | viac3)+		basic_machine=i586-pc+		;;+	pentiumpro | p6 | 6x86 | athlon | athlon_*)+		basic_machine=i686-pc+		;;+	pentiumii | pentium2 | pentiumiii | pentium3)+		basic_machine=i686-pc+		;;+	pentium4)+		basic_machine=i786-pc+		;;+	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)+		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	pentiumpro-* | p6-* | 6x86-* | athlon-*)+		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)+		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	pentium4-*)+		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	pn)+		basic_machine=pn-gould+		;;+	power)	basic_machine=power-ibm+		;;+	ppc | ppcbe)	basic_machine=powerpc-unknown+		;;+	ppc-* | ppcbe-*)+		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	ppcle | powerpclittle)+		basic_machine=powerpcle-unknown+		;;+	ppcle-* | powerpclittle-*)+		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	ppc64)	basic_machine=powerpc64-unknown+		;;+	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	ppc64le | powerpc64little)+		basic_machine=powerpc64le-unknown+		;;+	ppc64le-* | powerpc64little-*)+		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	ps2)+		basic_machine=i386-ibm+		;;+	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+		;;+	rm[46]00)+		basic_machine=mips-siemens+		;;+	rtpc | rtpc-*)+		basic_machine=romp-ibm+		;;+	s390 | s390-*)+		basic_machine=s390-ibm+		;;+	s390x | s390x-*)+		basic_machine=s390x-ibm+		;;+	sa29200)+		basic_machine=a29k-amd+		os=-udi+		;;+	sb1)+		basic_machine=mipsisa64sb1-unknown+		;;+	sb1el)+		basic_machine=mipsisa64sb1el-unknown+		;;+	sde)+		basic_machine=mipsisa32-sde+		os=-elf+		;;+	sei)+		basic_machine=mips-sei+		os=-seiux+		;;+	sequent)+		basic_machine=i386-sequent+		;;+	sh5el)+		basic_machine=sh5le-unknown+		;;+	simso-wrs)+		basic_machine=sparclite-wrs+		os=-vxworks+		;;+	sps7)+		basic_machine=m68k-bull+		os=-sysv2+		;;+	spur)+		basic_machine=spur-unknown+		;;+	st2000)+		basic_machine=m68k-tandem+		;;+	stratus)+		basic_machine=i860-stratus+		os=-sysv4+		;;+	strongarm-* | thumb-*)+		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`+		;;+	sun2)+		basic_machine=m68000-sun+		;;+	sun2os3)+		basic_machine=m68000-sun+		os=-sunos3+		;;+	sun2os4)+		basic_machine=m68000-sun+		os=-sunos4+		;;+	sun3os3)+		basic_machine=m68k-sun+		os=-sunos3+		;;+	sun3os4)+		basic_machine=m68k-sun+		os=-sunos4+		;;+	sun4os3)+		basic_machine=sparc-sun+		os=-sunos3+		;;+	sun4os4)+		basic_machine=sparc-sun+		os=-sunos4+		;;+	sun4sol2)+		basic_machine=sparc-sun+		os=-solaris2+		;;+	sun3 | sun3-*)+		basic_machine=m68k-sun+		;;+	sun4)+		basic_machine=sparc-sun+		;;+	sun386 | sun386i | roadrunner)+		basic_machine=i386-sun+		;;+	sv1)+		basic_machine=sv1-cray+		os=-unicos+		;;+	symmetry)+		basic_machine=i386-sequent+		os=-dynix+		;;+	t3e)+		basic_machine=alphaev5-cray+		os=-unicos+		;;+	t90)+		basic_machine=t90-cray+		os=-unicos+		;;+	tile*)+		basic_machine=$basic_machine-unknown+		os=-linux-gnu+		;;+	tx39)+		basic_machine=mipstx39-unknown+		;;+	tx39el)+		basic_machine=mipstx39el-unknown+		;;+	toad1)+		basic_machine=pdp10-xkl+		os=-tops20+		;;+	tower | tower-32)+		basic_machine=m68k-ncr+		;;+	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+		;;+	vpp*|vx|vx-*)+		basic_machine=f301-fujitsu+		;;+	vxworks960)+		basic_machine=i960-wrs+		os=-vxworks+		;;+	vxworks68)+		basic_machine=m68k-wrs+		os=-vxworks+		;;+	vxworks29k)+		basic_machine=a29k-wrs+		os=-vxworks+		;;+	w65*)+		basic_machine=w65-wdc+		os=-none+		;;+	w89k-*)+		basic_machine=hppa1.1-winbond+		os=-proelf+		;;+	x64)+		basic_machine=x86_64-pc+		;;+	xbox)+		basic_machine=i686-pc+		os=-mingw32+		;;+	xps | xps100)+		basic_machine=xps100-honeywell+		;;+	xscale-* | xscalee[bl]-*)+		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`+		;;+	ymp)+		basic_machine=ymp-cray+		os=-unicos+		;;+	none)+		basic_machine=none-none+		os=-none+		;;++# Here we handle the default manufacturer of certain CPU types.  It is in+# some cases the only manufacturer, in others, it is the most popular.+	w89k)+		basic_machine=hppa1.1-winbond+		;;+	op50n)+		basic_machine=hppa1.1-oki+		;;+	op60c)+		basic_machine=hppa1.1-oki+		;;+	romp)+		basic_machine=romp-ibm+		;;+	mmix)+		basic_machine=mmix-knuth+		;;+	rs6000)+		basic_machine=rs6000-ibm+		;;+	vax)+		basic_machine=vax-dec+		;;+	pdp11)+		basic_machine=pdp11-dec+		;;+	we32k)+		basic_machine=we32k-att+		;;+	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)+		basic_machine=sh-unknown+		;;+	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.+		;;+	*)+		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2+		exit 1+		;;+esac++# Here we canonicalize certain aliases for manufacturers.+case $basic_machine in+	*-digital*)+		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`+		;;+	*-commodore*)+		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`+		;;+	*)+		;;+esac++# Decode manufacturer-specific aliases for certain operating systems.++if [ x"$os" != x"" ]+then+case $os in+	# First match some system type aliases that might get confused+	# with valid system types.+	# -solaris* is a basic system type, with this one exception.+	-auroraux)+		os=-auroraux+		;;+	-solaris1 | -solaris1.*)+		os=`echo $os | sed -e 's|solaris1|sunos4|'`+		;;+	-solaris)+		os=-solaris2+		;;+	-unixware*)+		os=-sysv4.2uw+		;;+	-gnu/linux*)+		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`+		;;+	# es1800 is here to avoid being matched by es* (a different OS)+	-es1800*)+		os=-ose+		;;+	# 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* | -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* | -hcos* \+	      | -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* \+	      | -midnightbsd*)+	# Remember, each alternative MUST END IN *, to match a version number.+		;;+	-qnx*)+		case $basic_machine in+		    x86-* | i*86-*)+			;;+		    *)+			os=-nto$os+			;;+		esac+		;;+	-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*)+		;;+	-mac*)+		os=`echo "$os" | sed -e 's|mac|macos|'`+		;;+	-linux-dietlibc)+		os=-linux-dietlibc+		;;+	-linux*)+		os=`echo $os | sed -e 's|linux|linux-gnu|'`+		;;+	-sunos5*)+		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`+		;;+	-sunos6*)+		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`+		;;+	-opened*)+		os=-openedition+		;;+	-os400*)+		os=-os400+		;;+	-wince*)+		os=-wince+		;;+	-utek*)+		os=-bsd+		;;+	-dynix*)+		os=-bsd+		;;+	-acis*)+		os=-aos+		;;+	-atheos*)+		os=-atheos+		;;+	-syllable*)+		os=-syllable+		;;+	-386bsd)+		os=-bsd+		;;+	-ctix* | -uts*)+		os=-sysv+		;;+	-nova*)+		os=-rtmk-nova+		;;+	-ns2)+		os=-nextstep2+		;;+	-nsk*)+		os=-nsk+		;;+	# Preserve the version number of sinix5.+	-sinix5.*)+		os=`echo $os | sed -e 's|sinix|sysv|'`+		;;+	-sinix*)+		os=-sysv4+		;;+	-tpf*)+		os=-tpf+		;;+	-triton*)+		os=-sysv3+		;;+	-oss*)+		os=-sysv3+		;;+	-svr4*)+		os=-sysv4+		;;+	-svr3)+		os=-sysv3+		;;+	-sysvr4)+		os=-sysv4+		;;+	# This must come after -sysvr4.+	-sysv*)+		;;+	-ose*)+		os=-ose+		;;+	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)+		os=-mint+		;;+	-zvmoe)+		os=-zvmoe+		;;+	-dicos*)+		os=-dicos+		;;+	-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+		;;+	-nacl*)+		;;+	-ios)+		;;+	-none)+		;;+	*)+		# Get rid of the `-' at the beginning of $os.+		os=`echo $os | sed 's/[^-]*-//'`+		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2+		exit 1+		;;+esac+else++# Here we handle the default operating systems that come with various machines.+# The value should be what the vendor currently ships out the door with their+# machine or put another way, the most popular os provided with the machine.++# Note that if you're going to try to match "-MANUFACTURER" here (say,+# "-sun"), then you have to tell the case statement up towards the top+# that MANUFACTURER isn't an operating system.  Otherwise, code above+# will signal an error saying that MANUFACTURER isn't an operating+# system, and we'll never get to this point.++case $basic_machine in+	score-*)+		os=-elf+		;;+	spu-*)+		os=-elf+		;;+	*-acorn)+		os=-riscix1.2+		;;+	arm*-rebel)+		os=-linux+		;;+	arm*-semi)+		os=-aout+		;;+	c4x-* | tic4x-*)+		os=-coff+		;;+	c8051-*)+		os=-elf+		;;+	hexagon-*)+		os=-elf+		;;+	tic54x-*)+		os=-coff+		;;+	tic55x-*)+		os=-coff+		;;+	tic6x-*)+		os=-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=-aout+		;;+	mep-*)+		os=-elf+		;;+	mips*-cisco)+		os=-elf+		;;+	mips*-*)+		os=-elf+		;;+	or32-*)+		os=-coff+		;;+	*-tti)	# must be before sparc entry or we get the wrong os.+		os=-sysv3+		;;+	sparc-* | *-sun)+		os=-sunos4.1.1+		;;+	pru-*)+		os=-elf+		;;+	*-be)+		os=-beos+		;;+	*-ibm)+		os=-aix+		;;+	*-knuth)+		os=-mmixware+		;;+	*-wec)+		os=-proelf+		;;+	*-winbond)+		os=-proelf+		;;+	*-oki)+		os=-proelf+		;;+	*-hp)+		os=-hpux+		;;+	*-hitachi)+		os=-hiux+		;;+	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)+		os=-sysv+		;;+	*-cbm)+		os=-amigaos+		;;+	*-dg)+		os=-dgux+		;;+	*-dolphin)+		os=-sysv3+		;;+	m68k-ccur)+		os=-rtu+		;;+	m88k-omron*)+		os=-luna+		;;+	*-next)+		os=-nextstep+		;;+	*-sequent)+		os=-ptx+		;;+	*-crds)+		os=-unos+		;;+	*-ns)+		os=-genix+		;;+	i370-*)+		os=-mvs+		;;+	*-gould)+		os=-sysv+		;;+	*-highlevel)+		os=-bsd+		;;+	*-encore)+		os=-bsd+		;;+	*-sgi)+		os=-irix+		;;+	*-siemens)+		os=-sysv4+		;;+	*-masscomp)+		os=-rtu+		;;+	f30[01]-fujitsu | f700-fujitsu)+		os=-uxpv+		;;+	*-rom68k)+		os=-coff+		;;+	*-*bug)+		os=-coff+		;;+	*-apple)+		os=-macos+		;;+	*-atari*)+		os=-mint+		;;+	*)+		os=-none+		;;+esac+fi++# Here we handle the case where we know the os, and the CPU type, but not the+# manufacturer.  We pick the logical manufacturer.+vendor=unknown+case $basic_machine in+	*-unknown)+		case $os in+			-riscix*)+				vendor=acorn+				;;+			-sunos*)+				vendor=sun+				;;+			-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+				;;+			-mvs* | -opened*)+				vendor=ibm+				;;+			-os400*)+				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+		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`+		;;+esac++echo "$basic_machine$os"+exit++# Local variables:+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "timestamp='"+# time-stamp-format: "%:y-%02m-%02d"+# time-stamp-end: "'"+# End:

depcomp

new file mode 100755@@ -0,0 +1,791 @@+#! /bin/sh+# depcomp - compile a program generating dependencies as side-effects++scriptversion=2018-03-07.03; # UTC++# Copyright (C) 1999-2018 Free Software Foundation, Inc.++# This program 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, 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.++# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.++case $1 in+  '')+    echo "$0: No command.  Try '$0 --help' for more information." 1>&2+    exit 1;+    ;;+  -h | --h*)+    cat <<\EOF+Usage: depcomp [--help] [--version] PROGRAM [ARGS]++Run PROGRAMS ARGS to compile a file, generating dependencies+as side-effects.++Environment variables:+  depmode     Dependency tracking mode.+  source      Source file read by 'PROGRAMS ARGS'.+  object      Object file output by 'PROGRAMS ARGS'.+  DEPDIR      directory where to store dependencies.+  depfile     Dependency file to output.+  tmpdepfile  Temporary file to use when outputting dependencies.+  libtool     Whether libtool is used (yes/no).++Report bugs to <bug-automake@gnu.org>.+EOF+    exit $?+    ;;+  -v | --v*)+    echo "depcomp $scriptversion"+    exit $?+    ;;+esac++# Get the directory component of the given path, and save it in the+# global variables '$dir'.  Note that this directory component will+# be either empty or ending with a '/' character.  This is deliberate.+set_dir_from ()+{+  case $1 in+    */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;+      *) dir=;;+  esac+}++# Get the suffix-stripped basename of the given path, and save it the+# global variable '$base'.+set_base_from ()+{+  base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`+}++# If no dependency file was actually created by the compiler invocation,+# we still have to create a dummy depfile, to avoid errors with the+# Makefile "include basename.Plo" scheme.+make_dummy_depfile ()+{+  echo "#dummy" > "$depfile"+}++# Factor out some common post-processing of the generated depfile.+# Requires the auxiliary global variable '$tmpdepfile' to be set.+aix_post_process_depfile ()+{+  # If the compiler actually managed to produce a dependency file,+  # post-process it.+  if test -f "$tmpdepfile"; then+    # Each line is of the form 'foo.o: dependency.h'.+    # Do two passes, one to just change these to+    #   $object: dependency.h+    # and one to simply output+    #   dependency.h:+    # which is needed to avoid the deleted-header problem.+    { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"+      sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"+    } > "$depfile"+    rm -f "$tmpdepfile"+  else+    make_dummy_depfile+  fi+}++# A tabulation character.+tab='	'+# A newline character.+nl='+'+# Character ranges might be problematic outside the C locale.+# These definitions help.+upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ+lower=abcdefghijklmnopqrstuvwxyz+digits=0123456789+alpha=${upper}${lower}++if test -z "$depmode" || test -z "$source" || test -z "$object"; then+  echo "depcomp: Variables source, object and depmode must be set" 1>&2+  exit 1+fi++# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.+depfile=${depfile-`echo "$object" |+  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}++rm -f "$tmpdepfile"++# Avoid interferences from the environment.+gccflag= dashmflag=++# Some modes work just like other modes, but use different flags.  We+# parameterize here, but still list the modes in the big case below,+# to make depend.m4 easier to write.  Note that we *cannot* use a case+# here, because this file can only contain one case statement.+if test "$depmode" = hp; then+  # HP compiler uses -M and no extra arg.+  gccflag=-M+  depmode=gcc+fi++if test "$depmode" = dashXmstdout; then+  # This is just like dashmstdout with a different argument.+  dashmflag=-xM+  depmode=dashmstdout+fi++cygpath_u="cygpath -u -f -"+if test "$depmode" = msvcmsys; then+  # This is just like msvisualcpp but w/o cygpath translation.+  # Just convert the backslash-escaped backslashes to single forward+  # slashes to satisfy depend.m4+  cygpath_u='sed s,\\\\,/,g'+  depmode=msvisualcpp+fi++if test "$depmode" = msvc7msys; then+  # This is just like msvc7 but w/o cygpath translation.+  # Just convert the backslash-escaped backslashes to single forward+  # slashes to satisfy depend.m4+  cygpath_u='sed s,\\\\,/,g'+  depmode=msvc7+fi++if test "$depmode" = xlc; then+  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.+  gccflag=-qmakedep=gcc,-MF+  depmode=gcc+fi++case "$depmode" in+gcc3)+## gcc 3 implements dependency tracking that does exactly what+## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like+## it if -MD -MP comes after the -MF stuff.  Hmm.+## Unfortunately, FreeBSD c89 acceptance of flags depends upon+## the command line argument order; so add the flags where they+## appear in depend2.am.  Note that the slowdown incurred here+## affects only configure: in makefiles, %FASTDEP% shortcuts this.+  for arg+  do+    case $arg in+    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;+    *)  set fnord "$@" "$arg" ;;+    esac+    shift # fnord+    shift # $arg+  done+  "$@"+  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  mv "$tmpdepfile" "$depfile"+  ;;++gcc)+## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.+## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.+## (see the conditional assignment to $gccflag above).+## There are various ways to get dependency output from gcc.  Here's+## why we pick this rather obscure method:+## - Don't want to use -MD because we'd like the dependencies to end+##   up in a subdir.  Having to rename by hand is ugly.+##   (We might end up doing this anyway to support other compilers.)+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like+##   -MM, not -M (despite what the docs say).  Also, it might not be+##   supported by the other compilers which use the 'gcc' depmode.+## - Using -M directly means running the compiler twice (even worse+##   than renaming).+  if test -z "$gccflag"; then+    gccflag=-MD,+  fi+  "$@" -Wp,"$gccflag$tmpdepfile"+  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  rm -f "$depfile"+  echo "$object : \\" > "$depfile"+  # The second -e expression handles DOS-style file names with drive+  # letters.+  sed -e 's/^[^:]*: / /' \+      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"+## This next piece of magic avoids the "deleted header file" problem.+## The problem is that when a header file which appears in a .P file+## is deleted, the dependency causes make to die (because there is+## typically no way to rebuild the header).  We avoid this by adding+## dummy dependencies for each header file.  Too bad gcc doesn't do+## this for us directly.+## Some versions of gcc put a space before the ':'.  On the theory+## that the space means something, we add a space to the output as+## well.  hp depmode also adds that space, but also prefixes the VPATH+## to the object.  Take care to not repeat it in the output.+## Some versions of the HPUX 10.20 sed can't process this invocation+## correctly.  Breaking it into two sed invocations is a workaround.+  tr ' ' "$nl" < "$tmpdepfile" \+    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \+    | sed -e 's/$/ :/' >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++hp)+  # This case exists only to let depend.m4 do its work.  It works by+  # looking at the text of this script.  This case will never be run,+  # since it is checked for above.+  exit 1+  ;;++sgi)+  if test "$libtool" = yes; then+    "$@" "-Wp,-MDupdate,$tmpdepfile"+  else+    "$@" -MDupdate "$tmpdepfile"+  fi+  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  rm -f "$depfile"++  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files+    echo "$object : \\" > "$depfile"+    # Clip off the initial element (the dependent).  Don't try to be+    # clever and replace this with sed code, as IRIX sed won't handle+    # lines with more than a fixed number of characters (4096 in+    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;+    # the IRIX cc adds comments like '#:fec' to the end of the+    # dependency line.+    tr ' ' "$nl" < "$tmpdepfile" \+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \+      | tr "$nl" ' ' >> "$depfile"+    echo >> "$depfile"+    # The second pass generates a dummy entry for each header file.+    tr ' ' "$nl" < "$tmpdepfile" \+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \+      >> "$depfile"+  else+    make_dummy_depfile+  fi+  rm -f "$tmpdepfile"+  ;;++xlc)+  # This case exists only to let depend.m4 do its work.  It works by+  # looking at the text of this script.  This case will never be run,+  # since it is checked for above.+  exit 1+  ;;++aix)+  # The C for AIX Compiler uses -M and outputs the dependencies+  # in a .u file.  In older versions, this file always lives in the+  # current directory.  Also, the AIX compiler puts '$object:' at the+  # start of each line; $object doesn't have directory information.+  # Version 6 uses the directory in both cases.+  set_dir_from "$object"+  set_base_from "$object"+  if test "$libtool" = yes; then+    tmpdepfile1=$dir$base.u+    tmpdepfile2=$base.u+    tmpdepfile3=$dir.libs/$base.u+    "$@" -Wc,-M+  else+    tmpdepfile1=$dir$base.u+    tmpdepfile2=$dir$base.u+    tmpdepfile3=$dir$base.u+    "$@" -M+  fi+  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"+    exit $stat+  fi++  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"+  do+    test -f "$tmpdepfile" && break+  done+  aix_post_process_depfile+  ;;++tcc)+  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26+  # FIXME: That version still under development at the moment of writing.+  #        Make that this statement remains true also for stable, released+  #        versions.+  # It will wrap lines (doesn't matter whether long or short) with a+  # trailing '\', as in:+  #+  #   foo.o : \+  #    foo.c \+  #    foo.h \+  #+  # It will put a trailing '\' even on the last line, and will use leading+  # spaces rather than leading tabs (at least since its commit 0394caf7+  # "Emit spaces for -MD").+  "$@" -MD -MF "$tmpdepfile"+  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  rm -f "$depfile"+  # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.+  # We have to change lines of the first kind to '$object: \'.+  sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"+  # And for each line of the second kind, we have to emit a 'dep.h:'+  # dummy dependency, to avoid the deleted-header problem.+  sed -n -e 's|^  *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++## The order of this option in the case statement is important, since the+## shell code in configure will try each of these formats in the order+## listed in this file.  A plain '-MD' option would be understood by many+## compilers, so we must ensure this comes after the gcc and icc options.+pgcc)+  # Portland's C compiler understands '-MD'.+  # Will always output deps to 'file.d' where file is the root name of the+  # source file under compilation, even if file resides in a subdirectory.+  # The object file name does not affect the name of the '.d' file.+  # pgcc 10.2 will output+  #    foo.o: sub/foo.c sub/foo.h+  # and will wrap long lines using '\' :+  #    foo.o: sub/foo.c ... \+  #     sub/foo.h ... \+  #     ...+  set_dir_from "$object"+  # Use the source, not the object, to determine the base name, since+  # that's sadly what pgcc will do too.+  set_base_from "$source"+  tmpdepfile=$base.d++  # For projects that build the same source file twice into different object+  # files, the pgcc approach of using the *source* file root name can cause+  # problems in parallel builds.  Use a locking strategy to avoid stomping on+  # the same $tmpdepfile.+  lockdir=$base.d-lock+  trap "+    echo '$0: caught signal, cleaning up...' >&2+    rmdir '$lockdir'+    exit 1+  " 1 2 13 15+  numtries=100+  i=$numtries+  while test $i -gt 0; do+    # mkdir is a portable test-and-set.+    if mkdir "$lockdir" 2>/dev/null; then+      # This process acquired the lock.+      "$@" -MD+      stat=$?+      # Release the lock.+      rmdir "$lockdir"+      break+    else+      # If the lock is being held by a different process, wait+      # until the winning process is done or we timeout.+      while test -d "$lockdir" && test $i -gt 0; do+        sleep 1+        i=`expr $i - 1`+      done+    fi+    i=`expr $i - 1`+  done+  trap - 1 2 13 15+  if test $i -le 0; then+    echo "$0: failed to acquire lock after $numtries attempts" >&2+    echo "$0: check lockdir '$lockdir'" >&2+    exit 1+  fi++  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  rm -f "$depfile"+  # Each line is of the form `foo.o: dependent.h',+  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.+  # Do two passes, one to just change these to+  # `$object: dependent.h' and one to simply `dependent.h:'.+  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"+  # Some versions of the HPUX 10.20 sed can't process this invocation+  # correctly.  Breaking it into two sed invocations is a workaround.+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \+    | sed -e 's/$/ :/' >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++hp2)+  # The "hp" stanza above does not work with aCC (C++) and HP's ia64+  # compilers, which have integrated preprocessors.  The correct option+  # to use with these is +Maked; it writes dependencies to a file named+  # 'foo.d', which lands next to the object file, wherever that+  # happens to be.+  # Much of this is similar to the tru64 case; see comments there.+  set_dir_from  "$object"+  set_base_from "$object"+  if test "$libtool" = yes; then+    tmpdepfile1=$dir$base.d+    tmpdepfile2=$dir.libs/$base.d+    "$@" -Wc,+Maked+  else+    tmpdepfile1=$dir$base.d+    tmpdepfile2=$dir$base.d+    "$@" +Maked+  fi+  stat=$?+  if test $stat -ne 0; then+     rm -f "$tmpdepfile1" "$tmpdepfile2"+     exit $stat+  fi++  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"+  do+    test -f "$tmpdepfile" && break+  done+  if test -f "$tmpdepfile"; then+    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"+    # Add 'dependent.h:' lines.+    sed -ne '2,${+               s/^ *//+               s/ \\*$//+               s/$/:/+               p+             }' "$tmpdepfile" >> "$depfile"+  else+    make_dummy_depfile+  fi+  rm -f "$tmpdepfile" "$tmpdepfile2"+  ;;++tru64)+  # The Tru64 compiler uses -MD to generate dependencies as a side+  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.+  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put+  # dependencies in 'foo.d' instead, so we check for that too.+  # Subdirectories are respected.+  set_dir_from  "$object"+  set_base_from "$object"++  if test "$libtool" = yes; then+    # Libtool generates 2 separate objects for the 2 libraries.  These+    # two compilations output dependencies in $dir.libs/$base.o.d and+    # in $dir$base.o.d.  We have to check for both files, because+    # one of the two compilations can be disabled.  We should prefer+    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is+    # automatically cleaned when .libs/ is deleted, while ignoring+    # the former would cause a distcleancheck panic.+    tmpdepfile1=$dir$base.o.d          # libtool 1.5+    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.+    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504+    "$@" -Wc,-MD+  else+    tmpdepfile1=$dir$base.d+    tmpdepfile2=$dir$base.d+    tmpdepfile3=$dir$base.d+    "$@" -MD+  fi++  stat=$?+  if test $stat -ne 0; then+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"+    exit $stat+  fi++  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"+  do+    test -f "$tmpdepfile" && break+  done+  # Same post-processing that is required for AIX mode.+  aix_post_process_depfile+  ;;++msvc7)+  if test "$libtool" = yes; then+    showIncludes=-Wc,-showIncludes+  else+    showIncludes=-showIncludes+  fi+  "$@" $showIncludes > "$tmpdepfile"+  stat=$?+  grep -v '^Note: including file: ' "$tmpdepfile"+  if test $stat -ne 0; then+    rm -f "$tmpdepfile"+    exit $stat+  fi+  rm -f "$depfile"+  echo "$object : \\" > "$depfile"+  # The first sed program below extracts the file names and escapes+  # backslashes for cygpath.  The second sed program outputs the file+  # name when reading, but also accumulates all include files in the+  # hold buffer in order to output them again at the end.  This only+  # works with sed implementations that can handle large buffers.+  sed < "$tmpdepfile" -n '+/^Note: including file:  *\(.*\)/ {+  s//\1/+  s/\\/\\\\/g+  p+}' | $cygpath_u | sort -u | sed -n '+s/ /\\ /g+s/\(.*\)/'"$tab"'\1 \\/p+s/.\(.*\) \\/\1:/+H+$ {+  s/.*/'"$tab"'/+  G+  p+}' >> "$depfile"+  echo >> "$depfile" # make sure the fragment doesn't end with a backslash+  rm -f "$tmpdepfile"+  ;;++msvc7msys)+  # This case exists only to let depend.m4 do its work.  It works by+  # looking at the text of this script.  This case will never be run,+  # since it is checked for above.+  exit 1+  ;;++#nosideeffect)+  # This comment above is used by automake to tell side-effect+  # dependency tracking mechanisms from slower ones.++dashmstdout)+  # Important note: in order to support this mode, a compiler *must*+  # always write the preprocessed file to stdout, regardless of -o.+  "$@" || exit $?++  # Remove the call to Libtool.+  if test "$libtool" = yes; then+    while test "X$1" != 'X--mode=compile'; do+      shift+    done+    shift+  fi++  # Remove '-o $object'.+  IFS=" "+  for arg+  do+    case $arg in+    -o)+      shift+      ;;+    $object)+      shift+      ;;+    *)+      set fnord "$@" "$arg"+      shift # fnord+      shift # $arg+      ;;+    esac+  done++  test -z "$dashmflag" && dashmflag=-M+  # Require at least two characters before searching for ':'+  # in the target name.  This is to cope with DOS-style filenames:+  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.+  "$@" $dashmflag |+    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"+  rm -f "$depfile"+  cat < "$tmpdepfile" > "$depfile"+  # Some versions of the HPUX 10.20 sed can't process this sed invocation+  # correctly.  Breaking it into two sed invocations is a workaround.+  tr ' ' "$nl" < "$tmpdepfile" \+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \+    | sed -e 's/$/ :/' >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++dashXmstdout)+  # This case only exists to satisfy depend.m4.  It is never actually+  # run, as this mode is specially recognized in the preamble.+  exit 1+  ;;++makedepend)+  "$@" || exit $?+  # Remove any Libtool call+  if test "$libtool" = yes; then+    while test "X$1" != 'X--mode=compile'; do+      shift+    done+    shift+  fi+  # X makedepend+  shift+  cleared=no eat=no+  for arg+  do+    case $cleared in+    no)+      set ""; shift+      cleared=yes ;;+    esac+    if test $eat = yes; then+      eat=no+      continue+    fi+    case "$arg" in+    -D*|-I*)+      set fnord "$@" "$arg"; shift ;;+    # Strip any option that makedepend may not understand.  Remove+    # the object too, otherwise makedepend will parse it as a source file.+    -arch)+      eat=yes ;;+    -*|$object)+      ;;+    *)+      set fnord "$@" "$arg"; shift ;;+    esac+  done+  obj_suffix=`echo "$object" | sed 's/^.*\././'`+  touch "$tmpdepfile"+  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"+  rm -f "$depfile"+  # makedepend may prepend the VPATH from the source file name to the object.+  # No need to regex-escape $object, excess matching of '.' is harmless.+  sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"+  # Some versions of the HPUX 10.20 sed can't process the last invocation+  # correctly.  Breaking it into two sed invocations is a workaround.+  sed '1,2d' "$tmpdepfile" \+    | tr ' ' "$nl" \+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \+    | sed -e 's/$/ :/' >> "$depfile"+  rm -f "$tmpdepfile" "$tmpdepfile".bak+  ;;++cpp)+  # Important note: in order to support this mode, a compiler *must*+  # always write the preprocessed file to stdout.+  "$@" || exit $?++  # Remove the call to Libtool.+  if test "$libtool" = yes; then+    while test "X$1" != 'X--mode=compile'; do+      shift+    done+    shift+  fi++  # Remove '-o $object'.+  IFS=" "+  for arg+  do+    case $arg in+    -o)+      shift+      ;;+    $object)+      shift+      ;;+    *)+      set fnord "$@" "$arg"+      shift # fnord+      shift # $arg+      ;;+    esac+  done++  "$@" -E \+    | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \+             -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \+    | sed '$ s: \\$::' > "$tmpdepfile"+  rm -f "$depfile"+  echo "$object : \\" > "$depfile"+  cat < "$tmpdepfile" >> "$depfile"+  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++msvisualcpp)+  # Important note: in order to support this mode, a compiler *must*+  # always write the preprocessed file to stdout.+  "$@" || exit $?++  # Remove the call to Libtool.+  if test "$libtool" = yes; then+    while test "X$1" != 'X--mode=compile'; do+      shift+    done+    shift+  fi++  IFS=" "+  for arg+  do+    case "$arg" in+    -o)+      shift+      ;;+    $object)+      shift+      ;;+    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")+        set fnord "$@"+        shift+        shift+        ;;+    *)+        set fnord "$@" "$arg"+        shift+        shift+        ;;+    esac+  done+  "$@" -E 2>/dev/null |+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"+  rm -f "$depfile"+  echo "$object : \\" > "$depfile"+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"+  echo "$tab" >> "$depfile"+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"+  rm -f "$tmpdepfile"+  ;;++msvcmsys)+  # This case exists only to let depend.m4 do its work.  It works by+  # looking at the text of this script.  This case will never be run,+  # since it is checked for above.+  exit 1+  ;;++none)+  exec "$@"+  ;;++*)+  echo "Unknown depmode $depmode" 1>&2+  exit 1+  ;;+esac++exit 0++# Local Variables:+# mode: shell-script+# sh-indentation: 2+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "scriptversion="+# time-stamp-format: "%:y-%02m-%02d.%02H"+# time-stamp-time-zone: "UTC0"+# time-stamp-end: "; # UTC"+# End:

install-sh

new file mode 100755@@ -0,0 +1,518 @@+#!/bin/sh+# install - install a program, script, or datafile++scriptversion=2018-03-11.20; # UTC++# This originates from X11R5 (mit/util/scripts/install.sh), which was+# later released in X11R6 (xc/config/util/install.sh) with the+# following copyright and license.+#+# Copyright (C) 1994 X Consortium+#+# Permission is hereby granted, free of charge, to any person obtaining a copy+# of this software and associated documentation files (the "Software"), to+# deal in the Software without restriction, including without limitation the+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or+# sell copies of the Software, and to permit persons to whom the Software is+# furnished to do so, subject to the following conditions:+#+# The above copyright notice and this permission notice shall be included in+# all copies or substantial portions of the Software.+#+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.+#+# Except as contained in this notice, the name of the X Consortium shall not+# be used in advertising or otherwise to promote the sale, use or other deal-+# ings in this Software without prior written authorization from the X Consor-+# tium.+#+#+# FSF changes to this file are in the public domain.+#+# Calling this script install-sh is preferred over install.sh, to prevent+# 'make' implicit rules from creating a file called install from it+# when there is no Makefile.+#+# This script is compatible with the BSD install script, but was written+# from scratch.++tab='	'+nl='+'+IFS=" $tab$nl"++# Set DOITPROG to "echo" to test this script.++doit=${DOITPROG-}+doit_exec=${doit:-exec}++# Put in absolute file names if you don't have them in your path;+# or use environment vars.++chgrpprog=${CHGRPPROG-chgrp}+chmodprog=${CHMODPROG-chmod}+chownprog=${CHOWNPROG-chown}+cmpprog=${CMPPROG-cmp}+cpprog=${CPPROG-cp}+mkdirprog=${MKDIRPROG-mkdir}+mvprog=${MVPROG-mv}+rmprog=${RMPROG-rm}+stripprog=${STRIPPROG-strip}++posix_mkdir=++# Desired mode of installed file.+mode=0755++chgrpcmd=+chmodcmd=$chmodprog+chowncmd=+mvcmd=$mvprog+rmcmd="$rmprog -f"+stripcmd=++src=+dst=+dir_arg=+dst_arg=++copy_on_change=false+is_target_a_directory=possibly++usage="\+Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE+   or: $0 [OPTION]... SRCFILES... DIRECTORY+   or: $0 [OPTION]... -t DIRECTORY SRCFILES...+   or: $0 [OPTION]... -d DIRECTORIES...++In the 1st form, copy SRCFILE to DSTFILE.+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.+In the 4th, create DIRECTORIES.++Options:+     --help     display this help and exit.+     --version  display version info and exit.++  -c            (ignored)+  -C            install only if different (preserve the last data modification time)+  -d            create directories instead of installing files.+  -g GROUP      $chgrpprog installed files to GROUP.+  -m MODE       $chmodprog installed files to MODE.+  -o USER       $chownprog installed files to USER.+  -s            $stripprog installed files.+  -t DIRECTORY  install into DIRECTORY.+  -T            report an error if DSTFILE is a directory.++Environment variables override the default commands:+  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG+  RMPROG STRIPPROG+"++while test $# -ne 0; do+  case $1 in+    -c) ;;++    -C) copy_on_change=true;;++    -d) dir_arg=true;;++    -g) chgrpcmd="$chgrpprog $2"+        shift;;++    --help) echo "$usage"; exit $?;;++    -m) mode=$2+        case $mode in+          *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)+            echo "$0: invalid mode: $mode" >&2+            exit 1;;+        esac+        shift;;++    -o) chowncmd="$chownprog $2"+        shift;;++    -s) stripcmd=$stripprog;;++    -t)+        is_target_a_directory=always+        dst_arg=$2+        # Protect names problematic for 'test' and other utilities.+        case $dst_arg in+          -* | [=\(\)!]) dst_arg=./$dst_arg;;+        esac+        shift;;++    -T) is_target_a_directory=never;;++    --version) echo "$0 $scriptversion"; exit $?;;++    --) shift+        break;;++    -*) echo "$0: invalid option: $1" >&2+        exit 1;;++    *)  break;;+  esac+  shift+done++# We allow the use of options -d and -T together, by making -d+# take the precedence; this is for compatibility with GNU install.++if test -n "$dir_arg"; then+  if test -n "$dst_arg"; then+    echo "$0: target directory not allowed when installing a directory." >&2+    exit 1+  fi+fi++if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then+  # When -d is used, all remaining arguments are directories to create.+  # When -t is used, the destination is already specified.+  # Otherwise, the last argument is the destination.  Remove it from $@.+  for arg+  do+    if test -n "$dst_arg"; then+      # $@ is not empty: it contains at least $arg.+      set fnord "$@" "$dst_arg"+      shift # fnord+    fi+    shift # arg+    dst_arg=$arg+    # Protect names problematic for 'test' and other utilities.+    case $dst_arg in+      -* | [=\(\)!]) dst_arg=./$dst_arg;;+    esac+  done+fi++if test $# -eq 0; then+  if test -z "$dir_arg"; then+    echo "$0: no input file specified." >&2+    exit 1+  fi+  # It's OK to call 'install-sh -d' without argument.+  # This can happen when creating conditional directories.+  exit 0+fi++if test -z "$dir_arg"; then+  if test $# -gt 1 || test "$is_target_a_directory" = always; then+    if test ! -d "$dst_arg"; then+      echo "$0: $dst_arg: Is not a directory." >&2+      exit 1+    fi+  fi+fi++if test -z "$dir_arg"; then+  do_exit='(exit $ret); exit $ret'+  trap "ret=129; $do_exit" 1+  trap "ret=130; $do_exit" 2+  trap "ret=141; $do_exit" 13+  trap "ret=143; $do_exit" 15++  # Set umask so as not to create temps with too-generous modes.+  # However, 'strip' requires both read and write access to temps.+  case $mode in+    # Optimize common cases.+    *644) cp_umask=133;;+    *755) cp_umask=22;;++    *[0-7])+      if test -z "$stripcmd"; then+        u_plus_rw=+      else+        u_plus_rw='% 200'+      fi+      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;+    *)+      if test -z "$stripcmd"; then+        u_plus_rw=+      else+        u_plus_rw=,u+rw+      fi+      cp_umask=$mode$u_plus_rw;;+  esac+fi++for src+do+  # Protect names problematic for 'test' and other utilities.+  case $src in+    -* | [=\(\)!]) src=./$src;;+  esac++  if test -n "$dir_arg"; then+    dst=$src+    dstdir=$dst+    test -d "$dstdir"+    dstdir_status=$?+  else++    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command+    # might cause directories to be created, which would be especially bad+    # if $src (and thus $dsttmp) contains '*'.+    if test ! -f "$src" && test ! -d "$src"; then+      echo "$0: $src does not exist." >&2+      exit 1+    fi++    if test -z "$dst_arg"; then+      echo "$0: no destination specified." >&2+      exit 1+    fi+    dst=$dst_arg++    # If destination is a directory, append the input filename.+    if test -d "$dst"; then+      if test "$is_target_a_directory" = never; then+        echo "$0: $dst_arg: Is a directory" >&2+        exit 1+      fi+      dstdir=$dst+      dstbase=`basename "$src"`+      case $dst in+	*/) dst=$dst$dstbase;;+	*)  dst=$dst/$dstbase;;+      esac+      dstdir_status=0+    else+      dstdir=`dirname "$dst"`+      test -d "$dstdir"+      dstdir_status=$?+    fi+  fi++  case $dstdir in+    */) dstdirslash=$dstdir;;+    *)  dstdirslash=$dstdir/;;+  esac++  obsolete_mkdir_used=false++  if test $dstdir_status != 0; then+    case $posix_mkdir in+      '')+        # Create intermediate dirs using mode 755 as modified by the umask.+        # This is like FreeBSD 'install' as of 1997-10-28.+        umask=`umask`+        case $stripcmd.$umask in+          # Optimize common cases.+          *[2367][2367]) mkdir_umask=$umask;;+          .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;++          *[0-7])+            mkdir_umask=`expr $umask + 22 \+              - $umask % 100 % 40 + $umask % 20 \+              - $umask % 10 % 4 + $umask % 2+            `;;+          *) mkdir_umask=$umask,go-w;;+        esac++        # With -d, create the new directory with the user-specified mode.+        # Otherwise, rely on $mkdir_umask.+        if test -n "$dir_arg"; then+          mkdir_mode=-m$mode+        else+          mkdir_mode=+        fi++        posix_mkdir=false+        case $umask in+          *[123567][0-7][0-7])+            # POSIX mkdir -p sets u+wx bits regardless of umask, which+            # is incompatible with FreeBSD 'install' when (umask & 300) != 0.+            ;;+          *)+            # Note that $RANDOM variable is not portable (e.g. dash);  Use it+            # here however when possible just to lower collision chance.+            tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$++            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0++            # Because "mkdir -p" follows existing symlinks and we likely work+            # directly in world-writeable /tmp, make sure that the '$tmpdir'+            # directory is successfully created first before we actually test+            # 'mkdir -p' feature.+            if (umask $mkdir_umask &&+                $mkdirprog $mkdir_mode "$tmpdir" &&+                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1+            then+              if test -z "$dir_arg" || {+                   # Check for POSIX incompatibilities with -m.+                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or+                   # other-writable bit of parent directory when it shouldn't.+                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.+                   test_tmpdir="$tmpdir/a"+                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`+                   case $ls_ld_tmpdir in+                     d????-?r-*) different_mode=700;;+                     d????-?--*) different_mode=755;;+                     *) false;;+                   esac &&+                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {+                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`+                     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"+                   }+                 }+              then posix_mkdir=:+              fi+              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"+            else+              # Remove any dirs left behind by ancient mkdir implementations.+              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null+            fi+            trap '' 0;;+        esac;;+    esac++    if+      $posix_mkdir && (+        umask $mkdir_umask &&+        $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"+      )+    then :+    else++      # The umask is ridiculous, or mkdir does not conform to POSIX,+      # or it failed possibly due to a race condition.  Create the+      # directory the slow way, step by step, checking for races as we go.++      case $dstdir in+        /*) prefix='/';;+        [-=\(\)!]*) prefix='./';;+        *)  prefix='';;+      esac++      oIFS=$IFS+      IFS=/+      set -f+      set fnord $dstdir+      shift+      set +f+      IFS=$oIFS++      prefixes=++      for d+      do+        test X"$d" = X && continue++        prefix=$prefix$d+        if test -d "$prefix"; then+          prefixes=+        else+          if $posix_mkdir; then+            (umask=$mkdir_umask &&+             $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break+            # Don't fail if two instances are running concurrently.+            test -d "$prefix" || exit 1+          else+            case $prefix in+              *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;+              *) qprefix=$prefix;;+            esac+            prefixes="$prefixes '$qprefix'"+          fi+        fi+        prefix=$prefix/+      done++      if test -n "$prefixes"; then+        # Don't fail if two instances are running concurrently.+        (umask $mkdir_umask &&+         eval "\$doit_exec \$mkdirprog $prefixes") ||+          test -d "$dstdir" || exit 1+        obsolete_mkdir_used=true+      fi+    fi+  fi++  if test -n "$dir_arg"; then+    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&+    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&+    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||+      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1+  else++    # Make a couple of temp file names in the proper directory.+    dsttmp=${dstdirslash}_inst.$$_+    rmtmp=${dstdirslash}_rm.$$_++    # Trap to clean up those temp files at exit.+    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0++    # Copy the file name to the temp name.+    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&++    # and set any options; do chmod last to preserve setuid bits.+    #+    # If any of these fail, we abort the whole thing.  If we want to+    # ignore errors from any of these, just make sure not to ignore+    # errors from the above "$doit $cpprog $src $dsttmp" command.+    #+    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&+    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&+    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&+    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&++    # If -C, don't bother to copy if it wouldn't change the file.+    if $copy_on_change &&+       old=`LC_ALL=C ls -dlL "$dst"     2>/dev/null` &&+       new=`LC_ALL=C ls -dlL "$dsttmp"  2>/dev/null` &&+       set -f &&+       set X $old && old=:$2:$4:$5:$6 &&+       set X $new && new=:$2:$4:$5:$6 &&+       set +f &&+       test "$old" = "$new" &&+       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1+    then+      rm -f "$dsttmp"+    else+      # Rename the file to the real destination.+      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||++      # The rename failed, perhaps because mv can't rename something else+      # to itself, or perhaps because mv is so ancient that it does not+      # support -f.+      {+        # Now remove or move aside any old file at destination location.+        # We try this two ways since rm can't unlink itself on some+        # systems and the destination file might be busy for other+        # reasons.  In this case, the final cleanup might fail but the new+        # file should still install successfully.+        {+          test ! -f "$dst" ||+          $doit $rmcmd -f "$dst" 2>/dev/null ||+          { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&+            { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }+          } ||+          { echo "$0: cannot unlink or rename $dst" >&2+            (exit 1); exit 1+          }+        } &&++        # Now rename the file to the real destination.+        $doit $mvcmd "$dsttmp" "$dst"+      }+    fi || exit 1++    trap '' 0+  fi+done++# Local variables:+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "scriptversion="+# time-stamp-format: "%:y-%02m-%02d.%02H"+# time-stamp-time-zone: "UTC0"+# time-stamp-end: "; # UTC"+# End:

missing

new file mode 100755@@ -0,0 +1,215 @@+#! /bin/sh+# Common wrapper for a few potentially missing GNU programs.++scriptversion=2018-03-07.03; # UTC++# Copyright (C) 1996-2018 Free Software Foundation, Inc.+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.++# This program 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, 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.++if test $# -eq 0; then+  echo 1>&2 "Try '$0 --help' for more information"+  exit 1+fi++case $1 in++  --is-lightweight)+    # Used by our autoconf macros to check whether the available missing+    # script is modern enough.+    exit 0+    ;;++  --run)+    # Back-compat with the calling convention used by older automake.+    shift+    ;;++  -h|--h|--he|--hel|--help)+    echo "\+$0 [OPTION]... PROGRAM [ARGUMENT]...++Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due+to PROGRAM being missing or too old.++Options:+  -h, --help      display this help and exit+  -v, --version   output version information and exit++Supported PROGRAM values:+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo+  bison     yacc      flex         lex       help2man++Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and+'g' are ignored when checking the name.++Send bug reports to <bug-automake@gnu.org>."+    exit $?+    ;;++  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)+    echo "missing $scriptversion (GNU Automake)"+    exit $?+    ;;++  -*)+    echo 1>&2 "$0: unknown '$1' option"+    echo 1>&2 "Try '$0 --help' for more information"+    exit 1+    ;;++esac++# Run the given program, remember its exit status.+"$@"; st=$?++# If it succeeded, we are done.+test $st -eq 0 && exit 0++# Also exit now if we it failed (or wasn't found), and '--version' was+# passed; such an option is passed most likely to detect whether the+# program is present and works.+case $2 in --version|--help) exit $st;; esac++# Exit code 63 means version mismatch.  This often happens when the user+# tries to use an ancient version of a tool on a file that requires a+# minimum version.+if test $st -eq 63; then+  msg="probably too old"+elif test $st -eq 127; then+  # Program was missing.+  msg="missing on your system"+else+  # Program was found and executed, but failed.  Give up.+  exit $st+fi++perl_URL=https://www.perl.org/+flex_URL=https://github.com/westes/flex+gnu_software_URL=https://www.gnu.org/software++program_details ()+{+  case $1 in+    aclocal|automake)+      echo "The '$1' program is part of the GNU Automake package:"+      echo "<$gnu_software_URL/automake>"+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"+      echo "<$gnu_software_URL/autoconf>"+      echo "<$gnu_software_URL/m4/>"+      echo "<$perl_URL>"+      ;;+    autoconf|autom4te|autoheader)+      echo "The '$1' program is part of the GNU Autoconf package:"+      echo "<$gnu_software_URL/autoconf/>"+      echo "It also requires GNU m4 and Perl in order to run:"+      echo "<$gnu_software_URL/m4/>"+      echo "<$perl_URL>"+      ;;+  esac+}++give_advice ()+{+  # Normalize program name to check for.+  normalized_program=`echo "$1" | sed '+    s/^gnu-//; t+    s/^gnu//; t+    s/^g//; t'`++  printf '%s\n' "'$1' is $msg."++  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"+  case $normalized_program in+    autoconf*)+      echo "You should only need it if you modified 'configure.ac',"+      echo "or m4 files included by it."+      program_details 'autoconf'+      ;;+    autoheader*)+      echo "You should only need it if you modified 'acconfig.h' or"+      echo "$configure_deps."+      program_details 'autoheader'+      ;;+    automake*)+      echo "You should only need it if you modified 'Makefile.am' or"+      echo "$configure_deps."+      program_details 'automake'+      ;;+    aclocal*)+      echo "You should only need it if you modified 'acinclude.m4' or"+      echo "$configure_deps."+      program_details 'aclocal'+      ;;+   autom4te*)+      echo "You might have modified some maintainer files that require"+      echo "the 'autom4te' program to be rebuilt."+      program_details 'autom4te'+      ;;+    bison*|yacc*)+      echo "You should only need it if you modified a '.y' file."+      echo "You may want to install the GNU Bison package:"+      echo "<$gnu_software_URL/bison/>"+      ;;+    lex*|flex*)+      echo "You should only need it if you modified a '.l' file."+      echo "You may want to install the Fast Lexical Analyzer package:"+      echo "<$flex_URL>"+      ;;+    help2man*)+      echo "You should only need it if you modified a dependency" \+           "of a man page."+      echo "You may want to install the GNU Help2man package:"+      echo "<$gnu_software_URL/help2man/>"+    ;;+    makeinfo*)+      echo "You should only need it if you modified a '.texi' file, or"+      echo "any other file indirectly affecting the aspect of the manual."+      echo "You might want to install the Texinfo package:"+      echo "<$gnu_software_URL/texinfo/>"+      echo "The spurious makeinfo call might also be the consequence of"+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"+      echo "want to install GNU make:"+      echo "<$gnu_software_URL/make/>"+      ;;+    *)+      echo "You might have modified some files without having the proper"+      echo "tools for further handling them.  Check the 'README' file, it"+      echo "often tells you about the needed prerequisites for installing"+      echo "this package.  You may also peek at any GNU archive site, in"+      echo "case some other package contains this missing '$1' program."+      ;;+  esac+}++give_advice "$1" | sed -e '1s/^/WARNING: /' \+                       -e '2,$s/^/         /' >&2++# Propagate the correct exit status (expected to be 127 for a program+# not found, 63 for a program that failed due to version mismatch).+exit $st++# Local variables:+# eval: (add-hook 'before-save-hook 'time-stamp)+# time-stamp-start: "scriptversion="+# time-stamp-format: "%:y-%02m-%02d.%02H"+# time-stamp-time-zone: "UTC0"+# time-stamp-end: "; # UTC"+# End:

src/ugrep.cpp

@@ -4475,7 +4475,7 @@ static void save_config()    fprintf(file, "# Enable pretty output to the terminal, default: pretty\n%s\n\n", flag_pretty ? "pretty" : "no-pretty"); -  fprintf(file, "# Enable directory tree output to a terminal for --files-with-matches and --count\n%s\n\n", flag_tree ? "tree" : "no-tree");+  fprintf(file, "# Enable directory tree output to a terminal for -l (--files-with-matches) and -c (--count)\n%s\n\n", flag_tree ? "tree" : "no-tree");    if (flag_heading.is_defined() && flag_heading != flag_pretty)     fprintf(file, "# Enable headings\n%s\n\n", flag_heading ? "heading" : "no-heading");@@ -4529,6 +4529,7 @@ static void save_config()   fprintf(file, "# Enable case-insensitive search, default: no-ignore-case\n%s\n\n", flag_ignore_case.is_undefined() ? "# no-ignore-case" : flag_ignore_case ? "ignore-case" : "no-ignore-case");   fprintf(file, "# Enable smart case, default: no-smart-case\n%s\n\n", flag_smart_case.is_undefined() ? "# no-smart-case" : flag_smart_case ? "smart-case" : "no-smart-case");   fprintf(file, "# Enable empty pattern matches, default: no-empty\n%s\n\n", flag_empty.is_undefined() ? "# no-empty" : flag_empty ? "empty" : "no-empty");+  fprintf(file, "# Force option -c (--count) to return non-zero matches with --min-count=1, default: --min-count=0\nmin-count=%zu\n\n", flag_min_count);    fprintf(file, "### SEARCH TARGETS ###\n\n"); @@ -12678,7 +12679,9 @@ void help(std::ostream& out)             Only a count of selected lines is written to standard output.\n\             If -o or -u is specified, counts the number of patterns matched.\n\             If -v is specified, counts the number of non-matching lines.  If\n\-            --tree is specified, outputs directories in a tree-like format.\n\+            -m1, (with a comma or --min-count=1) is specified, counts only\n\+            matching files without outputting zero matches.  If --tree is\n\+            specified, outputs directories in a tree-like format.\n\     --color[=WHEN], --colour[=WHEN]\n\             Mark up the matching text with the expression stored in the\n\             GREP_COLOR or GREP_COLORS environment variable.  WHEN can be\n\