diff options
| -rwxr-xr-x | build-aux/compile | 356 | ||||
| -rwxr-xr-x | build-aux/config.guess | 351 | ||||
| -rwxr-xr-x | build-aux/config.sub | 132 | ||||
| -rwxr-xr-x | build-aux/depcomp | 586 | ||||
| -rwxr-xr-x | build-aux/install-sh | 38 | ||||
| -rwxr-xr-x | build-aux/missing | 414 | ||||
| -rw-r--r-- | configure.ac | 6 | ||||
| -rw-r--r-- | tests/Makefile.am | 4 | ||||
| -rw-r--r-- | tests/gpg/Makefile.am | 4 | ||||
| -rw-r--r-- | tests/gpgsm/Makefile.am | 4 | ||||
| -rw-r--r-- | tests/opassuan/Makefile.am | 20 | 
11 files changed, 1086 insertions, 829 deletions
| diff --git a/build-aux/compile b/build-aux/compile index 9bb997a6..531136b0 100755 --- a/build-aux/compile +++ b/build-aux/compile @@ -1,8 +1,9 @@  #! /bin/sh +# Wrapper for compilers which do not understand '-c -o'. -# Wrapper for compilers which do not understand `-c -o'. +scriptversion=2012-10-14.11; # UTC -# Copyright 1999, 2000 Free Software Foundation, Inc. +# Copyright (C) 1999-2013 Free Software Foundation, Inc.  # Written by Tom Tromey <[email protected]>.  #  # This program is free software; you can redistribute it and/or modify @@ -16,84 +17,331 @@  # GNU General Public License for more details.  #  # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# along with this program.  If not, see <http://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. -# Usage: -# compile PROGRAM [ARGS]... -# `-o FOO.o' is removed from the args passed to the actual compile. +# This file is maintained in Automake, please report +# bugs to <[email protected]> or send patches to +# <[email protected]>. -prog=$1 -shift +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 <[email protected]>. +EOF +    exit $? +    ;; +  -v | --v*) +    echo "compile $scriptversion" +    exit $? +    ;; +  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) +    func_cl_wrapper "$@"      # Doesn't return... +    ;; +esac  ofile=  cfile= -args= -while test $# -gt 0; do -   case "$1" in -    -o) -       # configure might choose to run compile as `compile cc -o foo foo.c'. -       # So we do something ugly here. -       ofile=$2 -       shift -       case "$ofile" in -	*.o | *.obj) -	   ;; -	*) -	   args="$args -o $ofile" -	   ofile= -	   ;; -       esac -       ;; -    *.c) -       cfile=$1 -       args="$args $1" -       ;; -    *) -       args="$args $1" -       ;; -   esac -   shift + +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 "$prog" $args +  # 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 -e 's|^.*/||' -e 's/\.c$/.o/'` +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 +# 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 +lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d  while true; do -   if mkdir $lockdir > /dev/null 2>&1; then -      break -   fi -   sleep 1 +  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 +trap "rmdir '$lockdir'; exit 1" 1 2 15  # Run the compile. -"$prog" $args -status=$? +"$@" +ret=$?  if test -f "$cofile"; then -   mv "$cofile" "$ofile" +  test "$cofile" = "$ofile" || mv "$cofile" "$ofile" +elif test -f "${cofile}bj"; then +  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"  fi -rmdir $lockdir -exit $status +rmdir "$lockdir" +exit $ret + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/build-aux/config.guess b/build-aux/config.guess index d622a44e..dbfb9786 100755 --- a/build-aux/config.guess +++ b/build-aux/config.guess @@ -1,14 +1,12 @@  #! /bin/sh  # Attempt to guess a canonical system name. -#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -#   2011, 2012 Free Software Foundation, Inc. +#   Copyright 1992-2015 Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2015-01-01'  # This file is free software; you can redistribute it and/or modify it  # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# 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 @@ -22,19 +20,17 @@ timestamp='2012-02-10'  # 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 Per Bothner.  Please send patches (context -# diff format) to <[email protected]> and include a ChangeLog -# entry. +# 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").  # -# This script attempts to guess a canonical system name similar to -# config.sub.  If it succeeds, it prints the system name on stdout, and -# exits with 0.  Otherwise, it exits with 1. +# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.  #  # You can get the latest version of this script from:  # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD +# +# Please send patches to <[email protected]>. +  me=`echo "$0" | sed -e 's,.*/,,'` @@ -54,9 +50,7 @@ version="\  GNU config.guess ($timestamp)  Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright 1992-2015 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." @@ -138,6 +132,27 @@ 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'` +	;; +esac +  # Note: order is significant - the case branches are not exclusive.  case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in @@ -200,6 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in  	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.  	echo "${machine}-${os}${release}"  	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} @@ -302,7 +321,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in      arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)  	echo arm-acorn-riscix${UNAME_RELEASE}  	exit ;; -    arm:riscos:*:*|arm:RISCOS:*:*) +    arm*:riscos:*:*|arm*:RISCOS:*:*)  	echo arm-unknown-riscos  	exit ;;      SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) @@ -560,8 +579,9 @@ EOF  	else  		IBM_ARCH=powerpc  	fi -	if [ -x /usr/bin/oslevel ] ; then -		IBM_REV=`/usr/bin/oslevel` +	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 @@ -801,10 +821,13 @@ EOF      i*:CYGWIN*:*)  	echo ${UNAME_MACHINE}-pc-cygwin  	exit ;; +    *:MINGW64*:*) +	echo ${UNAME_MACHINE}-pc-mingw64 +	exit ;;      *:MINGW*:*)  	echo ${UNAME_MACHINE}-pc-mingw32  	exit ;; -    i*:MSYS*:*) +    *:MSYS*:*)  	echo ${UNAME_MACHINE}-pc-msys  	exit ;;      i*:windows32*:*) @@ -852,21 +875,21 @@ EOF  	exit ;;      *:GNU:*:*)  	# the GNU system -	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` +	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 '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu +	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}  	exit ;;      i*86:Minix:*:*)  	echo ${UNAME_MACHINE}-pc-minix  	exit ;;      aarch64:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      aarch64_be:Linux:*:*)  	UNAME_MACHINE=aarch64_be -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      alpha:Linux:*:*)  	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -879,59 +902,54 @@ EOF  	  EV68*) UNAME_MACHINE=alphaev68 ;;  	esac  	objdump --private-headers /bin/sh | grep -q ld.so.1 -	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi -	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} +	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-gnu +	    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-gnueabi +		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi  	    else -		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf +		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf  	    fi  	fi  	exit ;;      avr32*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      cris:Linux:*:*) -	echo ${UNAME_MACHINE}-axis-linux-gnu +	echo ${UNAME_MACHINE}-axis-linux-${LIBC}  	exit ;;      crisv32:Linux:*:*) -	echo ${UNAME_MACHINE}-axis-linux-gnu +	echo ${UNAME_MACHINE}-axis-linux-${LIBC}  	exit ;;      frv:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      hexagon:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      i*86:Linux:*:*) -	LIBC=gnu -	eval $set_cc_for_build -	sed 's/^	//' << EOF >$dummy.c -	#ifdef __dietlibc__ -	LIBC=dietlibc -	#endif -EOF -	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'` -	echo "${UNAME_MACHINE}-pc-linux-${LIBC}" +	echo ${UNAME_MACHINE}-pc-linux-${LIBC}  	exit ;;      ia64:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      m32r*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      m68*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      mips:Linux:*:* | mips64:Linux:*:*)  	eval $set_cc_for_build @@ -950,54 +968,63 @@ EOF  	#endif  EOF  	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` -	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } +	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }  	;; -    or32:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +    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-gnu +	echo sparc-unknown-linux-${LIBC}  	exit ;;      parisc64:Linux:*:* | hppa64:Linux:*:*) -	echo hppa64-unknown-linux-gnu +	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-gnu ;; -	  PA8*) echo hppa2.0-unknown-linux-gnu ;; -	  *)    echo hppa-unknown-linux-gnu ;; +	  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-gnu +	echo powerpc64-unknown-linux-${LIBC}  	exit ;;      ppc:Linux:*:*) -	echo powerpc-unknown-linux-gnu +	echo powerpc-unknown-linux-${LIBC} +	exit ;; +    ppc64le:Linux:*:*) +	echo powerpc64le-unknown-linux-${LIBC} +	exit ;; +    ppcle:Linux:*:*) +	echo powerpcle-unknown-linux-${LIBC}  	exit ;;      s390:Linux:*:* | s390x:Linux:*:*) -	echo ${UNAME_MACHINE}-ibm-linux +	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}  	exit ;;      sh64*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      sh*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      sparc:Linux:*:* | sparc64:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      tile*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      vax:Linux:*:*) -	echo ${UNAME_MACHINE}-dec-linux-gnu +	echo ${UNAME_MACHINE}-dec-linux-${LIBC}  	exit ;;      x86_64:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      xtensa*:Linux:*:*) -	echo ${UNAME_MACHINE}-unknown-linux-gnu +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}  	exit ;;      i*86:DYNIX/ptx:4*:*)  	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -1201,6 +1228,9 @@ EOF      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 ;; @@ -1227,19 +1257,31 @@ EOF  	exit ;;      *:Darwin:*:*)  	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown -	case $UNAME_PROCESSOR in -	    i386) -		eval $set_cc_for_build -		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 -		      UNAME_PROCESSOR="x86_64" -		  fi -		fi ;; -	    unknown) UNAME_PROCESSOR=powerpc ;; -	esac +	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 +	    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]*:*) @@ -1256,7 +1298,7 @@ EOF      NEO-?:NONSTOP_KERNEL:*:*)  	echo neo-tandem-nsk${UNAME_RELEASE}  	exit ;; -    NSE-?:NONSTOP_KERNEL:*:*) +    NSE-*:NONSTOP_KERNEL:*:*)  	echo nse-tandem-nsk${UNAME_RELEASE}  	exit ;;      NSR-?:NONSTOP_KERNEL:*:*) @@ -1330,157 +1372,6 @@ EOF  	exit ;;  esac -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c <<EOF -#ifdef _SEQUENT_ -# include <sys/types.h> -# include <sys/utsname.h> -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) -  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed, -     I don't know....  */ -  printf ("mips-sony-bsd\n"); exit (0); -#else -#include <sys/param.h> -  printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 -	"4" -#else -	"" -#endif -	); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) -  printf ("arm-acorn-riscix\n"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) -  printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif -  int version; -  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; -  if (version < 4) -    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); -  else -    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); -  exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) -  printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) -  printf ("ns32k-encore-mach\n"); exit (0); -#else -  printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) -  printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) -  printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) -  printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) -    struct utsname un; - -    uname(&un); - -    if (strncmp(un.version, "V2", 2) == 0) { -	printf ("i386-sequent-ptx2\n"); exit (0); -    } -    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ -	printf ("i386-sequent-ptx1\n"); exit (0); -    } -    printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -#  include <sys/param.h> -#  if defined (BSD) -#   if BSD == 43 -      printf ("vax-dec-bsd4.3\n"); exit (0); -#   else -#    if BSD == 199006 -      printf ("vax-dec-bsd4.3reno\n"); exit (0); -#    else -      printf ("vax-dec-bsd\n"); exit (0); -#    endif -#   endif -#  else -    printf ("vax-dec-bsd\n"); exit (0); -#  endif -# else -    printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) -  printf ("i860-alliant-bsd\n"); exit (0); -#endif - -  exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && -	{ echo "$SYSTEM_NAME"; exit; } - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then -    case `getsysinfo -f cpu_type` in -    c1*) -	echo c1-convex-bsd -	exit ;; -    c2*) -	if getsysinfo -f scalar_acc -	then echo c32-convex-bsd -	else echo c2-convex-bsd -	fi -	exit ;; -    c34*) -	echo c34-convex-bsd -	exit ;; -    c38*) -	echo c38-convex-bsd -	exit ;; -    c4*) -	echo c4-convex-bsd -	exit ;; -    esac -fi -  cat >&2 <<EOF  $0: unable to guess system type diff --git a/build-aux/config.sub b/build-aux/config.sub index c894da45..6d2e94c8 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -1,24 +1,18 @@  #! /bin/sh  # Configuration validation subroutine script. -#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -#   2011, 2012 Free Software Foundation, Inc. +#   Copyright 1992-2015 Free Software Foundation, Inc. -timestamp='2012-02-10' +timestamp='2015-01-01' -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine.  It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# 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. +# 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 <http://www.gnu.org/licenses/>. @@ -26,11 +20,12 @@ timestamp='2012-02-10'  # 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. +# 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 <[email protected]>.  Submit a context -# diff and a properly formatted GNU ChangeLog entry. +# Please send patches to <[email protected]>.  #  # Configuration subroutine to validate and canonicalize a configuration type.  # Supply the specified configuration type as an argument. @@ -73,9 +68,7 @@ Report bugs and patches to <[email protected]>."  version="\  GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +Copyright 1992-2015 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." @@ -123,7 +116,7 @@ esac  maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`  case $maybe_os in    nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ -  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ +  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \    knetbsd*-gnu* | netbsd*-gnu* | \    kopensolaris*-gnu* | \    storm-chaos* | os2-emx* | rtmk-nova*) @@ -156,7 +149,7 @@ case $os in  	-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) +	-apple | -axis | -knuth | -cray | -microblaze*)  		os=  		basic_machine=$1  		;; @@ -225,6 +218,12 @@ case $os in  	-isc*)  		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`  		;; +	-lynx*178) +		os=-lynxos178 +		;; +	-lynx*5) +		os=-lynxos5 +		;;  	-lynx*)  		os=-lynxos  		;; @@ -253,21 +252,24 @@ case $basic_machine in  	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \  	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \  	| am33_2.0 \ -	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ -        | be32 | be64 \ +	| arc | arceb \ +	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ +	| avr | avr32 \ +	| be32 | be64 \  	| bfin \ -	| c4x | clipper \ +	| c4x | c8051 | clipper \  	| d10v | d30v | dlx | dsp16xx \  	| epiphany \ -	| fido | fr30 | frv \ +	| fido | fr30 | frv | ft32 \  	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \  	| hexagon \  	| i370 | i860 | i960 | ia64 \  	| ip2k | iq2000 \ +	| k1om \  	| le32 | le64 \  	| lm32 \  	| m32c | m32r | m32rle | m68000 | m68k | m88k \ -	| maxq | mb | microblaze | mcore | mep | metag \ +	| maxq | mb | microblaze | microblazeel | mcore | mep | metag \  	| mips | mipsbe | mipseb | mipsel | mipsle \  	| mips16 \  	| mips64 | mips64el \ @@ -281,23 +283,26 @@ case $basic_machine in  	| 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 \ +	| nios | nios2 | nios2eb | nios2el \  	| ns16k | ns32k \ -	| open8 \ -	| or32 \ +	| open8 | or1k | or1knd | or32 \  	| pdp10 | pdp11 | pj | pjl \  	| powerpc | powerpc64 | powerpc64le | powerpcle \  	| pyramid \ +	| riscv32 | riscv64 \  	| rl78 | rx \  	| score \  	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ @@ -308,6 +313,7 @@ case $basic_machine in  	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \  	| ubicom32 \  	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ +	| visium \  	| we32k \  	| x86 | xc16x | xstormy16 | xtensa \  	| z8k | z80) @@ -322,7 +328,10 @@ case $basic_machine in  	c6x)  		basic_machine=tic6x-unknown  		;; -	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) +	leon|leon[3-9]) +		basic_machine=sparc-$basic_machine +		;; +	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)  		basic_machine=$basic_machine-unknown  		os=-none  		;; @@ -364,13 +373,13 @@ case $basic_machine in  	| aarch64-* | aarch64_be-* \  	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \  	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ -	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ +	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \  	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \  	| avr-* | avr32-* \  	| be32-* | be64-* \  	| bfin-* | bs2000-* \  	| c[123]* | c30-* | [cjt]90-* | c4x-* \ -	| clipper-* | craynv-* | cydra-* \ +	| c8051-* | clipper-* | craynv-* | cydra-* \  	| d10v-* | d30v-* | dlx-* \  	| elxsi-* \  	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ @@ -379,11 +388,13 @@ case $basic_machine in  	| hexagon-* \  	| i*86-* | i860-* | i960-* | ia64-* \  	| ip2k-* | iq2000-* \ +	| k1om-* \  	| le32-* | le64-* \  	| lm32-* \  	| m32c-* | m32r-* | m32rle-* \  	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ -	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ +	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ +	| microblaze-* | microblazeel-* \  	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \  	| mips16-* \  	| mips64-* | mips64el-* \ @@ -397,18 +408,22 @@ case $basic_machine in  	| 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-* \ +	| nios-* | nios2-* | nios2eb-* | nios2el-* \  	| none-* | np1-* | ns16k-* | ns32k-* \  	| open8-* \ +	| or1k*-* \  	| orion-* \  	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \  	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ @@ -426,6 +441,7 @@ case $basic_machine in  	| ubicom32-* \  	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \  	| vax-* \ +	| visium-* \  	| we32k-* \  	| x86-* | x86_64-* | xc16x-* | xps100-* \  	| xstormy16-* | xtensa*-* \ @@ -763,6 +779,9 @@ case $basic_machine in  		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 @@ -782,11 +801,15 @@ case $basic_machine in  		basic_machine=ns32k-utek  		os=-sysv  		;; -	microblaze) +	microblaze*)  		basic_machine=microblaze-xilinx  		;; +	mingw64) +		basic_machine=x86_64-pc +		os=-mingw64 +		;;  	mingw32) -		basic_machine=i386-pc +		basic_machine=i686-pc  		os=-mingw32  		;;  	mingw32ce) @@ -814,6 +837,10 @@ case $basic_machine in  		basic_machine=powerpc-unknown  		os=-morphos  		;; +	moxiebox) +		basic_machine=moxie-unknown +		os=-moxiebox +		;;  	msdos)  		basic_machine=i386-pc  		os=-msdos @@ -822,7 +849,7 @@ case $basic_machine in  		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`  		;;  	msys) -		basic_machine=i386-pc +		basic_machine=i686-pc  		os=-msys  		;;  	mvs) @@ -1013,7 +1040,11 @@ case $basic_machine in  		basic_machine=i586-unknown  		os=-pw32  		;; -	rdos) +	rdos | rdos64) +		basic_machine=x86_64-pc +		os=-rdos +		;; +	rdos32)  		basic_machine=i386-pc  		os=-rdos  		;; @@ -1340,29 +1371,29 @@ case $os in  	-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* \ +	      | -sym* | -kopensolaris* | -plan9* \  	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \  	      | -aos* | -aros* \  	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \  	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \  	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ -	      | -openbsd* | -solidbsd* \ +	      | -bitrig* | -openbsd* | -solidbsd* \  	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \  	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \  	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \  	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \  	      | -chorusos* | -chorusrdb* | -cegcc* \  	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -	      | -mingw32* | -linux-gnu* | -linux-android* \ -	      | -linux-newlib* | -linux-uclibc* \ -	      | -uxpv* | -beos* | -mpeix* | -udk* \ +	      | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ +	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \ +	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \  	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \  	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \  	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \  	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \  	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \  	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ -	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) +	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)  	# Remember, each alternative MUST END IN *, to match a version number.  		;;  	-qnx*) @@ -1486,9 +1517,6 @@ case $os in  	-aros*)  		os=-aros  		;; -	-kaos*) -		os=-kaos -		;;  	-zvmoe)  		os=-zvmoe  		;; @@ -1537,6 +1565,12 @@ case $basic_machine in  	c4x-* | tic4x-*)  		os=-coff  		;; +	c8051-*) +		os=-elf +		;; +	hexagon-*) +		os=-elf +		;;  	tic54x-*)  		os=-coff  		;; diff --git a/build-aux/depcomp b/build-aux/depcomp index e5f9736c..4ebd5b3a 100755 --- a/build-aux/depcomp +++ b/build-aux/depcomp @@ -1,10 +1,9 @@  #! /bin/sh  # depcomp - compile a program generating dependencies as side-effects -scriptversion=2007-03-29.01 +scriptversion=2013-05-30.07; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software -# Foundation, Inc. +# Copyright (C) 1999-2013 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 @@ -17,9 +16,7 @@ scriptversion=2007-03-29.01  # GNU General Public License for more details.  # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program.  If not, see <http://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 @@ -30,9 +27,9 @@ scriptversion=2007-03-29.01  case $1 in    '') -     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2 -     exit 1; -     ;; +    echo "$0: No command.  Try '$0 --help' for more information." 1>&2 +    exit 1; +    ;;    -h | --h*)      cat <<\EOF  Usage: depcomp [--help] [--version] PROGRAM [ARGS] @@ -42,11 +39,11 @@ as side-effects.  Environment variables:    depmode     Dependency tracking mode. -  source      Source file read by `PROGRAMS ARGS'. -  object      Object file output by `PROGRAMS ARGS'. +  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 outputing dependencies. +  tmpdepfile  Temporary file to use when outputting dependencies.    libtool     Whether libtool is used (yes/no).  Report bugs to <[email protected]>. @@ -59,6 +56,66 @@ EOF      ;;  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 @@ -71,6 +128,9 @@ 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 @@ -82,9 +142,32 @@ if test "$depmode" = hp; then  fi  if test "$depmode" = dashXmstdout; then -   # This is just like dashmstdout with a different argument. -   dashmflag=-xM -   depmode=dashmstdout +  # 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 @@ -107,8 +190,7 @@ gcc3)    done    "$@"    stat=$? -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then      rm -f "$tmpdepfile"      exit $stat    fi @@ -116,13 +198,17 @@ gcc3)    ;;  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). +##   -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 @@ -130,31 +216,31 @@ gcc)    fi    "$@" -Wp,"$gccflag$tmpdepfile"    stat=$? -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then      rm -f "$tmpdepfile"      exit $stat    fi    rm -f "$depfile"    echo "$object : \\" > "$depfile" -  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz -## The second -e expression handles DOS-style file names with drive letters. +  # 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. +## 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. -  tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'.  On the theory +## 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. +## 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. -    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" +  tr ' ' "$nl" < "$tmpdepfile" \ +    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ +    | sed -e 's/$/ :/' >> "$depfile"    rm -f "$tmpdepfile"    ;; @@ -172,8 +258,7 @@ sgi)      "$@" -MDupdate "$tmpdepfile"    fi    stat=$? -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then      rm -f "$tmpdepfile"      exit $stat    fi @@ -181,43 +266,41 @@ sgi)    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 +    # the IRIX cc adds comments like '#:fec' to the end of the      # dependency line. -    tr ' ' ' -' < "$tmpdepfile" \ -    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ -    tr ' -' ' ' >> $depfile -    echo >> $depfile - +    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 ' ' ' -' < "$tmpdepfile" \ -   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ -   >> $depfile +    tr ' ' "$nl" < "$tmpdepfile" \ +      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ +      >> "$depfile"    else -    # The sourcefile does not contain any dependencies, so just -    # store a dummy comment line, to avoid errors with the Makefile -    # "include basename.Plo" scheme. -    echo "#dummy" > "$depfile" +    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 +  # 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. -  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` -  test "x$dir" = "x$object" && dir= -  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` +  set_dir_from "$object" +  set_base_from "$object"    if test "$libtool" = yes; then      tmpdepfile1=$dir$base.u      tmpdepfile2=$base.u @@ -230,9 +313,7 @@ aix)      "$@" -M    fi    stat=$? - -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"      exit $stat    fi @@ -241,44 +322,100 @@ aix)    do      test -f "$tmpdepfile" && break    done -  if test -f "$tmpdepfile"; then -    # Each line is of the form `foo.o: dependent.h'. -    # Do two passes, one to just change these to -    # `$object: dependent.h' and one to simply `dependent.h:'. -    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" -    # That's a tab and a space in the []. -    sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" -  else -    # The sourcefile does not contain any dependencies, so just -    # store a dummy comment line, to avoid errors with the Makefile -    # "include basename.Plo" scheme. -    echo "#dummy" > "$depfile" +  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"    ;; -icc) -  # Intel's C compiler understands `-MD -MF file'.  However on -  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c -  # ICC 7.0 will fill foo.d with something like -  #    foo.o: sub/foo.c -  #    foo.o: sub/foo.h -  # which is wrong.  We want: -  #    sub/foo.o: sub/foo.c -  #    sub/foo.o: sub/foo.h -  #    sub/foo.c: -  #    sub/foo.h: -  # ICC 7.1 will output +## 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 \ : +  # 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 -  "$@" -MD -MF "$tmpdepfile" -  stat=$? -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then      rm -f "$tmpdepfile"      exit $stat    fi @@ -290,8 +427,8 @@ icc)    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" +  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ +    | sed -e 's/$/ :/' >> "$depfile"    rm -f "$tmpdepfile"    ;; @@ -302,9 +439,8 @@ hp2)    # '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. -  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` -  test "x$dir" = "x$object" && dir= -  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` +  set_dir_from  "$object" +  set_base_from "$object"    if test "$libtool" = yes; then      tmpdepfile1=$dir$base.d      tmpdepfile2=$dir.libs/$base.d @@ -315,8 +451,7 @@ hp2)      "$@" +Maked    fi    stat=$? -  if test $stat -eq 0; then : -  else +  if test $stat -ne 0; then       rm -f "$tmpdepfile1" "$tmpdepfile2"       exit $stat    fi @@ -326,72 +461,107 @@ hp2)      test -f "$tmpdepfile" && break    done    if test -f "$tmpdepfile"; then -    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" -    # Add `dependent.h:' lines. -    sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile" +    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" +    # Add 'dependent.h:' lines. +    sed -ne '2,${ +               s/^ *// +               s/ \\*$// +               s/$/:/ +               p +             }' "$tmpdepfile" >> "$depfile"    else -    echo "#dummy" > "$depfile" +    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. -   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` -   test "x$dir" = "x$object" && dir= -   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` - -   if test "$libtool" = yes; then -      # With Tru64 cc, shared objects can also be used to make a -      # static library.  This mechanism is used in libtool 1.4 series to -      # handle both shared and static libraries in a single compilation. -      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. -      # -      # With libtool 1.5 this exception was removed, and libtool now -      # 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.libs/$base.lo.d   # libtool 1.4 -      tmpdepfile2=$dir$base.o.d          # libtool 1.5 -      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5 -      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504 -      "$@" -Wc,-MD -   else -      tmpdepfile1=$dir$base.o.d -      tmpdepfile2=$dir$base.d -      tmpdepfile3=$dir$base.d -      tmpdepfile4=$dir$base.d -      "$@" -MD -   fi - -   stat=$? -   if test $stat -eq 0; then : -   else -      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" -      exit $stat -   fi - -   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" -   do -     test -f "$tmpdepfile" && break -   done -   if test -f "$tmpdepfile"; then -      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" -      # That's a tab and a space in the []. -      sed -e 's,^.*\.[a-z]*:[	 ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" -   else -      echo "#dummy" > "$depfile" -   fi -   rm -f "$tmpdepfile" -   ;; +  # 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 @@ -404,13 +574,13 @@ dashmstdout)    # Remove the call to Libtool.    if test "$libtool" = yes; then -    while test $1 != '--mode=compile'; do +    while test "X$1" != 'X--mode=compile'; do        shift      done      shift    fi -  # Remove `-o $object'. +  # Remove '-o $object'.    IFS=" "    for arg    do @@ -430,18 +600,18 @@ dashmstdout)    done    test -z "$dashmflag" && dashmflag=-M -  # Require at least two characters before searching for `:' +  # 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. +  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.    "$@" $dashmflag | -    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile" +    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"    rm -f "$depfile"    cat < "$tmpdepfile" > "$depfile" -  tr ' ' ' -' < "$tmpdepfile" | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly.  Breaking it into two sed invocations is a workaround. -    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$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"    ;; @@ -455,41 +625,51 @@ makedepend)    "$@" || exit $?    # Remove any Libtool call    if test "$libtool" = yes; then -    while test $1 != '--mode=compile'; do +    while test "X$1" != 'X--mode=compile'; do        shift      done      shift    fi    # X makedepend    shift -  cleared=no -  for arg in "$@"; do +  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/^.*\././'`" +  obj_suffix=`echo "$object" | sed 's/^.*\././'`    touch "$tmpdepfile"    ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"    rm -f "$depfile" -  cat < "$tmpdepfile" > "$depfile" -  sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly.  Breaking it into two sed invocations is a workaround. -    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$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    ;; @@ -500,13 +680,13 @@ cpp)    # Remove the call to Libtool.    if test "$libtool" = yes; then -    while test $1 != '--mode=compile'; do +    while test "X$1" != 'X--mode=compile'; do        shift      done      shift    fi -  # Remove `-o $object'. +  # Remove '-o $object'.    IFS=" "    for arg    do @@ -525,10 +705,10 @@ cpp)      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" +  "$@" -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" @@ -538,35 +718,56 @@ cpp)  msvisualcpp)    # Important note: in order to support this mode, a compiler *must* -  # always write the preprocessed file to stdout, regardless of -o, -  # because we must use -o when running libtool. +  # 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 "$@" +        shift +        shift +        ;;      *) -	set fnord "$@" "$arg" -	shift -	shift -	;; +        set fnord "$@" "$arg" +        shift +        shift +        ;;      esac    done -  "$@" -E | -  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" +  "$@" -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" -  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::	\1 \\:p' >> "$depfile" -  echo "	" >> "$depfile" -  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$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 "$@"    ;; @@ -585,5 +786,6 @@ exit 0  # eval: (add-hook 'write-file-hooks 'time-stamp)  # time-stamp-start: "scriptversion="  # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC"  # End: diff --git a/build-aux/install-sh b/build-aux/install-sh index a5897de6..377bb868 100755 --- a/build-aux/install-sh +++ b/build-aux/install-sh @@ -1,7 +1,7 @@  #!/bin/sh  # install - install a program, script, or datafile -scriptversion=2006-12-25.00 +scriptversion=2011-11-20.07; # UTC  # This originates from X11R5 (mit/util/scripts/install.sh), which was  # later released in X11R6 (xc/config/util/install.sh) with the @@ -35,7 +35,7 @@ scriptversion=2006-12-25.00  # 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 +# '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 @@ -156,6 +156,10 @@ while test $# -ne 0; do      -s) stripcmd=$stripprog;;      -t) dst_arg=$2 +	# Protect names problematic for 'test' and other utilities. +	case $dst_arg in +	  -* | [=\(\)!]) dst_arg=./$dst_arg;; +	esac  	shift;;      -T) no_target_directory=true;; @@ -186,6 +190,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then      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 @@ -194,13 +202,17 @@ if test $# -eq 0; then      echo "$0: no input file specified." >&2      exit 1    fi -  # It's OK to call `install-sh -d' without argument. +  # 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 -  trap '(exit $?); exit' 1 2 13 15 +  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. @@ -228,9 +240,9 @@ fi  for src  do -  # Protect names starting with `-'. +  # Protect names problematic for 'test' and other utilities.    case $src in -    -*) src=./$src;; +    -* | [=\(\)!]) src=./$src;;    esac    if test -n "$dir_arg"; then @@ -252,12 +264,7 @@ do        echo "$0: no destination specified." >&2        exit 1      fi -      dst=$dst_arg -    # Protect names starting with `-'. -    case $dst in -      -*) dst=./$dst;; -    esac      # If destination is a directory, append the input filename; won't work      # if double slashes aren't ignored. @@ -347,7 +354,7 @@ do  	      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-writeable bit of parent directory when it shouldn't. +		   # other-writable bit of parent directory when it shouldn't.  		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.  		   ls_ld_tmpdir=`ls -ld "$tmpdir"`  		   case $ls_ld_tmpdir in @@ -385,7 +392,7 @@ do        case $dstdir in  	/*) prefix='/';; -	-*) prefix='./';; +	[-=\(\)!]*) prefix='./';;  	*)  prefix='';;        esac @@ -403,7 +410,7 @@ do        for d        do -	test -z "$d" && continue +	test X"$d" = X && continue  	prefix=$prefix$d  	if test -d "$prefix"; then @@ -515,5 +522,6 @@ done  # eval: (add-hook 'write-file-hooks 'time-stamp)  # time-stamp-start: "scriptversion="  # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC"  # End: diff --git a/build-aux/missing b/build-aux/missing index 86a8fc31..db98974f 100755 --- a/build-aux/missing +++ b/build-aux/missing @@ -1,11 +1,10 @@  #! /bin/sh -# Common stub for a few missing GNU programs while installing. +# Common wrapper for a few potentially missing GNU programs. -scriptversion=2012-01-06.13; # UTC +scriptversion=2013-10-28.13; # UTC -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, -# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. -# Originally by Fran,cois Pinard <[email protected]>, 1996. +# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Originally written by Fran,cois Pinard <[email protected]>, 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 @@ -26,68 +25,40 @@ scriptversion=2012-01-06.13; # UTC  # 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" +  echo 1>&2 "Try '$0 --help' for more information"    exit 1  fi -run=: -sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' -sed_minuso='s/.* -o \([^ ]*\).*/\1/p' - -# In the cases where this matters, `missing' is being run in the -# srcdir already. -if test -f configure.ac; then -  configure_ac=configure.ac -else -  configure_ac=configure.in -fi +case $1 in -msg="missing on your system" +  --is-lightweight) +    # Used by our autoconf macros to check whether the available missing +    # script is modern enough. +    exit 0 +    ;; -case $1 in ---run) -  # Try to run requested program, and just exit if it succeeds. -  run= -  shift -  "$@" && exit 0 -  # Exit code 63 means version mismatch.  This often happens -  # when the user try to use an ancient version of a tool on -  # a file that requires a minimum version.  In this case we -  # we should proceed has if the program had been absent, or -  # if --run hadn't been passed. -  if test $? = 63; then -    run=: -    msg="probably too old" -  fi -  ;; +  --run) +    # Back-compat with the calling convention used by older automake. +    shift +    ;;    -h|--h|--he|--hel|--help)      echo "\  $0 [OPTION]... PROGRAM [ARGUMENT]... -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. +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 -  --run           try to run the given command, and emulate it if it fails  Supported PROGRAM values: -  aclocal      touch file \`aclocal.m4' -  autoconf     touch file \`configure' -  autoheader   touch file \`config.h.in' -  autom4te     touch the output file, or create a stub one -  automake     touch all \`Makefile.in' files -  bison        create \`y.tab.[ch]', if possible, from existing .[ch] -  flex         create \`lex.yy.c', if possible, from existing .c -  help2man     touch the output file -  lex          create \`lex.yy.c', if possible, from existing .c -  makeinfo     touch the output file -  yacc         create \`y.tab.[ch]', if possible, from existing .[ch] +  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. +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name.  Send bug reports to <[email protected]>."      exit $? @@ -99,228 +70,141 @@ Send bug reports to <[email protected]>."      ;;    -*) -    echo 1>&2 "$0: Unknown \`$1' option" -    echo 1>&2 "Try \`$0 --help' for more information" +    echo 1>&2 "$0: unknown '$1' option" +    echo 1>&2 "Try '$0 --help' for more information"      exit 1      ;;  esac -# normalize program name to check for. -program=`echo "$1" | sed ' -  s/^gnu-//; t -  s/^gnu//; t -  s/^g//; t'` - -# Now exit if we have it, but it failed.  Also exit now if we -# don't have it and --version was passed (most likely to detect -# the program).  This is about non-GNU programs, so use $1 not -# $program. -case $1 in -  lex*|yacc*) -    # Not GNU programs, they don't have --version. -    ;; - -  *) -    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then -       # We have it, but it failed. -       exit 1 -    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then -       # Could not run --version or --help.  This is probably someone -       # running `$TOOL --version' or `$TOOL --help' to check whether -       # $TOOL exists and not knowing $TOOL uses missing. -       exit 1 -    fi -    ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case $program in -  aclocal*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want -         to install the \`Automake' and \`Perl' packages.  Grab them from -         any GNU archive site." -    touch aclocal.m4 -    ;; - -  autoconf*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified \`${configure_ac}'.  You might want to install the -         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU -         archive site." -    touch configure -    ;; - -  autoheader*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified \`acconfig.h' or \`${configure_ac}'.  You might want -         to install the \`Autoconf' and \`GNU m4' packages.  Grab them -         from any GNU archive site." -    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` -    test -z "$files" && files="config.h" -    touch_files= -    for f in $files; do -      case $f in -      *:*) touch_files="$touch_files "`echo "$f" | -				       sed -e 's/^[^:]*://' -e 's/:.*//'`;; -      *) touch_files="$touch_files $f.in";; -      esac -    done -    touch $touch_files -    ;; - -  automake*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. -         You might want to install the \`Automake' and \`Perl' packages. -         Grab them from any GNU archive site." -    find . -type f -name Makefile.am -print | -	   sed 's/\.am$/.in/' | -	   while read f; do touch "$f"; done -    ;; - -  autom4te*) -    echo 1>&2 "\ -WARNING: \`$1' is needed, but is $msg. -         You might have modified some files without having the -         proper tools for further handling them. -         You can get \`$1' as part of \`Autoconf' from any GNU -         archive site." - -    file=`echo "$*" | sed -n "$sed_output"` -    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` -    if test -f "$file"; then -	touch $file -    else -	test -z "$file" || exec >$file -	echo "#! /bin/sh" -	echo "# Created by GNU Automake missing as a replacement of" -	echo "#  $ $@" -	echo "exit 0" -	chmod +x $file -	exit 1 -    fi -    ;; - -  bison*|yacc*) -    echo 1>&2 "\ -WARNING: \`$1' $msg.  You should only need it if -         you modified a \`.y' file.  You may need the \`Bison' package -         in order for those modifications to take effect.  You can get -         \`Bison' from any GNU archive site." -    rm -f y.tab.c y.tab.h -    if test $# -ne 1; then -        eval LASTARG=\${$#} -	case $LASTARG in -	*.y) -	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` -	    if test -f "$SRCFILE"; then -	         cp "$SRCFILE" y.tab.c -	    fi -	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` -	    if test -f "$SRCFILE"; then -	         cp "$SRCFILE" y.tab.h -	    fi -	  ;; -	esac -    fi -    if test ! -f y.tab.h; then -	echo >y.tab.h -    fi -    if test ! -f y.tab.c; then -	echo 'main() { return 0; }' >y.tab.c -    fi -    ;; - -  lex*|flex*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified a \`.l' file.  You may need the \`Flex' package -         in order for those modifications to take effect.  You can get -         \`Flex' from any GNU archive site." -    rm -f lex.yy.c -    if test $# -ne 1; then -        eval LASTARG=\${$#} -	case $LASTARG in -	*.l) -	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` -	    if test -f "$SRCFILE"; then -	         cp "$SRCFILE" lex.yy.c -	    fi -	  ;; -	esac -    fi -    if test ! -f lex.yy.c; then -	echo 'main() { return 0; }' >lex.yy.c -    fi -    ;; - -  help2man*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -	 you modified a dependency of a manual page.  You may need the -	 \`Help2man' package in order for those modifications to take -	 effect.  You can get \`Help2man' from any GNU archive site." - -    file=`echo "$*" | sed -n "$sed_output"` -    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` -    if test -f "$file"; then -	touch $file -    else -	test -z "$file" || exec >$file -	echo ".ab help2man is required to generate this page" -	exit $? -    fi -    ;; - -  makeinfo*) -    echo 1>&2 "\ -WARNING: \`$1' is $msg.  You should only need it if -         you modified a \`.texi' or \`.texinfo' file, or any other file -         indirectly affecting the aspect of the manual.  The spurious -         call might also be the consequence of using a buggy \`make' (AIX, -         DU, IRIX).  You might want to install the \`Texinfo' package or -         the \`GNU make' package.  Grab either from any GNU archive site." -    # The file to touch is that specified with -o ... -    file=`echo "$*" | sed -n "$sed_output"` -    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` -    if test -z "$file"; then -      # ... or it is the one specified with @setfilename ... -      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` -      file=`sed -n ' -	/^@setfilename/{ -	  s/.* \([^ ]*\) *$/\1/ -	  p -	  q -	}' $infile` -      # ... or it is derived from the source name (dir/f.texi becomes f.info) -      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info -    fi -    # If the file does not exist, the user really needs makeinfo; -    # let's fail without touching anything. -    test -f $file || exit 1 -    touch $file -    ;; +# 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 -  *) -    echo 1>&2 "\ -WARNING: \`$1' is needed, and is $msg. -         You might have modified some files without having the -         proper tools for further handling them.  Check the \`README' file, -         it often tells you about the needed prerequisites for installing -         this package.  You may also peek at any GNU archive site, in case -         some other package would contain this missing \`$1' program." -    exit 1 +perl_URL=http://www.perl.org/ +flex_URL=http://flex.sourceforge.net/ +gnu_software_URL=http://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/>"      ;; -esac - -exit 0 +    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 'write-file-hooks 'time-stamp) diff --git a/configure.ac b/configure.ac index 4660122a..3b444a0d 100644 --- a/configure.ac +++ b/configure.ac @@ -20,7 +20,7 @@  # (Process this file with autoconf to produce a configure script.)  AC_PREREQ(2.59) -min_automake_version="1.11" +min_automake_version="1.14"  # To build a release you need to create a tag with the version number  # (git tag -s gpgme-n.m.k) and run "./autogen.sh --force".  Please @@ -77,9 +77,7 @@ AC_CONFIG_AUX_DIR([build-aux])  AC_CONFIG_MACRO_DIR([m4])  AC_CONFIG_SRCDIR(src/gpgme.h.in)  AC_CONFIG_HEADER(config.h) -# Note: For automake 1.13 add the option -#          serial-tests -AM_INIT_AUTOMAKE([dist-bzip2 no-dist-gzip]) +AM_INIT_AUTOMAKE([serial-tests dist-bzip2 no-dist-gzip])  AM_MAINTAINER_MODE  AC_CANONICAL_HOST  AM_SILENT_RULES diff --git a/tests/Makefile.am b/tests/Makefile.am index 0ecdab21..4b465d8e 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -25,9 +25,7 @@ TESTS = t-version t-data t-engine-info  EXTRA_DIST = t-data-1.txt t-data-2.txt ChangeLog-2011 -INCLUDES = -I$(top_builddir)/src - -AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ +AM_CPPFLAGS = -I$(top_builddir)/src @GPG_ERROR_CFLAGS@  LDADD = ../src/libgpgme.la @GPG_ERROR_LIBS@  noinst_HEADERS = run-support.h diff --git a/tests/gpg/Makefile.am b/tests/gpg/Makefile.am index 5c1266ec..5f40dfe2 100644 --- a/tests/gpg/Makefile.am +++ b/tests/gpg/Makefile.am @@ -57,9 +57,7 @@ EXTRA_DIST = start-stop-agent initial.test final.test \          pubdemo.asc secdemo.asc cipher-1.asc cipher-2.asc \  	geheim.txt pubkey-1.asc seckey-1.asc pinentry $(private_keys) -INCLUDES = -I$(top_builddir)/src - -AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ +AM_CPPFLAGS = -I$(top_builddir)/src @GPG_ERROR_CFLAGS@  LDADD = ../../src/libgpgme.la  t_thread1_LDADD = ../../src/libgpgme-pthread.la -lpthread diff --git a/tests/gpgsm/Makefile.am b/tests/gpgsm/Makefile.am index ecc53a61..bf616d32 100644 --- a/tests/gpgsm/Makefile.am +++ b/tests/gpgsm/Makefile.am @@ -29,9 +29,7 @@ TESTS = t-import t-keylist t-encrypt t-verify t-decrypt t-sign t-export  EXTRA_DIST = cert_dfn_pca01.der cert_dfn_pca15.der cert_g10code_test1.der \  	$(key_id) -INCLUDES = -I$(top_builddir)/src - -AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ +AM_CPPFLAGS = -I$(top_builddir)/src @GPG_ERROR_CFLAGS@  LDADD = ../../src/libgpgme.la  # We don't run t-genkey in the test suite, because it takes too long diff --git a/tests/opassuan/Makefile.am b/tests/opassuan/Makefile.am index 2446007e..31d26edd 100644 --- a/tests/opassuan/Makefile.am +++ b/tests/opassuan/Makefile.am @@ -1,35 +1,33 @@  # Copyright (C) 2009 g10 Code GmbH -#  +#  # This file is part of GPGME. -#  +#  # GPGME is free software; you can redistribute it and/or modify it  # under the terms of the GNU Lesser General Public License as  # published by the Free Software Foundation; either version 2.1 of the  # License, or (at your option) any later version. -#  +#  # GPGME 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 Lesser General  # Public License for more details. -#  +#  # You should have received a copy of the GNU Lesser General Public  # License along with this program; if not, see <http://www.gnu.org/licenses/>.  ## Process this file with automake to produce Makefile.in -TESTS_ENVIRONMENT = GNUPGHOME=$(abs_builddir) GPG_AGENT_INFO=  +TESTS_ENVIRONMENT = GNUPGHOME=$(abs_builddir) GPG_AGENT_INFO=  noinst_HEADERS = -TESTS =  +TESTS = -EXTRA_DIST =  +EXTRA_DIST = -INCLUDES = -I$(top_builddir)/src - -AM_CPPFLAGS = @GPG_ERROR_CFLAGS@ +AM_CPPFLAGS = -I$(top_builddir)/src @GPG_ERROR_CFLAGS@  LDADD = ../../src/libgpgme.la  noinst_PROGRAMS = $(TESTS) t-command -DISTCLEANFILES =  +DISTCLEANFILES = | 
