Check-in [55cb9f600a]
Overview
Comment:First set of merges from KitDLL to KitSH
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | merge-kitdll-kitsh-common
Files: files | file ages | folders
SHA1:55cb9f600a1f3126dc94715ec2e3725bd33cf70b
User & Date: rkeene on 2011-05-20 05:50:13
Other Links: manifest | tags
Context
2011-05-20
06:31
Fixed bug with determining which build is selected

Fixed unexplained bug with determining the target OS information

Updated to supply the VFS before building (in support of future C-VFS) check-in: b5b42e2343 user: rkeene tags: merge-kitdll-kitsh-common

05:50
First set of merges from KitDLL to KitSH check-in: 55cb9f600a user: rkeene tags: merge-kitdll-kitsh-common
2011-05-19
18:04
Merged trunk check-in: b7c6c8232c user: rkeene tags: merge-kitdll-kitsh-common
Changes

Deleted kitdll/buildsrc/kitdll-0.0/aclocal.m4 version [0c2240a08b].

     1         -dnl Usage:
     2         -dnl    DC_TEST_SHOBJFLAGS(shobjflags, shobjldflags, action-if-not-found)
     3         -dnl
     4         -AC_DEFUN(DC_TEST_SHOBJFLAGS, [
     5         -  AC_SUBST(SHOBJFLAGS)
     6         -  AC_SUBST(SHOBJLDFLAGS)
     7         -
     8         -  OLD_LDFLAGS="$LDFLAGS"
     9         -  SHOBJFLAGS=""
    10         -
    11         -  LDFLAGS="$OLD_LDFLAGS $1 $2"
    12         -
    13         -  AC_TRY_LINK([#include <stdio.h>
    14         -int unrestst(void);], [ printf("okay\n"); unrestst(); return(0); ], [ SHOBJFLAGS="$1"; SHOBJLDFLAGS="$2" ], [
    15         -  LDFLAGS="$OLD_LDFLAGS"
    16         -  $3
    17         -])
    18         -
    19         -  LDFLAGS="$OLD_LDFLAGS"
    20         -])
    21         -
    22         -AC_DEFUN(DC_GET_SHOBJFLAGS, [
    23         -  AC_SUBST(SHOBJFLAGS)
    24         -  AC_SUBST(SHOBJLDFLAGS)
    25         -
    26         -  AC_MSG_CHECKING(how to create shared objects)
    27         -
    28         -  if test -z "$SHOBJFLAGS" -a -z "$SHOBJLDFLAGS"; then
    29         -    DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic], [
    30         -      DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared], [
    31         -        DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic -mimpure-text], [
    32         -          DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -mimpure-text], [
    33         -            DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic -Wl,-G,-z,textoff], [
    34         -              DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -Wl,-G,-z,textoff], [
    35         -                DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -dynamiclib -flat_namespace -undefined suppress -bind_at_load], [
    36         -                  DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib -flat_namespace -undefined suppress -bind_at_load], [
    37         -                    DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-Wl,-dynamiclib -Wl,-flat_namespace -Wl,-undefined,suppress -Wl,-bind_at_load], [
    38         -                      DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib -flat_namespace -undefined suppress], [
    39         -                        DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib], [
    40         -                          AC_MSG_RESULT(cant)
    41         -                          AC_MSG_ERROR([We are unable to make shared objects.])
    42         -                        ])
    43         -                      ])
    44         -                    ])
    45         -                  ])
    46         -                ])
    47         -              ])
    48         -            ])
    49         -          ])
    50         -        ])
    51         -      ])
    52         -    ])
    53         -  fi
    54         -
    55         -  AC_MSG_RESULT($SHOBJLDFLAGS $SHOBJFLAGS)
    56         -])
    57         -
    58         -AC_DEFUN(DC_CHK_OS_INFO, [
    59         -	AC_CANONICAL_HOST
    60         -	AC_SUBST(SHOBJEXT)
    61         -	AC_SUBST(AREXT)
    62         -        AC_SUBST(SHOBJFLAGS)
    63         -        AC_SUBST(SHOBJLDFLAGS)
    64         -
    65         -        AC_MSG_CHECKING(host operating system)
    66         -        AC_MSG_RESULT($host_os)
    67         -
    68         -	SHOBJEXT="so"
    69         -	AREXT="a"
    70         -
    71         -        case $host_os in
    72         -                darwin*)
    73         -			SHOBJEXT="dylib"
    74         -                        ;;
    75         -		hpux*)
    76         -			SHOBJEXT="sl"
    77         -			;;
    78         -		mingw*)
    79         -			SHOBJEXT="dll"
    80         -			SHOBJFLAGS="-mno-cygwin -mms-bitfields -DPIC"
    81         -			SHOBJLDFLAGS='-shared -Wl,--dll -Wl,--enable-auto-image-base -Wl,--output-def,$[@].def,--out-implib,$[@].a -Wl,--export-all-symbols -Wl,--add-stdcall-alias'
    82         -			;;
    83         -	esac
    84         -])
    85         -
    86         -AC_DEFUN(DC_DO_TCL, [
    87         -	AC_MSG_CHECKING([path to tcl])
    88         -	AC_ARG_WITH(tcl, AC_HELP_STRING([--with-tcl], [directory containing tcl configuration (tclConfig.sh)]), [], [
    89         -		with_tcl="auto"
    90         -	])
    91         -
    92         -	if test "${with_tcl}" = "auto"; then
    93         -		for dir in `echo "${PATH}" | sed 's@:@ @g'`; do
    94         -			if test -f "${dir}/tclConfig.sh"; then
    95         -				tclconfigshdir="${dir}"
    96         -				tclconfigsh="${tclconfigshdir}/tclConfig.sh"
    97         -				break
    98         -			fi
    99         -			if test -f "${dir}/../lib/tclConfig.sh"; then
   100         -				tclconfigshdir="${dir}/../lib"
   101         -				tclconfigsh="${tclconfigshdir}/tclConfig.sh"
   102         -				break
   103         -			fi
   104         -			if test -f "${dir}/../lib64/tclConfig.sh"; then
   105         -				tclconfigshdir="${dir}/../lib64"
   106         -				tclconfigsh="${tclconfigshdir}/tclConfig.sh"
   107         -				break
   108         -			fi
   109         -		done
   110         -
   111         -		if test -z "${tclconfigsh}"; then
   112         -			AC_MSG_ERROR([Unable to find tclConfig.sh])
   113         -		fi
   114         -	else
   115         -		tclconfigshdir="${with_tcl}"
   116         -		tclconfigsh="${tclconfigshdir}/tclConfig.sh"
   117         -	fi
   118         -
   119         -	if test -f "${tclconfigsh}"; then
   120         -		. "${tclconfigsh}"
   121         -
   122         -		CFLAGS="${CFLAGS} ${TCL_INCLUDE_SPEC} -I${TCL_SRC_DIR}/generic -I${tclconfigshdir}"
   123         -		CPPFLAGS="${CPPFLAGS} ${TCL_INCLUDE_SPEC} -I${TCL_SRC_DIR}/generic -I${tclconfigshdir}"
   124         -		LIBS="${LIBS} ${TCL_LIBS}"
   125         -
   126         -		KITDLL_LIB_VERSION=`echo "${TCL_VERSION}${TCL_PATCH_LEVEL}" | sed 's@\.@@g'`
   127         -	fi
   128         -
   129         -	AC_SUBST(CFLAGS)
   130         -	AC_SUBST(CPPFLAGS)
   131         -	AC_SUBST(LIBS)
   132         -
   133         -	AC_SUBST(KITDLL_LIB_VERSION)
   134         -
   135         -	AC_MSG_RESULT([$tclconfigsh])
   136         -])
   137         -
   138         -AC_DEFUN(DC_DO_TK, [
   139         -	AC_MSG_CHECKING([path to tk])
   140         -	AC_ARG_WITH(tk, AC_HELP_STRING([--with-tk], [directory containing tk configuration (tkConfig.sh)]), [], [
   141         -		with_tk="auto"
   142         -	])
   143         -
   144         -	if test "${with_tk}" = "auto"; then
   145         -		for dir in ../../../tk/build/tk*/*/ `echo "${PATH}" | sed 's@:@ @g'`; do
   146         -			if test -f "${dir}/tkConfig.sh"; then
   147         -				tkconfigshdir="${dir}"
   148         -				tkconfigsh="${tkconfigshdir}/tkConfig.sh"
   149         -				break
   150         -			fi
   151         -			if test -f "${dir}/../lib/tkConfig.sh"; then
   152         -				tkconfigshdir="${dir}/../lib"
   153         -				tkconfigsh="${tkconfigshdir}/tkConfig.sh"
   154         -				break
   155         -			fi
   156         -			if test -f "${dir}/../lib64/tkConfig.sh"; then
   157         -				tkconfigshdir="${dir}/../lib64"
   158         -				tkconfigsh="${tkconfigshdir}/tkConfig.sh"
   159         -				break
   160         -			fi
   161         -		done
   162         -
   163         -		if test -z "${tkconfigsh}"; then
   164         -			AC_MSG_ERROR([Unable to find tkConfig.sh])
   165         -		fi
   166         -	else
   167         -		tkconfigshdir="${with_tk}"
   168         -		tkconfigsh="${tkconfigshdir}/tkConfig.sh"
   169         -	fi
   170         -
   171         -	if test -f "${tkconfigsh}"; then
   172         -		. "${tkconfigsh}"
   173         -
   174         -		CFLAGS="${CFLAGS} ${TK_INCLUDE_SPEC} -I${tkconfigshdir} -I${TK_SRC_DIR}/generic -I${TK_SRC_DIR}/xlib"
   175         -		CPPFLAGS="${CPPFLAGS} ${TK_INCLUDE_SPEC} -I${tkconfigshdir} -I${TK_SRC_DIR}/generic -I${TK_SRC_DIR}/xlib"
   176         -		LIBS="${LIBS} ${TK_LIBS}"
   177         -
   178         -		NEWLIBS=""
   179         -		for lib in ${LIBS}; do
   180         -			if echo "${lib}" | grep '^-l' >/dev/null; then
   181         -				if echo " ${NEWLIBS} " | grep " ${lib} " >/dev/null; then
   182         -					continue
   183         -				fi
   184         -			fi
   185         -
   186         -			NEWLIBS="${NEWLIBS} ${lib}"
   187         -		done
   188         -		LIBS="${NEWLIBS}"
   189         -		unset NEWLIBS
   190         -	fi
   191         -
   192         -	AC_SUBST(CFLAGS)
   193         -	AC_SUBST(CPPFLAGS)
   194         -	AC_SUBST(LIBS)
   195         -
   196         -	AC_MSG_RESULT([$tkconfigsh])
   197         -])
   198         -
   199         -AC_DEFUN(DC_SETUP_TCL_PLAT_DEFS, [
   200         -	AC_CANONICAL_HOST
   201         -  
   202         -	AC_MSG_CHECKING(host operating system)
   203         -	AC_MSG_RESULT($host_os)
   204         -  
   205         -	case $host_os in
   206         -		mingw32*)
   207         -			CFLAGS="${CFLAGS} -mno-cygwin -mms-bitfields"
   208         -
   209         -			dnl If we are building for Win32, we need to define "BUILD_tcl" so that
   210         -			dnl TCL_STORAGE_CLASS gets defined as DLLEXPORT, to make static linking
   211         -			dnl work
   212         -			AC_DEFINE(BUILD_tcl, [1], [Define if you need to pretend to be building Tcl (Windows)])
   213         -			AC_DEFINE(BUILD_tk, [1], [Define if you need to pretend to be building Tk (Windows)])
   214         -			;;
   215         -		cygwin*)
   216         -			CFLAGS="${CFLAGS} -mms-bitfields"
   217         -			;;
   218         -	esac
   219         -])
   220         -
   221         -AC_DEFUN(DC_TEST_WHOLE_ARCHIVE_SHARED_LIB, [
   222         -
   223         -	SAVE_LIBS="${LIBS}"
   224         -
   225         -	LIBS="${WHOLEARCHIVE} $1 ${NOWHOLEARCHIVE} ${SAVE_LIBS}"
   226         -	AC_LINK_IFELSE(
   227         -		AC_LANG_PROGRAM([[
   228         -			]], [[
   229         -			]]
   230         -		),
   231         -		[
   232         -			LIBS="${SAVE_LIBS}"
   233         -
   234         -			$2
   235         -		], [
   236         -			LIBS="${SAVE_LIBS}"
   237         -
   238         -			$3
   239         -		]
   240         -	)
   241         -])
   242         -
   243         -AC_DEFUN(DC_DO_STATIC_LINK_LIB, [
   244         -	AC_MSG_CHECKING([for how to statically link to $1])
   245         -	 
   246         -	SAVELIBS="${LIBS}"
   247         -	staticlib=""
   248         -	found="0"
   249         -	dnl HP/UX uses -Wl,-a,archive -lstdc++ -Wl,-a,shared_archive
   250         -	dnl Linux and Solaris us -Wl,-Bstatic ... -Wl,-Bdynamic
   251         -	for trylink in "-Wl,-a,archive $2 -Wl,-a,shared_archive" "-Wl,-Bstatic $2 -Wl,-Bdynamic" "$2"; do
   252         -		LIBS="${SAVELIBS} ${trylink}"
   253         -	       
   254         -		AC_LINK_IFELSE(AC_LANG_PROGRAM([], []), [
   255         -			staticlib="${trylink}"
   256         -			found="1"
   257         -	       
   258         -			break
   259         -		])
   260         -	done   
   261         -	 
   262         -	if test "${found}" = "1"; then
   263         -		SAVELIBS=`echo "$SAVELIBS" | sed 's@ $2 @ @'`
   264         -		LIBS="${SAVELIBS} ${staticlib}"
   265         -
   266         -		AC_MSG_RESULT([${staticlib}])
   267         -
   268         -		AC_SUBST(LIBS)
   269         -
   270         -		$3
   271         -	else    
   272         -		LIBS="${SAVELIBS}"
   273         -		
   274         -		AC_MSG_RESULT([cant])
   275         -		
   276         -		$4
   277         -	fi
   278         -])
   279         -
   280         -AC_DEFUN(DC_DO_STATIC_LINK_LIBCXX, [
   281         -	dnl Sun Studio uses -lCstd -lCrun, most platforms use -lstdc++
   282         -	DC_DO_STATIC_LINK_LIB([C++ Library (Sun Studio)], [-lCstd -lCrun],, [
   283         -		DC_DO_STATIC_LINK_LIB([C++ Library (UNIX)], [-lstdc++])
   284         -	])
   285         -])
   286         -
   287         -AC_DEFUN(DC_FIND_TCLKIT_LIBS, [
   288         -	AC_CHECK_TOOL(OBJCOPY, objcopy, [:])
   289         -
   290         -	DC_SETUP_TCL_PLAT_DEFS
   291         -
   292         -	WISH_CFLAGS=""
   293         -
   294         -	dnl We will need this for the Tcl project, which we will always have
   295         -	DC_CHECK_FOR_WHOLE_ARCHIVE
   296         -
   297         -	for proj in tcl tclvfs tk mk4tcl; do
   298         -		AC_MSG_CHECKING([for libraries required for ${proj}])
   299         -
   300         -		libdir="../../../${proj}/inst"
   301         -		libfiles="`find "${libdir}" -name '*.a' 2>/dev/null | tr "\n" ' '`"
   302         -		libfilesnostub="`find "${libdir}" -name '*.a' 2>/dev/null | grep -v 'stub' | tr "\n" ' '`"
   303         -
   304         -		for libfile in ${libfiles}; do
   305         -			LDFLAGS="${LDFLAGS} -L`dirname "${libfile}"`"
   306         -		done
   307         -
   308         -		hide_symbols="1"
   309         -
   310         -		if test "$proj" = "tcl"; then
   311         -			DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfilesnostub], [
   312         -				libfiles="${libfilesnostub}"
   313         -			], [
   314         -				DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfiles], [
   315         -					libfiles="${libfiles}"
   316         -				])
   317         -			])
   318         -
   319         -			hide_symbols="0"
   320         -		fi
   321         -
   322         -		if test "${proj}" = "mk4tcl"; then
   323         -			if test -n "$libfiles"; then
   324         -				AC_DEFINE(KIT_INCLUDES_MK4TCL, [1], [Specify this if you link against mkt4tcl])
   325         -				DC_DO_STATIC_LINK_LIBCXX
   326         -			fi
   327         -		fi
   328         -
   329         -		if test "$proj" = "tk"; then
   330         -			if test -n "$libfilesnostub"; then
   331         -				DC_DO_TK
   332         -				DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfilesnostub], [
   333         -					libfiles="${libfilesnostub}"
   334         -				], [
   335         -					DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfiles], [
   336         -						libfiles="${libfiles}"
   337         -					])
   338         -				])
   339         -
   340         -				AC_DEFINE(KIT_INCLUDES_TK, [1], [Specify this if we link statically to Tk])
   341         -
   342         -				if test -n "${TK_VERSION}"; then
   343         -					AC_DEFINE_UNQUOTED(KIT_TK_VERSION, "${TK_VERSION}${TK_PATCH_LEVEL}", [Specify the version of Tk])
   344         -				fi
   345         -
   346         -				if test "$host_os" = "mingw32msvc" -o "$host_os" = "mingw32"; then
   347         -					WISH_CFLAGS="-mwindows"
   348         -				fi
   349         -
   350         -				hide_symbols="0"
   351         -			fi
   352         -		fi
   353         -
   354         -		ARCHS="${ARCHS} ${libfiles}"
   355         -
   356         -		AC_MSG_RESULT([${libfiles}])
   357         -
   358         -		if test "${hide_symbols}" = "1"; then
   359         -			STRIPLIBS="${STRIPLIBS} ${libfiles}"
   360         -		fi
   361         -
   362         -	done
   363         -
   364         -	AC_SUBST(WISH_CFLAGS)
   365         -	AC_SUBST(ARCHS)
   366         -	AC_SUBST(STRIPLIBS)
   367         -])
   368         -
   369         -AC_DEFUN(DC_CHECK_FOR_ACCEPTABLE_DLADDR, [
   370         -	AC_CHECK_HEADERS(dlfcn.h)
   371         -	AC_CHECK_FUNCS(dladdr)
   372         -
   373         -	AC_MSG_CHECKING([for acceptable dladdr])
   374         -
   375         -	AC_LINK_IFELSE(
   376         -		AC_LANG_PROGRAM([[
   377         -#ifdef HAVE_DLFCN_H
   378         -#include <dlfcn.h>
   379         -#endif
   380         -			]], [[
   381         -char *x;
   382         -Dl_info syminfo;
   383         -dladdr((void *) 0, &syminfo);
   384         -x = syminfo.dli_fname;
   385         -			]]
   386         -		),
   387         -		[
   388         -			AC_MSG_RESULT([found])
   389         -			AC_DEFINE(HAVE_ACCEPTABLE_DLADDR, [1], [Define to 1 if you have an acceptable dladdr implementation with dli_fname])
   390         -		], [
   391         -			AC_MSG_RESULT([not found])
   392         -		]
   393         -	)
   394         -])
   395         -
   396         -AC_DEFUN(DC_CHECK_FOR_WHOLE_ARCHIVE, [
   397         -	AC_MSG_CHECKING([for how to link whole archive])
   398         -
   399         -	SAVE_CFLAGS="${CFLAGS}"
   400         -
   401         -	wholearchive=""
   402         -
   403         -	for check in "-Wl,--whole-archive -Wl,--no-whole-archive" "-Wl,-z,allextract -Wl,-z,defaultextract"; do
   404         -		CFLAGS="${SAVE_CFLAGS} ${check}"
   405         -
   406         -		AC_LINK_IFELSE(AC_LANG_PROGRAM([], []),
   407         -			[
   408         -				wholearchive="${check}"
   409         -
   410         -				break
   411         -			]
   412         -		)
   413         -
   414         -	done
   415         -
   416         -	CFLAGS="${SAVE_CFLAGS}"
   417         -
   418         -	if test -z "${wholearchive}"; then
   419         -		AC_MSG_RESULT([not found])
   420         -	else
   421         -		AC_MSG_RESULT([${wholearchive}])
   422         -
   423         -		WHOLEARCHIVE=`echo "${wholearchive}" | cut -f 1 -d ' '`
   424         -		NOWHOLEARCHIVE=`echo "${wholearchive}" | cut -f 2 -d ' '`
   425         -	fi
   426         -
   427         -	AC_SUBST(WHOLEARCHIVE)
   428         -	AC_SUBST(NOWHOLEARCHIVE)
   429         -])

Deleted kitdll/buildsrc/kitdll-0.0/config.guess version [23da712e9c].

     1         -#! /bin/sh
     2         -# Attempt to guess a canonical system name.
     3         -#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
     4         -#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
     5         -
     6         -timestamp='2005-07-08'
     7         -
     8         -# This file is free software; you can redistribute it and/or modify it
     9         -# under the terms of the GNU General Public License as published by
    10         -# the Free Software Foundation; either version 2 of the License, or
    11         -# (at your option) any later version.
    12         -#
    13         -# This program is distributed in the hope that it will be useful, but
    14         -# WITHOUT ANY WARRANTY; without even the implied warranty of
    15         -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    16         -# General Public License for more details.
    17         -#
    18         -# You should have received a copy of the GNU General Public License
    19         -# along with this program; if not, write to the Free Software
    20         -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
    21         -# 02110-1301, USA.
    22         -#
    23         -# As a special exception to the GNU General Public License, if you
    24         -# distribute this file as part of a program that contains a
    25         -# configuration script generated by Autoconf, you may include it under
    26         -# the same distribution terms that you use for the rest of that program.
    27         -
    28         -
    29         -# Originally written by Per Bothner <per@bothner.com>.
    30         -# Please send patches to <config-patches@gnu.org>.  Submit a context
    31         -# diff and a properly formatted ChangeLog entry.
    32         -#
    33         -# This script attempts to guess a canonical system name similar to
    34         -# config.sub.  If it succeeds, it prints the system name on stdout, and
    35         -# exits with 0.  Otherwise, it exits with 1.
    36         -#
    37         -# The plan is that this can be called by configure scripts if you
    38         -# don't specify an explicit build system type.
    39         -
    40         -me=`echo "$0" | sed -e 's,.*/,,'`
    41         -
    42         -usage="\
    43         -Usage: $0 [OPTION]
    44         -
    45         -Output the configuration name of the system \`$me' is run on.
    46         -
    47         -Operation modes:
    48         -  -h, --help         print this help, then exit
    49         -  -t, --time-stamp   print date of last modification, then exit
    50         -  -v, --version      print version number, then exit
    51         -
    52         -Report bugs and patches to <config-patches@gnu.org>."
    53         -
    54         -version="\
    55         -GNU config.guess ($timestamp)
    56         -
    57         -Originally written by Per Bothner.
    58         -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
    59         -Free Software Foundation, Inc.
    60         -
    61         -This is free software; see the source for copying conditions.  There is NO
    62         -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
    63         -
    64         -help="
    65         -Try \`$me --help' for more information."
    66         -
    67         -# Parse command line
    68         -while test $# -gt 0 ; do
    69         -  case $1 in
    70         -    --time-stamp | --time* | -t )
    71         -       echo "$timestamp" ; exit ;;
    72         -    --version | -v )
    73         -       echo "$version" ; exit ;;
    74         -    --help | --h* | -h )
    75         -       echo "$usage"; exit ;;
    76         -    -- )     # Stop option processing
    77         -       shift; break ;;
    78         -    - )	# Use stdin as input.
    79         -       break ;;
    80         -    -* )
    81         -       echo "$me: invalid option $1$help" >&2
    82         -       exit 1 ;;
    83         -    * )
    84         -       break ;;
    85         -  esac
    86         -done
    87         -
    88         -if test $# != 0; then
    89         -  echo "$me: too many arguments$help" >&2
    90         -  exit 1
    91         -fi
    92         -
    93         -trap 'exit 1' 1 2 15
    94         -
    95         -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
    96         -# compiler to aid in system detection is discouraged as it requires
    97         -# temporary files to be created and, as you can see below, it is a
    98         -# headache to deal with in a portable fashion.
    99         -
   100         -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
   101         -# use `HOST_CC' if defined, but it is deprecated.
   102         -
   103         -# Portable tmp directory creation inspired by the Autoconf team.
   104         -
   105         -set_cc_for_build='
   106         -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
   107         -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
   108         -: ${TMPDIR=/tmp} ;
   109         - { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
   110         - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
   111         - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
   112         - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
   113         -dummy=$tmp/dummy ;
   114         -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
   115         -case $CC_FOR_BUILD,$HOST_CC,$CC in
   116         - ,,)    echo "int x;" > $dummy.c ;
   117         -	for c in cc gcc c89 c99 ; do
   118         -	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
   119         -	     CC_FOR_BUILD="$c"; break ;
   120         -	  fi ;
   121         -	done ;
   122         -	if test x"$CC_FOR_BUILD" = x ; then
   123         -	  CC_FOR_BUILD=no_compiler_found ;
   124         -	fi
   125         -	;;
   126         - ,,*)   CC_FOR_BUILD=$CC ;;
   127         - ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
   128         -esac ; set_cc_for_build= ;'
   129         -
   130         -# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
   131         -# (ghazi@noc.rutgers.edu 1994-08-24)
   132         -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
   133         -	PATH=$PATH:/.attbin ; export PATH
   134         -fi
   135         -
   136         -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
   137         -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
   138         -UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
   139         -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
   140         -
   141         -# Note: order is significant - the case branches are not exclusive.
   142         -
   143         -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
   144         -    *:NetBSD:*:*)
   145         -	# NetBSD (nbsd) targets should (where applicable) match one or
   146         -	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
   147         -	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
   148         -	# switched to ELF, *-*-netbsd* would select the old
   149         -	# object file format.  This provides both forward
   150         -	# compatibility and a consistent mechanism for selecting the
   151         -	# object file format.
   152         -	#
   153         -	# Note: NetBSD doesn't particularly care about the vendor
   154         -	# portion of the name.  We always set it to "unknown".
   155         -	sysctl="sysctl -n hw.machine_arch"
   156         -	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
   157         -	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
   158         -	case "${UNAME_MACHINE_ARCH}" in
   159         -	    armeb) machine=armeb-unknown ;;
   160         -	    arm*) machine=arm-unknown ;;
   161         -	    sh3el) machine=shl-unknown ;;
   162         -	    sh3eb) machine=sh-unknown ;;
   163         -	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
   164         -	esac
   165         -	# The Operating System including object format, if it has switched
   166         -	# to ELF recently, or will in the future.
   167         -	case "${UNAME_MACHINE_ARCH}" in
   168         -	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
   169         -		eval $set_cc_for_build
   170         -		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
   171         -			| grep __ELF__ >/dev/null
   172         -		then
   173         -		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
   174         -		    # Return netbsd for either.  FIX?
   175         -		    os=netbsd
   176         -		else
   177         -		    os=netbsdelf
   178         -		fi
   179         -		;;
   180         -	    *)
   181         -	        os=netbsd
   182         -		;;
   183         -	esac
   184         -	# The OS release
   185         -	# Debian GNU/NetBSD machines have a different userland, and
   186         -	# thus, need a distinct triplet. However, they do not need
   187         -	# kernel version information, so it can be replaced with a
   188         -	# suitable tag, in the style of linux-gnu.
   189         -	case "${UNAME_VERSION}" in
   190         -	    Debian*)
   191         -		release='-gnu'
   192         -		;;
   193         -	    *)
   194         -		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
   195         -		;;
   196         -	esac
   197         -	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
   198         -	# contains redundant information, the shorter form:
   199         -	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
   200         -	echo "${machine}-${os}${release}"
   201         -	exit ;;
   202         -    *:OpenBSD:*:*)
   203         -	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
   204         -	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
   205         -	exit ;;
   206         -    *:ekkoBSD:*:*)
   207         -	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
   208         -	exit ;;
   209         -    macppc:MirBSD:*:*)
   210         -	echo powerppc-unknown-mirbsd${UNAME_RELEASE}
   211         -	exit ;;
   212         -    *:MirBSD:*:*)
   213         -	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
   214         -	exit ;;
   215         -    alpha:OSF1:*:*)
   216         -	case $UNAME_RELEASE in
   217         -	*4.0)
   218         -		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
   219         -		;;
   220         -	*5.*)
   221         -	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
   222         -		;;
   223         -	esac
   224         -	# According to Compaq, /usr/sbin/psrinfo has been available on
   225         -	# OSF/1 and Tru64 systems produced since 1995.  I hope that
   226         -	# covers most systems running today.  This code pipes the CPU
   227         -	# types through head -n 1, so we only detect the type of CPU 0.
   228         -	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
   229         -	case "$ALPHA_CPU_TYPE" in
   230         -	    "EV4 (21064)")
   231         -		UNAME_MACHINE="alpha" ;;
   232         -	    "EV4.5 (21064)")
   233         -		UNAME_MACHINE="alpha" ;;
   234         -	    "LCA4 (21066/21068)")
   235         -		UNAME_MACHINE="alpha" ;;
   236         -	    "EV5 (21164)")
   237         -		UNAME_MACHINE="alphaev5" ;;
   238         -	    "EV5.6 (21164A)")
   239         -		UNAME_MACHINE="alphaev56" ;;
   240         -	    "EV5.6 (21164PC)")
   241         -		UNAME_MACHINE="alphapca56" ;;
   242         -	    "EV5.7 (21164PC)")
   243         -		UNAME_MACHINE="alphapca57" ;;
   244         -	    "EV6 (21264)")
   245         -		UNAME_MACHINE="alphaev6" ;;
   246         -	    "EV6.7 (21264A)")
   247         -		UNAME_MACHINE="alphaev67" ;;
   248         -	    "EV6.8CB (21264C)")
   249         -		UNAME_MACHINE="alphaev68" ;;
   250         -	    "EV6.8AL (21264B)")
   251         -		UNAME_MACHINE="alphaev68" ;;
   252         -	    "EV6.8CX (21264D)")
   253         -		UNAME_MACHINE="alphaev68" ;;
   254         -	    "EV6.9A (21264/EV69A)")
   255         -		UNAME_MACHINE="alphaev69" ;;
   256         -	    "EV7 (21364)")
   257         -		UNAME_MACHINE="alphaev7" ;;
   258         -	    "EV7.9 (21364A)")
   259         -		UNAME_MACHINE="alphaev79" ;;
   260         -	esac
   261         -	# A Pn.n version is a patched version.
   262         -	# A Vn.n version is a released version.
   263         -	# A Tn.n version is a released field test version.
   264         -	# A Xn.n version is an unreleased experimental baselevel.
   265         -	# 1.2 uses "1.2" for uname -r.
   266         -	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
   267         -	exit ;;
   268         -    Alpha\ *:Windows_NT*:*)
   269         -	# How do we know it's Interix rather than the generic POSIX subsystem?
   270         -	# Should we change UNAME_MACHINE based on the output of uname instead
   271         -	# of the specific Alpha model?
   272         -	echo alpha-pc-interix
   273         -	exit ;;
   274         -    21064:Windows_NT:50:3)
   275         -	echo alpha-dec-winnt3.5
   276         -	exit ;;
   277         -    Amiga*:UNIX_System_V:4.0:*)
   278         -	echo m68k-unknown-sysv4
   279         -	exit ;;
   280         -    *:[Aa]miga[Oo][Ss]:*:*)
   281         -	echo ${UNAME_MACHINE}-unknown-amigaos
   282         -	exit ;;
   283         -    *:[Mm]orph[Oo][Ss]:*:*)
   284         -	echo ${UNAME_MACHINE}-unknown-morphos
   285         -	exit ;;
   286         -    *:OS/390:*:*)
   287         -	echo i370-ibm-openedition
   288         -	exit ;;
   289         -    *:z/VM:*:*)
   290         -	echo s390-ibm-zvmoe
   291         -	exit ;;
   292         -    *:OS400:*:*)
   293         -        echo powerpc-ibm-os400
   294         -	exit ;;
   295         -    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
   296         -	echo arm-acorn-riscix${UNAME_RELEASE}
   297         -	exit ;;
   298         -    arm:riscos:*:*|arm:RISCOS:*:*)
   299         -	echo arm-unknown-riscos
   300         -	exit ;;
   301         -    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
   302         -	echo hppa1.1-hitachi-hiuxmpp
   303         -	exit ;;
   304         -    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
   305         -	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
   306         -	if test "`(/bin/universe) 2>/dev/null`" = att ; then
   307         -		echo pyramid-pyramid-sysv3
   308         -	else
   309         -		echo pyramid-pyramid-bsd
   310         -	fi
   311         -	exit ;;
   312         -    NILE*:*:*:dcosx)
   313         -	echo pyramid-pyramid-svr4
   314         -	exit ;;
   315         -    DRS?6000:unix:4.0:6*)
   316         -	echo sparc-icl-nx6
   317         -	exit ;;
   318         -    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
   319         -	case `/usr/bin/uname -p` in
   320         -	    sparc) echo sparc-icl-nx7; exit ;;
   321         -	esac ;;
   322         -    sun4H:SunOS:5.*:*)
   323         -	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
   324         -	exit ;;
   325         -    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
   326         -	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
   327         -	exit ;;
   328         -    i86pc:SunOS:5.*:*)
   329         -	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
   330         -	exit ;;
   331         -    sun4*:SunOS:6*:*)
   332         -	# According to config.sub, this is the proper way to canonicalize
   333         -	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
   334         -	# it's likely to be more like Solaris than SunOS4.
   335         -	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
   336         -	exit ;;
   337         -    sun4*:SunOS:*:*)
   338         -	case "`/usr/bin/arch -k`" in
   339         -	    Series*|S4*)
   340         -		UNAME_RELEASE=`uname -v`
   341         -		;;
   342         -	esac
   343         -	# Japanese Language versions have a version number like `4.1.3-JL'.
   344         -	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
   345         -	exit ;;
   346         -    sun3*:SunOS:*:*)
   347         -	echo m68k-sun-sunos${UNAME_RELEASE}
   348         -	exit ;;
   349         -    sun*:*:4.2BSD:*)
   350         -	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
   351         -	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
   352         -	case "`/bin/arch`" in
   353         -	    sun3)
   354         -		echo m68k-sun-sunos${UNAME_RELEASE}
   355         -		;;
   356         -	    sun4)
   357         -		echo sparc-sun-sunos${UNAME_RELEASE}
   358         -		;;
   359         -	esac
   360         -	exit ;;
   361         -    aushp:SunOS:*:*)
   362         -	echo sparc-auspex-sunos${UNAME_RELEASE}
   363         -	exit ;;
   364         -    # The situation for MiNT is a little confusing.  The machine name
   365         -    # can be virtually everything (everything which is not
   366         -    # "atarist" or "atariste" at least should have a processor
   367         -    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
   368         -    # to the lowercase version "mint" (or "freemint").  Finally
   369         -    # the system name "TOS" denotes a system which is actually not
   370         -    # MiNT.  But MiNT is downward compatible to TOS, so this should
   371         -    # be no problem.
   372         -    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
   373         -        echo m68k-atari-mint${UNAME_RELEASE}
   374         -	exit ;;
   375         -    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
   376         -	echo m68k-atari-mint${UNAME_RELEASE}
   377         -        exit ;;
   378         -    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
   379         -        echo m68k-atari-mint${UNAME_RELEASE}
   380         -	exit ;;
   381         -    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
   382         -        echo m68k-milan-mint${UNAME_RELEASE}
   383         -        exit ;;
   384         -    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
   385         -        echo m68k-hades-mint${UNAME_RELEASE}
   386         -        exit ;;
   387         -    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
   388         -        echo m68k-unknown-mint${UNAME_RELEASE}
   389         -        exit ;;
   390         -    m68k:machten:*:*)
   391         -	echo m68k-apple-machten${UNAME_RELEASE}
   392         -	exit ;;
   393         -    powerpc:machten:*:*)
   394         -	echo powerpc-apple-machten${UNAME_RELEASE}
   395         -	exit ;;
   396         -    RISC*:Mach:*:*)
   397         -	echo mips-dec-mach_bsd4.3
   398         -	exit ;;
   399         -    RISC*:ULTRIX:*:*)
   400         -	echo mips-dec-ultrix${UNAME_RELEASE}
   401         -	exit ;;
   402         -    VAX*:ULTRIX*:*:*)
   403         -	echo vax-dec-ultrix${UNAME_RELEASE}
   404         -	exit ;;
   405         -    2020:CLIX:*:* | 2430:CLIX:*:*)
   406         -	echo clipper-intergraph-clix${UNAME_RELEASE}
   407         -	exit ;;
   408         -    mips:*:*:UMIPS | mips:*:*:RISCos)
   409         -	eval $set_cc_for_build
   410         -	sed 's/^	//' << EOF >$dummy.c
   411         -#ifdef __cplusplus
   412         -#include <stdio.h>  /* for printf() prototype */
   413         -	int main (int argc, char *argv[]) {
   414         -#else
   415         -	int main (argc, argv) int argc; char *argv[]; {
   416         -#endif
   417         -	#if defined (host_mips) && defined (MIPSEB)
   418         -	#if defined (SYSTYPE_SYSV)
   419         -	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
   420         -	#endif
   421         -	#if defined (SYSTYPE_SVR4)
   422         -	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
   423         -	#endif
   424         -	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
   425         -	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
   426         -	#endif
   427         -	#endif
   428         -	  exit (-1);
   429         -	}
   430         -EOF
   431         -	$CC_FOR_BUILD -o $dummy $dummy.c &&
   432         -	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
   433         -	  SYSTEM_NAME=`$dummy $dummyarg` &&
   434         -	    { echo "$SYSTEM_NAME"; exit; }
   435         -	echo mips-mips-riscos${UNAME_RELEASE}
   436         -	exit ;;
   437         -    Motorola:PowerMAX_OS:*:*)
   438         -	echo powerpc-motorola-powermax
   439         -	exit ;;
   440         -    Motorola:*:4.3:PL8-*)
   441         -	echo powerpc-harris-powermax
   442         -	exit ;;
   443         -    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
   444         -	echo powerpc-harris-powermax
   445         -	exit ;;
   446         -    Night_Hawk:Power_UNIX:*:*)
   447         -	echo powerpc-harris-powerunix
   448         -	exit ;;
   449         -    m88k:CX/UX:7*:*)
   450         -	echo m88k-harris-cxux7
   451         -	exit ;;
   452         -    m88k:*:4*:R4*)
   453         -	echo m88k-motorola-sysv4
   454         -	exit ;;
   455         -    m88k:*:3*:R3*)
   456         -	echo m88k-motorola-sysv3
   457         -	exit ;;
   458         -    AViiON:dgux:*:*)
   459         -        # DG/UX returns AViiON for all architectures
   460         -        UNAME_PROCESSOR=`/usr/bin/uname -p`
   461         -	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
   462         -	then
   463         -	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
   464         -	       [ ${TARGET_BINARY_INTERFACE}x = x ]
   465         -	    then
   466         -		echo m88k-dg-dgux${UNAME_RELEASE}
   467         -	    else
   468         -		echo m88k-dg-dguxbcs${UNAME_RELEASE}
   469         -	    fi
   470         -	else
   471         -	    echo i586-dg-dgux${UNAME_RELEASE}
   472         -	fi
   473         - 	exit ;;
   474         -    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
   475         -	echo m88k-dolphin-sysv3
   476         -	exit ;;
   477         -    M88*:*:R3*:*)
   478         -	# Delta 88k system running SVR3
   479         -	echo m88k-motorola-sysv3
   480         -	exit ;;
   481         -    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
   482         -	echo m88k-tektronix-sysv3
   483         -	exit ;;
   484         -    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
   485         -	echo m68k-tektronix-bsd
   486         -	exit ;;
   487         -    *:IRIX*:*:*)
   488         -	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
   489         -	exit ;;
   490         -    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
   491         -	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
   492         -	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
   493         -    i*86:AIX:*:*)
   494         -	echo i386-ibm-aix
   495         -	exit ;;
   496         -    ia64:AIX:*:*)
   497         -	if [ -x /usr/bin/oslevel ] ; then
   498         -		IBM_REV=`/usr/bin/oslevel`
   499         -	else
   500         -		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
   501         -	fi
   502         -	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
   503         -	exit ;;
   504         -    *:AIX:2:3)
   505         -	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
   506         -		eval $set_cc_for_build
   507         -		sed 's/^		//' << EOF >$dummy.c
   508         -		#include <sys/systemcfg.h>
   509         -
   510         -		main()
   511         -			{
   512         -			if (!__power_pc())
   513         -				exit(1);
   514         -			puts("powerpc-ibm-aix3.2.5");
   515         -			exit(0);
   516         -			}
   517         -EOF
   518         -		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
   519         -		then
   520         -			echo "$SYSTEM_NAME"
   521         -		else
   522         -			echo rs6000-ibm-aix3.2.5
   523         -		fi
   524         -	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
   525         -		echo rs6000-ibm-aix3.2.4
   526         -	else
   527         -		echo rs6000-ibm-aix3.2
   528         -	fi
   529         -	exit ;;
   530         -    *:AIX:*:[45])
   531         -	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
   532         -	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
   533         -		IBM_ARCH=rs6000
   534         -	else
   535         -		IBM_ARCH=powerpc
   536         -	fi
   537         -	if [ -x /usr/bin/oslevel ] ; then
   538         -		IBM_REV=`/usr/bin/oslevel`
   539         -	else
   540         -		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
   541         -	fi
   542         -	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
   543         -	exit ;;
   544         -    *:AIX:*:*)
   545         -	echo rs6000-ibm-aix
   546         -	exit ;;
   547         -    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
   548         -	echo romp-ibm-bsd4.4
   549         -	exit ;;
   550         -    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
   551         -	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
   552         -	exit ;;                             # report: romp-ibm BSD 4.3
   553         -    *:BOSX:*:*)
   554         -	echo rs6000-bull-bosx
   555         -	exit ;;
   556         -    DPX/2?00:B.O.S.:*:*)
   557         -	echo m68k-bull-sysv3
   558         -	exit ;;
   559         -    9000/[34]??:4.3bsd:1.*:*)
   560         -	echo m68k-hp-bsd
   561         -	exit ;;
   562         -    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
   563         -	echo m68k-hp-bsd4.4
   564         -	exit ;;
   565         -    9000/[34678]??:HP-UX:*:*)
   566         -	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
   567         -	case "${UNAME_MACHINE}" in
   568         -	    9000/31? )            HP_ARCH=m68000 ;;
   569         -	    9000/[34]?? )         HP_ARCH=m68k ;;
   570         -	    9000/[678][0-9][0-9])
   571         -		if [ -x /usr/bin/getconf ]; then
   572         -		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
   573         -                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
   574         -                    case "${sc_cpu_version}" in
   575         -                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
   576         -                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
   577         -                      532)                      # CPU_PA_RISC2_0
   578         -                        case "${sc_kernel_bits}" in
   579         -                          32) HP_ARCH="hppa2.0n" ;;
   580         -                          64) HP_ARCH="hppa2.0w" ;;
   581         -			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
   582         -                        esac ;;
   583         -                    esac
   584         -		fi
   585         -		if [ "${HP_ARCH}" = "" ]; then
   586         -		    eval $set_cc_for_build
   587         -		    sed 's/^              //' << EOF >$dummy.c
   588         -
   589         -              #define _HPUX_SOURCE
   590         -              #include <stdlib.h>
   591         -              #include <unistd.h>
   592         -
   593         -              int main ()
   594         -              {
   595         -              #if defined(_SC_KERNEL_BITS)
   596         -                  long bits = sysconf(_SC_KERNEL_BITS);
   597         -              #endif
   598         -                  long cpu  = sysconf (_SC_CPU_VERSION);
   599         -
   600         -                  switch (cpu)
   601         -              	{
   602         -              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
   603         -              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
   604         -              	case CPU_PA_RISC2_0:
   605         -              #if defined(_SC_KERNEL_BITS)
   606         -              	    switch (bits)
   607         -              		{
   608         -              		case 64: puts ("hppa2.0w"); break;
   609         -              		case 32: puts ("hppa2.0n"); break;
   610         -              		default: puts ("hppa2.0"); break;
   611         -              		} break;
   612         -              #else  /* !defined(_SC_KERNEL_BITS) */
   613         -              	    puts ("hppa2.0"); break;
   614         -              #endif
   615         -              	default: puts ("hppa1.0"); break;
   616         -              	}
   617         -                  exit (0);
   618         -              }
   619         -EOF
   620         -		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
   621         -		    test -z "$HP_ARCH" && HP_ARCH=hppa
   622         -		fi ;;
   623         -	esac
   624         -	if [ ${HP_ARCH} = "hppa2.0w" ]
   625         -	then
   626         -	    eval $set_cc_for_build
   627         -
   628         -	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
   629         -	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
   630         -	    # generating 64-bit code.  GNU and HP use different nomenclature:
   631         -	    #
   632         -	    # $ CC_FOR_BUILD=cc ./config.guess
   633         -	    # => hppa2.0w-hp-hpux11.23
   634         -	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
   635         -	    # => hppa64-hp-hpux11.23
   636         -
   637         -	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
   638         -		grep __LP64__ >/dev/null
   639         -	    then
   640         -		HP_ARCH="hppa2.0w"
   641         -	    else
   642         -		HP_ARCH="hppa64"
   643         -	    fi
   644         -	fi
   645         -	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
   646         -	exit ;;
   647         -    ia64:HP-UX:*:*)
   648         -	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
   649         -	echo ia64-hp-hpux${HPUX_REV}
   650         -	exit ;;
   651         -    3050*:HI-UX:*:*)
   652         -	eval $set_cc_for_build
   653         -	sed 's/^	//' << EOF >$dummy.c
   654         -	#include <unistd.h>
   655         -	int
   656         -	main ()
   657         -	{
   658         -	  long cpu = sysconf (_SC_CPU_VERSION);
   659         -	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
   660         -	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
   661         -	     results, however.  */
   662         -	  if (CPU_IS_PA_RISC (cpu))
   663         -	    {
   664         -	      switch (cpu)
   665         -		{
   666         -		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
   667         -		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
   668         -		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
   669         -		  default: puts ("hppa-hitachi-hiuxwe2"); break;
   670         -		}
   671         -	    }
   672         -	  else if (CPU_IS_HP_MC68K (cpu))
   673         -	    puts ("m68k-hitachi-hiuxwe2");
   674         -	  else puts ("unknown-hitachi-hiuxwe2");
   675         -	  exit (0);
   676         -	}
   677         -EOF
   678         -	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
   679         -		{ echo "$SYSTEM_NAME"; exit; }
   680         -	echo unknown-hitachi-hiuxwe2
   681         -	exit ;;
   682         -    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
   683         -	echo hppa1.1-hp-bsd
   684         -	exit ;;
   685         -    9000/8??:4.3bsd:*:*)
   686         -	echo hppa1.0-hp-bsd
   687         -	exit ;;
   688         -    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
   689         -	echo hppa1.0-hp-mpeix
   690         -	exit ;;
   691         -    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
   692         -	echo hppa1.1-hp-osf
   693         -	exit ;;
   694         -    hp8??:OSF1:*:*)
   695         -	echo hppa1.0-hp-osf
   696         -	exit ;;
   697         -    i*86:OSF1:*:*)
   698         -	if [ -x /usr/sbin/sysversion ] ; then
   699         -	    echo ${UNAME_MACHINE}-unknown-osf1mk
   700         -	else
   701         -	    echo ${UNAME_MACHINE}-unknown-osf1
   702         -	fi
   703         -	exit ;;
   704         -    parisc*:Lites*:*:*)
   705         -	echo hppa1.1-hp-lites
   706         -	exit ;;
   707         -    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
   708         -	echo c1-convex-bsd
   709         -        exit ;;
   710         -    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
   711         -	if getsysinfo -f scalar_acc
   712         -	then echo c32-convex-bsd
   713         -	else echo c2-convex-bsd
   714         -	fi
   715         -        exit ;;
   716         -    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
   717         -	echo c34-convex-bsd
   718         -        exit ;;
   719         -    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
   720         -	echo c38-convex-bsd
   721         -        exit ;;
   722         -    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
   723         -	echo c4-convex-bsd
   724         -        exit ;;
   725         -    CRAY*Y-MP:*:*:*)
   726         -	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
   727         -	exit ;;
   728         -    CRAY*[A-Z]90:*:*:*)
   729         -	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
   730         -	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
   731         -	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
   732         -	      -e 's/\.[^.]*$/.X/'
   733         -	exit ;;
   734         -    CRAY*TS:*:*:*)
   735         -	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
   736         -	exit ;;
   737         -    CRAY*T3E:*:*:*)
   738         -	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
   739         -	exit ;;
   740         -    CRAY*SV1:*:*:*)
   741         -	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
   742         -	exit ;;
   743         -    *:UNICOS/mp:*:*)
   744         -	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
   745         -	exit ;;
   746         -    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
   747         -	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
   748         -        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
   749         -        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
   750         -        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
   751         -        exit ;;
   752         -    5000:UNIX_System_V:4.*:*)
   753         -        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
   754         -        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
   755         -        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
   756         -	exit ;;
   757         -    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
   758         -	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
   759         -	exit ;;
   760         -    sparc*:BSD/OS:*:*)
   761         -	echo sparc-unknown-bsdi${UNAME_RELEASE}
   762         -	exit ;;
   763         -    *:BSD/OS:*:*)
   764         -	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
   765         -	exit ;;
   766         -    *:FreeBSD:*:*)
   767         -	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
   768         -	exit ;;
   769         -    i*:CYGWIN*:*)
   770         -	echo ${UNAME_MACHINE}-pc-cygwin
   771         -	exit ;;
   772         -    i*:MINGW*:*)
   773         -	echo ${UNAME_MACHINE}-pc-mingw32
   774         -	exit ;;
   775         -    i*:windows32*:*)
   776         -    	# uname -m includes "-pc" on this system.
   777         -    	echo ${UNAME_MACHINE}-mingw32
   778         -	exit ;;
   779         -    i*:PW*:*)
   780         -	echo ${UNAME_MACHINE}-pc-pw32
   781         -	exit ;;
   782         -    x86:Interix*:[34]*)
   783         -	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
   784         -	exit ;;
   785         -    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
   786         -	echo i${UNAME_MACHINE}-pc-mks
   787         -	exit ;;
   788         -    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
   789         -	# How do we know it's Interix rather than the generic POSIX subsystem?
   790         -	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
   791         -	# UNAME_MACHINE based on the output of uname instead of i386?
   792         -	echo i586-pc-interix
   793         -	exit ;;
   794         -    i*:UWIN*:*)
   795         -	echo ${UNAME_MACHINE}-pc-uwin
   796         -	exit ;;
   797         -    amd64:CYGWIN*:*:*)
   798         -	echo x86_64-unknown-cygwin
   799         -	exit ;;
   800         -    p*:CYGWIN*:*)
   801         -	echo powerpcle-unknown-cygwin
   802         -	exit ;;
   803         -    prep*:SunOS:5.*:*)
   804         -	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
   805         -	exit ;;
   806         -    *:GNU:*:*)
   807         -	# the GNU system
   808         -	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
   809         -	exit ;;
   810         -    *:GNU/*:*:*)
   811         -	# other systems with GNU libc and userland
   812         -	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
   813         -	exit ;;
   814         -    i*86:Minix:*:*)
   815         -	echo ${UNAME_MACHINE}-pc-minix
   816         -	exit ;;
   817         -    arm*:Linux:*:*)
   818         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   819         -	exit ;;
   820         -    cris:Linux:*:*)
   821         -	echo cris-axis-linux-gnu
   822         -	exit ;;
   823         -    crisv32:Linux:*:*)
   824         -	echo crisv32-axis-linux-gnu
   825         -	exit ;;
   826         -    frv:Linux:*:*)
   827         -    	echo frv-unknown-linux-gnu
   828         -	exit ;;
   829         -    ia64:Linux:*:*)
   830         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   831         -	exit ;;
   832         -    m32r*:Linux:*:*)
   833         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   834         -	exit ;;
   835         -    m68*:Linux:*:*)
   836         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   837         -	exit ;;
   838         -    mips:Linux:*:*)
   839         -	eval $set_cc_for_build
   840         -	sed 's/^	//' << EOF >$dummy.c
   841         -	#undef CPU
   842         -	#undef mips
   843         -	#undef mipsel
   844         -	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
   845         -	CPU=mipsel
   846         -	#else
   847         -	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
   848         -	CPU=mips
   849         -	#else
   850         -	CPU=
   851         -	#endif
   852         -	#endif
   853         -EOF
   854         -	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
   855         -	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
   856         -	;;
   857         -    mips64:Linux:*:*)
   858         -	eval $set_cc_for_build
   859         -	sed 's/^	//' << EOF >$dummy.c
   860         -	#undef CPU
   861         -	#undef mips64
   862         -	#undef mips64el
   863         -	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
   864         -	CPU=mips64el
   865         -	#else
   866         -	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
   867         -	CPU=mips64
   868         -	#else
   869         -	CPU=
   870         -	#endif
   871         -	#endif
   872         -EOF
   873         -	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
   874         -	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
   875         -	;;
   876         -    ppc:Linux:*:*)
   877         -	echo powerpc-unknown-linux-gnu
   878         -	exit ;;
   879         -    ppc64:Linux:*:*)
   880         -	echo powerpc64-unknown-linux-gnu
   881         -	exit ;;
   882         -    alpha:Linux:*:*)
   883         -	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
   884         -	  EV5)   UNAME_MACHINE=alphaev5 ;;
   885         -	  EV56)  UNAME_MACHINE=alphaev56 ;;
   886         -	  PCA56) UNAME_MACHINE=alphapca56 ;;
   887         -	  PCA57) UNAME_MACHINE=alphapca56 ;;
   888         -	  EV6)   UNAME_MACHINE=alphaev6 ;;
   889         -	  EV67)  UNAME_MACHINE=alphaev67 ;;
   890         -	  EV68*) UNAME_MACHINE=alphaev68 ;;
   891         -        esac
   892         -	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
   893         -	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
   894         -	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
   895         -	exit ;;
   896         -    parisc:Linux:*:* | hppa:Linux:*:*)
   897         -	# Look for CPU level
   898         -	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
   899         -	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
   900         -	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
   901         -	  *)    echo hppa-unknown-linux-gnu ;;
   902         -	esac
   903         -	exit ;;
   904         -    parisc64:Linux:*:* | hppa64:Linux:*:*)
   905         -	echo hppa64-unknown-linux-gnu
   906         -	exit ;;
   907         -    s390:Linux:*:* | s390x:Linux:*:*)
   908         -	echo ${UNAME_MACHINE}-ibm-linux
   909         -	exit ;;
   910         -    sh64*:Linux:*:*)
   911         -    	echo ${UNAME_MACHINE}-unknown-linux-gnu
   912         -	exit ;;
   913         -    sh*:Linux:*:*)
   914         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   915         -	exit ;;
   916         -    sparc:Linux:*:* | sparc64:Linux:*:*)
   917         -	echo ${UNAME_MACHINE}-unknown-linux-gnu
   918         -	exit ;;
   919         -    x86_64:Linux:*:*)
   920         -	echo x86_64-unknown-linux-gnu
   921         -	exit ;;
   922         -    i*86:Linux:*:*)
   923         -	# The BFD linker knows what the default object file format is, so
   924         -	# first see if it will tell us. cd to the root directory to prevent
   925         -	# problems with other programs or directories called `ld' in the path.
   926         -	# Set LC_ALL=C to ensure ld outputs messages in English.
   927         -	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
   928         -			 | sed -ne '/supported targets:/!d
   929         -				    s/[ 	][ 	]*/ /g
   930         -				    s/.*supported targets: *//
   931         -				    s/ .*//
   932         -				    p'`
   933         -        case "$ld_supported_targets" in
   934         -	  elf32-i386)
   935         -		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
   936         -		;;
   937         -	  a.out-i386-linux)
   938         -		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
   939         -		exit ;;
   940         -	  coff-i386)
   941         -		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
   942         -		exit ;;
   943         -	  "")
   944         -		# Either a pre-BFD a.out linker (linux-gnuoldld) or
   945         -		# one that does not give us useful --help.
   946         -		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
   947         -		exit ;;
   948         -	esac
   949         -	# Determine whether the default compiler is a.out or elf
   950         -	eval $set_cc_for_build
   951         -	sed 's/^	//' << EOF >$dummy.c
   952         -	#include <features.h>
   953         -	#ifdef __ELF__
   954         -	# ifdef __GLIBC__
   955         -	#  if __GLIBC__ >= 2
   956         -	LIBC=gnu
   957         -	#  else
   958         -	LIBC=gnulibc1
   959         -	#  endif
   960         -	# else
   961         -	LIBC=gnulibc1
   962         -	# endif
   963         -	#else
   964         -	#ifdef __INTEL_COMPILER
   965         -	LIBC=gnu
   966         -	#else
   967         -	LIBC=gnuaout
   968         -	#endif
   969         -	#endif
   970         -	#ifdef __dietlibc__
   971         -	LIBC=dietlibc
   972         -	#endif
   973         -EOF
   974         -	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
   975         -	test x"${LIBC}" != x && {
   976         -		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
   977         -		exit
   978         -	}
   979         -	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
   980         -	;;
   981         -    i*86:DYNIX/ptx:4*:*)
   982         -	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
   983         -	# earlier versions are messed up and put the nodename in both
   984         -	# sysname and nodename.
   985         -	echo i386-sequent-sysv4
   986         -	exit ;;
   987         -    i*86:UNIX_SV:4.2MP:2.*)
   988         -        # Unixware is an offshoot of SVR4, but it has its own version
   989         -        # number series starting with 2...
   990         -        # I am not positive that other SVR4 systems won't match this,
   991         -	# I just have to hope.  -- rms.
   992         -        # Use sysv4.2uw... so that sysv4* matches it.
   993         -	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
   994         -	exit ;;
   995         -    i*86:OS/2:*:*)
   996         -	# If we were able to find `uname', then EMX Unix compatibility
   997         -	# is probably installed.
   998         -	echo ${UNAME_MACHINE}-pc-os2-emx
   999         -	exit ;;
  1000         -    i*86:XTS-300:*:STOP)
  1001         -	echo ${UNAME_MACHINE}-unknown-stop
  1002         -	exit ;;
  1003         -    i*86:atheos:*:*)
  1004         -	echo ${UNAME_MACHINE}-unknown-atheos
  1005         -	exit ;;
  1006         -    i*86:syllable:*:*)
  1007         -	echo ${UNAME_MACHINE}-pc-syllable
  1008         -	exit ;;
  1009         -    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
  1010         -	echo i386-unknown-lynxos${UNAME_RELEASE}
  1011         -	exit ;;
  1012         -    i*86:*DOS:*:*)
  1013         -	echo ${UNAME_MACHINE}-pc-msdosdjgpp
  1014         -	exit ;;
  1015         -    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
  1016         -	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
  1017         -	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
  1018         -		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
  1019         -	else
  1020         -		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
  1021         -	fi
  1022         -	exit ;;
  1023         -    i*86:*:5:[678]*)
  1024         -    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
  1025         -	case `/bin/uname -X | grep "^Machine"` in
  1026         -	    *486*)	     UNAME_MACHINE=i486 ;;
  1027         -	    *Pentium)	     UNAME_MACHINE=i586 ;;
  1028         -	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
  1029         -	esac
  1030         -	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
  1031         -	exit ;;
  1032         -    i*86:*:3.2:*)
  1033         -	if test -f /usr/options/cb.name; then
  1034         -		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
  1035         -		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
  1036         -	elif /bin/uname -X 2>/dev/null >/dev/null ; then
  1037         -		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
  1038         -		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
  1039         -		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
  1040         -			&& UNAME_MACHINE=i586
  1041         -		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
  1042         -			&& UNAME_MACHINE=i686
  1043         -		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
  1044         -			&& UNAME_MACHINE=i686
  1045         -		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
  1046         -	else
  1047         -		echo ${UNAME_MACHINE}-pc-sysv32
  1048         -	fi
  1049         -	exit ;;
  1050         -    pc:*:*:*)
  1051         -	# Left here for compatibility:
  1052         -        # uname -m prints for DJGPP always 'pc', but it prints nothing about
  1053         -        # the processor, so we play safe by assuming i386.
  1054         -	echo i386-pc-msdosdjgpp
  1055         -        exit ;;
  1056         -    Intel:Mach:3*:*)
  1057         -	echo i386-pc-mach3
  1058         -	exit ;;
  1059         -    paragon:*:*:*)
  1060         -	echo i860-intel-osf1
  1061         -	exit ;;
  1062         -    i860:*:4.*:*) # i860-SVR4
  1063         -	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
  1064         -	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
  1065         -	else # Add other i860-SVR4 vendors below as they are discovered.
  1066         -	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
  1067         -	fi
  1068         -	exit ;;
  1069         -    mini*:CTIX:SYS*5:*)
  1070         -	# "miniframe"
  1071         -	echo m68010-convergent-sysv
  1072         -	exit ;;
  1073         -    mc68k:UNIX:SYSTEM5:3.51m)
  1074         -	echo m68k-convergent-sysv
  1075         -	exit ;;
  1076         -    M680?0:D-NIX:5.3:*)
  1077         -	echo m68k-diab-dnix
  1078         -	exit ;;
  1079         -    M68*:*:R3V[5678]*:*)
  1080         -	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
  1081         -    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
  1082         -	OS_REL=''
  1083         -	test -r /etc/.relid \
  1084         -	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
  1085         -	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1086         -	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
  1087         -	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  1088         -	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
  1089         -    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
  1090         -        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
  1091         -          && { echo i486-ncr-sysv4; exit; } ;;
  1092         -    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
  1093         -	echo m68k-unknown-lynxos${UNAME_RELEASE}
  1094         -	exit ;;
  1095         -    mc68030:UNIX_System_V:4.*:*)
  1096         -	echo m68k-atari-sysv4
  1097         -	exit ;;
  1098         -    TSUNAMI:LynxOS:2.*:*)
  1099         -	echo sparc-unknown-lynxos${UNAME_RELEASE}
  1100         -	exit ;;
  1101         -    rs6000:LynxOS:2.*:*)
  1102         -	echo rs6000-unknown-lynxos${UNAME_RELEASE}
  1103         -	exit ;;
  1104         -    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
  1105         -	echo powerpc-unknown-lynxos${UNAME_RELEASE}
  1106         -	exit ;;
  1107         -    SM[BE]S:UNIX_SV:*:*)
  1108         -	echo mips-dde-sysv${UNAME_RELEASE}
  1109         -	exit ;;
  1110         -    RM*:ReliantUNIX-*:*:*)
  1111         -	echo mips-sni-sysv4
  1112         -	exit ;;
  1113         -    RM*:SINIX-*:*:*)
  1114         -	echo mips-sni-sysv4
  1115         -	exit ;;
  1116         -    *:SINIX-*:*:*)
  1117         -	if uname -p 2>/dev/null >/dev/null ; then
  1118         -		UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1119         -		echo ${UNAME_MACHINE}-sni-sysv4
  1120         -	else
  1121         -		echo ns32k-sni-sysv
  1122         -	fi
  1123         -	exit ;;
  1124         -    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
  1125         -                      # says <Richard.M.Bartel@ccMail.Census.GOV>
  1126         -        echo i586-unisys-sysv4
  1127         -        exit ;;
  1128         -    *:UNIX_System_V:4*:FTX*)
  1129         -	# From Gerald Hewes <hewes@openmarket.com>.
  1130         -	# How about differentiating between stratus architectures? -djm
  1131         -	echo hppa1.1-stratus-sysv4
  1132         -	exit ;;
  1133         -    *:*:*:FTX*)
  1134         -	# From seanf@swdc.stratus.com.
  1135         -	echo i860-stratus-sysv4
  1136         -	exit ;;
  1137         -    i*86:VOS:*:*)
  1138         -	# From Paul.Green@stratus.com.
  1139         -	echo ${UNAME_MACHINE}-stratus-vos
  1140         -	exit ;;
  1141         -    *:VOS:*:*)
  1142         -	# From Paul.Green@stratus.com.
  1143         -	echo hppa1.1-stratus-vos
  1144         -	exit ;;
  1145         -    mc68*:A/UX:*:*)
  1146         -	echo m68k-apple-aux${UNAME_RELEASE}
  1147         -	exit ;;
  1148         -    news*:NEWS-OS:6*:*)
  1149         -	echo mips-sony-newsos6
  1150         -	exit ;;
  1151         -    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
  1152         -	if [ -d /usr/nec ]; then
  1153         -	        echo mips-nec-sysv${UNAME_RELEASE}
  1154         -	else
  1155         -	        echo mips-unknown-sysv${UNAME_RELEASE}
  1156         -	fi
  1157         -        exit ;;
  1158         -    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
  1159         -	echo powerpc-be-beos
  1160         -	exit ;;
  1161         -    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
  1162         -	echo powerpc-apple-beos
  1163         -	exit ;;
  1164         -    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
  1165         -	echo i586-pc-beos
  1166         -	exit ;;
  1167         -    SX-4:SUPER-UX:*:*)
  1168         -	echo sx4-nec-superux${UNAME_RELEASE}
  1169         -	exit ;;
  1170         -    SX-5:SUPER-UX:*:*)
  1171         -	echo sx5-nec-superux${UNAME_RELEASE}
  1172         -	exit ;;
  1173         -    SX-6:SUPER-UX:*:*)
  1174         -	echo sx6-nec-superux${UNAME_RELEASE}
  1175         -	exit ;;
  1176         -    Power*:Rhapsody:*:*)
  1177         -	echo powerpc-apple-rhapsody${UNAME_RELEASE}
  1178         -	exit ;;
  1179         -    *:Rhapsody:*:*)
  1180         -	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
  1181         -	exit ;;
  1182         -    *:Darwin:*:*)
  1183         -	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
  1184         -	case $UNAME_PROCESSOR in
  1185         -	    *86) UNAME_PROCESSOR=i686 ;;
  1186         -	    unknown) UNAME_PROCESSOR=powerpc ;;
  1187         -	esac
  1188         -	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
  1189         -	exit ;;
  1190         -    *:procnto*:*:* | *:QNX:[0123456789]*:*)
  1191         -	UNAME_PROCESSOR=`uname -p`
  1192         -	if test "$UNAME_PROCESSOR" = "x86"; then
  1193         -		UNAME_PROCESSOR=i386
  1194         -		UNAME_MACHINE=pc
  1195         -	fi
  1196         -	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
  1197         -	exit ;;
  1198         -    *:QNX:*:4*)
  1199         -	echo i386-pc-qnx
  1200         -	exit ;;
  1201         -    NSE-?:NONSTOP_KERNEL:*:*)
  1202         -	echo nse-tandem-nsk${UNAME_RELEASE}
  1203         -	exit ;;
  1204         -    NSR-?:NONSTOP_KERNEL:*:*)
  1205         -	echo nsr-tandem-nsk${UNAME_RELEASE}
  1206         -	exit ;;
  1207         -    *:NonStop-UX:*:*)
  1208         -	echo mips-compaq-nonstopux
  1209         -	exit ;;
  1210         -    BS2000:POSIX*:*:*)
  1211         -	echo bs2000-siemens-sysv
  1212         -	exit ;;
  1213         -    DS/*:UNIX_System_V:*:*)
  1214         -	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
  1215         -	exit ;;
  1216         -    *:Plan9:*:*)
  1217         -	# "uname -m" is not consistent, so use $cputype instead. 386
  1218         -	# is converted to i386 for consistency with other x86
  1219         -	# operating systems.
  1220         -	if test "$cputype" = "386"; then
  1221         -	    UNAME_MACHINE=i386
  1222         -	else
  1223         -	    UNAME_MACHINE="$cputype"
  1224         -	fi
  1225         -	echo ${UNAME_MACHINE}-unknown-plan9
  1226         -	exit ;;
  1227         -    *:TOPS-10:*:*)
  1228         -	echo pdp10-unknown-tops10
  1229         -	exit ;;
  1230         -    *:TENEX:*:*)
  1231         -	echo pdp10-unknown-tenex
  1232         -	exit ;;
  1233         -    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
  1234         -	echo pdp10-dec-tops20
  1235         -	exit ;;
  1236         -    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
  1237         -	echo pdp10-xkl-tops20
  1238         -	exit ;;
  1239         -    *:TOPS-20:*:*)
  1240         -	echo pdp10-unknown-tops20
  1241         -	exit ;;
  1242         -    *:ITS:*:*)
  1243         -	echo pdp10-unknown-its
  1244         -	exit ;;
  1245         -    SEI:*:*:SEIUX)
  1246         -        echo mips-sei-seiux${UNAME_RELEASE}
  1247         -	exit ;;
  1248         -    *:DragonFly:*:*)
  1249         -	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
  1250         -	exit ;;
  1251         -    *:*VMS:*:*)
  1252         -    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
  1253         -	case "${UNAME_MACHINE}" in
  1254         -	    A*) echo alpha-dec-vms ; exit ;;
  1255         -	    I*) echo ia64-dec-vms ; exit ;;
  1256         -	    V*) echo vax-dec-vms ; exit ;;
  1257         -	esac ;;
  1258         -    *:XENIX:*:SysV)
  1259         -	echo i386-pc-xenix
  1260         -	exit ;;
  1261         -    i*86:skyos:*:*)
  1262         -	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
  1263         -	exit ;;
  1264         -esac
  1265         -
  1266         -#echo '(No uname command or uname output not recognized.)' 1>&2
  1267         -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
  1268         -
  1269         -eval $set_cc_for_build
  1270         -cat >$dummy.c <<EOF
  1271         -#ifdef _SEQUENT_
  1272         -# include <sys/types.h>
  1273         -# include <sys/utsname.h>
  1274         -#endif
  1275         -main ()
  1276         -{
  1277         -#if defined (sony)
  1278         -#if defined (MIPSEB)
  1279         -  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
  1280         -     I don't know....  */
  1281         -  printf ("mips-sony-bsd\n"); exit (0);
  1282         -#else
  1283         -#include <sys/param.h>
  1284         -  printf ("m68k-sony-newsos%s\n",
  1285         -#ifdef NEWSOS4
  1286         -          "4"
  1287         -#else
  1288         -	  ""
  1289         -#endif
  1290         -         ); exit (0);
  1291         -#endif
  1292         -#endif
  1293         -
  1294         -#if defined (__arm) && defined (__acorn) && defined (__unix)
  1295         -  printf ("arm-acorn-riscix\n"); exit (0);
  1296         -#endif
  1297         -
  1298         -#if defined (hp300) && !defined (hpux)
  1299         -  printf ("m68k-hp-bsd\n"); exit (0);
  1300         -#endif
  1301         -
  1302         -#if defined (NeXT)
  1303         -#if !defined (__ARCHITECTURE__)
  1304         -#define __ARCHITECTURE__ "m68k"
  1305         -#endif
  1306         -  int version;
  1307         -  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
  1308         -  if (version < 4)
  1309         -    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
  1310         -  else
  1311         -    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
  1312         -  exit (0);
  1313         -#endif
  1314         -
  1315         -#if defined (MULTIMAX) || defined (n16)
  1316         -#if defined (UMAXV)
  1317         -  printf ("ns32k-encore-sysv\n"); exit (0);
  1318         -#else
  1319         -#if defined (CMU)
  1320         -  printf ("ns32k-encore-mach\n"); exit (0);
  1321         -#else
  1322         -  printf ("ns32k-encore-bsd\n"); exit (0);
  1323         -#endif
  1324         -#endif
  1325         -#endif
  1326         -
  1327         -#if defined (__386BSD__)
  1328         -  printf ("i386-pc-bsd\n"); exit (0);
  1329         -#endif
  1330         -
  1331         -#if defined (sequent)
  1332         -#if defined (i386)
  1333         -  printf ("i386-sequent-dynix\n"); exit (0);
  1334         -#endif
  1335         -#if defined (ns32000)
  1336         -  printf ("ns32k-sequent-dynix\n"); exit (0);
  1337         -#endif
  1338         -#endif
  1339         -
  1340         -#if defined (_SEQUENT_)
  1341         -    struct utsname un;
  1342         -
  1343         -    uname(&un);
  1344         -
  1345         -    if (strncmp(un.version, "V2", 2) == 0) {
  1346         -	printf ("i386-sequent-ptx2\n"); exit (0);
  1347         -    }
  1348         -    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
  1349         -	printf ("i386-sequent-ptx1\n"); exit (0);
  1350         -    }
  1351         -    printf ("i386-sequent-ptx\n"); exit (0);
  1352         -
  1353         -#endif
  1354         -
  1355         -#if defined (vax)
  1356         -# if !defined (ultrix)
  1357         -#  include <sys/param.h>
  1358         -#  if defined (BSD)
  1359         -#   if BSD == 43
  1360         -      printf ("vax-dec-bsd4.3\n"); exit (0);
  1361         -#   else
  1362         -#    if BSD == 199006
  1363         -      printf ("vax-dec-bsd4.3reno\n"); exit (0);
  1364         -#    else
  1365         -      printf ("vax-dec-bsd\n"); exit (0);
  1366         -#    endif
  1367         -#   endif
  1368         -#  else
  1369         -    printf ("vax-dec-bsd\n"); exit (0);
  1370         -#  endif
  1371         -# else
  1372         -    printf ("vax-dec-ultrix\n"); exit (0);
  1373         -# endif
  1374         -#endif
  1375         -
  1376         -#if defined (alliant) && defined (i860)
  1377         -  printf ("i860-alliant-bsd\n"); exit (0);
  1378         -#endif
  1379         -
  1380         -  exit (1);
  1381         -}
  1382         -EOF
  1383         -
  1384         -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
  1385         -	{ echo "$SYSTEM_NAME"; exit; }
  1386         -
  1387         -# Apollos put the system type in the environment.
  1388         -
  1389         -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
  1390         -
  1391         -# Convex versions that predate uname can use getsysinfo(1)
  1392         -
  1393         -if [ -x /usr/convex/getsysinfo ]
  1394         -then
  1395         -    case `getsysinfo -f cpu_type` in
  1396         -    c1*)
  1397         -	echo c1-convex-bsd
  1398         -	exit ;;
  1399         -    c2*)
  1400         -	if getsysinfo -f scalar_acc
  1401         -	then echo c32-convex-bsd
  1402         -	else echo c2-convex-bsd
  1403         -	fi
  1404         -	exit ;;
  1405         -    c34*)
  1406         -	echo c34-convex-bsd
  1407         -	exit ;;
  1408         -    c38*)
  1409         -	echo c38-convex-bsd
  1410         -	exit ;;
  1411         -    c4*)
  1412         -	echo c4-convex-bsd
  1413         -	exit ;;
  1414         -    esac
  1415         -fi
  1416         -
  1417         -cat >&2 <<EOF
  1418         -$0: unable to guess system type
  1419         -
  1420         -This script, last modified $timestamp, has failed to recognize
  1421         -the operating system you are using. It is advised that you
  1422         -download the most up to date version of the config scripts from
  1423         -
  1424         -  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
  1425         -and
  1426         -  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
  1427         -
  1428         -If the version you run ($0) is already up to date, please
  1429         -send the following data and any information you think might be
  1430         -pertinent to <config-patches@gnu.org> in order to provide the needed
  1431         -information to handle your system.
  1432         -
  1433         -config.guess timestamp = $timestamp
  1434         -
  1435         -uname -m = `(uname -m) 2>/dev/null || echo unknown`
  1436         -uname -r = `(uname -r) 2>/dev/null || echo unknown`
  1437         -uname -s = `(uname -s) 2>/dev/null || echo unknown`
  1438         -uname -v = `(uname -v) 2>/dev/null || echo unknown`
  1439         -
  1440         -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
  1441         -/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
  1442         -
  1443         -hostinfo               = `(hostinfo) 2>/dev/null`
  1444         -/bin/universe          = `(/bin/universe) 2>/dev/null`
  1445         -/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
  1446         -/bin/arch              = `(/bin/arch) 2>/dev/null`
  1447         -/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
  1448         -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
  1449         -
  1450         -UNAME_MACHINE = ${UNAME_MACHINE}
  1451         -UNAME_RELEASE = ${UNAME_RELEASE}
  1452         -UNAME_SYSTEM  = ${UNAME_SYSTEM}
  1453         -UNAME_VERSION = ${UNAME_VERSION}
  1454         -EOF
  1455         -
  1456         -exit 1
  1457         -
  1458         -# Local variables:
  1459         -# eval: (add-hook 'write-file-hooks 'time-stamp)
  1460         -# time-stamp-start: "timestamp='"
  1461         -# time-stamp-format: "%:y-%02m-%02d"
  1462         -# time-stamp-end: "'"
  1463         -# End:

