xref: /openbsd/gnu/usr.bin/binutils/configure (revision c88b1d6c)
12159047fSniklas#!/bin/sh
22159047fSniklas
32159047fSniklas### WARNING: this file contains embedded tabs.  Do not run untabify on this file.
42159047fSniklas
52159047fSniklas# Configuration script
62159047fSniklas# Copyright (C) 1988, 90, 91, 92, 93, 94 Free Software Foundation, Inc.
72159047fSniklas
82159047fSniklas# This program is free software; you can redistribute it and/or modify
92159047fSniklas# it under the terms of the GNU General Public License as published by
102159047fSniklas# the Free Software Foundation; either version 2 of the License, or
112159047fSniklas# (at your option) any later version.
122159047fSniklas#
132159047fSniklas# This program is distributed in the hope that it will be useful,
142159047fSniklas# but WITHOUT ANY WARRANTY; without even the implied warranty of
152159047fSniklas# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
162159047fSniklas# GNU General Public License for more details.
172159047fSniklas#
182159047fSniklas# You should have received a copy of the GNU General Public License
192159047fSniklas# along with this program; if not, write to the Free Software
202159047fSniklas# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
212159047fSniklas
222159047fSniklas# This file was originally written by K. Richard Pixley.
232159047fSniklas
242159047fSniklas#
252159047fSniklas# Shell script to create proper links to machine-dependent files in
262159047fSniklas# preparation for compilation.
272159047fSniklas#
282159047fSniklas# If configure succeeds, it leaves its status in config.status.
292159047fSniklas# If configure fails after disturbing the status quo,
302159047fSniklas#       config.status is removed.
312159047fSniklas#
322159047fSniklas
332159047fSniklasexport PATH || (echo "OOPS, this isn't sh.  Desperation time.  I will feed myself to sh."; sh $0 $argv; kill $$)
342159047fSniklas
352159047fSniklasremove=rm
362159047fSniklashard_link=ln
372159047fSniklassymbolic_link='ln -s'
382159047fSniklas
392159047fSniklas#for Test
402159047fSniklas#remove="echo rm"
412159047fSniklas#hard_link="echo ln"
422159047fSniklas#symbolic_link="echo ln -s"
432159047fSniklas
442159047fSniklas# clear some things potentially inherited from environment.
452159047fSniklas
462159047fSniklasMakefile=Makefile
472159047fSniklasMakefile_in=Makefile.in
48*c88b1d6cSniklasarguments=
492159047fSniklasbuild_alias=
502159047fSniklascache_file=
512159047fSniklascache_file_option=
522159047fSniklasconfigdirs=
532159047fSniklasexec_prefix=
542159047fSniklasexec_prefixoption=
552159047fSniklasfatal=
562159047fSniklasfloating_point=default
572159047fSniklasgas=default
582159047fSniklashost_alias=NOHOST
592159047fSniklashost_makefile_frag=
602159047fSniklasmoveifchange=
612159047fSniklasnorecursion=
622159047fSniklasother_options=
632159047fSniklaspackage_makefile_frag=
642159047fSniklasprefix=/usr/local
652159047fSniklasprogname=
662159047fSniklasprogram_prefix=
672159047fSniklasprogram_prefixoption=
682159047fSniklasprogram_suffix=
692159047fSniklasprogram_suffixoption=
702159047fSniklasprogram_transform_name=
712159047fSniklasprogram_transform_nameoption=
722159047fSniklasredirect=">/dev/null"
732159047fSniklasremoving=
742159047fSniklassite=
752159047fSniklassite_makefile_frag=
762159047fSniklassite_option=
772159047fSniklassrcdir=
782159047fSniklassrctrigger=
792159047fSniklassubdirs=
802159047fSniklastarget_alias=NOTARGET
812159047fSniklastarget_makefile_frag=
822159047fSniklasundefs=NOUNDEFS
83*c88b1d6cSniklasversion="$Revision: 1.1.1.2 $"
842159047fSniklasx11=default
852159047fSniklas
862159047fSniklas### we might need to use some other shell than /bin/sh for running subshells
872159047fSniklas#
882159047fSniklasconfig_shell=${CONFIG_SHELL-/bin/sh}
892159047fSniklas
902159047fSniklasNO_EDIT="This file was generated automatically by configure.  Do not edit."
912159047fSniklas
922159047fSniklas## this is a little touchy and won't always work, but...
932159047fSniklas##
942159047fSniklas## if the argv[0] starts with a slash then it is an absolute name that can (and
952159047fSniklas## must) be used as is.
962159047fSniklas##
972159047fSniklas## otherwise, if argv[0] has no slash in it, we can assume that it is on the
982159047fSniklas## path.  Since PATH might include "." we also add `pwd` to the end of PATH.
992159047fSniklas##
1002159047fSniklas
1012159047fSniklasprogname=$0
1022159047fSniklas# if PWD already has a value, it is probably wrong.
1032159047fSniklasif [ -n "$PWD" ]; then PWD=`pwd`; fi
1042159047fSniklas
1052159047fSniklascase "${progname}" in
1062159047fSniklas/*) ;;
1072159047fSniklas*/*) ;;
1082159047fSniklas*)
1092159047fSniklas        PATH=$PATH:${PWD=`pwd`} ; export PATH
1102159047fSniklas        ;;
1112159047fSniklasesac
1122159047fSniklas
1132159047fSniklas# Loop over all args
1142159047fSniklas
1152159047fSniklaswhile :
1162159047fSniklasdo
1172159047fSniklas
1182159047fSniklas# Break out if there are no more args
1192159047fSniklas	case $# in
1202159047fSniklas	0)
1212159047fSniklas		break
1222159047fSniklas		;;
1232159047fSniklas	esac
1242159047fSniklas
1252159047fSniklas# Get the first arg, and shuffle
1262159047fSniklas	option=$1
1272159047fSniklas	shift
1282159047fSniklas
1292159047fSniklas# Make all options have two hyphens
1302159047fSniklas	orig_option=$option	# Save original for error messages
1312159047fSniklas	case $option in
1322159047fSniklas	--*) ;;
1332159047fSniklas	-*) option=-$option ;;
1342159047fSniklas	esac
1352159047fSniklas
1362159047fSniklas# Split out the argument for options that take them
1372159047fSniklas	case $option in
1382159047fSniklas	--*=*)
1392159047fSniklas		optarg=`echo $option | sed -e 's/^[^=]*=//'`
140*c88b1d6cSniklas		arguments="$arguments $option"
1412159047fSniklas		;;
1422159047fSniklas# These options have mandatory values.  Since we didn't find an = sign,
1432159047fSniklas# the value must be in the next argument
144*c88b1d6cSniklas	--bu* | --cache* | --ex* | --ho* | --pre* | --program-p* | --program-s* | --program-t* | --si* | --sr* | --ta* | --tm* | --x-* | --bi* | --sb* | --li* | --da* | --sy* | --sh* | --lo* | --in* | --ol* | --ma*)
1452159047fSniklas		optarg=$1
1462159047fSniklas		shift
147*c88b1d6cSniklas		arguments="$arguments $option=$optarg"
148*c88b1d6cSniklas		;;
149*c88b1d6cSniklas	--v)
150*c88b1d6cSniklas		arguments="$arguments -v"
151*c88b1d6cSniklas		;;
152*c88b1d6cSniklas	--*)
153*c88b1d6cSniklas		arguments="$arguments $option"
1542159047fSniklas		;;
1552159047fSniklas	esac
1562159047fSniklas
1572159047fSniklas# Now, process the options
1582159047fSniklas	case $option in
1592159047fSniklas
160*c88b1d6cSniklas	--build* | --bu*)
1612159047fSniklas		case "$build_alias" in
1622159047fSniklas		"") build_alias=$optarg ;;
1632159047fSniklas		*) echo '***' Can only configure for one build machine at a time.  1>&2
1642159047fSniklas		   fatal=yes
1652159047fSniklas		   ;;
1662159047fSniklas		esac
1672159047fSniklas		;;
1682159047fSniklas	--cache*)
1692159047fSniklas		cache_file=$optarg
1702159047fSniklas		;;
1712159047fSniklas	--disable-*)
1722159047fSniklas		enableopt=`echo ${option} | sed 's:^--disable-:enable_:;s:-:_:g'`
1732159047fSniklas		eval $enableopt=no
1742159047fSniklas		disableoptions="$disableoptions $option"
1752159047fSniklas		;;
1762159047fSniklas	--enable-*)
1772159047fSniklas		case "$option" in
1782159047fSniklas		*=*)	;;
1792159047fSniklas		*)	optarg=yes ;;
1802159047fSniklas		esac
1812159047fSniklas
1822159047fSniklas		enableopt=`echo ${option} | sed 's:^--::;s:=.*$::;s:-:_:g'`
183*c88b1d6cSniklas		eval "$enableopt='$optarg'"
184*c88b1d6cSniklas		enableoptions="$enableoptions '$option'"
1852159047fSniklas		;;
1862159047fSniklas	--exec-prefix* | --ex*)
1872159047fSniklas		exec_prefix=$optarg
1882159047fSniklas		exec_prefixoption="--exec-prefix=$optarg"
1892159047fSniklas		;;
1902159047fSniklas	--gas | --g*)
1912159047fSniklas		gas=yes
1922159047fSniklas		;;
1932159047fSniklas	--help | --he*)
1942159047fSniklas		fatal=yes
1952159047fSniklas		;;
1962159047fSniklas	--host* | --ho*)
1972159047fSniklas		case $host_alias in
1982159047fSniklas		NOHOST) host_alias=$optarg ;;
1992159047fSniklas		*) echo '***' Can only configure for one host at a time.  1>&2
2002159047fSniklas		   fatal=yes
2012159047fSniklas		   ;;
2022159047fSniklas		esac
2032159047fSniklas		;;
2042159047fSniklas	--nfp | --nf*)
2052159047fSniklas		floating_point=no
206*c88b1d6cSniklas		floating_pointoption="--nfp"
2072159047fSniklas		;;
2082159047fSniklas	--norecursion | --no*)
2092159047fSniklas		norecursion=yes
2102159047fSniklas		;;
2112159047fSniklas	--prefix* | --pre*)
2122159047fSniklas		prefix=$optarg
2132159047fSniklas		prefixoption="--prefix=$optarg"
2142159047fSniklas		;;
2152159047fSniklas	--program-prefix* | --program-p*)
2162159047fSniklas		program_prefix=$optarg
2172159047fSniklas		program_prefixoption="--program-prefix=$optarg"
2182159047fSniklas		;;
2192159047fSniklas	--program-suffix* | --program-s*)
2202159047fSniklas		program_suffix=$optarg
2212159047fSniklas		program_suffixoption="--program-suffix=$optarg"
2222159047fSniklas		;;
2232159047fSniklas	--program-transform-name* | --program-t*)
2242159047fSniklas		# Double any backslashes or dollar signs in the argument
2252159047fSniklas		program_transform_name="${program_transform_name} -e `echo ${optarg} | sed -e 's/\\\\/\\\\\\\\/g' -e 's/\\\$/$$/g'`"
2262159047fSniklas		program_transform_nameoption="${program_transform_nameoption} --program-transform-name='$optarg'"
2272159047fSniklas		;;
2282159047fSniklas	--rm)
2292159047fSniklas		removing=--rm
2302159047fSniklas		;;
2312159047fSniklas	--silent | --sil* | --quiet | --q*)
2322159047fSniklas		redirect=">/dev/null"
2332159047fSniklas		verbose=--silent
2342159047fSniklas		;;
2352159047fSniklas	--site* | --sit*)
2362159047fSniklas		site=$optarg
2372159047fSniklas		site_option="--site=$optarg"
2382159047fSniklas		;;
2392159047fSniklas	--srcdir*/ | --sr*/)
2402159047fSniklas                # Remove trailing slashes.  Otherwise, when the file name gets
2412159047fSniklas                # bolted into an object file as debug info, it has two slashes
2422159047fSniklas                # in it.  Ordinarily this is ok, but emacs takes double slash
2432159047fSniklas                # to mean "forget the first part".
2442159047fSniklas		srcdir=`echo $optarg | sed -e 's:/$::'`
2452159047fSniklas		;;
2462159047fSniklas	--srcdir* | --sr*)
2472159047fSniklas		srcdir=$optarg
2482159047fSniklas		;;
2492159047fSniklas	--target* | --ta*)
2502159047fSniklas		case $target_alias in
2512159047fSniklas		NOTARGET) target_alias=$optarg ;;
2522159047fSniklas		*) echo '***' Can only configure for one target at a time.  1>&2
2532159047fSniklas		   fatal=yes
2542159047fSniklas		   ;;
2552159047fSniklas		esac
2562159047fSniklas		;;
2572159047fSniklas	--tmpdir* | --tm*)
2582159047fSniklas		TMPDIR=$optarg
2592159047fSniklas		tmpdiroption="--tmpdir=$optarg"
2602159047fSniklas		;;
2612159047fSniklas	--verbose | --v | --verb*)
2622159047fSniklas		redirect=
2632159047fSniklas		verbose=--verbose
2642159047fSniklas		;;
2652159047fSniklas	--version | --V | --vers*)
2662159047fSniklas		echo "This is Cygnus Configure version" `echo ${version} | sed 's/[ $:]//g'`
2672159047fSniklas		exit 0
2682159047fSniklas		;;
2692159047fSniklas	--with-*)
2702159047fSniklas		case "$option" in
2712159047fSniklas		*=*)	;;
2722159047fSniklas		*)	optarg=yes ;;
2732159047fSniklas		esac
2742159047fSniklas
2752159047fSniklas		withopt=`echo ${option} | sed 's:^--::;s:=.*$::;s:-:_:g'`
2762159047fSniklas		eval $withopt="$optarg"
2772159047fSniklas		withoptions="$withoptions $option"
2782159047fSniklas		;;
2792159047fSniklas	--without-*)
2802159047fSniklas		withopt=`echo ${option} | sed 's:^--::;s:out::;s:-:_:g'`
2812159047fSniklas		eval $withopt=no
2822159047fSniklas		withoutoptions="$withoutoptions $option"
2832159047fSniklas		;;
2842159047fSniklas	--x)	with_x=yes
2852159047fSniklas		withoptions="$withoptions --with-x"
2862159047fSniklas		;;
2872159047fSniklas	--x-i* | --x-l*) other_options="$other_options $orig_option"
2882159047fSniklas		;;
289*c88b1d6cSniklas	--bi* | --sb* | --li* | --da* | --sy* | --sh* | --lo* | --in* | --ol* | --ma*)
290*c88b1d6cSniklas		# These options were added to autoconf for emacs.
291*c88b1d6cSniklas		;;
2922159047fSniklas	--*)
2932159047fSniklas		echo "configure: Unrecognized option: \"$orig_option\"; use --help for usage." >&2
2942159047fSniklas		exit 1
2952159047fSniklas		;;
2962159047fSniklas	*)
2972159047fSniklas		case $undefs in
2982159047fSniklas		NOUNDEFS) undefs=$option ;;
2992159047fSniklas		*) echo '***' Can only configure for one host and one target at a time.  1>&2
3002159047fSniklas		   fatal=yes
3012159047fSniklas		   ;;
3022159047fSniklas		esac
3032159047fSniklas		;;
3042159047fSniklas	esac
3052159047fSniklasdone
3062159047fSniklas
3072159047fSniklas# process host and target
3082159047fSniklas
3092159047fSniklas# Do some error checking and defaulting for the host and target type.
3102159047fSniklas# The inputs are:
3112159047fSniklas#    configure --host=HOST --target=TARGET UNDEFS
3122159047fSniklas#
3132159047fSniklas# The rules are:
3142159047fSniklas# 1. You aren't allowed to specify --host, --target, and undefs at the
3152159047fSniklas#    same time.
3162159047fSniklas# 2. Host defaults to undefs.
3172159047fSniklas# 3. If undefs is not specified, then host defaults to the current host,
3182159047fSniklas#    as determined by config.guess.
3192159047fSniklas# 4. Target defaults to undefs.
3202159047fSniklas# 5. If undefs is not specified, then target defaults to host.
3212159047fSniklas
3222159047fSniklascase "${fatal}" in
3232159047fSniklas"")
3242159047fSniklas	# Make sure that host, target & undefs aren't all specified at the
3252159047fSniklas	# same time.
3262159047fSniklas	case $host_alias---$target_alias---$undefs in
3272159047fSniklas	NOHOST---*---* | *---NOTARGET---* | *---*---NOUNDEFS)
3282159047fSniklas		;;
3292159047fSniklas	*) echo '***' Can only configure for one host and one target at a time.  1>&2
3302159047fSniklas	   fatal=yes
3312159047fSniklas	   break 2
3322159047fSniklas		;;
3332159047fSniklas	esac
3342159047fSniklas
3352159047fSniklas	# Now, do defaulting for host.
3362159047fSniklas	case $host_alias in
3372159047fSniklas	NOHOST)
3382159047fSniklas		case $undefs in
3392159047fSniklas		NOUNDEFS)
3402159047fSniklas			# Neither --host option nor undefs were present.
3412159047fSniklas			# Call config.guess.
3422159047fSniklas			guesssys=`echo ${progname} | sed 's/configure$/config.guess/'`
3432159047fSniklas			if host_alias=`${guesssys}`
3442159047fSniklas			then
3452159047fSniklas				# If the string we are going to use for
3462159047fSniklas				# the target is a prefix of the string
3472159047fSniklas				# we just guessed for the host, then
3482159047fSniklas				# assume we are running native, and force
3492159047fSniklas				# the same string for both target and host.
3502159047fSniklas				case $target_alias in
3512159047fSniklas				NOTARGET) ;;
3522159047fSniklas				*)
3532159047fSniklas					if expr $host_alias : $target_alias >/dev/null
3542159047fSniklas					then
3552159047fSniklas						host_alias=$target_alias
3562159047fSniklas					fi
3572159047fSniklas					;;
3582159047fSniklas				esac
3592159047fSniklas				echo "Configuring for a ${host_alias} host." 1>&2
3602159047fSniklas				arguments="--host=$host_alias $arguments"
3612159047fSniklas			else
3622159047fSniklas				echo 'Config.guess failed to determine the host type.  You need to specify one.' 1>&2
3632159047fSniklas				fatal=yes
3642159047fSniklas			fi
3652159047fSniklas			;;
3662159047fSniklas		*)
3672159047fSniklas			host_alias=$undefs
368*c88b1d6cSniklas			arguments="--host=$host_alias $arguments"
369*c88b1d6cSniklas			undefs=NOUNDEFS
3702159047fSniklas			;;
3712159047fSniklas		esac
3722159047fSniklas	esac
3732159047fSniklas
3742159047fSniklas	# Do defaulting for target.  If --target option isn't present, default
3752159047fSniklas	# to undefs.  If undefs isn't present, default to host.
3762159047fSniklas	case $target_alias in
3772159047fSniklas	NOTARGET)
3782159047fSniklas		case $undefs in
3792159047fSniklas		NOUNDEFS)
3802159047fSniklas			target_alias=$host_alias
3812159047fSniklas			;;
3822159047fSniklas		*)
3832159047fSniklas			target_alias=$undefs
384*c88b1d6cSniklas			arguments="--target=$target_alias $arguments"
3852159047fSniklas			;;
3862159047fSniklas		esac
3872159047fSniklas	esac
3882159047fSniklas	;;
3892159047fSniklas*) ;;
3902159047fSniklasesac
3912159047fSniklas
3922159047fSniklasif [ -n "${fatal}" -o "${host_alias}" = "help" ] ; then
3932159047fSniklas	exec 1>&2
3942159047fSniklas	echo Usage: configure [OPTIONS] [HOST]
3952159047fSniklas	echo
3962159047fSniklas	echo Options: [defaults in brackets]
3972159047fSniklas	echo ' --prefix=MYDIR		 install into MYDIR [/usr/local]'
3982159047fSniklas	echo ' --exec-prefix=MYDIR	 install host-dependent files into MYDIR [/usr/local]'
3992159047fSniklas	echo ' --help			 print this message [normal config]'
4002159047fSniklas	echo ' --build=BUILD		 configure for building on BUILD [BUILD=HOST]'
4012159047fSniklas	echo ' --host=HOST		 configure for HOST [determined via config.guess]'
4022159047fSniklas	echo ' --norecursion		 configure this directory only [recurse]'
4032159047fSniklas	echo ' --program-prefix=FOO	 prepend FOO to installed program names [""]'
4042159047fSniklas	echo ' --program-suffix=FOO	 append FOO to installed program names [""]'
4052159047fSniklas	echo ' --program-transform-name=P transform installed names by sed pattern P [""]'
4062159047fSniklas	echo ' --site=SITE		 configure with site-specific makefile for SITE'
4072159047fSniklas	echo ' --srcdir=DIR		 find the sources in DIR [. or ..]'
4082159047fSniklas	echo ' --target=TARGET	 configure for TARGET [TARGET=HOST]'
4092159047fSniklas	echo ' --tmpdir=TMPDIR	 create temporary files in TMPDIR [/tmp]'
4102159047fSniklas	echo ' --nfp			 configure for software floating point [hard float]'
4112159047fSniklas	echo ' --with-FOO, --with-FOO=BAR package FOO is available (parameter BAR)'
4122159047fSniklas	echo ' --without-FOO		 package FOO is NOT available'
4132159047fSniklas	echo ' --enable-FOO, --enable-FOO=BAR include feature FOO (parameter BAR)'
4142159047fSniklas	echo ' --disable-FOO		 do not include feature FOO'
4152159047fSniklas	echo
4162159047fSniklas	echo 'Where HOST and TARGET are something like "sparc-sunos", "mips-sgi-irix5", etc.'
4172159047fSniklas	echo
4182159047fSniklas	if [ -r config.status ] ; then
4192159047fSniklas		cat config.status
4202159047fSniklas	fi
4212159047fSniklas
4222159047fSniklas	exit 1
4232159047fSniklasfi
4242159047fSniklas
4252159047fSniklasconfigsub=`echo ${progname} | sed 's/configure$/config.sub/'`
4262159047fSniklasmoveifchange=`echo ${progname} | sed 's/configure$/move-if-change/'`
4272159047fSniklas
4282159047fSniklas# this is a hack.  sun4 must always be a valid host alias or this will fail.
4292159047fSniklasif ${configsub} sun4 >/dev/null 2>&1 ; then
4302159047fSniklas        true
4312159047fSniklaselse
4322159047fSniklas        echo '***' cannot find config.sub.  1>&2
4332159047fSniklas        exit 1
4342159047fSniklasfi
4352159047fSniklas
4362159047fSniklastouch config.junk
4372159047fSniklasif ${moveifchange} config.junk config.trash ; then
4382159047fSniklas        true
4392159047fSniklaselse
4402159047fSniklas        echo '***' cannot find move-if-change.  1>&2
4412159047fSniklas        exit 1
4422159047fSniklasfi
4432159047fSniklasrm -f config.junk config.trash
4442159047fSniklas
4452159047fSniklascase "${srcdir}" in
4462159047fSniklas"")
4472159047fSniklas        if [ -r configure.in ] ; then
4482159047fSniklas                srcdir=.
4492159047fSniklas        else
4502159047fSniklas                if [ -r ${progname}.in ] ; then
4512159047fSniklas                        srcdir=`echo ${progname} | sed 's:/configure$::'`
4522159047fSniklas                else
4532159047fSniklas                        echo '***' "Can't find configure.in.  Try using --srcdir=some_dir"  1>&2
4542159047fSniklas                        exit 1
4552159047fSniklas                fi
4562159047fSniklas        fi
4572159047fSniklas        ;;
4582159047fSniklas*)
4592159047fSniklas	# Set srcdir to "." if that's what it is.
4602159047fSniklas	# This is important for multilib support.
4612159047fSniklas	if [ ! -d ${srcdir} ] ; then
4622159047fSniklas		echo "Invalid source directory ${srcdir}" >&2
4632159047fSniklas		exit 1
4642159047fSniklas	fi
4652159047fSniklas	pwd=`pwd`
4662159047fSniklas	srcpwd=`cd ${srcdir} ; pwd`
4672159047fSniklas	if [ "${pwd}" = "${srcpwd}" ] ; then
4682159047fSniklas		srcdir=.
4692159047fSniklas	fi
4702159047fSniklasesac
4712159047fSniklas
4722159047fSniklas### warn about some conflicting configurations.
4732159047fSniklas
4742159047fSniklascase "${srcdir}" in
4752159047fSniklas".") ;;
4762159047fSniklas*)
4772159047fSniklas        if [ -f ${srcdir}/config.status ] ; then
4782159047fSniklas                echo '***' Cannot configure here in \"${PWD=`pwd`}\" when \"${srcdir}\" is currently configured. 1>&2
4792159047fSniklas                exit 1
4802159047fSniklas        fi
4812159047fSniklasesac
4822159047fSniklas
4832159047fSniklas# default exec_prefix
4842159047fSniklascase "${exec_prefixoption}" in
4852159047fSniklas"") exec_prefix="\$(prefix)" ;;
4862159047fSniklas*) ;;
4872159047fSniklasesac
4882159047fSniklas
4892159047fSniklas### break up ${srcdir}/configure.in.
4902159047fSniklascase "`grep '^# per\-host:' ${srcdir}/configure.in`" in
4912159047fSniklas"")
4922159047fSniklas        echo '***' ${srcdir}/configure.in has no \"per-host:\" line. 1>&2
4932159047fSniklas	# Check for a directory that's been converted to use autoconf since
4942159047fSniklas	# it was last configured.
4952159047fSniklas	if grep AC_OUTPUT ${srcdir}/configure.in >/dev/null ; then
4962159047fSniklas	  echo '***' Hmm, looks like this directory has been autoconfiscated. 1>&2
4972159047fSniklas	  if [ -r ${srcdir}/configure ] ; then
4982159047fSniklas	    echo '***' Running the local configure script. 1>&2
4992159047fSniklas	    case "${cache_file}" in
5002159047fSniklas	    "") cache_file_option= ;;
5012159047fSniklas	    *)  cache_file_option="--cache-file=${cache_file}" ;;
5022159047fSniklas	    esac
5032159047fSniklas	    srcdiroption="--srcdir=${srcdir}"
5042159047fSniklas	    case "${build_alias}" in
5052159047fSniklas	    "") buildopt= ;;
5062159047fSniklas	    *)  buildopt="--build=${build_alias}" ;;
5072159047fSniklas	    esac
5082159047fSniklas	    eval exec ${config_shell} ${srcdir}/configure ${verbose} \
5092159047fSniklas		${buildopt} --host=${host_alias} --target=${target_alias} \
5102159047fSniklas		${prefixoption} ${tmpdiroption} ${exec_prefixoption} \
5112159047fSniklas		${srcdiroption} \
5122159047fSniklas		${program_prefixoption} ${program_suffixoption} \
5132159047fSniklas		${program_transform_nameoption} ${site_option} \
5142159047fSniklas		${withoptions} ${withoutoptions} \
515*c88b1d6cSniklas		${enableoptions} ${disableoptions} ${floating_pointoption} \
5162159047fSniklas		${cache_file_option} ${removing} ${other_options} ${redirect}
5172159047fSniklas	  else
5182159047fSniklas	    echo '***' There is no configure script present though. 1>&2
5192159047fSniklas	  fi
5202159047fSniklas	fi
5212159047fSniklas        exit 1
5222159047fSniklas        ;;
5232159047fSniklas*) ;;
5242159047fSniklasesac
5252159047fSniklas
5262159047fSniklascase "`grep '^# per\-target:' ${srcdir}/configure.in`" in
5272159047fSniklas"")
5282159047fSniklas        echo '***' ${srcdir}/configure.in has no \"per-target:\" line. 1>&2
5292159047fSniklas        exit 1
5302159047fSniklas        ;;
5312159047fSniklas*) ;;
5322159047fSniklasesac
5332159047fSniklas
5342159047fSniklascase "${TMPDIR}" in
5352159047fSniklas"") TMPDIR=/tmp ; export TMPDIR ;;
5362159047fSniklas*) ;;
5372159047fSniklasesac
5382159047fSniklas
5392159047fSniklas# keep this filename short for &%*%$*# 14 char file names
5402159047fSniklastmpfile=${TMPDIR}/cONf$$
5412159047fSniklas# Note that under many versions of sh a trap handler for 0 will *override* any
5422159047fSniklas# exit status you explicitly specify!  At this point, the only non-error exit
5432159047fSniklas# is at the end of the script; these actions are duplicated there, minus
5442159047fSniklas# the "exit 1".  Don't use "exit 0" anywhere after this without resetting the
5452159047fSniklas# trap handler, or you'll lose.
5462159047fSniklastrap "rm -f Makefile.tem ${tmpfile}.com ${tmpfile}.tgt ${tmpfile}.hst ${tmpfile}.pos; exit 1" 0 1 2 15
5472159047fSniklas
5482159047fSniklas# split ${srcdir}/configure.in into common, per-host, per-target,
5492159047fSniklas# and post-target parts.  Post-target is optional.
5502159047fSniklassed -e '/^# per\-host:/,$d' ${srcdir}/configure.in > ${tmpfile}.com
5512159047fSniklassed -e '1,/^# per\-host:/d' -e '/^# per\-target:/,$d' ${srcdir}/configure.in > ${tmpfile}.hst
5522159047fSniklasif grep '^# post-target:' ${srcdir}/configure.in >/dev/null ; then
5532159047fSniklas  sed -e '1,/^# per\-target:/d' -e '/^# post\-target:/,$d' ${srcdir}/configure.in > ${tmpfile}.tgt
5542159047fSniklas  sed -e '1,/^# post\-target:/d' ${srcdir}/configure.in > ${tmpfile}.pos
5552159047fSniklaselse
5562159047fSniklas  sed -e '1,/^# per\-target:/d' ${srcdir}/configure.in > ${tmpfile}.tgt
5572159047fSniklas  echo >${tmpfile}.pos
5582159047fSniklasfi
5592159047fSniklas
5602159047fSniklas### do common part of configure.in
5612159047fSniklas
5622159047fSniklas. ${tmpfile}.com
5632159047fSniklas
5642159047fSniklas# some sanity checks on configure.in
5652159047fSniklascase "${srctrigger}" in
5662159047fSniklas"")
5672159047fSniklas        echo '***' srctrigger not set in ${PWD=`pwd`}/configure.in.  1>&2
5682159047fSniklas        exit 1
5692159047fSniklas        ;;
5702159047fSniklas*) ;;
5712159047fSniklasesac
5722159047fSniklas
5732159047fSniklascase "${build_alias}" in
5742159047fSniklas"")
5752159047fSniklas	if result=`${config_shell} ${configsub} ${host_alias}` ; then
5762159047fSniklas	    build_cpu=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
5772159047fSniklas	    build_vendor=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'`
5782159047fSniklas	    build_os=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'`
5792159047fSniklas	    build=${build_cpu}-${build_vendor}-${build_os}
5802159047fSniklas	    build_alias=${host_alias}
5812159047fSniklas	fi
5822159047fSniklas	;;
5832159047fSniklas*)
5842159047fSniklas	if result=`${config_shell} ${configsub} ${build_alias}` ; then
5852159047fSniklas	    buildopt="--build=${build_alias}"
5862159047fSniklas	    build_cpu=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
5872159047fSniklas	    build_vendor=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'`
5882159047fSniklas	    build_os=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'`
5892159047fSniklas	    build=${build_cpu}-${build_vendor}-${build_os}
5902159047fSniklas	else
5912159047fSniklas	    echo "Unrecognized build system name ${build_alias}." 1>&2
5922159047fSniklas	    exit 1
5932159047fSniklas	fi
5942159047fSniklas	;;
5952159047fSniklasesac
5962159047fSniklas
5972159047fSniklasif result=`${config_shell} ${configsub} ${host_alias}` ; then
5982159047fSniklas    true
5992159047fSniklaselse
6002159047fSniklas    echo "Unrecognized host system name ${host_alias}." 1>&2
6012159047fSniklas    exit 1
6022159047fSniklasfi
6032159047fSniklashost_cpu=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
6042159047fSniklashost_vendor=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'`
6052159047fSniklashost_os=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'`
6062159047fSniklashost=${host_cpu}-${host_vendor}-${host_os}
6072159047fSniklas
6082159047fSniklas. ${tmpfile}.hst
6092159047fSniklas
6102159047fSniklasif result=`${config_shell} ${configsub} ${target_alias}` ; then
6112159047fSniklas    true
6122159047fSniklaselse
6132159047fSniklas    echo "Unrecognized target system name ${target_alias}." 1>&2
6142159047fSniklas    exit 1
6152159047fSniklasfi
6162159047fSniklastarget_cpu=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'`
6172159047fSniklastarget_vendor=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'`
6182159047fSniklastarget_os=`echo $result | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'`
6192159047fSniklastarget=${target_cpu}-${target_vendor}-${target_os}
6202159047fSniklas
6212159047fSniklas. ${tmpfile}.tgt
6222159047fSniklas
6232159047fSniklas# Find the source files, if location was not specified.
6242159047fSniklascase "${srcdir}" in
6252159047fSniklas"")
6262159047fSniklas        srcdirdefaulted=1
6272159047fSniklas        srcdir=.
6282159047fSniklas        if [ ! -r ${srctrigger} ] ; then
6292159047fSniklas                srcdir=..
6302159047fSniklas        fi
6312159047fSniklas        ;;
6322159047fSniklas*) ;;
6332159047fSniklasesac
6342159047fSniklas
6352159047fSniklasif [ ! -r ${srcdir}/${srctrigger} ] ; then
6362159047fSniklas        case "${srcdirdefaulted}" in
6372159047fSniklas        "") echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`pwd`}/${srcdir}" 1>&2 ;;
6382159047fSniklas        *)  echo '***' "${progname}: Can't find ${srcname} sources in ${PWD=`pwd`}/. or ${PWD=`pwd`}/.." 1>&2 ;;
6392159047fSniklas        esac
6402159047fSniklas
6412159047fSniklas        echo '***' \(At least ${srctrigger} is missing.\) 1>&2
6422159047fSniklas        exit 1
6432159047fSniklasfi
6442159047fSniklas
6452159047fSniklas# Some systems (e.g., one of the i386-aix systems the gas testers are
6462159047fSniklas# using) don't handle "\$" correctly, so don't use it here.
6472159047fSniklastooldir='$(exec_prefix)'/${target_alias}
6482159047fSniklas
6492159047fSniklasif [ "${host_alias}" != "${target_alias}" ] ; then
6502159047fSniklas    if [ "${program_prefixoption}" = "" ] ; then
6512159047fSniklas        if [ "${program_suffixoption}" = "" ] ; then
6522159047fSniklas            if [ "${program_transform_nameoption}" = "" ] ; then
6532159047fSniklas                program_prefix=${target_alias}- ;
6542159047fSniklas            fi
6552159047fSniklas        fi
6562159047fSniklas    fi
6572159047fSniklasfi
6582159047fSniklas
6592159047fSniklas# Merge program_prefix and program_suffix onto program_transform_name.
6602159047fSniklas# (program_suffix used to use $, but it's hard to preserve $ through both
6612159047fSniklas# make and sh.)
6622159047fSniklasif [ "${program_suffix}" != "" ] ; then
6632159047fSniklas    program_transform_name="-e s,\\\\(.*\\\\),\\\\1${program_suffix}, ${program_transform_name}"
6642159047fSniklasfi
6652159047fSniklas
6662159047fSniklasif [ "${program_prefix}" != "" ] ; then
6672159047fSniklas    program_transform_name="-e s,^,${program_prefix}, ${program_transform_name}"
6682159047fSniklasfi
6692159047fSniklas
6702159047fSniklas# If CC and CXX are not set in the environment, and the Makefile
6712159047fSniklas# exists, try to extract them from it.  This is to handle running
6722159047fSniklas# ./config.status by hand.
6732159047fSniklasif [ -z "${CC}" -a -r Makefile ]; then
6742159047fSniklas  sed -n -e ':loop
6752159047fSniklas/\\$/ N
6762159047fSniklas/\\$/ b loop
6772159047fSniklass/\\\n//g
6782159047fSniklas/^CC[ 	]*=/ s/CC[ 	]*=[ 	]*\(.*\)/\1/p' < Makefile > Makefile.cc
6792159047fSniklas  CC=`tail -1 Makefile.cc`
6802159047fSniklas  rm -f Makefile.cc
6812159047fSniklasfi
6822159047fSniklas
6832159047fSniklasif [ -z "${CXX}" -a -r Makefile ]; then
6842159047fSniklas  sed -n -e ':loop
6852159047fSniklas/\\$/ N
6862159047fSniklas/\\$/ b loop
6872159047fSniklass/\\\n//g
6882159047fSniklas/^CXX[ 	]*=/ s/CXX[ 	]*=[ 	]*\(.*\)/\1/p' < Makefile > Makefile.cc
6892159047fSniklas  CXX=`tail -1 Makefile.cc`
6902159047fSniklas  rm -f Makefile.cc
6912159047fSniklasfi
6922159047fSniklas
693*c88b1d6cSniklas# Generate a default definition for YACC.  This is used if the makefile can't
694*c88b1d6cSniklas# locate bison or byacc in objdir.
695*c88b1d6cSniklas
696*c88b1d6cSniklasfor prog in 'bison -y' byacc yacc
697*c88b1d6cSniklasdo
698*c88b1d6cSniklas  set dummy $prog; tmp=$2
699*c88b1d6cSniklas  IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}:"
700*c88b1d6cSniklas  for dir in $PATH; do
701*c88b1d6cSniklas    test -z "$dir" && dir=.
702*c88b1d6cSniklas    if test -f $dir/$tmp; then
703*c88b1d6cSniklas      DEFAULT_YACC="$prog"
704*c88b1d6cSniklas      break
705*c88b1d6cSniklas    fi
706*c88b1d6cSniklas  done
707*c88b1d6cSniklas  IFS="$save_ifs"
708*c88b1d6cSniklas
709*c88b1d6cSniklas  test -n "$DEFAULT_YACC" && break
710*c88b1d6cSniklasdone
711*c88b1d6cSniklas
712*c88b1d6cSniklas# Generate a default definition for LEX.  This is used if the makefile can't
713*c88b1d6cSniklas# locate flex in objdir.
714*c88b1d6cSniklas
715*c88b1d6cSniklasfor prog in flex lex
716*c88b1d6cSniklasdo
717*c88b1d6cSniklas  set dummy $prog; tmp=$2
718*c88b1d6cSniklas  IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}:"
719*c88b1d6cSniklas  for dir in $PATH; do
720*c88b1d6cSniklas    test -z "$dir" && dir=.
721*c88b1d6cSniklas    if test -f $dir/$tmp; then
722*c88b1d6cSniklas      DEFAULT_LEX="$prog"
723*c88b1d6cSniklas      break
724*c88b1d6cSniklas    fi
725*c88b1d6cSniklas  done
726*c88b1d6cSniklas  IFS="$save_ifs"
727*c88b1d6cSniklas
728*c88b1d6cSniklas  test -n "$DEFAULT_LEX" && break
729*c88b1d6cSniklasdone
730*c88b1d6cSniklas
7312159047fSniklasif [ "${build}" != "${host}" ]; then
7322159047fSniklas  # If we are doing a Canadian Cross, in which the host and build systems
7332159047fSniklas  # are not the same, we set reasonable default values for the tools.
7342159047fSniklas
7352159047fSniklas  tools="AR AR_FOR_TARGET AS AS_FOR_TARGET BISON CC_FOR_BUILD"
736*c88b1d6cSniklas  tools="${tools} CC_FOR_TARGET CXX_FOR_TARGET"
737*c88b1d6cSniklas  tools="${tools} DLLTOOL DLLTOOL_FOR_TARGET HOST_PREFIX"
7382159047fSniklas  tools="${tools} HOST_PREFIX_1 LD LD_FOR_TARGET LEX MAKEINFO NM"
7392159047fSniklas  tools="${tools} NM_FOR_TARGET RANLIB RANLIB_FOR_TARGET"
7402159047fSniklas
7412159047fSniklas  for var in ${tools}; do
7422159047fSniklas    if [ -z "`eval 'echo $'"${var}"`" -a -r Makefile ]; then
7432159047fSniklas      sed -n -e ':loop
7442159047fSniklas/\\$/ N
7452159047fSniklas/\\$/ b loop
7462159047fSniklass/\\\n//g
7472159047fSniklas/^'"${var}"'[ 	]*=/ s/'"${var}"'[ 	]*=[ 	]*\(.*\)/\1/p' \
7482159047fSniklas	< Makefile > Makefile.v
7492159047fSniklas      t=`tail -1 Makefile.v`
7502159047fSniklas      if [ -n "${t}" ]; then
7512159047fSniklas	eval "${var}='${t}'"
7522159047fSniklas      fi
7532159047fSniklas      rm -f Makefile.v
7542159047fSniklas    fi
7552159047fSniklas  done
7562159047fSniklas
7572159047fSniklas  AR=${AR-${host_alias}-ar}
7582159047fSniklas  AR_FOR_TARGET=${AR_FOR_TARGET-${target_alias}-ar}
7592159047fSniklas  AS=${AS-${host_alias}-as}
7602159047fSniklas  AS_FOR_TARGET=${AS_FOR_TARGET-${target_alias}-as}
7612159047fSniklas  CC=${CC-${host_alias}-gcc}
7622159047fSniklas  CXX=${CXX-${host_alias}-gcc}
7632159047fSniklas  CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
7642159047fSniklas  CC_FOR_TARGET=${CC_FOR_TARGET-${target_alias}-gcc}
7652159047fSniklas  CXX_FOR_TARGET=${CXX_FOR_TARGET-${target_alias}-gcc}
766*c88b1d6cSniklas  DLLTOOL=${DLLTOOL-${host_alias}-dlltool}
767*c88b1d6cSniklas  DLLTOOL_FOR_TARGET=${DLLTOOL_FOR_TARGET-${target_alias}-dlltool}
7682159047fSniklas  HOST_PREFIX=${build_alias}-
7692159047fSniklas  HOST_PREFIX_1=${build_alias}-
7702159047fSniklas  LD=${LD-${host_alias}-ld}
7712159047fSniklas  LD_FOR_TARGET=${LD_FOR_TARGET-${target_alias}-ld}
7722159047fSniklas  MAKEINFO=${MAKEINFO-makeinfo}
7732159047fSniklas  NM=${NM-${host_alias}-nm}
7742159047fSniklas  NM_FOR_TARGET=${NM_FOR_TARGET-${target_alias}-nm}
7752159047fSniklas  RANLIB=${RANLIB-${host_alias}-ranlib}
7762159047fSniklas  RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET-${target_alias}-ranlib}
7772159047fSniklas
7782159047fSniklas  if [ -z "${BISON}" ]; then
7792159047fSniklas    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}:"
7802159047fSniklas    for dir in $PATH; do
7812159047fSniklas      test -z "$dir" && dir=.
7822159047fSniklas      if test -f $dir/byacc; then
7832159047fSniklas	BISON=byacc
7842159047fSniklas	break
7852159047fSniklas      fi
7862159047fSniklas      if test -f $dir/bison; then
7872159047fSniklas	BISON=bison
7882159047fSniklas	break
7892159047fSniklas      fi
7902159047fSniklas      if test -f $dir/yacc; then
7912159047fSniklas	BISON=yacc
7922159047fSniklas	break
7932159047fSniklas      fi
7942159047fSniklas    done
7952159047fSniklas    IFS="$save_ifs"
7962159047fSniklas    BISON=${BISON-bison}
7972159047fSniklas  fi
7982159047fSniklas
7992159047fSniklas  if [ -z "${LEX}" ]; then
8002159047fSniklas    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}:"
8012159047fSniklas    for dir in $PATH; do
8022159047fSniklas      test -z "$dir" && dir=.
8032159047fSniklas      if test -f $dir/flex; then
8042159047fSniklas	LEX=flex
8052159047fSniklas	break
8062159047fSniklas      fi
8072159047fSniklas      if test -f $dir/lex; then
8082159047fSniklas	LEX=lex
8092159047fSniklas	break
8102159047fSniklas      fi
8112159047fSniklas    done
8122159047fSniklas    IFS="$save_ifs"
8132159047fSniklas    LEX=${LEX-flex}
8142159047fSniklas  fi
8152159047fSniklas
8162159047fSniklas  # Export variables which autoconf might try to set.
8172159047fSniklas  export AS
8182159047fSniklas  export AR
8192159047fSniklas  export CC_FOR_BUILD
820*c88b1d6cSniklas  export DLLTOOL
8212159047fSniklas  export LD
8222159047fSniklas  export NM
8232159047fSniklas  export RANLIB
8242159047fSniklaselse
8252159047fSniklas  # If CC is still not set, try to get gcc.
8262159047fSniklas  if [ -z "${CC}" ]; then
8272159047fSniklas    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}:"
8282159047fSniklas    for dir in $PATH; do
8292159047fSniklas      test -z "$dir" && dir=.
8302159047fSniklas      if test -f $dir/gcc; then
8312159047fSniklas	CC="gcc -O2"
8322159047fSniklas	break
8332159047fSniklas      fi
8342159047fSniklas    done
8352159047fSniklas    IFS="$save_ifs"
8362159047fSniklas    CC=${CC-cc}
8372159047fSniklas  fi
8382159047fSniklas
8392159047fSniklas  CXX=${CXX-"gcc"}
8402159047fSniklasfi
8412159047fSniklas
8422159047fSniklasexport CC
8432159047fSniklasexport CXX
8442159047fSniklas
845*c88b1d6cSniklascase "$host" in
846*c88b1d6cSniklas	*go32*)
847*c88b1d6cSniklas	    enable_gdbtk=no ;;
848*c88b1d6cSniklasesac
849*c88b1d6cSniklas
850*c88b1d6cSniklas# Determine whether gdb needs tk/tcl or not.
851*c88b1d6cSniklasif [ "$enable_gdbtk" != "no" ]; then
852*c88b1d6cSniklas	GDB_TK="all-tcl all-tk"
853*c88b1d6cSniklaselse
854*c88b1d6cSniklas	GDB_TK=""
855*c88b1d6cSniklasfi
856*c88b1d6cSniklas
8572159047fSniklasfor subdir in . ${subdirs} ; do
8582159047fSniklas
8592159047fSniklas    # ${subdir} is relative path from . to the directory we're currently
8602159047fSniklas    # configuring.
8612159047fSniklas    # ${invsubdir} is inverse of ${subdir), *with* trailing /, if needed.
8622159047fSniklas    invsubdir=`echo ${subdir}/ | sed -e 's|\./||g' -e 's|[^/]*/|../|g'`
8632159047fSniklas
8642159047fSniklas    ### figure out what to do with srcdir
8652159047fSniklas    case "${srcdir}" in
8662159047fSniklas        ".")  # no -srcdir option.  We're building in place.
8672159047fSniklas                makesrcdir=. ;;
8682159047fSniklas        /*) # absolute path
8692159047fSniklas                makesrcdir=`echo ${srcdir}/${subdir} | sed -e 's|/\.$||'`
8702159047fSniklas                ;;
8712159047fSniklas        *) # otherwise relative
8722159047fSniklas                case "${subdir}" in
8732159047fSniklas                .) makesrcdir=${srcdir} ;;
8742159047fSniklas                *) makesrcdir=${invsubdir}${srcdir}/${subdir} ;;
8752159047fSniklas                esac
8762159047fSniklas                ;;
8772159047fSniklas    esac
8782159047fSniklas
8792159047fSniklas    if [ "${subdir}/" != "./" ] ; then
8802159047fSniklas        Makefile=${subdir}/Makefile
8812159047fSniklas    fi
8822159047fSniklas
8832159047fSniklas    if [ ! -d ${subdir} ] ; then
8842159047fSniklas        if mkdir ${subdir} ; then
8852159047fSniklas                true
8862159047fSniklas        else
8872159047fSniklas                echo '***' "${progname}: could not make ${PWD=`pwd`}/${subdir}" 1>&2
8882159047fSniklas                exit 1
8892159047fSniklas        fi
8902159047fSniklas    fi
8912159047fSniklas
8922159047fSniklas    case "${removing}" in
8932159047fSniklas    "")
8942159047fSniklas        case "${subdir}" in
8952159047fSniklas        .) ;;
8962159047fSniklas        *) eval echo Building in ${subdir} ${redirect} ;;
8972159047fSniklas        esac
8982159047fSniklas
8992159047fSniklas        # FIXME Should this be done recursively ??? (Useful for e.g. gdbtest)
9002159047fSniklas        # Set up the list of links to be made.
9012159047fSniklas        # ${links} is the list of link names, and ${files} is the list of names to link to.
9022159047fSniklas
9032159047fSniklas        # Make the links.
9042159047fSniklas        configlinks="${links}"
9052159047fSniklas        if [ -r ${subdir}/config.status ] ; then
9062159047fSniklas                mv -f ${subdir}/config.status ${subdir}/config.back
9072159047fSniklas        fi
9082159047fSniklas        while [ -n "${files}" ] ; do
9092159047fSniklas                # set file to car of files, files to cdr of files
9102159047fSniklas                set ${files}; file=$1; shift; files=$*
9112159047fSniklas                set ${links}; link=$1; shift; links=$*
9122159047fSniklas
9132159047fSniklas                if [ ! -r ${srcdir}/${file} ] ; then
9142159047fSniklas                        echo '***' "${progname}: cannot create a link \"${link}\"," 1>&2
9152159047fSniklas                        echo '***' "since the file \"${srcdir}/${file}\" does not exist." 1>&2
9162159047fSniklas                        exit 1
9172159047fSniklas                fi
9182159047fSniklas
9192159047fSniklas                ${remove} -f ${link}
9202159047fSniklas		# Make a symlink if possible, otherwise try a hard link
9212159047fSniklas		if ${symbolic_link} ${srcdir}/${file} ${link} >/dev/null 2>&1 ; then
9222159047fSniklas			true
9232159047fSniklas		else
9242159047fSniklas			# We need to re-remove the file because Lynx leaves a
9252159047fSniklas			# very strange directory there when it fails an NFS symlink.
9262159047fSniklas			${remove} -r -f ${link}
9272159047fSniklas			${hard_link} ${srcdir}/${file} ${link}
9282159047fSniklas		fi
9292159047fSniklas                if [ ! -r ${link} ] ; then
9302159047fSniklas                        echo '***' "${progname}: unable to link \"${link}\" to \"${srcdir}/${file}\"." 1>&2
9312159047fSniklas                        exit 1
9322159047fSniklas                fi
9332159047fSniklas
9342159047fSniklas                echo "Linked \"${link}\" to \"${srcdir}/${file}\"."
9352159047fSniklas        done
9362159047fSniklas
9372159047fSniklas        # Create a .gdbinit file which runs the one in srcdir
9382159047fSniklas        # and tells GDB to look there for source files.
9392159047fSniklas
9402159047fSniklas        if [ -r ${srcdir}/${subdir}/.gdbinit ] ; then
9412159047fSniklas                case ${srcdir} in
9422159047fSniklas                .) ;;
9432159047fSniklas                *) cat > ${subdir}/.gdbinit <<EOF
9442159047fSniklas# ${NO_EDIT}
9452159047fSniklasdir ${makesrcdir}
9462159047fSniklasdir .
9472159047fSniklassource ${makesrcdir}/.gdbinit
9482159047fSniklasEOF
9492159047fSniklas                        ;;
9502159047fSniklas                esac
9512159047fSniklas        fi
9522159047fSniklas
9532159047fSniklas        # Install a makefile, and make it set VPATH
9542159047fSniklas        # if necessary so that the sources are found.
9552159047fSniklas        # Also change its value of srcdir.
9562159047fSniklas        # NOTE: Makefile generation constitutes the majority of the time in configure.  Hence, this section has
9572159047fSniklas        # been somewhat optimized and is perhaps a bit twisty.
9582159047fSniklas
9592159047fSniklas        # code is order so as to try to sed the smallest input files we know.
9602159047fSniklas
9612159047fSniklas        # the four makefile fragments MUST end up in the resulting Makefile in this order:
9622159047fSniklas        # package, target, host, and site.  so do these separately because I don't trust the
9632159047fSniklas        #  order of sed -e expressions.
9642159047fSniklas
9652159047fSniklas        if [ -f ${srcdir}/${subdir}/${Makefile_in} ] ; then
9662159047fSniklas
9672159047fSniklas            # Conditionalize for this site from "Makefile.in" (or whatever it's called) into Makefile.tem
9682159047fSniklas            rm -f ${subdir}/Makefile.tem
9692159047fSniklas              case "${site}" in
9702159047fSniklas              "") cp ${srcdir}/${subdir}/${Makefile_in} ${subdir}/Makefile.tem ;;
9712159047fSniklas              *)
9722159047fSniklas                      site_makefile_frag=${srcdir}/config/ms-${site}
9732159047fSniklas
9742159047fSniklas                      if [ -f ${site_makefile_frag} ] ; then
9752159047fSniklas                              sed -e "/^####/  r ${site_makefile_frag}" ${srcdir}/${subdir}/${Makefile_in} \
9762159047fSniklas                                      > ${subdir}/Makefile.tem
9772159047fSniklas                      else
9782159047fSniklas                              cp ${srcdir}/${subdir}/${Makefile_in} ${subdir}/Makefile.tem
9792159047fSniklas                              site_makefile_frag=
9802159047fSniklas                      fi
9812159047fSniklas                      ;;
9822159047fSniklas            esac
9832159047fSniklas            # working copy now in ${subdir}/Makefile.tem
9842159047fSniklas
9852159047fSniklas            # Conditionalize the makefile for this host.
9862159047fSniklas            rm -f ${Makefile}
9872159047fSniklas            case "${host_makefile_frag}" in
9882159047fSniklas              "") mv ${subdir}/Makefile.tem ${Makefile} ;;
9892159047fSniklas              *)
9902159047fSniklas                      if [ ! -f ${host_makefile_frag} ] ; then
9912159047fSniklas                              host_makefile_frag=${srcdir}/${host_makefile_frag}
9922159047fSniklas                      fi
9932159047fSniklas                      if [ -f ${host_makefile_frag} ] ; then
9942159047fSniklas                              sed -e "/^####/  r ${host_makefile_frag}" ${subdir}/Makefile.tem > ${Makefile}
9952159047fSniklas                      else
9962159047fSniklas                              echo '***' Expected host makefile fragment \"${host_makefile_frag}\" 1>&2
9972159047fSniklas                              echo '***' is missing in ${PWD=`pwd`}. 1>&2
9982159047fSniklas                              mv ${subdir}/Makefile.tem ${Makefile}
9992159047fSniklas                      fi
10002159047fSniklas            esac
10012159047fSniklas            # working copy now in ${Makefile}
10022159047fSniklas
10032159047fSniklas            # Conditionalize the makefile for this target.
10042159047fSniklas            rm -f ${subdir}/Makefile.tem
10052159047fSniklas            case "${target_makefile_frag}" in
10062159047fSniklas              "") mv ${Makefile} ${subdir}/Makefile.tem ;;
10072159047fSniklas              *)
10082159047fSniklas                      if [ ! -f ${target_makefile_frag} ] ; then
10092159047fSniklas                              target_makefile_frag=${srcdir}/${target_makefile_frag}
10102159047fSniklas                      fi
10112159047fSniklas                      if [ -f ${target_makefile_frag} ] ; then
10122159047fSniklas                              sed -e "/^####/  r ${target_makefile_frag}" ${Makefile} > ${subdir}/Makefile.tem
10132159047fSniklas                      else
10142159047fSniklas                              mv ${Makefile} ${subdir}/Makefile.tem
10152159047fSniklas                              target_makefile_frag=
10162159047fSniklas                      fi
10172159047fSniklas                      ;;
10182159047fSniklas            esac
10192159047fSniklas            # real copy now in ${subdir}/Makefile.tem
10202159047fSniklas
10212159047fSniklas            # Conditionalize the makefile for this package.
10222159047fSniklas            rm -f ${Makefile}
10232159047fSniklas            case "${package_makefile_frag}" in
10242159047fSniklas              "") mv ${subdir}/Makefile.tem ${Makefile} ;;
10252159047fSniklas              *)
10262159047fSniklas                      if [ ! -f ${package_makefile_frag} ] ; then
10272159047fSniklas                              package_makefile_frag=${srcdir}/${package_makefile_frag}
10282159047fSniklas                      fi
10292159047fSniklas                      if [ -f ${package_makefile_frag} ] ; then
10302159047fSniklas                              sed -e "/^####/  r ${package_makefile_frag}" ${subdir}/Makefile.tem > ${Makefile}
10312159047fSniklas			      rm -f ${subdir}/Makefile.tem
10322159047fSniklas                      else
10332159047fSniklas                              echo '***' Expected package makefile fragment \"${package_makefile_frag}\" 1>&2
10342159047fSniklas                              echo '***' is missing in ${PWD=`pwd`}. 1>&2
10352159047fSniklas                              mv ${subdir}/Makefile.tem ${Makefile}
10362159047fSniklas                      fi
10372159047fSniklas            esac
10382159047fSniklas            # working copy now in ${Makefile}
10392159047fSniklas
10402159047fSniklas            mv ${Makefile} ${subdir}/Makefile.tem
10412159047fSniklas
10422159047fSniklas            # real copy now in ${subdir}/Makefile.tem
10432159047fSniklas
10442159047fSniklas            # prepend warning about editting, and a bunch of variables.
10452159047fSniklas            rm -f ${Makefile}
10462159047fSniklas            cat > ${Makefile} <<EOF
10472159047fSniklas# ${NO_EDIT}
10482159047fSniklasVPATH = ${makesrcdir}
10492159047fSniklaslinks = ${configlinks}
10502159047fSniklashost_alias = ${host_alias}
10512159047fSniklashost_cpu = ${host_cpu}
10522159047fSniklashost_vendor = ${host_vendor}
10532159047fSniklashost_os = ${host_os}
10542159047fSniklashost_canonical = ${host_cpu}-${host_vendor}-${host_os}
10552159047fSniklastarget_alias = ${target_alias}
10562159047fSniklastarget_cpu = ${target_cpu}
10572159047fSniklastarget_vendor = ${target_vendor}
10582159047fSniklastarget_os = ${target_os}
10592159047fSniklastarget_canonical = ${target_cpu}-${target_vendor}-${target_os}
10602159047fSniklasEOF
10612159047fSniklas	    case "${build}" in
10622159047fSniklas	      "") ;;
10632159047fSniklas	      *)  cat >> ${Makefile} << EOF
10642159047fSniklasbuild_alias = ${build_alias}
10652159047fSniklasbuild_cpu = ${build_cpu}
10662159047fSniklasbuild_vendor = ${build_vendor}
10672159047fSniklasbuild_os = ${build_os}
10682159047fSniklasbuild_canonical = ${build_cpu}-${build_vendor}-${build_os}
10692159047fSniklasEOF
10702159047fSniklas	    esac
10712159047fSniklas
10722159047fSniklas            case "${package_makefile_frag}" in
10732159047fSniklas              "") ;;
10742159047fSniklas              /*) echo package_makefile_frag = ${package_makefile_frag} >>${Makefile} ;;
10752159047fSniklas              *)  echo package_makefile_frag = ${invsubdir}${package_makefile_frag} >>${Makefile} ;;
10762159047fSniklas            esac
10772159047fSniklas
10782159047fSniklas            case "${target_makefile_frag}" in
10792159047fSniklas              "") ;;
10802159047fSniklas              /*) echo target_makefile_frag = ${target_makefile_frag} >>${Makefile} ;;
10812159047fSniklas              *)  echo target_makefile_frag = ${invsubdir}${target_makefile_frag} >>${Makefile} ;;
10822159047fSniklas            esac
10832159047fSniklas
10842159047fSniklas            case "${host_makefile_frag}" in
10852159047fSniklas              "") ;;
10862159047fSniklas              /*) echo host_makefile_frag = ${host_makefile_frag} >>${Makefile} ;;
10872159047fSniklas              *)  echo host_makefile_frag = ${invsubdir}${host_makefile_frag} >>${Makefile} ;;
10882159047fSniklas            esac
10892159047fSniklas
10902159047fSniklas            if [ "${site_makefile_frag}" != "" ] ; then
10912159047fSniklas                echo site_makefile_frag = ${invsubdir}${site_makefile_frag} >>${Makefile}
10922159047fSniklas            fi
10932159047fSniklas
10942159047fSniklas            # reset prefix, exec_prefix, srcdir, SUBDIRS, NONSUBDIRS,
10952159047fSniklas            # remove any form feeds.
10962159047fSniklas            if [ -z "${subdirs}" ]; then
10972159047fSniklas                rm -f ${subdir}/Makefile.tem2
10982159047fSniklas                sed -e "s:^SUBDIRS[ 	]*=.*$:SUBDIRS = ${configdirs}:" \
10992159047fSniklas                    -e "s:^NONSUBDIRS[ 	]*=.*$:NONSUBDIRS = ${noconfigdirs}:" \
11002159047fSniklas                    ${subdir}/Makefile.tem > ${subdir}/Makefile.tem2
11012159047fSniklas                rm -f ${subdir}/Makefile.tem
11022159047fSniklas                mv ${subdir}/Makefile.tem2 ${subdir}/Makefile.tem
11032159047fSniklas            fi
11042159047fSniklas            sed -e "s:^prefix[ 	]*=.*$:prefix = ${prefix}:" \
11052159047fSniklas                    -e "s:^exec_prefix[ 	]*=.*$:exec_prefix = ${exec_prefix}:" \
11062159047fSniklas		    -e "/^CC[ 	]*=/{
11072159047fSniklas			:loop1
11082159047fSniklas			/\\\\$/ N
11092159047fSniklas			/\\\\$/ b loop1
11102159047fSniklas			s/\\\\\\n//g
11112159047fSniklas			s%^CC[ 	]*=.*$%CC = ${CC}%
11122159047fSniklas			}" \
11132159047fSniklas		    -e "/^CXX[ 	]*=/{
11142159047fSniklas			:loop2
11152159047fSniklas			/\\\\$/ N
11162159047fSniklas			/\\\\$/ b loop2
11172159047fSniklas			s/\\\\\\n//g
11182159047fSniklas			s%^CXX[ 	]*=.*$%CXX = ${CXX}%
11192159047fSniklas			}" \
11202159047fSniklas		    -e "s:^SHELL[	 ]*=.*$:SHELL = ${config_shell}:" \
1121*c88b1d6cSniklas		    -e "s:^GDB_TK[	 ]*=.*$:GDB_TK = ${GDB_TK}:" \
11222159047fSniklas                    -e "s:^srcdir[ 	]*=.*$:srcdir = ${makesrcdir}:" \
11232159047fSniklas                    -e "s///" \
11242159047fSniklas                    -e "s:^program_prefix[ 	]*=.*$:program_prefix = ${program_prefix}:" \
11252159047fSniklas                    -e "s:^program_suffix[ 	]*=.*$:program_suffix = ${program_suffix}:" \
11262159047fSniklas                    -e "s:^program_transform_name[ 	]*=.*$:program_transform_name = ${program_transform_name}:" \
11272159047fSniklas                    -e "s:^tooldir[ 	]*=.*$:tooldir = ${tooldir}:" \
1128*c88b1d6cSniklas		    -e "s:^DEFAULT_YACC[	 ]*=.*$:DEFAULT_YACC = ${DEFAULT_YACC}:" \
1129*c88b1d6cSniklas		    -e "s:^DEFAULT_LEX[	 ]*=.*$:DEFAULT_LEX = ${DEFAULT_LEX}:" \
11302159047fSniklas                    ${subdir}/Makefile.tem >> ${Makefile}
11312159047fSniklas
11322159047fSniklas	    # If this is a Canadian Cross, preset the values of many more
11332159047fSniklas	    # tools.
11342159047fSniklas	    if [ "${build}" != "${host}" ]; then
11352159047fSniklas		for var in ${tools}; do
11362159047fSniklas		    val=`eval 'echo $'"${var}"`
11372159047fSniklas		    sed -e "/^${var}[ 	]*=/{
11382159047fSniklas			   :loop1
11392159047fSniklas			   /\\\\$/ N
11402159047fSniklas			   /\\\\$/ b loop1
11412159047fSniklas			   s/\\\\\\n//g
11422159047fSniklas			   s%^${var}[ 	]*=.*$%${var} = ${val}%
11432159047fSniklas			   }" ${Makefile} > ${Makefile}.tem
11442159047fSniklas		    mv -f ${Makefile}.tem ${Makefile}
11452159047fSniklas		done
11462159047fSniklas	    fi
11472159047fSniklas
11482159047fSniklas            # final copy now in ${Makefile}
11492159047fSniklas
11502159047fSniklas        else
11512159047fSniklas           echo "No Makefile.in found in ${srcdir}/${subdir}, unable to configure" 1>&2
11522159047fSniklas        fi
11532159047fSniklas
11542159047fSniklas        rm -f ${subdir}/Makefile.tem
11552159047fSniklas
11562159047fSniklas        case "${host_makefile_frag}" in
11572159047fSniklas        "") using= ;;
11582159047fSniklas        *) using="and \"${host_makefile_frag}\"" ;;
11592159047fSniklas        esac
11602159047fSniklas
11612159047fSniklas        case "${target_makefile_frag}" in
11622159047fSniklas        "") ;;
11632159047fSniklas        *) using="${using} and \"${target_makefile_frag}\"" ;;
11642159047fSniklas        esac
11652159047fSniklas
11662159047fSniklas        case "${site_makefile_frag}" in
11672159047fSniklas        "") ;;
11682159047fSniklas        *) using="${using} and \"${site_makefile_frag}\"" ;;
11692159047fSniklas        esac
11702159047fSniklas
11712159047fSniklas        newusing=`echo "${using}" | sed 's/and/using/'`
11722159047fSniklas        using=${newusing}
11732159047fSniklas        echo "Created \"${Makefile}\" in" ${PWD=`pwd`} ${using}
11742159047fSniklas
11752159047fSniklas        . ${tmpfile}.pos
11762159047fSniklas
11772159047fSniklas        # describe the chosen configuration in config.status.
11782159047fSniklas        # Make that file a shellscript which will reestablish
11792159047fSniklas        # the same configuration.  Used in Makefiles to rebuild
11802159047fSniklas        # Makefiles.
11812159047fSniklas
11822159047fSniklas        case "${norecursion}" in
11832159047fSniklas        "") arguments="${arguments} --norecursion" ;;
11842159047fSniklas        *) ;;
11852159047fSniklas        esac
11862159047fSniklas
11872159047fSniklas        if [ ${subdir} = . ] ; then
11882159047fSniklas            echo "#!/bin/sh
11892159047fSniklas# ${NO_EDIT}
11902159047fSniklas# This directory was configured as follows:
11912159047fSniklas${progname}" ${arguments}  "
11922159047fSniklas# ${using}" > ${subdir}/config.new
11932159047fSniklas        else
11942159047fSniklas            echo "#!/bin/sh
11952159047fSniklas# ${NO_EDIT}
11962159047fSniklas# This directory was configured as follows:
11972159047fSniklascd ${invsubdir}
11982159047fSniklas${progname}" ${arguments}  "
11992159047fSniklas# ${using}" > ${subdir}/config.new
12002159047fSniklas        fi
12012159047fSniklas        chmod a+x ${subdir}/config.new
12022159047fSniklas        if [ -r ${subdir}/config.back ] ; then
12032159047fSniklas                mv -f ${subdir}/config.back ${subdir}/config.status
12042159047fSniklas        fi
12052159047fSniklas        ${moveifchange} ${subdir}/config.new ${subdir}/config.status
12062159047fSniklas        ;;
12072159047fSniklas
12082159047fSniklas    *)  rm -f ${Makefile} ${subdir}/config.status ${links} ;;
12092159047fSniklas    esac
12102159047fSniklasdone
12112159047fSniklas
12122159047fSniklas# If there are subdirectories, then recur.
12132159047fSniklasif [ -z "${norecursion}" -a -n "${configdirs}" ] ; then
12142159047fSniklas        for configdir in ${configdirs} ; do
12152159047fSniklas
12162159047fSniklas                if [ -d ${srcdir}/${configdir} ] ; then
12172159047fSniklas                        eval echo Configuring ${configdir}... ${redirect}
12182159047fSniklas                        case "${srcdir}" in
12192159047fSniklas                        ".") ;;
12202159047fSniklas                        *)
12212159047fSniklas                                if [ ! -d ./${configdir} ] ; then
12222159047fSniklas                                        if mkdir ./${configdir} ; then
12232159047fSniklas                                                true
12242159047fSniklas                                        else
12252159047fSniklas                                                echo '***' "${progname}: could not make ${PWD=`pwd`}/${configdir}" 1>&2
12262159047fSniklas                                                exit 1
12272159047fSniklas                                        fi
12282159047fSniklas                                fi
12292159047fSniklas                                ;;
12302159047fSniklas                        esac
12312159047fSniklas
12322159047fSniklas                        POPDIR=${PWD=`pwd`}
12332159047fSniklas                        cd ${configdir}
12342159047fSniklas
12352159047fSniklas### figure out what to do with srcdir
12362159047fSniklas                        case "${srcdir}" in
12372159047fSniklas                        ".") newsrcdir=${srcdir} ;; # no -srcdir option.  We're building in place.
12382159047fSniklas                        /*) # absolute path
12392159047fSniklas                                newsrcdir=${srcdir}/${configdir}
12402159047fSniklas                                srcdiroption="--srcdir=${newsrcdir}"
12412159047fSniklas                                ;;
12422159047fSniklas                        *) # otherwise relative
12432159047fSniklas                                newsrcdir=../${srcdir}/${configdir}
12442159047fSniklas                                srcdiroption="--srcdir=${newsrcdir}"
12452159047fSniklas                                ;;
12462159047fSniklas                        esac
12472159047fSniklas
12482159047fSniklas			# Handle --cache-file=../XXX
12492159047fSniklas			case "${cache_file}" in
12502159047fSniklas			"") # empty
12512159047fSniklas				;;
12522159047fSniklas			/*) # absolute path
12532159047fSniklas				cache_file_option="--cache-file=${cache_file}"
12542159047fSniklas				;;
12552159047fSniklas			*) # relative path
12562159047fSniklas				cache_file_option="--cache-file=../${cache_file}"
12572159047fSniklas				;;
12582159047fSniklas			esac
12592159047fSniklas
12602159047fSniklas### check for guested configure, otherwise fix possibly relative progname
12612159047fSniklas                        if [ -f ${newsrcdir}/configure ] ; then
12622159047fSniklas                                recprog=${newsrcdir}/configure
12632159047fSniklas                        elif [ -f ${newsrcdir}/configure.in ] ; then
12642159047fSniklas                                case "${progname}" in
12652159047fSniklas                                /*)     recprog=${progname} ;;
12662159047fSniklas                                *)      recprog=../${progname} ;;
12672159047fSniklas                                esac
12682159047fSniklas			else
12692159047fSniklas				eval echo No configuration information in ${configdir} ${redirect}
12702159047fSniklas				recprog=
12712159047fSniklas                        fi
12722159047fSniklas
12732159047fSniklas### The recursion line is here.
12742159047fSniklas			if [ ! -z "${recprog}" ] ; then
12752159047fSniklas	                        if eval ${config_shell} ${recprog} ${verbose} ${buildopt} --host=${host_alias} --target=${target_alias} \
12762159047fSniklas        	                        ${prefixoption} ${tmpdiroption} ${exec_prefixoption} \
1277*c88b1d6cSniklas                	                ${srcdiroption} ${program_prefixoption} ${program_suffixoption} ${program_transform_nameoption} ${site_option} ${withoptions} ${withoutoptions} ${enableoptions} ${disableoptions} ${floating_pointoption} ${cache_file_option} ${removing} ${other_options} ${redirect} ; then
12782159047fSniklas	                                true
12792159047fSniklas        	                else
12802159047fSniklas					echo Configure in `pwd` failed, exiting. 1>&2
12812159047fSniklas                	                exit 1
12822159047fSniklas                        	fi
12832159047fSniklas			fi
12842159047fSniklas
12852159047fSniklas                        cd ${POPDIR}
12862159047fSniklas                fi
12872159047fSniklas        done
12882159047fSniklasfi
12892159047fSniklas
12902159047fSniklas# Perform the same cleanup as the trap handler, minus the "exit 1" of course,
12912159047fSniklas# and reset the trap handler.
12922159047fSniklasrm -f ${tmpfile}.com ${tmpfile}.tgt ${tmpfile}.hst ${tmpfile}.pos
12932159047fSniklastrap 0
12942159047fSniklas
12952159047fSniklasexit 0
12962159047fSniklas
12972159047fSniklas#
12982159047fSniklas# Local Variables:
12992159047fSniklas# fill-column: 131
13002159047fSniklas# End:
13012159047fSniklas#
13022159047fSniklas
13032159047fSniklas# end of configure
1304