1 #!/bin/sh
   2 #
   3 # Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
   4 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   5 #
   6 # This code is free software; you can redistribute it and/or modify it
   7 # under the terms of the GNU General Public License version 2 only, as
   8 # published by the Free Software Foundation.
   9 #
  10 # This code is distributed in the hope that it will be useful, but WITHOUT
  11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  13 # version 2 for more details (a copy is included in the LICENSE file that
  14 # accompanied this code).
  15 #
  16 # You should have received a copy of the GNU General Public License version
  17 # 2 along with this work; if not, write to the Free Software Foundation,
  18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  19 #
  20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 # or visit www.oracle.com if you need additional information or have any
  22 # questions.
  23 #
  24 
  25 # This is a wrapper for the config.guess from autoconf. The latter
  26 # does not know about all of our platforms. Instead of patching the
  27 # autoconf system (which might easily get lost in a future update), we
  28 # wrap it and fix the broken property, if needed.
  29 
  30 DIR=`dirname $0`
  31 
  32 # First, filter out everything that doesn't begin with "aarch64-"
  33 if ! echo $* | grep '^aarch64-' >/dev/null ; then
  34     . $DIR/autoconf-config.sub "$@"
  35     # autoconf-config.sub exits, so we never reach here, but just in
  36     # case we do:
  37     exit
  38 fi
  39 
  40 while test $# -gt 0 ; do
  41     case $1 in 
  42         -- )   # Stop option processing
  43             shift; break ;;
  44         aarch64-gnu )
  45             sub_args="$sub_args aarch64-unknown-gnu"
  46             shift; ;;
  47         aarch64-linux )
  48             sub_args="$sub_args aarch64-unknown-linux-gnu"
  49             shift; ;;
  50         aarch64-*-linux )
  51             os=`echo $1 | sed 's/aarch64-\(.*\)-linux/\1/'`
  52             config="aarch64-unknown-linux-gnu"
  53             sub_args="$sub_args $config"
  54             shift; ;;
  55         aarch64-*-gnu )
  56             os=`echo $1 | sed 's/aarch64-\(.*\)-gnu.*$/\1/'`
  57             config="aarch64-unknown-gnu"
  58             sub_args="$sub_args $config"
  59             shift; ;;
  60         aarch64-*-linux-* )
  61             os=`echo $1 | sed 's/aarch64-\(.*\)-linux-.*$/'`
  62             config="aarch64-unknown-linux-gnu"
  63             sub_args="$sub_args $config"
  64             shift; ;;
  65         - )    # Use stdin as input.
  66             sub_args="$sub_args $1"
  67             shift; break ;;
  68         * )
  69             sub_args="$sub_args $1"
  70             shift; ;;
  71     esac
  72 done
  73 
  74 result=`. $DIR/autoconf-config.sub $sub_args "$@"`
  75 exitcode=$?
  76 
  77 if [ "x$os" != "x" ] ; then
  78     result=`echo $result | sed "s/-unknown-/-$os-/"`
  79 fi
  80 
  81 echo $result
  82 exit $exitcode
  83