Deleted kitdll/buildsrc/kitdll-0.0/config.sub version [1f0ad14050].

     1         -#! /bin/sh
     2         -# Configuration validation subroutine script.
     3         -#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
     4         -#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
     5         -
     6         -timestamp='2005-07-08'
     7         -
     8         -# This file is (in principle) common to ALL GNU software.
     9         -# The presence of a machine in this file suggests that SOME GNU software
    10         -# can handle that machine.  It does not imply ALL GNU software can.
    11         -#
    12         -# This file is free software; you can redistribute it and/or modify
    13         -# it under the terms of the GNU General Public License as published by
    14         -# the Free Software Foundation; either version 2 of the License, or
    15         -# (at your option) any later version.
    16         -#
    17         -# This program is distributed in the hope that it will be useful,
    18         -# but WITHOUT ANY WARRANTY; without even the implied warranty of
    19         -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    20         -# GNU General Public License for more details.
    21         -#
    22         -# You should have received a copy of the GNU General Public License
    23         -# along with this program; if not, write to the Free Software
    24         -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
    25         -# 02110-1301, USA.
    26         -#
    27         -# As a special exception to the GNU General Public License, if you
    28         -# distribute this file as part of a program that contains a
    29         -# configuration script generated by Autoconf, you may include it under
    30         -# the same distribution terms that you use for the rest of that program.
    31         -
    32         -
    33         -# Please send patches to <config-patches@gnu.org>.  Submit a context
    34         -# diff and a properly formatted ChangeLog entry.
    35         -#
    36         -# Configuration subroutine to validate and canonicalize a configuration type.
    37         -# Supply the specified configuration type as an argument.
    38         -# If it is invalid, we print an error message on stderr and exit with code 1.
    39         -# Otherwise, we print the canonical config type on stdout and succeed.
    40         -
    41         -# This file is supposed to be the same for all GNU packages
    42         -# and recognize all the CPU types, system types and aliases
    43         -# that are meaningful with *any* GNU software.
    44         -# Each package is responsible for reporting which valid configurations
    45         -# it does not support.  The user should be able to distinguish
    46         -# a failure to support a valid configuration from a meaningless
    47         -# configuration.
    48         -
    49         -# The goal of this file is to map all the various variations of a given
    50         -# machine specification into a single specification in the form:
    51         -#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
    52         -# or in some cases, the newer four-part form:
    53         -#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
    54         -# It is wrong to echo any other type of specification.
    55         -
    56         -me=`echo "$0" | sed -e 's,.*/,,'`
    57         -
    58         -usage="\
    59         -Usage: $0 [OPTION] CPU-MFR-OPSYS
    60         -       $0 [OPTION] ALIAS
    61         -
    62         -Canonicalize a configuration name.
    63         -
    64         -Operation modes:
    65         -  -h, --help         print this help, then exit
    66         -  -t, --time-stamp   print date of last modification, then exit
    67         -  -v, --version      print version number, then exit
    68         -
    69         -Report bugs and patches to <config-patches@gnu.org>."
    70         -
    71         -version="\
    72         -GNU config.sub ($timestamp)
    73         -
    74         -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
    75         -Free Software Foundation, Inc.
    76         -
    77         -This is free software; see the source for copying conditions.  There is NO
    78         -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
    79         -
    80         -help="
    81         -Try \`$me --help' for more information."
    82         -
    83         -# Parse command line
    84         -while test $# -gt 0 ; do
    85         -  case $1 in
    86         -    --time-stamp | --time* | -t )
    87         -       echo "$timestamp" ; exit ;;
    88         -    --version | -v )
    89         -       echo "$version" ; exit ;;
    90         -    --help | --h* | -h )
    91         -       echo "$usage"; exit ;;
    92         -    -- )     # Stop option processing
    93         -       shift; break ;;
    94         -    - )	# Use stdin as input.
    95         -       break ;;
    96         -    -* )
    97         -       echo "$me: invalid option $1$help"
    98         -       exit 1 ;;
    99         -
   100         -    *local*)
   101         -       # First pass through any local machine types.
   102         -       echo $1
   103         -       exit ;;
   104         -
   105         -    * )
   106         -       break ;;
   107         -  esac
   108         -done
   109         -
   110         -case $# in
   111         - 0) echo "$me: missing argument$help" >&2
   112         -    exit 1;;
   113         - 1) ;;
   114         - *) echo "$me: too many arguments$help" >&2
   115         -    exit 1;;
   116         -esac
   117         -
   118         -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
   119         -# Here we must recognize all the valid KERNEL-OS combinations.
   120         -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
   121         -case $maybe_os in
   122         -  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
   123         -  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
   124         -    os=-$maybe_os
   125         -    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
   126         -    ;;
   127         -  *)
   128         -    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
   129         -    if [ $basic_machine != $1 ]
   130         -    then os=`echo $1 | sed 's/.*-/-/'`
   131         -    else os=; fi
   132         -    ;;
   133         -esac
   134         -
   135         -### Let's recognize common machines as not being operating systems so
   136         -### that things like config.sub decstation-3100 work.  We also
   137         -### recognize some manufacturers as not being operating systems, so we
   138         -### can provide default operating systems below.
   139         -case $os in
   140         -	-sun*os*)
   141         -		# Prevent following clause from handling this invalid input.
   142         -		;;
   143         -	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
   144         -	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
   145         -	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
   146         -	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
   147         -	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
   148         -	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
   149         -	-apple | -axis | -knuth | -cray)
   150         -		os=
   151         -		basic_machine=$1
   152         -		;;
   153         -	-sim | -cisco | -oki | -wec | -winbond)
   154         -		os=
   155         -		basic_machine=$1
   156         -		;;
   157         -	-scout)
   158         -		;;
   159         -	-wrs)
   160         -		os=-vxworks
   161         -		basic_machine=$1
   162         -		;;
   163         -	-chorusos*)
   164         -		os=-chorusos
   165         -		basic_machine=$1
   166         -		;;
   167         - 	-chorusrdb)
   168         - 		os=-chorusrdb
   169         -		basic_machine=$1
   170         - 		;;
   171         -	-hiux*)
   172         -		os=-hiuxwe2
   173         -		;;
   174         -	-sco5)
   175         -		os=-sco3.2v5
   176         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   177         -		;;
   178         -	-sco4)
   179         -		os=-sco3.2v4
   180         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   181         -		;;
   182         -	-sco3.2.[4-9]*)
   183         -		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
   184         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   185         -		;;
   186         -	-sco3.2v[4-9]*)
   187         -		# Don't forget version if it is 3.2v4 or newer.
   188         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   189         -		;;
   190         -	-sco*)
   191         -		os=-sco3.2v2
   192         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   193         -		;;
   194         -	-udk*)
   195         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   196         -		;;
   197         -	-isc)
   198         -		os=-isc2.2
   199         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   200         -		;;
   201         -	-clix*)
   202         -		basic_machine=clipper-intergraph
   203         -		;;
   204         -	-isc*)
   205         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
   206         -		;;
   207         -	-lynx*)
   208         -		os=-lynxos
   209         -		;;
   210         -	-ptx*)
   211         -		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
   212         -		;;
   213         -	-windowsnt*)
   214         -		os=`echo $os | sed -e 's/windowsnt/winnt/'`
   215         -		;;
   216         -	-psos*)
   217         -		os=-psos
   218         -		;;
   219         -	-mint | -mint[0-9]*)
   220         -		basic_machine=m68k-atari
   221         -		os=-mint
   222         -		;;
   223         -esac
   224         -
   225         -# Decode aliases for certain CPU-COMPANY combinations.
   226         -case $basic_machine in
   227         -	# Recognize the basic CPU types without company name.
   228         -	# Some are omitted here because they have special meanings below.
   229         -	1750a | 580 \
   230         -	| a29k \
   231         -	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
   232         -	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
   233         -	| am33_2.0 \
   234         -	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
   235         -	| bfin \
   236         -	| c4x | clipper \
   237         -	| d10v | d30v | dlx | dsp16xx \
   238         -	| fr30 | frv \
   239         -	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
   240         -	| i370 | i860 | i960 | ia64 \
   241         -	| ip2k | iq2000 \
   242         -	| m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
   243         -	| mips | mipsbe | mipseb | mipsel | mipsle \
   244         -	| mips16 \
   245         -	| mips64 | mips64el \
   246         -	| mips64vr | mips64vrel \
   247         -	| mips64orion | mips64orionel \
   248         -	| mips64vr4100 | mips64vr4100el \
   249         -	| mips64vr4300 | mips64vr4300el \
   250         -	| mips64vr5000 | mips64vr5000el \
   251         -	| mips64vr5900 | mips64vr5900el \
   252         -	| mipsisa32 | mipsisa32el \
   253         -	| mipsisa32r2 | mipsisa32r2el \
   254         -	| mipsisa64 | mipsisa64el \
   255         -	| mipsisa64r2 | mipsisa64r2el \
   256         -	| mipsisa64sb1 | mipsisa64sb1el \
   257         -	| mipsisa64sr71k | mipsisa64sr71kel \
   258         -	| mipstx39 | mipstx39el \
   259         -	| mn10200 | mn10300 \
   260         -	| ms1 \
   261         -	| msp430 \
   262         -	| ns16k | ns32k \
   263         -	| or32 \
   264         -	| pdp10 | pdp11 | pj | pjl \
   265         -	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
   266         -	| pyramid \
   267         -	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
   268         -	| sh64 | sh64le \
   269         -	| sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
   270         -	| sparcv8 | sparcv9 | sparcv9b \
   271         -	| strongarm \
   272         -	| tahoe | thumb | tic4x | tic80 | tron \
   273         -	| v850 | v850e \
   274         -	| we32k \
   275         -	| x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
   276         -	| z8k)
   277         -		basic_machine=$basic_machine-unknown
   278         -		;;
   279         -	m32c)
   280         -		basic_machine=$basic_machine-unknown
   281         -		;;
   282         -	m6811 | m68hc11 | m6812 | m68hc12)
   283         -		# Motorola 68HC11/12.
   284         -		basic_machine=$basic_machine-unknown
   285         -		os=-none
   286         -		;;
   287         -	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
   288         -		;;
   289         -
   290         -	# We use `pc' rather than `unknown'
   291         -	# because (1) that's what they normally are, and
   292         -	# (2) the word "unknown" tends to confuse beginning users.
   293         -	i*86 | x86_64)
   294         -	  basic_machine=$basic_machine-pc
   295         -	  ;;
   296         -	# Object if more than one company name word.
   297         -	*-*-*)
   298         -		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
   299         -		exit 1
   300         -		;;
   301         -	# Recognize the basic CPU types with company name.
   302         -	580-* \
   303         -	| a29k-* \
   304         -	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
   305         -	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
   306         -	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
   307         -	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
   308         -	| avr-* \
   309         -	| bfin-* | bs2000-* \
   310         -	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
   311         -	| clipper-* | craynv-* | cydra-* \
   312         -	| d10v-* | d30v-* | dlx-* \
   313         -	| elxsi-* \
   314         -	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
   315         -	| h8300-* | h8500-* \
   316         -	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
   317         -	| i*86-* | i860-* | i960-* | ia64-* \
   318         -	| ip2k-* | iq2000-* \
   319         -	| m32r-* | m32rle-* \
   320         -	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
   321         -	| m88110-* | m88k-* | maxq-* | mcore-* \
   322         -	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
   323         -	| mips16-* \
   324         -	| mips64-* | mips64el-* \
   325         -	| mips64vr-* | mips64vrel-* \
   326         -	| mips64orion-* | mips64orionel-* \
   327         -	| mips64vr4100-* | mips64vr4100el-* \
   328         -	| mips64vr4300-* | mips64vr4300el-* \
   329         -	| mips64vr5000-* | mips64vr5000el-* \
   330         -	| mips64vr5900-* | mips64vr5900el-* \
   331         -	| mipsisa32-* | mipsisa32el-* \
   332         -	| mipsisa32r2-* | mipsisa32r2el-* \
   333         -	| mipsisa64-* | mipsisa64el-* \
   334         -	| mipsisa64r2-* | mipsisa64r2el-* \
   335         -	| mipsisa64sb1-* | mipsisa64sb1el-* \
   336         -	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
   337         -	| mipstx39-* | mipstx39el-* \
   338         -	| mmix-* \
   339         -	| ms1-* \
   340         -	| msp430-* \
   341         -	| none-* | np1-* | ns16k-* | ns32k-* \
   342         -	| orion-* \
   343         -	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
   344         -	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
   345         -	| pyramid-* \
   346         -	| romp-* | rs6000-* \
   347         -	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
   348         -	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
   349         -	| sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
   350         -	| sparclite-* \
   351         -	| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
   352         -	| tahoe-* | thumb-* \
   353         -	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
   354         -	| tron-* \
   355         -	| v850-* | v850e-* | vax-* \
   356         -	| we32k-* \
   357         -	| x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
   358         -	| xstormy16-* | xtensa-* \
   359         -	| ymp-* \
   360         -	| z8k-*)
   361         -		;;
   362         -	m32c-*)
   363         -		;;
   364         -	# Recognize the various machine names and aliases which stand
   365         -	# for a CPU type and a company and sometimes even an OS.
   366         -	386bsd)
   367         -		basic_machine=i386-unknown
   368         -		os=-bsd
   369         -		;;
   370         -	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
   371         -		basic_machine=m68000-att
   372         -		;;
   373         -	3b*)
   374         -		basic_machine=we32k-att
   375         -		;;
   376         -	a29khif)
   377         -		basic_machine=a29k-amd
   378         -		os=-udi
   379         -		;;
   380         -    	abacus)
   381         -		basic_machine=abacus-unknown
   382         -		;;
   383         -	adobe68k)
   384         -		basic_machine=m68010-adobe
   385         -		os=-scout
   386         -		;;
   387         -	alliant | fx80)
   388         -		basic_machine=fx80-alliant
   389         -		;;
   390         -	altos | altos3068)
   391         -		basic_machine=m68k-altos
   392         -		;;
   393         -	am29k)
   394         -		basic_machine=a29k-none
   395         -		os=-bsd
   396         -		;;
   397         -	amd64)
   398         -		basic_machine=x86_64-pc
   399         -		;;
   400         -	amd64-*)
   401         -		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
   402         -		;;
   403         -	amdahl)
   404         -		basic_machine=580-amdahl
   405         -		os=-sysv
   406         -		;;
   407         -	amiga | amiga-*)
   408         -		basic_machine=m68k-unknown
   409         -		;;
   410         -	amigaos | amigados)
   411         -		basic_machine=m68k-unknown
   412         -		os=-amigaos
   413         -		;;
   414         -	amigaunix | amix)
   415         -		basic_machine=m68k-unknown
   416         -		os=-sysv4
   417         -		;;
   418         -	apollo68)
   419         -		basic_machine=m68k-apollo
   420         -		os=-sysv
   421         -		;;
   422         -	apollo68bsd)
   423         -		basic_machine=m68k-apollo
   424         -		os=-bsd
   425         -		;;
   426         -	aux)
   427         -		basic_machine=m68k-apple
   428         -		os=-aux
   429         -		;;
   430         -	balance)
   431         -		basic_machine=ns32k-sequent
   432         -		os=-dynix
   433         -		;;
   434         -	c90)
   435         -		basic_machine=c90-cray
   436         -		os=-unicos
   437         -		;;
   438         -	convex-c1)
   439         -		basic_machine=c1-convex
   440         -		os=-bsd
   441         -		;;
   442         -	convex-c2)
   443         -		basic_machine=c2-convex
   444         -		os=-bsd
   445         -		;;
   446         -	convex-c32)
   447         -		basic_machine=c32-convex
   448         -		os=-bsd
   449         -		;;
   450         -	convex-c34)
   451         -		basic_machine=c34-convex
   452         -		os=-bsd
   453         -		;;
   454         -	convex-c38)
   455         -		basic_machine=c38-convex
   456         -		os=-bsd
   457         -		;;
   458         -	cray | j90)
   459         -		basic_machine=j90-cray
   460         -		os=-unicos
   461         -		;;
   462         -	craynv)
   463         -		basic_machine=craynv-cray
   464         -		os=-unicosmp
   465         -		;;
   466         -	cr16c)
   467         -		basic_machine=cr16c-unknown
   468         -		os=-elf
   469         -		;;
   470         -	crds | unos)
   471         -		basic_machine=m68k-crds
   472         -		;;
   473         -	crisv32 | crisv32-* | etraxfs*)
   474         -		basic_machine=crisv32-axis
   475         -		;;
   476         -	cris | cris-* | etrax*)
   477         -		basic_machine=cris-axis
   478         -		;;
   479         -	crx)
   480         -		basic_machine=crx-unknown
   481         -		os=-elf
   482         -		;;
   483         -	da30 | da30-*)
   484         -		basic_machine=m68k-da30
   485         -		;;
   486         -	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
   487         -		basic_machine=mips-dec
   488         -		;;
   489         -	decsystem10* | dec10*)
   490         -		basic_machine=pdp10-dec
   491         -		os=-tops10
   492         -		;;
   493         -	decsystem20* | dec20*)
   494         -		basic_machine=pdp10-dec
   495         -		os=-tops20
   496         -		;;
   497         -	delta | 3300 | motorola-3300 | motorola-delta \
   498         -	      | 3300-motorola | delta-motorola)
   499         -		basic_machine=m68k-motorola
   500         -		;;
   501         -	delta88)
   502         -		basic_machine=m88k-motorola
   503         -		os=-sysv3
   504         -		;;
   505         -	djgpp)
   506         -		basic_machine=i586-pc
   507         -		os=-msdosdjgpp
   508         -		;;
   509         -	dpx20 | dpx20-*)
   510         -		basic_machine=rs6000-bull
   511         -		os=-bosx
   512         -		;;
   513         -	dpx2* | dpx2*-bull)
   514         -		basic_machine=m68k-bull
   515         -		os=-sysv3
   516         -		;;
   517         -	ebmon29k)
   518         -		basic_machine=a29k-amd
   519         -		os=-ebmon
   520         -		;;
   521         -	elxsi)
   522         -		basic_machine=elxsi-elxsi
   523         -		os=-bsd
   524         -		;;
   525         -	encore | umax | mmax)
   526         -		basic_machine=ns32k-encore
   527         -		;;
   528         -	es1800 | OSE68k | ose68k | ose | OSE)
   529         -		basic_machine=m68k-ericsson
   530         -		os=-ose
   531         -		;;
   532         -	fx2800)
   533         -		basic_machine=i860-alliant
   534         -		;;
   535         -	genix)
   536         -		basic_machine=ns32k-ns
   537         -		;;
   538         -	gmicro)
   539         -		basic_machine=tron-gmicro
   540         -		os=-sysv
   541         -		;;
   542         -	go32)
   543         -		basic_machine=i386-pc
   544         -		os=-go32
   545         -		;;
   546         -	h3050r* | hiux*)
   547         -		basic_machine=hppa1.1-hitachi
   548         -		os=-hiuxwe2
   549         -		;;
   550         -	h8300hms)
   551         -		basic_machine=h8300-hitachi
   552         -		os=-hms
   553         -		;;
   554         -	h8300xray)
   555         -		basic_machine=h8300-hitachi
   556         -		os=-xray
   557         -		;;
   558         -	h8500hms)
   559         -		basic_machine=h8500-hitachi
   560         -		os=-hms
   561         -		;;
   562         -	harris)
   563         -		basic_machine=m88k-harris
   564         -		os=-sysv3
   565         -		;;
   566         -	hp300-*)
   567         -		basic_machine=m68k-hp
   568         -		;;
   569         -	hp300bsd)
   570         -		basic_machine=m68k-hp
   571         -		os=-bsd
   572         -		;;
   573         -	hp300hpux)
   574         -		basic_machine=m68k-hp
   575         -		os=-hpux
   576         -		;;
   577         -	hp3k9[0-9][0-9] | hp9[0-9][0-9])
   578         -		basic_machine=hppa1.0-hp
   579         -		;;
   580         -	hp9k2[0-9][0-9] | hp9k31[0-9])
   581         -		basic_machine=m68000-hp
   582         -		;;
   583         -	hp9k3[2-9][0-9])
   584         -		basic_machine=m68k-hp
   585         -		;;
   586         -	hp9k6[0-9][0-9] | hp6[0-9][0-9])
   587         -		basic_machine=hppa1.0-hp
   588         -		;;
   589         -	hp9k7[0-79][0-9] | hp7[0-79][0-9])
   590         -		basic_machine=hppa1.1-hp
   591         -		;;
   592         -	hp9k78[0-9] | hp78[0-9])
   593         -		# FIXME: really hppa2.0-hp
   594         -		basic_machine=hppa1.1-hp
   595         -		;;
   596         -	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
   597         -		# FIXME: really hppa2.0-hp
   598         -		basic_machine=hppa1.1-hp
   599         -		;;
   600         -	hp9k8[0-9][13679] | hp8[0-9][13679])
   601         -		basic_machine=hppa1.1-hp
   602         -		;;
   603         -	hp9k8[0-9][0-9] | hp8[0-9][0-9])
   604         -		basic_machine=hppa1.0-hp
   605         -		;;
   606         -	hppa-next)
   607         -		os=-nextstep3
   608         -		;;
   609         -	hppaosf)
   610         -		basic_machine=hppa1.1-hp
   611         -		os=-osf
   612         -		;;
   613         -	hppro)
   614         -		basic_machine=hppa1.1-hp
   615         -		os=-proelf
   616         -		;;
   617         -	i370-ibm* | ibm*)
   618         -		basic_machine=i370-ibm
   619         -		;;
   620         -# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
   621         -	i*86v32)
   622         -		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
   623         -		os=-sysv32
   624         -		;;
   625         -	i*86v4*)
   626         -		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
   627         -		os=-sysv4
   628         -		;;
   629         -	i*86v)
   630         -		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
   631         -		os=-sysv
   632         -		;;
   633         -	i*86sol2)
   634         -		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
   635         -		os=-solaris2
   636         -		;;
   637         -	i386mach)
   638         -		basic_machine=i386-mach
   639         -		os=-mach
   640         -		;;
   641         -	i386-vsta | vsta)
   642         -		basic_machine=i386-unknown
   643         -		os=-vsta
   644         -		;;
   645         -	iris | iris4d)
   646         -		basic_machine=mips-sgi
   647         -		case $os in
   648         -		    -irix*)
   649         -			;;
   650         -		    *)
   651         -			os=-irix4
   652         -			;;
   653         -		esac
   654         -		;;
   655         -	isi68 | isi)
   656         -		basic_machine=m68k-isi
   657         -		os=-sysv
   658         -		;;
   659         -	m88k-omron*)
   660         -		basic_machine=m88k-omron
   661         -		;;
   662         -	magnum | m3230)
   663         -		basic_machine=mips-mips
   664         -		os=-sysv
   665         -		;;
   666         -	merlin)
   667         -		basic_machine=ns32k-utek
   668         -		os=-sysv
   669         -		;;
   670         -	mingw32)
   671         -		basic_machine=i386-pc
   672         -		os=-mingw32
   673         -		;;
   674         -	miniframe)
   675         -		basic_machine=m68000-convergent
   676         -		;;
   677         -	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
   678         -		basic_machine=m68k-atari
   679         -		os=-mint
   680         -		;;
   681         -	mips3*-*)
   682         -		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
   683         -		;;
   684         -	mips3*)
   685         -		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
   686         -		;;
   687         -	monitor)
   688         -		basic_machine=m68k-rom68k
   689         -		os=-coff
   690         -		;;
   691         -	morphos)
   692         -		basic_machine=powerpc-unknown
   693         -		os=-morphos
   694         -		;;
   695         -	msdos)
   696         -		basic_machine=i386-pc
   697         -		os=-msdos
   698         -		;;
   699         -	mvs)
   700         -		basic_machine=i370-ibm
   701         -		os=-mvs
   702         -		;;
   703         -	ncr3000)
   704         -		basic_machine=i486-ncr
   705         -		os=-sysv4
   706         -		;;
   707         -	netbsd386)
   708         -		basic_machine=i386-unknown
   709         -		os=-netbsd
   710         -		;;
   711         -	netwinder)
   712         -		basic_machine=armv4l-rebel
   713         -		os=-linux
   714         -		;;
   715         -	news | news700 | news800 | news900)
   716         -		basic_machine=m68k-sony
   717         -		os=-newsos
   718         -		;;
   719         -	news1000)
   720         -		basic_machine=m68030-sony
   721         -		os=-newsos
   722         -		;;
   723         -	news-3600 | risc-news)
   724         -		basic_machine=mips-sony
   725         -		os=-newsos
   726         -		;;
   727         -	necv70)
   728         -		basic_machine=v70-nec
   729         -		os=-sysv
   730         -		;;
   731         -	next | m*-next )
   732         -		basic_machine=m68k-next
   733         -		case $os in
   734         -		    -nextstep* )
   735         -			;;
   736         -		    -ns2*)
   737         -		      os=-nextstep2
   738         -			;;
   739         -		    *)
   740         -		      os=-nextstep3
   741         -			;;
   742         -		esac
   743         -		;;
   744         -	nh3000)
   745         -		basic_machine=m68k-harris
   746         -		os=-cxux
   747         -		;;
   748         -	nh[45]000)
   749         -		basic_machine=m88k-harris
   750         -		os=-cxux
   751         -		;;
   752         -	nindy960)
   753         -		basic_machine=i960-intel
   754         -		os=-nindy
   755         -		;;
   756         -	mon960)
   757         -		basic_machine=i960-intel
   758         -		os=-mon960
   759         -		;;
   760         -	nonstopux)
   761         -		basic_machine=mips-compaq
   762         -		os=-nonstopux
   763         -		;;
   764         -	np1)
   765         -		basic_machine=np1-gould
   766         -		;;
   767         -	nsr-tandem)
   768         -		basic_machine=nsr-tandem
   769         -		;;
   770         -	op50n-* | op60c-*)
   771         -		basic_machine=hppa1.1-oki
   772         -		os=-proelf
   773         -		;;
   774         -	openrisc | openrisc-*)
   775         -		basic_machine=or32-unknown
   776         -		;;
   777         -	os400)
   778         -		basic_machine=powerpc-ibm
   779         -		os=-os400
   780         -		;;
   781         -	OSE68000 | ose68000)
   782         -		basic_machine=m68000-ericsson
   783         -		os=-ose
   784         -		;;
   785         -	os68k)
   786         -		basic_machine=m68k-none
   787         -		os=-os68k
   788         -		;;
   789         -	pa-hitachi)
   790         -		basic_machine=hppa1.1-hitachi
   791         -		os=-hiuxwe2
   792         -		;;
   793         -	paragon)
   794         -		basic_machine=i860-intel
   795         -		os=-osf
   796         -		;;
   797         -	pbd)
   798         -		basic_machine=sparc-tti
   799         -		;;
   800         -	pbb)
   801         -		basic_machine=m68k-tti
   802         -		;;
   803         -	pc532 | pc532-*)
   804         -		basic_machine=ns32k-pc532
   805         -		;;
   806         -	pentium | p5 | k5 | k6 | nexgen | viac3)
   807         -		basic_machine=i586-pc
   808         -		;;
   809         -	pentiumpro | p6 | 6x86 | athlon | athlon_*)
   810         -		basic_machine=i686-pc
   811         -		;;
   812         -	pentiumii | pentium2 | pentiumiii | pentium3)
   813         -		basic_machine=i686-pc
   814         -		;;
   815         -	pentium4)
   816         -		basic_machine=i786-pc
   817         -		;;
   818         -	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
   819         -		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
   820         -		;;
   821         -	pentiumpro-* | p6-* | 6x86-* | athlon-*)
   822         -		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
   823         -		;;
   824         -	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
   825         -		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
   826         -		;;
   827         -	pentium4-*)
   828         -		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
   829         -		;;
   830         -	pn)
   831         -		basic_machine=pn-gould
   832         -		;;
   833         -	power)	basic_machine=power-ibm
   834         -		;;
   835         -	ppc)	basic_machine=powerpc-unknown
   836         -		;;
   837         -	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
   838         -		;;
   839         -	ppcle | powerpclittle | ppc-le | powerpc-little)
   840         -		basic_machine=powerpcle-unknown
   841         -		;;
   842         -	ppcle-* | powerpclittle-*)
   843         -		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
   844         -		;;
   845         -	ppc64)	basic_machine=powerpc64-unknown
   846         -		;;
   847         -	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
   848         -		;;
   849         -	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
   850         -		basic_machine=powerpc64le-unknown
   851         -		;;
   852         -	ppc64le-* | powerpc64little-*)
   853         -		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
   854         -		;;
   855         -	ps2)
   856         -		basic_machine=i386-ibm
   857         -		;;
   858         -	pw32)
   859         -		basic_machine=i586-unknown
   860         -		os=-pw32
   861         -		;;
   862         -	rom68k)
   863         -		basic_machine=m68k-rom68k
   864         -		os=-coff
   865         -		;;
   866         -	rm[46]00)
   867         -		basic_machine=mips-siemens
   868         -		;;
   869         -	rtpc | rtpc-*)
   870         -		basic_machine=romp-ibm
   871         -		;;
   872         -	s390 | s390-*)
   873         -		basic_machine=s390-ibm
   874         -		;;
   875         -	s390x | s390x-*)
   876         -		basic_machine=s390x-ibm
   877         -		;;
   878         -	sa29200)
   879         -		basic_machine=a29k-amd
   880         -		os=-udi
   881         -		;;
   882         -	sb1)
   883         -		basic_machine=mipsisa64sb1-unknown
   884         -		;;
   885         -	sb1el)
   886         -		basic_machine=mipsisa64sb1el-unknown
   887         -		;;
   888         -	sei)
   889         -		basic_machine=mips-sei
   890         -		os=-seiux
   891         -		;;
   892         -	sequent)
   893         -		basic_machine=i386-sequent
   894         -		;;
   895         -	sh)
   896         -		basic_machine=sh-hitachi
   897         -		os=-hms
   898         -		;;
   899         -	sh64)
   900         -		basic_machine=sh64-unknown
   901         -		;;
   902         -	sparclite-wrs | simso-wrs)
   903         -		basic_machine=sparclite-wrs
   904         -		os=-vxworks
   905         -		;;
   906         -	sps7)
   907         -		basic_machine=m68k-bull
   908         -		os=-sysv2
   909         -		;;
   910         -	spur)
   911         -		basic_machine=spur-unknown
   912         -		;;
   913         -	st2000)
   914         -		basic_machine=m68k-tandem
   915         -		;;
   916         -	stratus)
   917         -		basic_machine=i860-stratus
   918         -		os=-sysv4
   919         -		;;
   920         -	sun2)
   921         -		basic_machine=m68000-sun
   922         -		;;
   923         -	sun2os3)
   924         -		basic_machine=m68000-sun
   925         -		os=-sunos3
   926         -		;;
   927         -	sun2os4)
   928         -		basic_machine=m68000-sun
   929         -		os=-sunos4
   930         -		;;
   931         -	sun3os3)
   932         -		basic_machine=m68k-sun
   933         -		os=-sunos3
   934         -		;;
   935         -	sun3os4)
   936         -		basic_machine=m68k-sun
   937         -		os=-sunos4
   938         -		;;
   939         -	sun4os3)
   940         -		basic_machine=sparc-sun
   941         -		os=-sunos3
   942         -		;;
   943         -	sun4os4)
   944         -		basic_machine=sparc-sun
   945         -		os=-sunos4
   946         -		;;
   947         -	sun4sol2)
   948         -		basic_machine=sparc-sun
   949         -		os=-solaris2
   950         -		;;
   951         -	sun3 | sun3-*)
   952         -		basic_machine=m68k-sun
   953         -		;;
   954         -	sun4)
   955         -		basic_machine=sparc-sun
   956         -		;;
   957         -	sun386 | sun386i | roadrunner)
   958         -		basic_machine=i386-sun
   959         -		;;
   960         -	sv1)
   961         -		basic_machine=sv1-cray
   962         -		os=-unicos
   963         -		;;
   964         -	symmetry)
   965         -		basic_machine=i386-sequent
   966         -		os=-dynix
   967         -		;;
   968         -	t3e)
   969         -		basic_machine=alphaev5-cray
   970         -		os=-unicos
   971         -		;;
   972         -	t90)
   973         -		basic_machine=t90-cray
   974         -		os=-unicos
   975         -		;;
   976         -	tic54x | c54x*)
   977         -		basic_machine=tic54x-unknown
   978         -		os=-coff
   979         -		;;
   980         -	tic55x | c55x*)
   981         -		basic_machine=tic55x-unknown
   982         -		os=-coff
   983         -		;;
   984         -	tic6x | c6x*)
   985         -		basic_machine=tic6x-unknown
   986         -		os=-coff
   987         -		;;
   988         -	tx39)
   989         -		basic_machine=mipstx39-unknown
   990         -		;;
   991         -	tx39el)
   992         -		basic_machine=mipstx39el-unknown
   993         -		;;
   994         -	toad1)
   995         -		basic_machine=pdp10-xkl
   996         -		os=-tops20
   997         -		;;
   998         -	tower | tower-32)
   999         -		basic_machine=m68k-ncr
  1000         -		;;
  1001         -	tpf)
  1002         -		basic_machine=s390x-ibm
  1003         -		os=-tpf
  1004         -		;;
  1005         -	udi29k)
  1006         -		basic_machine=a29k-amd
  1007         -		os=-udi
  1008         -		;;
  1009         -	ultra3)
  1010         -		basic_machine=a29k-nyu
  1011         -		os=-sym1
  1012         -		;;
  1013         -	v810 | necv810)
  1014         -		basic_machine=v810-nec
  1015         -		os=-none
  1016         -		;;
  1017         -	vaxv)
  1018         -		basic_machine=vax-dec
  1019         -		os=-sysv
  1020         -		;;
  1021         -	vms)
  1022         -		basic_machine=vax-dec
  1023         -		os=-vms
  1024         -		;;
  1025         -	vpp*|vx|vx-*)
  1026         -		basic_machine=f301-fujitsu
  1027         -		;;
  1028         -	vxworks960)
  1029         -		basic_machine=i960-wrs
  1030         -		os=-vxworks
  1031         -		;;
  1032         -	vxworks68)
  1033         -		basic_machine=m68k-wrs
  1034         -		os=-vxworks
  1035         -		;;
  1036         -	vxworks29k)
  1037         -		basic_machine=a29k-wrs
  1038         -		os=-vxworks
  1039         -		;;
  1040         -	w65*)
  1041         -		basic_machine=w65-wdc
  1042         -		os=-none
  1043         -		;;
  1044         -	w89k-*)
  1045         -		basic_machine=hppa1.1-winbond
  1046         -		os=-proelf
  1047         -		;;
  1048         -	xbox)
  1049         -		basic_machine=i686-pc
  1050         -		os=-mingw32
  1051         -		;;
  1052         -	xps | xps100)
  1053         -		basic_machine=xps100-honeywell
  1054         -		;;
  1055         -	ymp)
  1056         -		basic_machine=ymp-cray
  1057         -		os=-unicos
  1058         -		;;
  1059         -	z8k-*-coff)
  1060         -		basic_machine=z8k-unknown
  1061         -		os=-sim
  1062         -		;;
  1063         -	none)
  1064         -		basic_machine=none-none
  1065         -		os=-none
  1066         -		;;
  1067         -
  1068         -# Here we handle the default manufacturer of certain CPU types.  It is in
  1069         -# some cases the only manufacturer, in others, it is the most popular.
  1070         -	w89k)
  1071         -		basic_machine=hppa1.1-winbond
  1072         -		;;
  1073         -	op50n)
  1074         -		basic_machine=hppa1.1-oki
  1075         -		;;
  1076         -	op60c)
  1077         -		basic_machine=hppa1.1-oki
  1078         -		;;
  1079         -	romp)
  1080         -		basic_machine=romp-ibm
  1081         -		;;
  1082         -	mmix)
  1083         -		basic_machine=mmix-knuth
  1084         -		;;
  1085         -	rs6000)
  1086         -		basic_machine=rs6000-ibm
  1087         -		;;
  1088         -	vax)
  1089         -		basic_machine=vax-dec
  1090         -		;;
  1091         -	pdp10)
  1092         -		# there are many clones, so DEC is not a safe bet
  1093         -		basic_machine=pdp10-unknown
  1094         -		;;
  1095         -	pdp11)
  1096         -		basic_machine=pdp11-dec
  1097         -		;;
  1098         -	we32k)
  1099         -		basic_machine=we32k-att
  1100         -		;;
  1101         -	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
  1102         -		basic_machine=sh-unknown
  1103         -		;;
  1104         -	sparc | sparcv8 | sparcv9 | sparcv9b)
  1105         -		basic_machine=sparc-sun
  1106         -		;;
  1107         -	cydra)
  1108         -		basic_machine=cydra-cydrome
  1109         -		;;
  1110         -	orion)
  1111         -		basic_machine=orion-highlevel
  1112         -		;;
  1113         -	orion105)
  1114         -		basic_machine=clipper-highlevel
  1115         -		;;
  1116         -	mac | mpw | mac-mpw)
  1117         -		basic_machine=m68k-apple
  1118         -		;;
  1119         -	pmac | pmac-mpw)
  1120         -		basic_machine=powerpc-apple
  1121         -		;;
  1122         -	*-unknown)
  1123         -		# Make sure to match an already-canonicalized machine name.
  1124         -		;;
  1125         -	*)
  1126         -		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  1127         -		exit 1
  1128         -		;;
  1129         -esac
  1130         -
  1131         -# Here we canonicalize certain aliases for manufacturers.
  1132         -case $basic_machine in
  1133         -	*-digital*)
  1134         -		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
  1135         -		;;
  1136         -	*-commodore*)
  1137         -		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
  1138         -		;;
  1139         -	*)
  1140         -		;;
  1141         -esac
  1142         -
  1143         -# Decode manufacturer-specific aliases for certain operating systems.
  1144         -
  1145         -if [ x"$os" != x"" ]
  1146         -then
  1147         -case $os in
  1148         -        # First match some system type aliases
  1149         -        # that might get confused with valid system types.
  1150         -	# -solaris* is a basic system type, with this one exception.
  1151         -	-solaris1 | -solaris1.*)
  1152         -		os=`echo $os | sed -e 's|solaris1|sunos4|'`
  1153         -		;;
  1154         -	-solaris)
  1155         -		os=-solaris2
  1156         -		;;
  1157         -	-svr4*)
  1158         -		os=-sysv4
  1159         -		;;
  1160         -	-unixware*)
  1161         -		os=-sysv4.2uw
  1162         -		;;
  1163         -	-gnu/linux*)
  1164         -		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
  1165         -		;;
  1166         -	# First accept the basic system types.
  1167         -	# The portable systems comes first.
  1168         -	# Each alternative MUST END IN A *, to match a version number.
  1169         -	# -sysv* is not here because it comes later, after sysvr4.
  1170         -	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
  1171         -	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
  1172         -	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
  1173         -	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
  1174         -	      | -aos* \
  1175         -	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
  1176         -	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
  1177         -	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
  1178         -	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
  1179         -	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
  1180         -	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
  1181         -	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
  1182         -	      | -chorusos* | -chorusrdb* \
  1183         -	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
  1184         -	      | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
  1185         -	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
  1186         -	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
  1187         -	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
  1188         -	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
  1189         -	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
  1190         -	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
  1191         -	      | -skyos* | -haiku*)
  1192         -	# Remember, each alternative MUST END IN *, to match a version number.
  1193         -		;;
  1194         -	-qnx*)
  1195         -		case $basic_machine in
  1196         -		    x86-* | i*86-*)
  1197         -			;;
  1198         -		    *)
  1199         -			os=-nto$os
  1200         -			;;
  1201         -		esac
  1202         -		;;
  1203         -	-nto-qnx*)
  1204         -		;;
  1205         -	-nto*)
  1206         -		os=`echo $os | sed -e 's|nto|nto-qnx|'`
  1207         -		;;
  1208         -	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
  1209         -	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
  1210         -	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
  1211         -		;;
  1212         -	-mac*)
  1213         -		os=`echo $os | sed -e 's|mac|macos|'`
  1214         -		;;
  1215         -	-linux-dietlibc)
  1216         -		os=-linux-dietlibc
  1217         -		;;
  1218         -	-linux*)
  1219         -		os=`echo $os | sed -e 's|linux|linux-gnu|'`
  1220         -		;;
  1221         -	-sunos5*)
  1222         -		os=`echo $os | sed -e 's|sunos5|solaris2|'`
  1223         -		;;
  1224         -	-sunos6*)
  1225         -		os=`echo $os | sed -e 's|sunos6|solaris3|'`
  1226         -		;;
  1227         -	-opened*)
  1228         -		os=-openedition
  1229         -		;;
  1230         -        -os400*)
  1231         -		os=-os400
  1232         -		;;
  1233         -	-wince*)
  1234         -		os=-wince
  1235         -		;;
  1236         -	-osfrose*)
  1237         -		os=-osfrose
  1238         -		;;
  1239         -	-osf*)
  1240         -		os=-osf
  1241         -		;;
  1242         -	-utek*)
  1243         -		os=-bsd
  1244         -		;;
  1245         -	-dynix*)
  1246         -		os=-bsd
  1247         -		;;
  1248         -	-acis*)
  1249         -		os=-aos
  1250         -		;;
  1251         -	-atheos*)
  1252         -		os=-atheos
  1253         -		;;
  1254         -	-syllable*)
  1255         -		os=-syllable
  1256         -		;;
  1257         -	-386bsd)
  1258         -		os=-bsd
  1259         -		;;
  1260         -	-ctix* | -uts*)
  1261         -		os=-sysv
  1262         -		;;
  1263         -	-nova*)
  1264         -		os=-rtmk-nova
  1265         -		;;
  1266         -	-ns2 )
  1267         -		os=-nextstep2
  1268         -		;;
  1269         -	-nsk*)
  1270         -		os=-nsk
  1271         -		;;
  1272         -	# Preserve the version number of sinix5.
  1273         -	-sinix5.*)
  1274         -		os=`echo $os | sed -e 's|sinix|sysv|'`
  1275         -		;;
  1276         -	-sinix*)
  1277         -		os=-sysv4
  1278         -		;;
  1279         -        -tpf*)
  1280         -		os=-tpf
  1281         -		;;
  1282         -	-triton*)
  1283         -		os=-sysv3
  1284         -		;;
  1285         -	-oss*)
  1286         -		os=-sysv3
  1287         -		;;
  1288         -	-svr4)
  1289         -		os=-sysv4
  1290         -		;;
  1291         -	-svr3)
  1292         -		os=-sysv3
  1293         -		;;
  1294         -	-sysvr4)
  1295         -		os=-sysv4
  1296         -		;;
  1297         -	# This must come after -sysvr4.
  1298         -	-sysv*)
  1299         -		;;
  1300         -	-ose*)
  1301         -		os=-ose
  1302         -		;;
  1303         -	-es1800*)
  1304         -		os=-ose
  1305         -		;;
  1306         -	-xenix)
  1307         -		os=-xenix
  1308         -		;;
  1309         -	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
  1310         -		os=-mint
  1311         -		;;
  1312         -	-aros*)
  1313         -		os=-aros
  1314         -		;;
  1315         -	-kaos*)
  1316         -		os=-kaos
  1317         -		;;
  1318         -	-zvmoe)
  1319         -		os=-zvmoe
  1320         -		;;
  1321         -	-none)
  1322         -		;;
  1323         -	*)
  1324         -		# Get rid of the `-' at the beginning of $os.
  1325         -		os=`echo $os | sed 's/[^-]*-//'`
  1326         -		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
  1327         -		exit 1
  1328         -		;;
  1329         -esac
  1330         -else
  1331         -
  1332         -# Here we handle the default operating systems that come with various machines.
  1333         -# The value should be what the vendor currently ships out the door with their
  1334         -# machine or put another way, the most popular os provided with the machine.
  1335         -
  1336         -# Note that if you're going to try to match "-MANUFACTURER" here (say,
  1337         -# "-sun"), then you have to tell the case statement up towards the top
  1338         -# that MANUFACTURER isn't an operating system.  Otherwise, code above
  1339         -# will signal an error saying that MANUFACTURER isn't an operating
  1340         -# system, and we'll never get to this point.
  1341         -
  1342         -case $basic_machine in
  1343         -	*-acorn)
  1344         -		os=-riscix1.2
  1345         -		;;
  1346         -	arm*-rebel)
  1347         -		os=-linux
  1348         -		;;
  1349         -	arm*-semi)
  1350         -		os=-aout
  1351         -		;;
  1352         -    c4x-* | tic4x-*)
  1353         -        os=-coff
  1354         -        ;;
  1355         -	# This must come before the *-dec entry.
  1356         -	pdp10-*)
  1357         -		os=-tops20
  1358         -		;;
  1359         -	pdp11-*)
  1360         -		os=-none
  1361         -		;;
  1362         -	*-dec | vax-*)
  1363         -		os=-ultrix4.2
  1364         -		;;
  1365         -	m68*-apollo)
  1366         -		os=-domain
  1367         -		;;
  1368         -	i386-sun)
  1369         -		os=-sunos4.0.2
  1370         -		;;
  1371         -	m68000-sun)
  1372         -		os=-sunos3
  1373         -		# This also exists in the configure program, but was not the
  1374         -		# default.
  1375         -		# os=-sunos4
  1376         -		;;
  1377         -	m68*-cisco)
  1378         -		os=-aout
  1379         -		;;
  1380         -	mips*-cisco)
  1381         -		os=-elf
  1382         -		;;
  1383         -	mips*-*)
  1384         -		os=-elf
  1385         -		;;
  1386         -	or32-*)
  1387         -		os=-coff
  1388         -		;;
  1389         -	*-tti)	# must be before sparc entry or we get the wrong os.
  1390         -		os=-sysv3
  1391         -		;;
  1392         -	sparc-* | *-sun)
  1393         -		os=-sunos4.1.1
  1394         -		;;
  1395         -	*-be)
  1396         -		os=-beos
  1397         -		;;
  1398         -	*-haiku)
  1399         -		os=-haiku
  1400         -		;;
  1401         -	*-ibm)
  1402         -		os=-aix
  1403         -		;;
  1404         -    	*-knuth)
  1405         -		os=-mmixware
  1406         -		;;
  1407         -	*-wec)
  1408         -		os=-proelf
  1409         -		;;
  1410         -	*-winbond)
  1411         -		os=-proelf
  1412         -		;;
  1413         -	*-oki)
  1414         -		os=-proelf
  1415         -		;;
  1416         -	*-hp)
  1417         -		os=-hpux
  1418         -		;;
  1419         -	*-hitachi)
  1420         -		os=-hiux
  1421         -		;;
  1422         -	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
  1423         -		os=-sysv
  1424         -		;;
  1425         -	*-cbm)
  1426         -		os=-amigaos
  1427         -		;;
  1428         -	*-dg)
  1429         -		os=-dgux
  1430         -		;;
  1431         -	*-dolphin)
  1432         -		os=-sysv3
  1433         -		;;
  1434         -	m68k-ccur)
  1435         -		os=-rtu
  1436         -		;;
  1437         -	m88k-omron*)
  1438         -		os=-luna
  1439         -		;;
  1440         -	*-next )
  1441         -		os=-nextstep
  1442         -		;;
  1443         -	*-sequent)
  1444         -		os=-ptx
  1445         -		;;
  1446         -	*-crds)
  1447         -		os=-unos
  1448         -		;;
  1449         -	*-ns)
  1450         -		os=-genix
  1451         -		;;
  1452         -	i370-*)
  1453         -		os=-mvs
  1454         -		;;
  1455         -	*-next)
  1456         -		os=-nextstep3
  1457         -		;;
  1458         -	*-gould)
  1459         -		os=-sysv
  1460         -		;;
  1461         -	*-highlevel)
  1462         -		os=-bsd
  1463         -		;;
  1464         -	*-encore)
  1465         -		os=-bsd
  1466         -		;;
  1467         -	*-sgi)
  1468         -		os=-irix
  1469         -		;;
  1470         -	*-siemens)
  1471         -		os=-sysv4
  1472         -		;;
  1473         -	*-masscomp)
  1474         -		os=-rtu
  1475         -		;;
  1476         -	f30[01]-fujitsu | f700-fujitsu)
  1477         -		os=-uxpv
  1478         -		;;
  1479         -	*-rom68k)
  1480         -		os=-coff
  1481         -		;;
  1482         -	*-*bug)
  1483         -		os=-coff
  1484         -		;;
  1485         -	*-apple)
  1486         -		os=-macos
  1487         -		;;
  1488         -	*-atari*)
  1489         -		os=-mint
  1490         -		;;
  1491         -	*)
  1492         -		os=-none
  1493         -		;;
  1494         -esac
  1495         -fi
  1496         -
  1497         -# Here we handle the case where we know the os, and the CPU type, but not the
  1498         -# manufacturer.  We pick the logical manufacturer.
  1499         -vendor=unknown
  1500         -case $basic_machine in
  1501         -	*-unknown)
  1502         -		case $os in
  1503         -			-riscix*)
  1504         -				vendor=acorn
  1505         -				;;
  1506         -			-sunos*)
  1507         -				vendor=sun
  1508         -				;;
  1509         -			-aix*)
  1510         -				vendor=ibm
  1511         -				;;
  1512         -			-beos*)
  1513         -				vendor=be
  1514         -				;;
  1515         -			-hpux*)
  1516         -				vendor=hp
  1517         -				;;
  1518         -			-mpeix*)
  1519         -				vendor=hp
  1520         -				;;
  1521         -			-hiux*)
  1522         -				vendor=hitachi
  1523         -				;;
  1524         -			-unos*)
  1525         -				vendor=crds
  1526         -				;;
  1527         -			-dgux*)
  1528         -				vendor=dg
  1529         -				;;
  1530         -			-luna*)
  1531         -				vendor=omron
  1532         -				;;
  1533         -			-genix*)
  1534         -				vendor=ns
  1535         -				;;
  1536         -			-mvs* | -opened*)
  1537         -				vendor=ibm
  1538         -				;;
  1539         -			-os400*)
  1540         -				vendor=ibm
  1541         -				;;
  1542         -			-ptx*)
  1543         -				vendor=sequent
  1544         -				;;
  1545         -			-tpf*)
  1546         -				vendor=ibm
  1547         -				;;
  1548         -			-vxsim* | -vxworks* | -windiss*)
  1549         -				vendor=wrs
  1550         -				;;
  1551         -			-aux*)
  1552         -				vendor=apple
  1553         -				;;
  1554         -			-hms*)
  1555         -				vendor=hitachi
  1556         -				;;
  1557         -			-mpw* | -macos*)
  1558         -				vendor=apple
  1559         -				;;
  1560         -			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
  1561         -				vendor=atari
  1562         -				;;
  1563         -			-vos*)
  1564         -				vendor=stratus
  1565         -				;;
  1566         -		esac
  1567         -		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
  1568         -		;;
  1569         -esac
  1570         -
  1571         -echo $basic_machine$os
  1572         -exit
  1573         -
  1574         -# Local variables:
  1575         -# eval: (add-hook 'write-file-hooks 'time-stamp)
  1576         -# time-stamp-start: "timestamp='"
  1577         -# time-stamp-format: "%:y-%02m-%02d"
  1578         -# time-stamp-end: "'"
  1579         -# End:

Deleted kitdll/buildsrc/kitdll-0.0/configure.ac version [ae66df7b9e].

     1         -dnl What are we running
     2         -AC_INIT(kitdll, 0.0)
     3         -
     4         -dnl Checks for programs.
     5         -AC_PROG_CC
     6         -AC_PROG_MAKE_SET
     7         -AC_PROG_INSTALL
     8         -AC_AIX
     9         -AC_GNU_SOURCE
    10         -
    11         -dnl Determine system information
    12         -DC_CHK_OS_INFO
    13         -
    14         -dnl Find the appropriate libraries to link to
    15         -AC_SEARCH_LIBS(acos, m,, [ AC_MSG_WARN([Couldn't find acos (normally in libm)!]) ])
    16         -AC_SEARCH_LIBS(dlsym, dl,, [ AC_MSG_WARN([Couldn't find dlsym (normally in libdl)!]) ])
    17         -
    18         -dnl Determine how to create a shared object
    19         -DC_GET_SHOBJFLAGS
    20         -
    21         -dnl Find the appropriate Tcl headers and libraries
    22         -DC_DO_TCL
    23         -
    24         -dnl Find required libs
    25         -DC_FIND_TCLKIT_LIBS
    26         -
    27         -dnl Check for Tcl features
    28         -SAVE_LIBS="${LIBS}"
    29         -LIBS="${ARCHS} ${LIBS}"
    30         -dnl Check for the ability to get the current system encoding
    31         -AC_CHECK_FUNCS(Tcl_GetEncodingNameFromEnvironment Tcl_SetSystemEncoding)
    32         -LIBS="${SAVE_LIBS}"
    33         -
    34         -dnl Find extra objects we need to link as a part of "libtclkit"
    35         -AC_SUBST(EXTRA_OBJS)
    36         -
    37         -dnl Check for optional headers
    38         -AC_HEADER_STDC
    39         -AC_CHECK_HEADERS(unistd.h string.h strings.h)
    40         -
    41         -dnl Check for optional system calls
    42         -AC_CHECK_FUNCS(readlink)
    43         -
    44         -dnl Check for acceptable dladdr so we can find ourselves on UNIX
    45         -DC_CHECK_FOR_ACCEPTABLE_DLADDR
    46         -
    47         -dnl Produce output
    48         -AC_OUTPUT(Makefile)

Deleted kitdll/buildsrc/kitdll-0.0/install-sh version [82b003ed45].

     1         -#!/bin/sh
     2         -# install - install a program, script, or datafile
     3         -
     4         -scriptversion=2005-05-14.22
     5         -
     6         -# This originates from X11R5 (mit/util/scripts/install.sh), which was
     7         -# later released in X11R6 (xc/config/util/install.sh) with the
     8         -# following copyright and license.
     9         -#
    10         -# Copyright (C) 1994 X Consortium
    11         -#
    12         -# Permission is hereby granted, free of charge, to any person obtaining a copy
    13         -# of this software and associated documentation files (the "Software"), to
    14         -# deal in the Software without restriction, including without limitation the
    15         -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
    16         -# sell copies of the Software, and to permit persons to whom the Software is
    17         -# furnished to do so, subject to the following conditions:
    18         -#
    19         -# The above copyright notice and this permission notice shall be included in
    20         -# all copies or substantial portions of the Software.
    21         -#
    22         -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    23         -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    24         -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
    25         -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
    26         -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
    27         -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
    28         -#
    29         -# Except as contained in this notice, the name of the X Consortium shall not
    30         -# be used in advertising or otherwise to promote the sale, use or other deal-
    31         -# ings in this Software without prior written authorization from the X Consor-
    32         -# tium.
    33         -#
    34         -#
    35         -# FSF changes to this file are in the public domain.
    36         -#
    37         -# Calling this script install-sh is preferred over install.sh, to prevent
    38         -# `make' implicit rules from creating a file called install from it
    39         -# when there is no Makefile.
    40         -#
    41         -# This script is compatible with the BSD install script, but was written
    42         -# from scratch.  It can only install one file at a time, a restriction
    43         -# shared with many OS's install programs.
    44         -
    45         -# set DOITPROG to echo to test this script
    46         -
    47         -# Don't use :- since 4.3BSD and earlier shells don't like it.
    48         -doit="${DOITPROG-}"
    49         -
    50         -# put in absolute paths if you don't have them in your path; or use env. vars.
    51         -
    52         -mvprog="${MVPROG-mv}"
    53         -cpprog="${CPPROG-cp}"
    54         -chmodprog="${CHMODPROG-chmod}"
    55         -chownprog="${CHOWNPROG-chown}"
    56         -chgrpprog="${CHGRPPROG-chgrp}"
    57         -stripprog="${STRIPPROG-strip}"
    58         -rmprog="${RMPROG-rm}"
    59         -mkdirprog="${MKDIRPROG-mkdir}"
    60         -
    61         -chmodcmd="$chmodprog 0755"
    62         -chowncmd=
    63         -chgrpcmd=
    64         -stripcmd=
    65         -rmcmd="$rmprog -f"
    66         -mvcmd="$mvprog"
    67         -src=
    68         -dst=
    69         -dir_arg=
    70         -dstarg=
    71         -no_target_directory=
    72         -
    73         -usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
    74         -   or: $0 [OPTION]... SRCFILES... DIRECTORY
    75         -   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
    76         -   or: $0 [OPTION]... -d DIRECTORIES...
    77         -
    78         -In the 1st form, copy SRCFILE to DSTFILE.
    79         -In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
    80         -In the 4th, create DIRECTORIES.
    81         -
    82         -Options:
    83         --c         (ignored)
    84         --d         create directories instead of installing files.
    85         --g GROUP   $chgrpprog installed files to GROUP.
    86         --m MODE    $chmodprog installed files to MODE.
    87         --o USER    $chownprog installed files to USER.
    88         --s         $stripprog installed files.
    89         --t DIRECTORY  install into DIRECTORY.
    90         --T         report an error if DSTFILE is a directory.
    91         ---help     display this help and exit.
    92         ---version  display version info and exit.
    93         -
    94         -Environment variables override the default commands:
    95         -  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
    96         -"
    97         -
    98         -while test -n "$1"; do
    99         -  case $1 in
   100         -    -c) shift
   101         -        continue;;
   102         -
   103         -    -d) dir_arg=true
   104         -        shift
   105         -        continue;;
   106         -
   107         -    -g) chgrpcmd="$chgrpprog $2"
   108         -        shift
   109         -        shift
   110         -        continue;;
   111         -
   112         -    --help) echo "$usage"; exit $?;;
   113         -
   114         -    -m) chmodcmd="$chmodprog $2"
   115         -        shift
   116         -        shift
   117         -        continue;;
   118         -
   119         -    -o) chowncmd="$chownprog $2"
   120         -        shift
   121         -        shift
   122         -        continue;;
   123         -
   124         -    -s) stripcmd=$stripprog
   125         -        shift
   126         -        continue;;
   127         -
   128         -    -t) dstarg=$2
   129         -	shift
   130         -	shift
   131         -	continue;;
   132         -
   133         -    -T) no_target_directory=true
   134         -	shift
   135         -	continue;;
   136         -
   137         -    --version) echo "$0 $scriptversion"; exit $?;;
   138         -
   139         -    *)  # When -d is used, all remaining arguments are directories to create.
   140         -	# When -t is used, the destination is already specified.
   141         -	test -n "$dir_arg$dstarg" && break
   142         -        # Otherwise, the last argument is the destination.  Remove it from $@.
   143         -	for arg
   144         -	do
   145         -          if test -n "$dstarg"; then
   146         -	    # $@ is not empty: it contains at least $arg.
   147         -	    set fnord "$@" "$dstarg"
   148         -	    shift # fnord
   149         -	  fi
   150         -	  shift # arg
   151         -	  dstarg=$arg
   152         -	done
   153         -	break;;
   154         -  esac
   155         -done
   156         -
   157         -if test -z "$1"; then
   158         -  if test -z "$dir_arg"; then
   159         -    echo "$0: no input file specified." >&2
   160         -    exit 1
   161         -  fi
   162         -  # It's OK to call `install-sh -d' without argument.
   163         -  # This can happen when creating conditional directories.
   164         -  exit 0
   165         -fi
   166         -
   167         -for src
   168         -do
   169         -  # Protect names starting with `-'.
   170         -  case $src in
   171         -    -*) src=./$src ;;
   172         -  esac
   173         -
   174         -  if test -n "$dir_arg"; then
   175         -    dst=$src
   176         -    src=
   177         -
   178         -    if test -d "$dst"; then
   179         -      mkdircmd=:
   180         -      chmodcmd=
   181         -    else
   182         -      mkdircmd=$mkdirprog
   183         -    fi
   184         -  else
   185         -    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
   186         -    # might cause directories to be created, which would be especially bad
   187         -    # if $src (and thus $dsttmp) contains '*'.
   188         -    if test ! -f "$src" && test ! -d "$src"; then
   189         -      echo "$0: $src does not exist." >&2
   190         -      exit 1
   191         -    fi
   192         -
   193         -    if test -z "$dstarg"; then
   194         -      echo "$0: no destination specified." >&2
   195         -      exit 1
   196         -    fi
   197         -
   198         -    dst=$dstarg
   199         -    # Protect names starting with `-'.
   200         -    case $dst in
   201         -      -*) dst=./$dst ;;
   202         -    esac
   203         -
   204         -    # If destination is a directory, append the input filename; won't work
   205         -    # if double slashes aren't ignored.
   206         -    if test -d "$dst"; then
   207         -      if test -n "$no_target_directory"; then
   208         -	echo "$0: $dstarg: Is a directory" >&2
   209         -	exit 1
   210         -      fi
   211         -      dst=$dst/`basename "$src"`
   212         -    fi
   213         -  fi
   214         -
   215         -  # This sed command emulates the dirname command.
   216         -  dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
   217         -
   218         -  # Make sure that the destination directory exists.
   219         -
   220         -  # Skip lots of stat calls in the usual case.
   221         -  if test ! -d "$dstdir"; then
   222         -    defaultIFS='
   223         -	 '
   224         -    IFS="${IFS-$defaultIFS}"
   225         -
   226         -    oIFS=$IFS
   227         -    # Some sh's can't handle IFS=/ for some reason.
   228         -    IFS='%'
   229         -    set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
   230         -    shift
   231         -    IFS=$oIFS
   232         -
   233         -    pathcomp=
   234         -
   235         -    while test $# -ne 0 ; do
   236         -      pathcomp=$pathcomp$1
   237         -      shift
   238         -      if test ! -d "$pathcomp"; then
   239         -        $mkdirprog "$pathcomp"
   240         -	# mkdir can fail with a `File exist' error in case several
   241         -	# install-sh are creating the directory concurrently.  This
   242         -	# is OK.
   243         -	test -d "$pathcomp" || exit
   244         -      fi
   245         -      pathcomp=$pathcomp/
   246         -    done
   247         -  fi
   248         -
   249         -  if test -n "$dir_arg"; then
   250         -    $doit $mkdircmd "$dst" \
   251         -      && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
   252         -      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
   253         -      && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
   254         -      && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
   255         -
   256         -  else
   257         -    dstfile=`basename "$dst"`
   258         -
   259         -    # Make a couple of temp file names in the proper directory.
   260         -    dsttmp=$dstdir/_inst.$$_
   261         -    rmtmp=$dstdir/_rm.$$_
   262         -
   263         -    # Trap to clean up those temp files at exit.
   264         -    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
   265         -    trap '(exit $?); exit' 1 2 13 15
   266         -
   267         -    # Copy the file name to the temp name.
   268         -    $doit $cpprog "$src" "$dsttmp" &&
   269         -
   270         -    # and set any options; do chmod last to preserve setuid bits.
   271         -    #
   272         -    # If any of these fail, we abort the whole thing.  If we want to
   273         -    # ignore errors from any of these, just make sure not to ignore
   274         -    # errors from the above "$doit $cpprog $src $dsttmp" command.
   275         -    #
   276         -    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
   277         -      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
   278         -      && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
   279         -      && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
   280         -
   281         -    # Now rename the file to the real destination.
   282         -    { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
   283         -      || {
   284         -	   # The rename failed, perhaps because mv can't rename something else
   285         -	   # to itself, or perhaps because mv is so ancient that it does not
   286         -	   # support -f.
   287         -
   288         -	   # Now remove or move aside any old file at destination location.
   289         -	   # We try this two ways since rm can't unlink itself on some
   290         -	   # systems and the destination file might be busy for other
   291         -	   # reasons.  In this case, the final cleanup might fail but the new
   292         -	   # file should still install successfully.
   293         -	   {
   294         -	     if test -f "$dstdir/$dstfile"; then
   295         -	       $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
   296         -	       || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
   297         -	       || {
   298         -		 echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
   299         -		 (exit 1); exit 1
   300         -	       }
   301         -	     else
   302         -	       :
   303         -	     fi
   304         -	   } &&
   305         -
   306         -	   # Now rename the file to the real destination.
   307         -	   $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
   308         -	 }
   309         -    }
   310         -  fi || { (exit 1); exit 1; }
   311         -done
   312         -
   313         -# The final little trick to "correctly" pass the exit status to the exit trap.
   314         -{
   315         -  (exit 0); exit 0
   316         -}
   317         -
   318         -# Local variables:
   319         -# eval: (add-hook 'write-file-hooks 'time-stamp)
   320         -# time-stamp-start: "scriptversion="
   321         -# time-stamp-format: "%:y-%02m-%02d.%02H"
   322         -# time-stamp-end: "$"
   323         -# End:

Deleted kitdll/buildsrc/kitdll-0.0/pwb.c version [d3bbfc6849].

     1         -/* Written by Matt Newman and Jean-Claude Wippler, as part of Tclkit.
     2         - * March 2003 - placed in the public domain by the authors.
     3         - *
     4         - * Expose TclSetLibraryPath to scripts (in 8.4 only, 8.5 has "encoding dirs").
     5         - */
     6         -
     7         -#if 10 * TCL_MAJOR_VERSION + TCL_MINOR_VERSION < 85
     8         -
     9         -#include <tcl.h>
    10         -#include <tclInt.h> /* TclGetLibraryPath */
    11         -
    12         -void SetExecName(Tcl_Interp *);
    13         -
    14         -/* Support for encodings, from Vince Darley <vince.darley@eurobios.com> */
    15         -static int
    16         -LibraryPathObjCmd(dummy, interp, objc, objv)
    17         -     ClientData dummy;
    18         -     Tcl_Interp *interp;
    19         -     int objc;
    20         -     Tcl_Obj *CONST objv[];
    21         -{
    22         -     if (objc == 1) {
    23         -	Tcl_SetObjResult(interp, TclGetLibraryPath());
    24         -     } else {
    25         -	Tcl_Obj *path=Tcl_DuplicateObj(objv[1]);
    26         -	TclSetLibraryPath(Tcl_NewListObj(1,&path));
    27         -	TclpSetInitialEncodings();
    28         -     }
    29         -     return TCL_OK;
    30         -}
    31         -
    32         -/*
    33         - * Public Entrypoint
    34         - */
    35         -
    36         -DLLEXPORT int Pwb_Init(Tcl_Interp *interp)
    37         -{
    38         -    Tcl_CreateObjCommand(interp, "librarypath", LibraryPathObjCmd, 0, 0);
    39         -    return Tcl_PkgProvide( interp, "pwb", "1.1");
    40         -}
    41         -
    42         -#endif

Deleted kitdll/buildsrc/kitdll-0.0/rechan.c version [95be374a42].

     1         -/* Written by Matt Newman and Jean-Claude Wippler, as part of Tclkit.
     2         - * March 2003 - placed in the public domain by the authors.
     3         - *
     4         - * Reflecting channel interface
     5         - */
     6         -
     7         -#include <tcl.h>
     8         -
     9         -#ifndef TCL_DECLARE_MUTEX
    10         -#define TCL_DECLARE_MUTEX(v)
    11         -#define Tcl_MutexLock(v)
    12         -#define Tcl_MutexUnlock(v)
    13         -#endif
    14         -
    15         -  static int mkChanSeq = 0;
    16         -  TCL_DECLARE_MUTEX(rechanMutex)
    17         -
    18         -/* Uncomment for Linux or other non-Solaris OS's for memcpy declaration */
    19         -#include <memory.h>
    20         -
    21         -/* Uncomment for Solaris (and comment above) for memcpy declaration */
    22         -/* #include <string.h> */
    23         -
    24         -#ifndef EINVAL
    25         -#define EINVAL 9
    26         -#endif
    27         -
    28         -typedef struct
    29         -{
    30         -  Tcl_Channel _chan;
    31         -  int _validMask;
    32         -  int _watchMask;
    33         -  Tcl_Interp* _interp;
    34         -  Tcl_Obj* _context;
    35         -  Tcl_Obj* _seek;
    36         -  Tcl_Obj* _read;
    37         -  Tcl_Obj* _write;
    38         -  Tcl_Obj* _name;
    39         -  Tcl_TimerToken _timer;
    40         -} ReflectingChannel;
    41         -
    42         -static ReflectingChannel*
    43         -rcCreate (Tcl_Interp* ip_, Tcl_Obj* context_, int mode_, const char* name_)
    44         -{
    45         -  ReflectingChannel* cp = (ReflectingChannel*) Tcl_Alloc (sizeof *cp);
    46         -
    47         -  cp->_validMask = mode_;
    48         -  cp->_watchMask = 0;
    49         -  cp->_chan = 0;
    50         -  cp->_context = context_;
    51         -  cp->_interp = ip_;
    52         -  cp->_name = Tcl_NewStringObj(name_, -1);
    53         -  cp->_timer = NULL;
    54         -
    55         -    /* support Tcl_GetIndexFromObj by keeping these objectified */
    56         -  cp->_seek = Tcl_NewStringObj("seek", -1);
    57         -  cp->_read = Tcl_NewStringObj("read", -1);
    58         -  cp->_write = Tcl_NewStringObj("write", -1);
    59         -
    60         -  Tcl_IncrRefCount(cp->_context);
    61         -  Tcl_IncrRefCount(cp->_seek);
    62         -  Tcl_IncrRefCount(cp->_read);
    63         -  Tcl_IncrRefCount(cp->_write);
    64         -  Tcl_IncrRefCount(cp->_name);
    65         -
    66         -  return cp;
    67         -}
    68         -
    69         -static Tcl_Obj*
    70         -rcBuildCmdList(ReflectingChannel* chan_, Tcl_Obj* cmd_)
    71         -{
    72         -  Tcl_Obj* vec = Tcl_DuplicateObj(chan_->_context);
    73         -  Tcl_IncrRefCount(vec);
    74         -
    75         -  Tcl_ListObjAppendElement(chan_->_interp, vec, cmd_);
    76         -  Tcl_ListObjAppendElement(chan_->_interp, vec, chan_->_name);
    77         -
    78         -  return vec; /* with refcount 1 */
    79         -}
    80         -
    81         -static int
    82         -rcClose (ClientData cd_, Tcl_Interp* interp)
    83         -{
    84         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
    85         -  int n = -1;
    86         -
    87         -  Tcl_SavedResult sr;
    88         -  Tcl_Obj* cmd = rcBuildCmdList(chan, Tcl_NewStringObj("close", -1));
    89         -  Tcl_Interp* ip = chan->_interp;
    90         -
    91         -  Tcl_SaveResult(ip, &sr);
    92         -
    93         -  if (Tcl_EvalObjEx(ip, cmd, TCL_EVAL_GLOBAL | TCL_EVAL_DIRECT) == TCL_OK)
    94         -    Tcl_GetIntFromObj(NULL, Tcl_GetObjResult(ip), &n);
    95         -
    96         -  Tcl_RestoreResult(ip, &sr);
    97         -  Tcl_DecrRefCount(cmd);
    98         -
    99         -  if (chan->_timer != NULL) {
   100         -    Tcl_DeleteTimerHandler(chan->_timer);
   101         -    chan->_timer = NULL;
   102         -  }
   103         -
   104         -  Tcl_DecrRefCount(chan->_context);
   105         -  Tcl_DecrRefCount(chan->_seek);
   106         -  Tcl_DecrRefCount(chan->_read);
   107         -  Tcl_DecrRefCount(chan->_write);
   108         -  Tcl_DecrRefCount(chan->_name);
   109         -  Tcl_Free((char*) chan);
   110         -
   111         -  return TCL_OK;
   112         -}
   113         -
   114         -static int
   115         -rcInput (ClientData cd_, char* buf, int toRead, int* errorCodePtr)
   116         -{
   117         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
   118         -  int n = -1;
   119         -
   120         -  if (chan->_validMask & TCL_READABLE) {
   121         -    Tcl_SavedResult sr;
   122         -    Tcl_Obj* cmd = rcBuildCmdList(chan, chan->_read);
   123         -    Tcl_Interp* ip = chan->_interp;
   124         -
   125         -    Tcl_ListObjAppendElement(NULL, cmd, Tcl_NewIntObj(toRead));
   126         -    Tcl_SaveResult(ip, &sr);
   127         -
   128         -    if (Tcl_EvalObjEx(ip, cmd, TCL_EVAL_GLOBAL | TCL_EVAL_DIRECT) == TCL_OK) {
   129         -      void* s = Tcl_GetByteArrayFromObj(Tcl_GetObjResult(ip), &n);
   130         -      if (0 <= n && n <= toRead)
   131         -	if (n > 0)
   132         -	  memcpy(buf, s, n);
   133         -	else
   134         -	  chan->_watchMask &= ~TCL_READABLE;
   135         -      else
   136         -	n = -1;
   137         -    }
   138         -
   139         -    Tcl_RestoreResult(ip, &sr);
   140         -    Tcl_DecrRefCount(cmd);
   141         -  }
   142         -
   143         -  if (n < 0)
   144         -    *errorCodePtr = EINVAL;
   145         -  return n;
   146         -}
   147         -
   148         -static int
   149         -rcOutput (ClientData cd_, const char* buf, int toWrite, int* errorCodePtr)
   150         -{
   151         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
   152         -  int n = -1;
   153         -
   154         -  if (chan->_validMask & TCL_WRITABLE) {
   155         -    Tcl_SavedResult sr;
   156         -    Tcl_Obj* cmd = rcBuildCmdList(chan, chan->_write);
   157         -    Tcl_Interp* ip = chan->_interp;
   158         -
   159         -    Tcl_ListObjAppendElement(NULL, cmd,
   160         -	      		Tcl_NewByteArrayObj((unsigned char*) buf, toWrite));
   161         -    Tcl_SaveResult(ip, &sr);
   162         -
   163         -    if (Tcl_EvalObjEx(ip, cmd, TCL_EVAL_GLOBAL | TCL_EVAL_DIRECT) == TCL_OK &&
   164         -	Tcl_GetIntFromObj(NULL, Tcl_GetObjResult(ip), &n) == TCL_OK)
   165         -      if (0 <= n && n <= toWrite)
   166         -	chan->_watchMask = chan->_validMask;
   167         -      else
   168         -	n = -1;
   169         -
   170         -    Tcl_RestoreResult(ip, &sr);
   171         -    Tcl_DecrRefCount(cmd);
   172         -  }
   173         -
   174         -  if (n < 0)
   175         -    *errorCodePtr = EINVAL;
   176         -  return n;
   177         -}
   178         -
   179         -static int
   180         -rcSeek (ClientData cd_, long offset, int seekMode, int* errorCodePtr)
   181         -{
   182         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
   183         -  int n = -1;
   184         -
   185         -  Tcl_SavedResult sr;
   186         -  Tcl_Obj* cmd = rcBuildCmdList(chan, chan->_seek);
   187         -  Tcl_Interp* ip = chan->_interp;
   188         -
   189         -  Tcl_ListObjAppendElement(NULL, cmd, Tcl_NewLongObj(offset));
   190         -  Tcl_ListObjAppendElement(NULL, cmd, Tcl_NewIntObj(seekMode));
   191         -  Tcl_SaveResult(ip, &sr);
   192         -
   193         -  if (Tcl_EvalObjEx(ip, cmd, TCL_EVAL_GLOBAL | TCL_EVAL_DIRECT) == TCL_OK &&
   194         -      Tcl_GetIntFromObj(NULL, Tcl_GetObjResult(ip), &n) == TCL_OK)
   195         -    chan->_watchMask = chan->_validMask;
   196         -
   197         -  Tcl_RestoreResult(ip, &sr);
   198         -  Tcl_DecrRefCount(cmd);
   199         -
   200         -  if (n < 0)
   201         -    *errorCodePtr = EINVAL;
   202         -  return n;
   203         -}
   204         -
   205         -static void
   206         -rcTimerProc (ClientData cd_)
   207         -{
   208         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
   209         -
   210         -  if (chan->_timer != NULL)
   211         -    Tcl_DeleteTimerHandler(chan->_timer);
   212         -  chan->_timer = NULL;
   213         -  Tcl_NotifyChannel(chan->_chan, chan->_watchMask);
   214         -}
   215         -
   216         -static void
   217         -rcWatchChannel (ClientData cd_, int mask)
   218         -{
   219         -  ReflectingChannel* chan = (ReflectingChannel*) cd_;
   220         -
   221         -  /* Dec 2001: adopting logic used in Andreas Kupries' memchan, i.e. timers */
   222         -
   223         -  if (mask) {
   224         -    chan->_watchMask = mask & chan->_validMask;
   225         -    if (chan->_watchMask && chan->_timer == NULL)
   226         -      chan->_timer = Tcl_CreateTimerHandler(5, rcTimerProc, cd_);
   227         -  } else if (chan->_timer != NULL) {
   228         -    Tcl_DeleteTimerHandler(chan->_timer);
   229         -    chan->_timer = NULL;
   230         -  }
   231         -}
   232         -
   233         -static int
   234         -rcGetFile (ClientData cd_, int direction, ClientData* handlePtr)
   235         -{
   236         -  return TCL_ERROR;
   237         -}
   238         -
   239         -static int
   240         -rcBlock (ClientData cd_, int mode)
   241         -{
   242         -  return 0;
   243         -}
   244         -
   245         -static Tcl_ChannelType reChannelType = {
   246         -  "rechan",       /* Type name.                                    */
   247         -  (Tcl_ChannelTypeVersion) rcBlock, /* Set blocking/nonblocking behaviour */
   248         -  rcClose,        /* Close channel, clean instance data            */
   249         -  rcInput,        /* Handle read request                           */
   250         -  rcOutput,       /* Handle write request                          */
   251         -  rcSeek,         /* Move location of access point.    NULL'able   */
   252         -  0,              /* Set options.                      NULL'able   */
   253         -  0,              /* Get options.                      NULL'able   */
   254         -  rcWatchChannel, /* Initialize notifier                           */
   255         -  rcGetFile       /* Get OS handle from the channel.               */
   256         -};
   257         -
   258         -static int
   259         -cmd_rechan(ClientData cd_, Tcl_Interp* ip_, int objc_, Tcl_Obj*const* objv_)
   260         -{
   261         -  ReflectingChannel *rc;
   262         -  int mode;
   263         -  char buffer [20];
   264         -
   265         -  if (objc_ != 3) {
   266         -    Tcl_WrongNumArgs(ip_, 1, objv_, "command mode");
   267         -    return TCL_ERROR;
   268         -  }
   269         -
   270         -  if (Tcl_ListObjLength(ip_, objv_[1], &mode) == TCL_ERROR ||
   271         -      Tcl_GetIntFromObj(ip_, objv_[2], &mode) == TCL_ERROR)
   272         -    return TCL_ERROR;
   273         -
   274         -  Tcl_MutexLock(&rechanMutex);
   275         -  sprintf(buffer, "rechan%d", ++mkChanSeq);
   276         -  Tcl_MutexUnlock(&rechanMutex);
   277         -
   278         -  rc = rcCreate (ip_, objv_[1], mode, buffer);
   279         -  rc->_chan = Tcl_CreateChannel(&reChannelType, buffer, (ClientData) rc, mode);
   280         -
   281         -  Tcl_RegisterChannel(ip_, rc->_chan);
   282         -  Tcl_SetChannelOption(ip_, rc->_chan, "-buffering", "none");
   283         -  Tcl_SetChannelOption(ip_, rc->_chan, "-blocking", "0");
   284         -
   285         -  Tcl_SetResult(ip_, buffer, TCL_VOLATILE);
   286         -  return TCL_OK;
   287         -}
   288         -
   289         -DLLEXPORT int Rechan_Init(Tcl_Interp* interp)
   290         -{
   291         -    if (!Tcl_InitStubs(interp, "8.4", 0))
   292         -        return TCL_ERROR;
   293         -    Tcl_CreateObjCommand(interp, "rechan", cmd_rechan, 0, 0);
   294         -    return Tcl_PkgProvide(interp, "rechan", "1.0");
   295         -}

Deleted kitdll/buildsrc/kitdll-0.0/stringify.tcl version [07e25e6903].

     1         -#! /usr/bin/env tclsh
     2         -
     3         -proc stringifyfile {filename {key 0}} {
     4         -	catch {
     5         -		set fd [open $filename r]
     6         -	}
     7         -
     8         -	if {![info exists fd]} {
     9         -		return ""
    10         -	}
    11         -
    12         -	set data [read -nonewline $fd]
    13         -	close $fd
    14         -
    15         -	foreach line [split $data \n] {
    16         -		set line [string map [list "\\" "\\\\" "\"" "\\\""] $line]
    17         -		append ret "	\"$line\\n\"\n"
    18         -	}
    19         -
    20         -	return $ret
    21         -}
    22         -
    23         -foreach file $argv {
    24         -	puts -nonewline [stringifyfile $file]
    25         -}
    26         -
    27         -exit 0

Deleted kitdll/buildsrc/kitdll-0.0/zlib.c version [d3ecfd237b].

     1         -/* Written by Jean-Claude Wippler, as part of Tclkit.
     2         - * March 2003 - placed in the public domain by the author.
     3         - *
     4         - * Interface to the "zlib" compression library
     5         - */
     6         -
     7         -#include <tcl.h>
     8         -#if 10 * TCL_MAJOR_VERSION + TCL_MINOR_VERSION < 86
     9         -#include "zlib.h"
    10         -
    11         -typedef struct {
    12         -  z_stream stream;
    13         -  Tcl_Obj *indata;
    14         -} zlibstream;
    15         -
    16         -static int
    17         -zstreamincmd(ClientData cd, Tcl_Interp *ip, int objc, Tcl_Obj *CONST objv[])
    18         -{
    19         -  zlibstream *zp = (zlibstream*) cd;
    20         -  int count = 0;
    21         -  int e, index;
    22         -  Tcl_Obj *obj;
    23         -
    24         -  static CONST84 char* cmds[] = { "fill", "drain", NULL, };
    25         -
    26         -  if (Tcl_GetIndexFromObj(ip, objv[1], cmds, "option", 0, &index) != TCL_OK)
    27         -    return TCL_ERROR;
    28         -
    29         -  switch (index) {
    30         -
    31         -    case 0: /* fill ?data? */
    32         -      if (objc >= 3) {
    33         -	Tcl_IncrRefCount(objv[2]);
    34         -	Tcl_DecrRefCount(zp->indata);
    35         -	zp->indata = objv[2];
    36         -	zp->stream.next_in = Tcl_GetByteArrayFromObj(zp->indata,
    37         -						  (int*) &zp->stream.avail_in);
    38         -      }
    39         -      Tcl_SetObjResult(ip, Tcl_NewIntObj(zp->stream.avail_in));
    40         -      break;
    41         -
    42         -    case 1: /* drain count */
    43         -      if (objc != 3) {
    44         -	Tcl_WrongNumArgs(ip, 2, objv, "count");
    45         -	return TCL_ERROR;
    46         -      }
    47         -      if (Tcl_GetIntFromObj(ip, objv[2], &count) != TCL_OK)
    48         -	return TCL_ERROR;
    49         -      obj = Tcl_GetObjResult(ip);
    50         -      Tcl_SetByteArrayLength(obj, count);
    51         -      zp->stream.next_out = Tcl_GetByteArrayFromObj(obj,
    52         -						  (int*) &zp->stream.avail_out);
    53         -      e = inflate(&zp->stream, Z_NO_FLUSH);
    54         -      if (e != 0 && e != Z_STREAM_END) {
    55         -	Tcl_SetResult(ip, (char*) zError(e), TCL_STATIC);
    56         -	return TCL_ERROR;
    57         -      }
    58         -      Tcl_SetByteArrayLength(obj, count - zp->stream.avail_out);
    59         -      break;
    60         -  }
    61         -  return TCL_OK;
    62         -}
    63         -
    64         -void zstreamdelproc(ClientData cd)
    65         -{
    66         -  zlibstream *zp = (zlibstream*) cd;
    67         -  inflateEnd(&zp->stream);
    68         -  Tcl_DecrRefCount(zp->indata);
    69         -  Tcl_Free((void*) zp);
    70         -}
    71         -
    72         -static int
    73         -ZlibCmd(ClientData dummy, Tcl_Interp *ip, int objc, Tcl_Obj *CONST objv[])
    74         -{
    75         -  int e = TCL_OK, index, dlen, wbits = -MAX_WBITS;
    76         -  long flag;
    77         -  Byte *data;
    78         -  z_stream stream;
    79         -  Tcl_Obj *obj = Tcl_GetObjResult(ip);
    80         -
    81         -  static CONST84 char* cmds[] = {
    82         -    "adler32", "crc32", "compress", "deflate", "decompress", "inflate", 
    83         -    "sdecompress", "sinflate", NULL,
    84         -  };
    85         -
    86         -  if (objc < 3 || objc > 4) {
    87         -    Tcl_WrongNumArgs(ip, 1, objv, "option data ?...?");
    88         -    return TCL_ERROR;
    89         -  }
    90         -
    91         -  if (Tcl_GetIndexFromObj(ip, objv[1], cmds, "option", 0, &index) != TCL_OK ||
    92         -      objc > 3 && Tcl_GetLongFromObj(ip, objv[3], &flag) != TCL_OK)
    93         -    return TCL_ERROR;
    94         -
    95         -  data = Tcl_GetByteArrayFromObj(objv[2], &dlen);
    96         -
    97         -  switch (index) {
    98         -
    99         -    case 0: /* adler32 str ?start? -> checksum */
   100         -      if (objc < 4)
   101         -	flag = (long) adler32(0, 0, 0);
   102         -      Tcl_SetLongObj(obj, (long) adler32((uLong) flag, data, dlen));
   103         -      return TCL_OK;
   104         -
   105         -    case 1: /* crc32 str ?start? -> checksum */
   106         -      if (objc < 4)
   107         -	flag = (long) crc32(0, 0, 0);
   108         -      Tcl_SetLongObj(obj, (long) crc32((uLong) flag, data, dlen));
   109         -      return TCL_OK;
   110         -      
   111         -    case 2: /* compress data ?level? -> data */
   112         -      wbits = MAX_WBITS;
   113         -    case 3: /* deflate data ?level? -> data */
   114         -      if (objc < 4)
   115         -	flag = Z_DEFAULT_COMPRESSION;
   116         -
   117         -      stream.avail_in = (uInt) dlen;
   118         -      stream.next_in = data;
   119         -
   120         -      stream.avail_out = (uInt) dlen + dlen / 1000 + 12;
   121         -      Tcl_SetByteArrayLength(obj, stream.avail_out);
   122         -      stream.next_out = Tcl_GetByteArrayFromObj(obj, NULL);
   123         -
   124         -      stream.zalloc = 0;
   125         -      stream.zfree = 0;
   126         -      stream.opaque = 0;
   127         -
   128         -      e = deflateInit2(&stream, (int) flag, Z_DEFLATED, wbits,
   129         -			      MAX_MEM_LEVEL, Z_DEFAULT_STRATEGY);
   130         -      if (e != Z_OK)
   131         -	break;
   132         -
   133         -      e = deflate(&stream, Z_FINISH);
   134         -      if (e != Z_STREAM_END) {
   135         -	deflateEnd(&stream);
   136         -	if (e == Z_OK) e = Z_BUF_ERROR;
   137         -      } else
   138         -	e = deflateEnd(&stream);
   139         -      break;
   140         -      
   141         -    case 4: /* decompress data ?bufsize? -> data */
   142         -      wbits = MAX_WBITS;
   143         -    case 5: /* inflate data ?bufsize? -> data */
   144         -    {
   145         -      if (objc < 4)
   146         -	flag = 16 * 1024;
   147         -
   148         -      for (;;) {
   149         -	stream.zalloc = 0;
   150         -	stream.zfree = 0;
   151         -
   152         -	/* +1 because ZLIB can "over-request" input (but ignore it) */
   153         -	stream.avail_in = (uInt) dlen +  1;
   154         -	stream.next_in = data;
   155         -
   156         -	stream.avail_out = (uInt) flag;
   157         -	Tcl_SetByteArrayLength(obj, stream.avail_out);
   158         -	stream.next_out = Tcl_GetByteArrayFromObj(obj, NULL);
   159         -
   160         -	/* Negative value suppresses ZLIB header */
   161         -	e = inflateInit2(&stream, wbits);
   162         -	if (e == Z_OK) {
   163         -	  e = inflate(&stream, Z_FINISH);
   164         -	  if (e != Z_STREAM_END) {
   165         -	    inflateEnd(&stream);
   166         -	    if (e == Z_OK) e = Z_BUF_ERROR;
   167         -	  } else
   168         -	    e = inflateEnd(&stream);
   169         -	}
   170         -
   171         -	if (e == Z_OK || e != Z_BUF_ERROR) break;
   172         -
   173         -	Tcl_SetByteArrayLength(obj, 0);
   174         -	flag *= 2;
   175         -      }
   176         -
   177         -      break;
   178         -    }
   179         -      
   180         -    case 6: /* sdecompress cmdname -> */
   181         -      wbits = MAX_WBITS;
   182         -    case 7: /* sinflate cmdname -> */
   183         -    {
   184         -      zlibstream *zp = (zlibstream*) Tcl_Alloc(sizeof (zlibstream));
   185         -      zp->indata = Tcl_NewObj();
   186         -      Tcl_IncrRefCount(zp->indata);
   187         -      zp->stream.zalloc = 0;
   188         -      zp->stream.zfree = 0;
   189         -      zp->stream.opaque = 0;
   190         -      zp->stream.next_in = 0;
   191         -      zp->stream.avail_in = 0;
   192         -      inflateInit2(&zp->stream, wbits);
   193         -      Tcl_CreateObjCommand(ip, Tcl_GetStringFromObj(objv[2], 0), zstreamincmd,
   194         -      				(ClientData) zp, zstreamdelproc);
   195         -      return TCL_OK;
   196         -    }
   197         -  }
   198         -
   199         -  if (e != Z_OK) {
   200         -    Tcl_SetResult(ip, (char*) zError(e), TCL_STATIC);
   201         -    return TCL_ERROR;
   202         -  }
   203         -
   204         -  Tcl_SetByteArrayLength(obj, stream.total_out);
   205         -  return TCL_OK;
   206         -}
   207         -
   208         -int Zlib_Init(Tcl_Interp *interp)
   209         -{
   210         -    Tcl_CreateObjCommand(interp, "zlib", ZlibCmd, 0, 0);
   211         -    return Tcl_PkgProvide( interp, "zlib", "1.1");
   212         -}
   213         -#endif /* Tcl version less than 8.6 */

Name change from kitdll/buildsrc/kitdll-0.0/Makefile.in to kitsh/buildsrc/kitsh-0.0/Makefile.kitdll.in.


Modified kitsh/buildsrc/kitsh-0.0/Makefile.tclkit.in from [6f33927faa] to [ca60ee8255].

    22     22   zipvfs.tcl.h: zipvfs.tcl
    23     23   	./stringify.tcl zipvfs.tcl > zipvfs.tcl.h
    24     24   
    25     25   clean:
    26     26   	rm -f kit $(OBJS) kit.res.o
    27     27   
    28     28   distclean: clean
    29         -	rm -f config.h Makefile config.log config.status
           29  +	rm -f config.h Makefile Makefile.in config.log config.status
    30     30   	rm -rf autom4te.cache
    31     31   
    32     32   mrproper: distclean
    33     33   	rm -f configure config.h boot.tcl.h zipvfs.tcl.h
    34     34   
    35     35   .PHONY: all clean distclean

Modified kitsh/buildsrc/kitsh-0.0/aclocal.m4 from [9a1977c3cc] to [53dc5eee75].

   256    256   			AC_MSG_RESULT([found])
   257    257   			AC_DEFINE(HAVE_ACCEPTABLE_DLADDR, [1], [Define to 1 if you have an acceptable dladdr implementation with dli_fname])
   258    258   		], [
   259    259   			AC_MSG_RESULT([not found])
   260    260   		]
   261    261   	)
   262    262   ])
          263  +
          264  +dnl Usage:
          265  +dnl    DC_TEST_SHOBJFLAGS(shobjflags, shobjldflags, action-if-not-found)
          266  +dnl
          267  +AC_DEFUN(DC_TEST_SHOBJFLAGS, [
          268  +  AC_SUBST(SHOBJFLAGS)
          269  +  AC_SUBST(SHOBJLDFLAGS)
          270  +
          271  +  OLD_LDFLAGS="$LDFLAGS"
          272  +  SHOBJFLAGS=""
          273  +
          274  +  LDFLAGS="$OLD_LDFLAGS $1 $2"
          275  +
          276  +  AC_TRY_LINK([#include <stdio.h>
          277  +int unrestst(void);], [ printf("okay\n"); unrestst(); return(0); ], [ SHOBJFLAGS="$1"; SHOBJLDFLAGS="$2" ], [
          278  +  LDFLAGS="$OLD_LDFLAGS"
          279  +  $3
          280  +])
          281  +
          282  +  LDFLAGS="$OLD_LDFLAGS"
          283  +])
          284  +
          285  +AC_DEFUN(DC_GET_SHOBJFLAGS, [
          286  +  AC_SUBST(SHOBJFLAGS)
          287  +  AC_SUBST(SHOBJLDFLAGS)
          288  +
          289  +  AC_MSG_CHECKING(how to create shared objects)
          290  +
          291  +  if test -z "$SHOBJFLAGS" -a -z "$SHOBJLDFLAGS"; then
          292  +    DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic], [
          293  +      DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared], [
          294  +        DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic -mimpure-text], [
          295  +          DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -mimpure-text], [
          296  +            DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -rdynamic -Wl,-G,-z,textoff], [
          297  +              DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -Wl,-G,-z,textoff], [
          298  +                DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-shared -dynamiclib -flat_namespace -undefined suppress -bind_at_load], [
          299  +                  DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib -flat_namespace -undefined suppress -bind_at_load], [
          300  +                    DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-Wl,-dynamiclib -Wl,-flat_namespace -Wl,-undefined,suppress -Wl,-bind_at_load], [
          301  +                      DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib -flat_namespace -undefined suppress], [
          302  +                        DC_TEST_SHOBJFLAGS([-fPIC -DPIC], [-dynamiclib], [
          303  +                          AC_MSG_RESULT(cant)
          304  +                          AC_MSG_ERROR([We are unable to make shared objects.])
          305  +                        ])
          306  +                      ])
          307  +                    ])
          308  +                  ])
          309  +                ])
          310  +              ])
          311  +            ])
          312  +          ])
          313  +        ])
          314  +      ])
          315  +    ])
          316  +  fi
          317  +
          318  +  AC_MSG_RESULT($SHOBJLDFLAGS $SHOBJFLAGS)
          319  +])
          320  +
          321  +AC_DEFUN(DC_CHK_OS_INFO, [
          322  +	AC_CANONICAL_HOST
          323  +	AC_SUBST(SHOBJEXT)
          324  +	AC_SUBST(AREXT)
          325  +        AC_SUBST(SHOBJFLAGS)
          326  +        AC_SUBST(SHOBJLDFLAGS)
          327  +
          328  +        AC_MSG_CHECKING(host operating system)
          329  +        AC_MSG_RESULT($host_os)
          330  +
          331  +	SHOBJEXT="so"
          332  +	AREXT="a"
          333  +
          334  +        case $host_os in
          335  +                darwin*)
          336  +			SHOBJEXT="dylib"
          337  +                        ;;
          338  +		hpux*)
          339  +			SHOBJEXT="sl"
          340  +			;;
          341  +		mingw*)
          342  +			SHOBJEXT="dll"
          343  +			SHOBJFLAGS="-mno-cygwin -mms-bitfields -DPIC"
          344  +			SHOBJLDFLAGS='-shared -Wl,--dll -Wl,--enable-auto-image-base -Wl,--output-def,$[@].def,--out-implib,$[@].a -Wl,--export-all-symbols -Wl,--add-stdcall-alias'
          345  +			;;
          346  +	esac
          347  +])
          348  +
          349  +AC_DEFUN(DC_TEST_WHOLE_ARCHIVE_SHARED_LIB, [
          350  +
          351  +	SAVE_LIBS="${LIBS}"
          352  +
          353  +	LIBS="${WHOLEARCHIVE} $1 ${NOWHOLEARCHIVE} ${SAVE_LIBS}"
          354  +	AC_LINK_IFELSE(
          355  +		AC_LANG_PROGRAM([[
          356  +			]], [[
          357  +			]]
          358  +		),
          359  +		[
          360  +			LIBS="${SAVE_LIBS}"
          361  +
          362  +			$2
          363  +		], [
          364  +			LIBS="${SAVE_LIBS}"
          365  +
          366  +			$3
          367  +		]
          368  +	)
          369  +])
          370  +
          371  +AC_DEFUN(DC_CHECK_FOR_WHOLE_ARCHIVE, [
          372  +	AC_MSG_CHECKING([for how to link whole archive])
          373  +
          374  +	SAVE_CFLAGS="${CFLAGS}"
          375  +
          376  +	wholearchive=""
          377  +
          378  +	for check in "-Wl,--whole-archive -Wl,--no-whole-archive" "-Wl,-z,allextract -Wl,-z,defaultextract"; do
          379  +		CFLAGS="${SAVE_CFLAGS} ${check}"
          380  +
          381  +		AC_LINK_IFELSE(AC_LANG_PROGRAM([], []),
          382  +			[
          383  +				wholearchive="${check}"
          384  +
          385  +				break
          386  +			]
          387  +		)
          388  +
          389  +	done
          390  +
          391  +	CFLAGS="${SAVE_CFLAGS}"
          392  +
          393  +	if test -z "${wholearchive}"; then
          394  +		AC_MSG_RESULT([not found])
          395  +	else
          396  +		AC_MSG_RESULT([${wholearchive}])
          397  +
          398  +		WHOLEARCHIVE=`echo "${wholearchive}" | cut -f 1 -d ' '`
          399  +		NOWHOLEARCHIVE=`echo "${wholearchive}" | cut -f 2 -d ' '`
          400  +	fi
          401  +
          402  +	AC_SUBST(WHOLEARCHIVE)
          403  +	AC_SUBST(NOWHOLEARCHIVE)
          404  +])

Modified kitsh/buildsrc/kitsh-0.0/configure.ac from [da08c3d389] to [5f3b54111a].

     3      3   
     4      4   dnl Checks for programs.
     5      5   AC_PROG_CC
     6      6   AC_PROG_MAKE_SET
     7      7   AC_PROG_INSTALL
     8      8   AC_AIX
     9      9   AC_GNU_SOURCE
           10  +
           11  +dnl Find out if we should build a DLL or an Executable
           12  +TARGET="tclkit"
           13  +AC_MSG_CHECKING([what target to build])
           14  +AC_ARG_ENABLE(kitdll, AC_HELP_STRING([--enable-kitdll], [Enable building KitDLL instead of Tclkit (default: no)]), [
           15  +	case "$enableval" in
           16  +		yes|kitdll)
           17  +			TARGET="kitdll"
           18  +			;;
           19  +		no)
           20  +			true
           21  +			;;
           22  +		*)
           23  +			AC_MSG_RESULT([unknown])
           24  +
           25  +			AC_MSG_ERROR([Invalid option: $enableval])
           26  +			;;
           27  +	esac
           28  +])
           29  +AC_MSG_RESULT([$TARGET])
    10     30   
    11     31   dnl Find the appropriate libraries to link to
    12     32   AC_SEARCH_LIBS(acos, m,, [ AC_MSG_WARN([Couldn't find acos (normally in libm)!]) ])
    13     33   AC_SEARCH_LIBS(dlsym, dl,, [ AC_MSG_WARN([Couldn't find dlsym (normally in libdl)!]) ])
    14     34   
    15         -dnl Figure out how to statically link to libgcc, if needed
    16         -DC_STATIC_LIBGCC
           35  +if test "x$TARGET" = "tclkit"; then
           36  +	dnl Figure out how to statically link to libgcc, if needed
           37  +	DC_STATIC_LIBGCC
           38  +else
           39  +	dnl We have KitDLL
           40  +
           41  +	dnl Determine system information
           42  +	DC_CHK_OS_INFO
           43  +
           44  +	dnl Determine how to create a shared object
           45  +	DC_GET_SHOBJFLAGS
           46  +
           47  +	dnl KitDLL always uses C-VFS
           48  +	AC_DEFINE([KIT_STORAGE_CVFS], [1], [Define if you are going to use C-VFS for kit storage])
           49  +
           50  +	dnl Define KitDLL usage
           51  +	AC_DEFINE([TCLKIT_DLL], [1], [Define if you are using a KitDLL rather than a Tclkit])
           52  +fi
    17     53   
    18     54   dnl Find the appropriate Tcl headers and libraries
    19     55   DC_DO_TCL
    20     56   
    21     57   dnl Find archives we need to link to
    22     58   DC_FIND_TCLKIT_LIBS
    23     59   
................................................................................
    34     70   		EXTRA_OBJS="$EXTRA_OBJS kit.res.o"
    35     71   	fi
    36     72   fi
    37     73   
    38     74   dnl Check for Tcl features
    39     75   SAVE_LIBS="${LIBS}"
    40     76   LIBS="${ARCHS} ${LIBS}"
           77  +
    41     78   dnl Determine if we have "Tcl_SetStartupScript" (8.6.x) or "TclSetStartupScriptPath" (8.4.x)
    42     79   AC_CHECK_FUNCS(Tcl_SetStartupScript TclSetStartupScriptPath)
           80  +
    43     81   dnl Check for the ability to get the current system encoding
    44     82   AC_CHECK_FUNCS(Tcl_GetEncodingNameFromEnvironment Tcl_SetSystemEncoding)
    45     83   LIBS="${SAVE_LIBS}"
    46     84   
    47     85   dnl Check for optional headers
    48     86   AC_HEADER_STDC
    49     87   AC_CHECK_HEADERS(unistd.h string.h strings.h)
................................................................................
    56     94   
    57     95   dnl Find zlib
    58     96   AC_ARG_WITH(zlib, AC_HELP_STRING([--with-zlib], [directory containing zlib]), [
    59     97   	CPPFLAGS="${CPPFLAGS} -I${with_zlib}/include -I${with_zlib}"
    60     98   	CFLAGS="${CFLAGS} -I${with_zlib}/include -I${with_zlib}"
    61     99   	LDFLAGS="${LDFLAGS} -L${with_zlib}/lib -L${with_zlib}"
    62    100   ])
    63         -DC_DO_STATIC_LINK_LIB(zlib, -lz,, [
    64         -	DC_DO_STATIC_LINK_LIB(zlib, -lzlib,, [
    65         -		AC_SEARCH_LIBS(inflate, z zlib,, [
    66         -			AC_MSG_WARN([Couldn't find inflate (normally in zlib)!])
          101  +
          102  +dnl Only needed for Tclkit
          103  +if test "x$TARGET" = "tclkit"; then
          104  +	DC_DO_STATIC_LINK_LIB(zlib, -lz,, [
          105  +		DC_DO_STATIC_LINK_LIB(zlib, -lzlib,, [
          106  +			AC_SEARCH_LIBS(inflate, z zlib,, [
          107  +				AC_MSG_WARN([Couldn't find inflate (normally in zlib)!])
          108  +			])
    67    109   		])
    68    110   	])
    69         -])
          111  +fi
    70    112   
    71    113   dnl Determine which storage mechanism to use
    72    114   AC_MSG_CHECKING([which Tclkit Storage mechanism to use])
    73         -AC_ARG_ENABLE(kit-storage, AC_HELP_STRING([--enable-kit-storage={zip|mk4}], [Use mk4 for storage (default: auto)]), [
          115  +
          116  +storage_mech="auto"
          117  +AC_ARG_ENABLE(kit-storage, AC_HELP_STRING([--enable-kit-storage={zip|mk4|cvfs}], [Specify storage mechanism to use for built-in VFS (default: auto)]), [
    74    118   	case "$enableval" in
    75    119   		mk4)
    76         -			AC_MSG_RESULT([mk4])
          120  +			storage_mech="mk4"
          121  +
    77    122   			AC_DEFINE([KIT_STORAGE_MK4], [1], [Define if you are going to use Metakit4 for kit storage])
    78    123   			;;
    79    124   		zip)
    80         -			AC_MSG_RESULT([zip])
          125  +			storage_mech="zip"
          126  +
    81    127   			AC_DEFINE([KIT_STORAGE_ZIP], [1], [Define if you are going to use ZIP for kit storage])
    82    128   			;;
          129  +		cvfs)
          130  +			storage_mech="cvfs"
          131  +
          132  +			AC_DEFINE([KIT_STORAGE_CVFS], [1], [Define if you are going to use C-VFS for kit storage])
          133  +			;;
    83    134   		yes)
    84    135   			# If they just want to enable kit storage, but nothing specifically, do nothing
    85         -			AC_MSG_RESULT([auto])
          136  +			storage_mech="auto"
    86    137   			;;
    87    138   		auto)
    88    139   			# Auto is how it works by default
    89         -			AC_MSG_RESULT([auto])
          140  +			storage_mech="auto"
    90    141   			;;
    91    142   		no)
    92    143   			# You can't disable kit storage
    93    144   			AC_MSG_RESULT([fail])
    94    145   			AC_MSG_ERROR([Kit Storage cannot be disabled])
    95    146   			;;
    96    147   		*)
    97    148   			AC_MSG_RESULT([fail])
    98    149   			AC_MSG_ERROR([Unknown kit storage type: $enableval])
    99    150   			;;
   100    151   	esac
   101         -], [
   102         -	AC_MSG_RESULT([auto])
   103    152   ])
          153  +AC_MSG_RESULT([$storage_mech])
          154  +
          155  +dnl Verify sanity of storage mechanism
          156  +if ! test "x$TARGET" = "tclkit"; then
          157  +	case "$storage_mech" in
          158  +		auto|cvfs)
          159  +			true
          160  +			;;
          161  +		*)
          162  +			AC_MSG_ERROR([Only "cvfs" and "auto" are valid storage mechanisms when building KitDLL])
          163  +			;;
          164  +	esac
          165  +fi
          166  +
          167  +dnl Put correct Makefile template in place
          168  +rm -f Makefile.in
          169  +cp Makefile.${TARGET}.in Makefile.in
   104    170   
   105    171   dnl Produce output
   106    172   AC_OUTPUT(Makefile)

Name change from kitdll/buildsrc/kitdll-0.0/dir2c.tcl to kitsh/buildsrc/kitsh-0.0/dir2c.tcl.


Modified kitsh/buildsrc/kitsh-0.0/installvfs.tcl from [01a4e2e7f2] to [d2ae77312e].

    21     21   close $fd
    22     22   
    23     23   if {[string match "*KIT_STORAGE_ZIP*" $data]} {
    24     24   	set tclKitStorage zip
    25     25   }
    26     26   if {[string match "*KIT_STORAGE_MK4*" $data]} {
    27     27   	set tclKitStorage mk4
           28  +}
           29  +if {[string match "*KIT_STORAGE_CVFS*" $data]} {
           30  +	set tclKitStorage cvfs
    28     31   }
    29     32   
    30     33   if {![info exists tclKitStorage]} {
    31     34   	if {[string match "*KIT_INCLUDES_MK4TCL*" $data]} {
    32     35   		set tclKitStorage mk4
    33     36   	} else {
    34     37   		set tclKitStorage zip

Modified kitsh/buildsrc/kitsh-0.0/kitInit.c from [2ea4599da9] to [dd6f45df03].

    13     13    * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
    14     14    *
    15     15    * RCS: @(#) $Id$
    16     16    */
    17     17   
    18     18   #ifdef KIT_INCLUDES_TK
    19     19   #  include <tk.h>
    20         -#else
    21         -#  include <tcl.h>
    22     20   #endif /* KIT_INCLUDES_TK */
           21  +#include <tcl.h>
    23     22   
    24     23   #ifdef _WIN32
    25     24   #  define WIN32_LEAN_AND_MEAN
    26     25   #  include <windows.h>
    27     26   #  undef WIN32_LEAN_AND_MEAN
    28     27   #endif /* _WIN32 */
    29     28   
................................................................................
    57     56   
    58     57   #if 10 * TCL_MAJOR_VERSION + TCL_MINOR_VERSION < 85
    59     58   #  define KIT_INCLUDES_PWB 1
    60     59   #endif
    61     60   #if 10 * TCL_MAJOR_VERSION + TCL_MINOR_VERSION < 86
    62     61   #  define KIT_INCLUDES_ZLIB 1
    63     62   #endif
           63  +
           64  +/* Determine which type of storage to use -- MK4, ZIP, or CVFS */
           65  +#if defined(KIT_STORAGE_MK4) && defined(KIT_STORAGE_ZIP)
           66  +#  undef KIT_STORAGE_ZIP
           67  +#endif
           68  +#if defined(KIT_STORAGE_MK4) && defined(KIT_STORAGE_CVFS)
           69  +#  ifdef TCLKIT_DLL
           70  +#    undef KIT_STORAGE_MK4
           71  +#  else
           72  +#    undef KIT_STORAGE_CVFS
           73  +#  endif
           74  +#endif
           75  +#if !defined(KIT_STORAGE_MK4) && !defined(KIT_STORAGE_ZIP) && !defined(KIT_STORAGE_CVFS)
           76  +#  ifdef TCLKIT_DLL
           77  +#    define KIT_STORAGE_CVFS 1
           78  +#  else
           79  +#    ifdef KIT_INCLUDES_MK4TCL
           80  +#      define KIT_STORAGE_MK4 1
           81  +#    else
           82  +#      define KIT_STORAGE_ZIP 1
           83  +#    endif
           84  +#  endif
           85  +#endif
    64     86   
    65     87   #ifdef KIT_INCLUDES_ITCL
    66     88   Tcl_AppInitProc	Itcl_Init;
    67     89   #endif
    68     90   #ifdef KIT_INCLUDES_MK4TCL
    69     91   Tcl_AppInitProc	Mk4tcl_Init;
    70     92   #endif
................................................................................
    71     93   Tcl_AppInitProc Vfs_Init, Rechan_Init;
    72     94   #ifdef KIT_INCLUDES_PWB
    73     95   Tcl_AppInitProc	Pwb_Init;
    74     96   #endif
    75     97   #ifdef KIT_INCLUDES_ZLIB
    76     98   Tcl_AppInitProc Zlib_Init;
    77     99   #endif
          100  +#ifdef KIT_STORAGE_CVFS
          101  +Tcl_AppInitProc Vfs_kitdll_data_tcl_Init;
          102  +#endif
    78    103   #ifdef TCL_THREADS
    79    104   Tcl_AppInitProc	Thread_Init;
    80    105   #endif
    81    106   #ifdef _WIN32
    82    107   Tcl_AppInitProc	Dde_Init, Registry_Init;
    83    108   #endif
    84    109   
    85         -/* Determine which type of storage to use -- MK4 or ZIP */
    86         -#if defined(KIT_STORAGE_MK4) && defined(KIT_STORAGE_ZIP)
    87         -#  undef KIT_STORAGE_ZIP
    88         -#endif
    89         -#if !defined(KIT_STORAGE_MK4) && !defined(KIT_STORAGE_ZIP)
    90         -#  ifdef KIT_INCLUDES_MK4TCL
    91         -#    define KIT_STORAGE_MK4 1
    92         -#  else
    93         -#    define KIT_STORAGE_ZIP 1
    94         -#  endif
    95         -#endif
          110  +#ifdef TCLKIT_DLL
          111  +#  define TCLKIT_MOUNTPOINT "/.KITDLL_TCL"
          112  +#else
          113  +#  define TCLKIT_MOUNTPOINT "[info nameofexecutable]"
          114  +#endif /* TCLKIT_DLL */
          115  +
          116  +#ifdef HAVE_ACCEPTABLE_DLADDR
          117  +#  ifdef KITSH_NEED_WINMAIN
          118  +#    ifdef _WIN32_WCE
          119  +int wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow);
          120  +#    else
          121  +int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow);
          122  +#    endif /* _WIN32_WCE */
          123  +#  endif /* KITSH_NEED_WINMAIN */
          124  +int main(int argc, char **argv);
          125  +#endif /* HAVE_ACCEPTABLE_DLADDR */
    96    126   
    97    127   #ifdef TCLKIT_REQUIRE_TCLEXECUTABLENAME
    98    128   char *tclExecutableName;
    99    129   #endif
   100    130   
   101         -    /*
   102         -     *  Attempt to load a "boot.tcl" entry from the embedded MetaKit file.
   103         -     *  If there isn't one, try to open a regular "setup.tcl" file instead.
   104         -     *  If that fails, this code will throw an error, using a message box.
   105         -     */
   106         -
          131  +/*
          132  + *  Attempt to load a "boot.tcl" entry from the embedded MetaKit file.
          133  + *  If there isn't one, try to open a regular "setup.tcl" file instead.
          134  + *  If that fails, this code will throw an error, using a message box.
          135  + */
          136  +/*
          137  + * This Tcl code is invoked whenever Tcl_Init() is called on an
          138  + * interpreter.  It should mount up the VFS and make everything ready for
          139  + * that interpreter to do its job.
          140  + */
   107    141   static char *preInitCmd = 
   108         -#ifdef _WIN32_WCE
          142  +#if defined(_WIN32_WCE) && !defined(TCLKIT_DLL)
   109    143   /* silly hack to get wince port to launch, some sort of std{in,out,err} problem */
   110    144   "open /kitout.txt a; open /kitout.txt a; open /kitout.txt a\n"
   111    145   /* this too seems to be needed on wince - it appears to be related to the above */
   112    146   "catch {rename source ::tcl::source}\n"
   113    147   "proc source file {\n"
   114    148   	"set old [info script]\n"
   115    149   	"info script $file\n"
................................................................................
   117    151   	"set data [read $fid]\n"
   118    152   	"close $fid\n"
   119    153   	"set code [catch {uplevel 1 $data} res]\n"
   120    154   	"info script $old\n"
   121    155   	"if {$code == 2} { set code 0 }\n"
   122    156   	"return -code $code $res\n"
   123    157   "}\n"
   124         -#endif /* _WIN32_WCE */
          158  +#endif /* _WIN32_WCE && !TCLKIT_DLL */
   125    159   "proc tclKitInit {} {\n"
   126    160   	"rename tclKitInit {}\n"
          161  +#ifdef KIT_INCLUDES_ZLIB
          162  +	"catch { load {} zlib }\n"
          163  +#endif
   127    164   #ifdef KIT_INCLUDES_MK4TCL
   128    165   	"catch { load {} Mk4tcl }\n"
   129    166   #endif
          167  +#ifdef TCLKIT_DLL
          168  +	"load {} tclkit::init\n"
          169  +#endif
          170  +	"set bootfile [file join " TCLKIT_MOUNTPOINT " boot.tcl]\n"
          171  +	"if {[file exists $bootfile]} {\n"
          172  +		"catch {\n"
          173  +			"set f [open $bootfile]\n"
          174  +			"set s [read $f]\n"
          175  +			"close $f\n"
          176  +		"}\n"
          177  +	"}\n"
   130    178   #ifdef KIT_STORAGE_MK4
   131    179   	"set ::tclKitStorage \"mk4\"\n"
   132         -	"mk::file open exe [info nameofexecutable] -readonly\n"
   133         -	"set n [mk::select exe.dirs!0.files name boot.tcl]\n"
   134         -	"if {$n != \"\"} {\n"
   135         -		"set s [mk::get exe.dirs!0.files!$n contents]\n"
   136         -		"if {![string length $s]} { error \"empty boot.tcl\" }\n"
   137         -		"catch {load {} zlib}\n"
   138         -		"if {[mk::get exe.dirs!0.files!$n size] != [string length $s]} {\n"
   139         -			"set s [zlib decompress $s]\n"
          180  +	"if {![info exists s]} {\n"
          181  +		"mk::file open exe [info nameofexecutable] -readonly\n"
          182  +		"set n [mk::select exe.dirs!0.files name boot.tcl]\n"
          183  +		"if {$n != \"\"} {\n"
          184  +			"set s [mk::get exe.dirs!0.files!$n contents]\n"
          185  +			"if {![string length $s]} { error \"empty boot.tcl\" }\n"
          186  +			"catch {load {} zlib}\n"
          187  +			"if {[mk::get exe.dirs!0.files!$n size] != [string length $s]} {\n"
          188  +				"set s [zlib decompress $s]\n"
          189  +			"}\n"
   140    190   		"}\n"
   141    191   	"}\n"
   142    192   #endif /* KIT_STORAGE_MK4 */
   143    193   #ifdef KIT_STORAGE_ZIP
   144    194   	"set ::tclKitStorage \"zip\"\n"
   145    195   	"catch { load {} vfs }\n"
   146         -	"if {![info exists s]} {\n"
   147         -		"catch {\n"
   148         -			"set bootfile [file join [info nameofexecutable] boot.tcl]\n"
   149         -			"if {[file exists $bootfile]} {\n"
   150         -				"set f [open $bootfile]\n"
   151         -				"set s [read $f]\n"
   152         -				"close $f\n"
   153         -			"}\n"
   154         -		"}\n"
   155         -	"}\n"
   156    196   	"if {![info exists s]} {\n"
   157    197   #  include "zipvfs.tcl.h"
   158    198   		"catch {\n"
   159    199   			"set ::tclKitStorage_fd [::zip::open [info nameofexecutable]]\n"
   160    200   			"::zip::stat $::tclKitStorage_fd boot.tcl sb\n"
   161    201   			"seek $::tclKitStorage_fd $sb(ino)\n"
   162         -			"zip::Data $::tclKitStorage_fd sb s\n"
          202  +			"::zip::Data $::tclKitStorage_fd sb s\n"
   163    203   		"}\n"
   164    204   	"}\n"
   165    205   #endif /* KIT_STORAGE_ZIP */
          206  +#ifdef KIT_STORAGE_CVFS
          207  +	"set ::tclKitStorage \"cvfs\"\n"
          208  +	"load {} rechan\n"
          209  +	"load {} vfs\n"
          210  +	"load {} vfs_kitdll_data_tcl\n"
          211  +#include "vfs_kitdll.tcl.h"
          212  +	"if {![info exists s]} {\n"
          213  +		"catch {\n"
          214  +			"set s [::vfs::kitdll::data::getData tcl boot.tcl]\n"
          215  +		"}\n"
          216  +	"}\n"
          217  +#endif /* KIT_STORAGE_CVFS */
          218  +#ifdef TCLKIT_DLL
          219  +	"::tclkit::init::initInterp\n"
          220  +	"rename ::tclkit::init::initInterp {}\n"
          221  +#else
   166    222   	"if {![info exists s]} {\n"
   167    223   		"set f [open setup.tcl]\n"
   168    224   		"set s [read $f]\n"
   169    225   		"close $f\n"
   170    226   	"}\n"
          227  +#endif /* TCLKIT_DLL */
   171    228   	"uplevel #0 $s\n"
   172    229   #if defined(KIT_INCLUDES_TK) && defined(KIT_TK_VERSION)
   173    230   	"package ifneeded Tk " KIT_TK_VERSION " {\n"
   174    231   		"load {} Tk\n"
   175    232   	"}\n"
   176    233   #endif
   177    234   #ifdef _WIN32
................................................................................
   242    299   				return;
   243    300   			}
   244    301   		}
   245    302   	}
   246    303   #endif /* HAVE_READLINK */
   247    304   
   248    305   #ifdef HAVE_ACCEPTABLE_DLADDR
          306  +#  ifndef TCLKIT_DLL
   249    307   	if (Tcl_GetNameOfExecutable() == NULL) {
   250    308   		dladdr_ret = dladdr(&SetExecName, &syminfo);
   251    309   		if (dladdr_ret != 0) {
   252    310   			SetExecName(interp, syminfo.dli_fname);
          311  +
          312  +			return;
          313  +		}
          314  +	}
          315  +#  endif /* !TCLKIT_DLL */
          316  +
          317  +#  ifdef KITSH_NEED_WINMAIN
          318  +	if (Tcl_GetNameOfExecutable() == NULL) {
          319  +#    ifdef _WIN32_WCE
          320  +		dladdr_ret = dladdr(&WinMain, &syminfo);
          321  +#    else
          322  +		dladdr_ret = dladdr(&wWinMain, &syminfo);
          323  +#    endif /* _WIN32_WCE */
          324  +
          325  +		if (dladdr_ret != 0) {
          326  +			SetExecName(interp, syminfo.dli_fname);
          327  +
          328  +			return;
          329  +		}
          330  +	}
          331  +#  endif /* KITSH_NEED_WINMAIN */
          332  +
          333  +	if (Tcl_GetNameOfExecutable() == NULL) {
          334  +		dladdr_ret = dladdr(&main, &syminfo);
          335  +		if (dladdr_ret != 0) {
          336  +			SetExecName(interp, syminfo.dli_fname);
          337  +
          338  +			return;
   253    339   		}
   254    340   	}
   255    341   #endif /* HAVE_ACCEPTABLE_DLADDR */
   256    342   
   257    343   	if (Tcl_GetNameOfExecutable() == NULL) {
   258    344   		lobjv[0] = Tcl_GetVar2Ex(interp, "argv0", NULL, TCL_GLOBAL_ONLY);
   259    345   		execNameObj = Tcl_FSJoinToPath(Tcl_FSGetCwd(interp), 1, lobjv);
................................................................................
   262    348   
   263    349   		return;
   264    350   	}
   265    351   
   266    352   	return;
   267    353   }
   268    354   
   269         -int TclKit_AppInit(Tcl_Interp *interp) {
   270         -#ifdef KIT_INCLUDES_TK
   271         -#  ifdef _WIN32
   272         -#    ifndef _WIN32_WCE
   273         -	char msgBuf[2049];
   274         -#    endif /* !_WIN32_WCE */
   275         -#  endif /* _WIN32 */
   276         -#endif /* KIT_INCLUDES_TK */
   277         -#ifdef TCLKIT_CAN_SET_ENCODING
   278         -	Tcl_DString encodingName;
   279         -#endif /* TCLKIT_CAN_SET_ENCODING */
   280         -
          355  +static void _Tclkit_Generic_Init(void) {
   281    356   #ifdef KIT_INCLUDES_ITCL
   282    357   	Tcl_StaticPackage(0, "Itcl", Itcl_Init, NULL);
   283    358   #endif 
   284    359   #ifdef KIT_INCLUDES_MK4TCL
   285    360   	Tcl_StaticPackage(0, "Mk4tcl", Mk4tcl_Init, NULL);
   286    361   #endif
   287    362   #ifdef KIT_INCLUDES_PWB
................................................................................
   288    363   	Tcl_StaticPackage(0, "pwb", Pwb_Init, NULL);
   289    364   #endif 
   290    365   	Tcl_StaticPackage(0, "rechan", Rechan_Init, NULL);
   291    366   	Tcl_StaticPackage(0, "vfs", Vfs_Init, NULL);
   292    367   #ifdef KIT_INCLUDES_ZLIB
   293    368   	Tcl_StaticPackage(0, "zlib", Zlib_Init, NULL);
   294    369   #endif
          370  +#ifdef KIT_STORAGE_CVFS
          371  +	Tcl_StaticPackage(0, "vfs_kitdll_data_tcl", Vfs_kitdll_data_tcl_Init, NULL);
          372  +#endif
   295    373   #ifdef TCL_THREADS
   296    374   	Tcl_StaticPackage(0, "Thread", Thread_Init, NULL);
   297    375   #endif
   298    376   #ifdef _WIN32
   299    377   	Tcl_StaticPackage(0, "dde", Dde_Init, NULL);
   300    378   	Tcl_StaticPackage(0, "registry", Registry_Init, NULL);
   301    379   #endif
   302    380   #ifdef KIT_INCLUDES_TK
   303    381   	Tcl_StaticPackage(0, "Tk", Tk_Init, Tk_SafeInit);
   304    382   #endif
   305    383   
          384  +	TclSetPreInitScript(preInitCmd);
          385  +
          386  +	return;
          387  +}
          388  +
          389  +static void _Tclkit_Interp_Init(Tcl_Interp *interp) {
          390  +#ifdef TCLKIT_CAN_SET_ENCODING
          391  +	Tcl_DString encodingName;
          392  +#endif /* TCLKIT_CAN_SET_ENCODING */
          393  +
   306    394   	/* the tcl_rcFileName variable only exists in the initial interpreter */
   307    395   #ifdef _WIN32
   308    396   	Tcl_SetVar(interp, "tcl_rcFileName", "~/tclkitrc.tcl", TCL_GLOBAL_ONLY);
   309    397   #else
   310    398   	Tcl_SetVar(interp, "tcl_rcFileName", "~/.tclkitrc", TCL_GLOBAL_ONLY);
   311    399   #endif
   312    400   
................................................................................
   319    407   #endif
   320    408   
   321    409   	/* Hack to get around Tcl bug 1224888.  This must be run here and
   322    410   	 * in LibraryPathObjCmd because this information is needed both
   323    411   	 * before and after that command is run. */
   324    412   	FindAndSetExecName(interp);
   325    413   
   326         -	TclSetPreInitScript(preInitCmd);
          414  +	return;
          415  +}
          416  +
          417  +int TclKit_AppInit(Tcl_Interp *interp) {
          418  +#ifdef KIT_INCLUDES_TK
          419  +#  ifdef _WIN32
          420  +#    ifndef _WIN32_WCE
          421  +	char msgBuf[2049];
          422  +#    endif /* !_WIN32_WCE */
          423  +#  endif /* _WIN32 */
          424  +#endif /* KIT_INCLUDES_TK */
          425  +
          426  +	/* Perform common initialization */
          427  +	_Tclkit_Generic_Init();
          428  +
          429  +	_Tclkit_Interp_Init(interp);
          430  +
   327    431   	if (Tcl_Init(interp) == TCL_ERROR) {
   328    432   		goto error;
   329    433   	}
   330    434   
   331    435   #ifdef KIT_INCLUDES_TK
   332    436   #  ifdef _WIN32
   333    437   	if (Tk_Init(interp) == TCL_ERROR) {
................................................................................
   376    480   #    endif /* !_WIN32_WCE */
   377    481       /* we won't reach this, but we need the return */
   378    482   #  endif /* _WIN32 */
   379    483   #endif /* KIT_INCLUDES_TK */
   380    484   
   381    485   	return TCL_ERROR;
   382    486   }
          487  +
          488  +
          489  +#ifdef TCLKIT_DLL
          490  +#  ifdef HAVE_ACCEPTABLE_DLADDR
          491  +/* Symbol to resolve against dladdr() */
          492  +static void _tclkit_dummy_func(void) {
          493  +	return;
          494  +}
          495  +#  endif /* HAVE_ACCEPTABLE_DLADDR */
          496  +
          497  +/*
          498  + * This function will return a pathname we can open() to treat as a VFS,
          499  + * hopefully
          500  + */
          501  +static char *find_tclkit_dll_path(void) {
          502  +#ifdef HAVE_ACCEPTABLE_DLADDR
          503  +	Dl_info syminfo;
          504  +	int dladdr_ret;
          505  +#endif /* HAVE_ACCEPTABLE_DLADDR */
          506  +#ifdef _WIN32
          507  +	TCHAR modulename[8192];
          508  +	DWORD gmfn_ret;
          509  +#endif /* _WIN32 */
          510  +
          511  +#ifdef HAVE_ACCEPTABLE_DLADDR
          512  +	dladdr_ret = dladdr(&_tclkit_dummy_func, &syminfo);
          513  +	if (dladdr_ret != 0) {
          514  +		if (syminfo.dli_fname && syminfo.dli_fname[0] != '\0') {
          515  +			return(strdup(syminfo.dli_fname));
          516  +		}
          517  +	}
          518  +#endif /* HAVE_ACCEPTABLE_DLADDR */
          519  +
          520  +#ifdef _WIN32
          521  +	gmfn_ret = GetModuleFileName(TclWinGetTclInstance(), modulename, sizeof(modulename) / sizeof(modulename[0]) - 1);
          522  +
          523  +	if (gmfn_ret != 0) {
          524  +		return(strdup(modulename));
          525  +	}
          526  +#endif /* _WIN32 */
          527  +
          528  +	return(NULL);
          529  +}
          530  +
          531  +/*
          532  + * This function exists to allow C code to initialize a particular
          533  + * interpreter.
          534  + */
          535  +static int tclkit_init_initinterp(ClientData cd, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
          536  +	char *kitdll_path;
          537  +
          538  +	kitdll_path = find_tclkit_dll_path();
          539  +	if (kitdll_path != NULL) {
          540  +		Tcl_SetVar(interp, "tclKitFilename", kitdll_path, TCL_GLOBAL_ONLY);
          541  +
          542  +		free(kitdll_path);
          543  +	}
          544  +
          545  +	_Tclkit_Interp_Init(interp);
          546  +
          547  +	return(TCL_OK);
          548  +}
          549  +
          550  +/*
          551  + * Create a package for initializing a particular interpreter.  This is
          552  + * our hook to have Tcl invoke C commands when creating an interpreter.
          553  + * The preInitCmd will load the package in the new interpreter and invoke
          554  + * this function.
          555  + */
          556  +int Tclkit_init_Init(Tcl_Interp *interp) {
          557  +	Tcl_Command tclCreatComm_ret;
          558  +	int tclPkgProv_ret;
          559  +
          560  +	tclCreatComm_ret = Tcl_CreateObjCommand(interp, "::tclkit::init::initInterp", tclkit_init_initinterp, NULL, NULL);
          561  +	if (!tclCreatComm_ret) {
          562  +		return(TCL_ERROR);
          563  +	}
          564  +
          565  +	tclPkgProv_ret = Tcl_PkgProvide(interp, "tclkit::init", "1.0");
          566  +
          567  +	return(tclPkgProv_ret);
          568  +}
          569  +
          570  +/*
          571  + * Initialize the Tcl system when we are loaded, that way Tcl functions
          572  + * are ready to be used when invoked.
          573  + */
          574  +void __attribute__((constructor)) _Tclkit_Init(void) {
          575  +	Tcl_StaticPackage(0, "tclkit::init", Tclkit_init_Init, NULL);
          576  +
          577  +	_Tclkit_Generic_Init();
          578  +
          579  +	return;
          580  +}
          581  +#endif

Name change from kitdll/buildsrc/kitdll-0.0/tclsh.c to kitsh/buildsrc/kitsh-0.0/tclsh.c.


Name change from kitdll/buildsrc/kitdll-0.0/vfs_kitdll.tcl to kitsh/buildsrc/kitsh-0.0/vfs_kitdll.tcl.


Name change from kitdll/buildsrc/kitdll-0.0/vfs_kitdll_data.c to kitsh/buildsrc/kitsh-0.0/vfs_kitdll_data.c.


Name change from kitdll/buildsrc/kitdll-0.0/wish.c to kitsh/buildsrc/kitsh-0.0/wish.c.