aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorK. Richard Pixley <rich@cygnus>1991-12-07 08:20:18 +0000
committerK. Richard Pixley <rich@cygnus>1991-12-07 08:20:18 +0000
commit4d714963c509f6c056374faa7c671521c6374f49 (patch)
treef8f21ff12f732e416d65a41b618668f7ccfc5a67 /configure
parentbc0287661651904abf099d93efb7066a19aa4b7e (diff)
downloadgdb-4d714963c509f6c056374faa7c671521c6374f49.zip
gdb-4d714963c509f6c056374faa7c671521c6374f49.tar.gz
gdb-4d714963c509f6c056374faa7c671521c6374f49.tar.bz2
Sat Dec 7 00:17:01 1991 K. Richard Pixley (rich at rtl.cygnus.com)
* Makefile.in: unwrapped some for loops so that parallel makes work again and so one can focus one's attention on a particular package. Fri Dec 6 00:22:08 1991 K. Richard Pixley (rich at rtl.cygnus.com) * configure: added PWD as a stand in for `pwd` (for speed). use elif wherever possible. make -srcdir work without -objdir. -objdir= commented out. Thu Dec 5 22:46:52 1991 K. Richard Pixley (rich at rtl.cygnus.com) * configure: +options become --options. -subdirs commented out. added -host, -datadir. Renamed -destdir to -prefix. Comment in Makefile now at top of generated Makefile. Removed cvs log entries. added -srcdir. create .gdbinit only if there is one in ${srcdir}. * Makefile.in: idestdir and ddestdir go away. Added copyrights and shift gpl to v2. Added ChangeLog if it didn't exist. docdir and mandir now keyed off datadir by default. Fri Nov 22 07:38:11 1991 K. Richard Pixley (rich at rtl.cygnus.com) * Freshly created ChangeLog.
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure808
1 files changed, 394 insertions, 414 deletions
diff --git a/configure b/configure
index fe1eee8..5510704 100755
--- a/configure
+++ b/configure
@@ -33,9 +33,10 @@
# config.status is removed.
#
-export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh $0 $argv; kill $$)
+# NOTE: This script contains support for a Cygnus experimental feature, called
+# +subdirs, which is currently, tentatively, de-supported.
-#set -e
+export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh $0 $argv; kill $$)
remove=rm
hard_link=ln
@@ -54,22 +55,27 @@ ansi=
arguments=$*
commontargets=
configdirs=
-ddestdir=
+datadir=
+datadiroption=
defaulttargets=
-destdir=
fatal=
-hostsubdir=
-idestdir=
-next_ddestdir=
-next_destdir=
-next_idestdir=
-next_objdir=
+floating_point=default
+gas=default
+hosts=
+#hostsubdir=
+#namesubdir=
+next_prefix=
+next_host=
+#next_namesubdir=
+#next_objdir=
next_site=
+next_srcdir=
next_target=
next_tmpdir=
norecursion=
-objdir=
-objdiroption=
+#objdir=
+#objdiroption=
+prefix=/usr/local
progname=
recurring=
removing=
@@ -77,138 +83,205 @@ srcdir=
srctrigger=
target=
targets=
-targetsubdir=
+#targetsubdir=
+undefinedargs=
verbose=
+x11=default
+
# or maybe grab from gcc/version.c
-version_path="1.95.02"
+version_path=
+next_version_path=
+
+NO_EDIT="This file was generated automatically by configure. Do not edit."
+
+## this is a little touchy and won't always work, but...
+##
+## if the argv[0] starts with a slash then it is an absolute name that can be
+## used as is.
+##
+## otherwise, if argv[0] has no slash in it, we can assume that it is on the
+## path. Since PATH might include "." we also add `pwd` to the end of PATH.
+##
+## otherwise we prepend `pwd` to $0 and hope that will give us an absolute
+## path.
+##
+
+PWD=`pwd`
+
+if (echo $0 | grep '^/' > /dev/null) ; then
+ progname=$0
+elif (echo $0 | grep '/' > /dev/null) ; then
+ progname=${PWD}/$0
+else
+ progname=$0
+ PATH=$PATH:${PWD} ; export PATH
+fi
+
+configsub=`echo ${progname} | sed 's/configure$/config.sub/'`
+
+if ${configsub} none >/dev/null 2>&1 ; then
+ true
+else
+ echo '***' cannot find config.sub.
+ echo 1
+fi
+
for arg in $*;
do
# handle things that might have args following as separate words
- if [ -n "${next_ddestdir}" ] ; then ddestdir=${arg} ; next_ddestdir=
- elif [ -n "${next_destdir}" ] ; then destdir=${arg} ; next_destdir= ; ddestdir=${destdir} ; idestdir=${destdir}
- elif [ -n "${next_idestdir}" ] ; then idestdir=${arg} ; next_idestdir=
- elif [ -n "${next_objdir}" ] ; then objdir=${arg} ; next_objdir=
+ if [ -n "${next_prefix}" ] ; then prefix=${arg} ; prefixoption="-prefix=${prefix}" ; next_prefix=
+ elif [ -n "${next_datadir}" ] ; then datadir=${arg} ; datadiroption="-datadir=${datadir}" ; next_datadir=
+# elif [ -n "${next_namesubdir}" ] ; then \
+# namesubdir=${arg} ; namesubdiroption="--namesubdir=${namesubdir}" ; next_namesubdir=
+# elif [ -n "${next_objdir}" ] ; then objdir=${arg} ; objdiroption="--objdir=${objdir}" ; next_objdir=
+ elif [ -n "${next_version_path}" ] ; then version_path=${arg} ; next_version_path=
elif [ -n "${next_site}" ] ; then site=${arg} ; next_site=
+ elif [ -n "${next_srcdir}" ] ; then srcdir=${arg} ; next_srcdir=
elif [ -n "${next_target}" ] ; then
next_target=
- if [ -n "${targets}" ] ; then
- subdirs="+subdirs"
+ if [ -z "${targets}" ] ; then
+ newtargets="${targets} ${arg}"
+ targets="${newtargets}"
+ else
+ echo '***' Can only configure for one target at a time.
+ fatal=yes
fi
-
- newtargets="${targets} ${arg}"
- targets="${newtargets}"
-
elif [ -n "${next_tmpdir}" ] ; then
next_tmpdir=
- tmpdiroption="+tmpdir=${arg}"
+ tmpdiroption="--tmpdir=${arg}"
TMPDIR=${arg}
else
case ${arg} in
- -ansi | +a*)
+ -ansi | --a*)
ansi=true
clib=clib
;;
- -noversion | +noversion)
- version_path=""
- ;;
- -ddestdir=* | +ddestdir=* | +ddestdi=* | +ddestd=* | +ddest=* | +ddes=* | +dde=* | +dd=*)
- ddestdir=`echo ${arg} | sed 's/[+-]dd[a-z]*=//'`
+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* | --da=* | --d=*)
+ datadir=`echo ${arg} | sed 's/-\{1,2\}d[a-z]*=//'`
+ datadiroption=${arg}
;;
- -ddestdir | +ddestdir | +ddestdi | +ddestd | +ddest | +ddes | +dde | +dd)
- next_ddestdir=yes
+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da | --d)
+ next_datadir=yes
;;
- -destdir=* | +destdir=* | +destdi=* | +destd=* | +dest=* | +des=* | +de=*)
- destdir=`echo ${arg} | sed 's/[+-]d[a-z]*=//'`
- ddestdir=${destdir}
- idestdir=${destdir}
- ;;
- -destdir | +destdir | +destdi | +destd | +dest | +des | +de)
- next_destdir=yes
- ;;
- -gas | +g*)
+ -gas | --g*)
gas=yes
;;
- -help | +h*)
+ -help | --he*)
fatal=true
;;
- -idestdir=* | +idestdir=* | +idestdi=* | +idestd=* | +idest=* | +ides=* | +ide=* | +id=*)
- idestdir=`echo ${arg} | sed 's/[+-]id[a-z]*=//'`
- ;;
- -idestdir | +idestdir | +idestdi | +idestd | +idest | +ides | +ide | +id)
- next_idestdir=yes
+ -host=* | --host=* | --hos=* | --ho=*)
+# if [ -n "${hosts}" ] ; then
+# subdirs="--subdirs"
+# fi
+
+ if [ -z "${hosts}" ] ; then
+ newhosts="${hosts} `echo ${arg} | sed 's/-\{1,2\}h[a-z]*=//'`"
+ hosts="${newhosts}"
+ else
+ echo '***' Can only configure for one host at a time.
+ fatal=yes
+ fi
;;
- -languages=* | +languages=* | +language=* | +languag=* \
- | +langua=* | +langu=* | +lang=* | +lan=* | +la=* \
- | +l=*)
- languages="${languages} `echo ${arg} | sed 's/[+-]l[a-z]*=//'`"
+ -languages=* | --languages=* | --language=* | --languag=* \
+ | --langua=* | --langu=* | --lang=* | --lan=* | --la=* \
+ | --l=*)
+ languages="${languages} `echo ${arg} | sed 's/-\{1,2\}l[a-z]*=//'`"
;;
- -nfp | +nf*)
- nfp=yes
+# -namesubdir | --namesubdir | --namesubdi | --namesubd | --namesub | --namesu | --names | --name | --nam | --na)
+# next_namesubdir=yes
+# ;;
+# -namesubdir=* | --namesubdir=* | --namesubdi=* | --namesubd=* | --namesub=* | --namesu=* | --names=* | --name=* | --nam=* | --na=*)
+# namesubdir=`echo ${arg} | sed 's/-\{1,2\}na[a-z]*=//'`
+# namesubdiroption=${arg}
+# ;;
+ -nfp | --nf*)
+ floating_point=no
;;
- -norecursion | +no*)
+ -norecursion | --no*)
norecursion=true
;;
- -objdir=* | +objdir=* | +objdi=* | +objd=* | +obj=* | +ob=* | +o=*)
- objdiroption=${arg}
- objdir=`echo ${arg} | sed 's/[+-]o[a-z]*=//'`
+# -objdir=* | --objdir=* | --objdi=* | --objd=* | --obj=* | --ob=* | --o=*)
+# objdiroption=${arg}
+# objdir=`echo ${arg} | sed 's/-\{1,2\}o[a-z]*=//'`
+# ;;
+# -objdir | --objdir | --objdi | --objd | --obj | --ob | --o)
+# next_objdir=yes
+# ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix=`echo ${arg} | sed 's/-\{1,2\}p[a-z]*=//'`
+ prefixoption=${arg}
;;
- -objdir | +objdir | +objdi | +objd | +obj | +ob | +o)
- next_objdir=yes
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ next_prefix=yes
;;
- -recurring | +recurring | +recurrin | +recurri | +recurr | +recur | +recu | +rec | +re)
+ -recurring | --recurring | --recurrin | --recurri | --recurr | --recur | --recu | --rec | --re)
recurring=true
arguments=`echo ${arguments} | sed "s:${arg}::"`
;;
- -rm | +rm)
+ -rm | --rm)
removing=${arg}
;;
- -site=* | +site=* | +sit=* | +si=*)
- site=`echo ${arg} | sed 's/[+-]s[a-z]*=//'`
+ -site=* | --site=* | --sit=* | --si=*)
+ site=`echo ${arg} | sed 's/-\{1,2\}s[a-z]*=//'`
;;
- -site | +site | +sit | +si)
+ -site | --site | --sit | --si)
next_site=yes
;;
- # -srcdir=* | +srcdir=* | +srcdi=* | +srcd=* | +src=* | +sr=*)
- # srcdir=`echo ${arg} | sed 's/[+-]s[a-z]*=//'`
- # ;;
- -subdirs | +su*)
- subdirs=${arg}
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir=`echo ${arg} | sed 's/-\{1,2\}s[a-z]*=//'`
+ ;;
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ next_srcdir=yes
;;
- -target=* | +target=* | +targe=* | +targ=* | +tar=* | +ta=*)
- if [ -n "${targets}" ] ; then
- subdirs="+subdirs"
+# -subdirs | --su*)
+# subdirs=${arg}
+# ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=*)
+# if [ -n "${targets}" ] ; then
+# subdirs="--subdirs"
+# fi
+
+ if [ -z "${targets}" ] ; then
+ newtargets="${targets} `echo ${arg} | sed 's/-\{1,2\}t[a-z]*=//'`"
+ targets="${newtargets}"
+ else
+ echo '***' Can only configure for one target at a time.
+ fatal=yes
fi
-
- newtargets="${targets} `echo ${arg} | sed 's/[+-]t[a-z]*=//'`"
- targets="${newtargets}"
;;
- -target | +target | +targe | +targ | +tar | +ta)
+ -target | --target | --targe | --targ | --tar | --ta)
next_target=yes
;;
- -tmpdir=* | +tmpdir=* | +tmpdi=* | +tmpd=* | +tmp=* | +tm=*)
+ -tmpdir=* | --tmpdir=* | --tmpdi=* | --tmpd=* | --tmp=* | --tm=*)
tmpdiroption=${arg}
- TMPDIR=`echo ${arg} | sed 's/[+-]t[a-z]*=//'`
+ TMPDIR=`echo ${arg} | sed 's/-\{1,2\}t[a-z]*=//'`
;;
- -tmpdir | +tmpdir | +tmpdi | +tmpd | +tmp | +tm)
+ -tmpdir | --tmpdir | --tmpdi | --tmpd | --tmp | --tm)
next_tmpdir=yes
;;
- -v | -verbose | +v*)
+ -v | -verbose | --v)
verbose=${arg}
;;
- -* | +*)
+ -x | --x) ;;
+ -* | --*)
(echo ;
echo "Unrecognized option: \"${arg}\"". ;
echo) 1>&2
fatal=true
;;
*)
- if [ -n "${hosts}" ] ; then
- subdirs="+subdirs"
- fi
+# if [ -n "${hosts}" ] ; then
+# subdirs="--subdirs"
+# fi
- newhosts="${hosts} ${arg}"
- hosts=${newhosts}
+ if [ -z "${undefs}" ] ; then
+ newundefs="${undefs} ${arg}"
+ undefs=${newundefs}
+ else
+ echo '***' Can only configure for one host and one target at a time.
+ fatal=yes
+ fi
;;
esac
fi
@@ -218,46 +291,42 @@ if [ -n "${verbose}" ] ; then
echo $0 $*
fi
-## this is a little touchy and won't always work, but...
-##
-## if the argv[0] starts with a slash then it is an absolute name that can be
-## used as is.
-##
-## otherwise, if argv[0] has no slash in it, we can assume that it is on the
-## path. Since PATH might include "." we also add `pwd` to the end of PATH.
-##
-## otherwise we prepend `pwd` to $0 and hope that will give us an absolute
-## path.
-##
-
-if (echo $0 | grep '^/' > /dev/null) ; then
- progname=$0
-else
- if (echo $0 | grep '/' > /dev/null) ; then
- progname=`pwd`/$0
+# process host and target
+if [ -z "${fatal}" ] ; then
+# # Complain if an arg is missing
+# if [ -z "${hosts}" ] ; then
+# (echo ;
+# echo "configure: No HOST specified." ;
+# echo) 1>&2
+# fatal=true
+# fi
+
+### This is a bit twisted.
+### * if all three are specified, this is an error.
+### * if we have neither hosts, nor unadorned args, this is an error.
+### * if no hosts are specified, then the unadorned args are hosts, but if
+### there were none, this is an error.
+### * if no targets are specified, then the unadorned args are targets, but if
+### there were no unadorned args, then the hosts are also targets.
+
+ if [ -n "${hosts}" -a -n "${targets}" -a -n "${undefs}" ] ; then
+ echo '***' Can only configure for one host and one target at a time.
+ fatal=yes
+ elif [ -z "${hosts}" -a -z "${undefs}" ] ; then
+ echo '***' You must tell me for which host you want to configure.
+ fatal=yes
else
- progname=$0
- PATH=$PATH:`pwd` ; export PATH
- fi
-fi
-
-configsub=`echo ${progname} | sed 's/configure$/config.sub/'`
-
-if ${configsub} none >/dev/null 2>&1 ; then
- true
-else
- echo '***' cannot find config.sub.
- echo 1
-fi
+ if [ -z "${hosts}" ] ; then
+ hosts=${undefs}
+ fi
-# process host and target only if not removing.
-if [ -z "${removing}" -a -z "${fatal}" ] ; then
- # Complain if an arg is missing
- if [ -z "${hosts}" ] ; then
- (echo ;
- echo "configure: No HOST specified." ;
- echo) 1>&2
- fatal=true
+ if [ -z "${targets}" ] ; then
+ if [ -n "${undefs}" ] ; then
+ targets=${undefs}
+ else
+ targets=${hosts}
+ fi
+ fi
fi
fi
@@ -265,29 +334,27 @@ if [ -n "${fatal}" -o "${hosts}" = "help" ] ; then
(echo "Usage: configure HOST" ;
echo ;
echo "Options: [defaults in brackets]" ;
- echo " +ansi configure w/ANSI library. [no ansi lib]" ;
- echo " +ddestdir=MYDIR configure for installation host dependent files" ;
- echo " into MYDIR. [\"/usr/local\"]" ;
- echo " +idestdir=MYDIR configure for installation host independent files" ;
- echo " into MYDIR. [\"/usr/local\"]" ;
- echo " +destdir=MYDIR configure for installation of both host dependent and" ;
- echo " host independent files into MYDIR. [\"/usr/local\"]" ;
- echo " +gas configure the compilers for use with gas. [native as]" ;
- echo " +help print this message. [normal config]" ;
- echo " +lang=LANG configure to build LANG. [gcc]" ;
- echo " +nfp configure the compilers default to soft floating point. [hard float]" ;
- echo " +norecursion configure this directory only. [recurse]" ;
- echo " +objdir=ODIR configure in a parallel tree rooted in ODIR. [rooted in \".\"]" ;
- echo " +rm remove this configuration. [build a configuration]" ;
- echo " +site configure with site specific makefile" ;
+ echo " -ansi configure w/ANSI library. [no ansi lib]" ;
+ echo " -datadir=MYDIR configure for installation of host dependent files into MYDIR. [\"/usr/local\"]" ;
+ echo " -gas configure the compilers for use with gas. [native as]" ;
+ echo " -help print this message. [normal config]" ;
+ echo " -lang=LANG configure to build LANG. [gcc]" ;
+ echo " -nfp configure the compilers default to soft floating point. [hard float]" ;
+ echo " -norecursion configure this directory only. [recurse]" ;
+# echo " -objdir=ODIR configure in a parallel tree rooted in ODIR. [rooted in \".\"]" ;
+ echo " -prefix=MYDIR configure for installation of host dependent files into MYDIR. [\"/usr/local\"]" ;
+ echo " -rm remove this configuration. [build a configuration]" ;
+ echo " -site configure with site specific makefile" ;
+ echo " -srcdir=DIR find the sources in DIR. [\".\" or \"..\"]" ;
# This is correctly aligned in the output, even though it isn't here.
- echo " +subdirs configure in subdirectories. [in source directories]" ;
- echo " +target=TARGET configure for TARGET. [TARGET = HOST]" ;
- echo " +tmpdir=TMPDIR create temporary files in TMPDIR. [ TMPDIR = \"/tmp\" ]" ;
+# echo " -subdirs configure in subdirectories. [in source directories]" ;
+ echo " -target=TARGET configure for TARGET. [TARGET = HOST]" ;
+ echo " -tmpdir=TMPDIR create temporary files in TMPDIR. [ TMPDIR = \"/tmp\" ]" ;
echo ;
echo "Where HOST and TARGET are something like \"vax\", \"sun3\", \"encore\", etc." ;
- echo "Asking for more than one \"+target\" implies \"+subdirs\". Any other" ;
- echo "options given will apply to all targets.") 1>&2
+# echo "Asking for more than one \"--target\" implies \"--subdirs\". Any other" ;
+# echo "options given will apply to all targets."
+ ) 1>&2
if [ -r config.status ] ; then
cat config.status
@@ -296,40 +363,47 @@ if [ -n "${fatal}" -o "${hosts}" = "help" ] ; then
exit 1
fi
-### break up configure.in.
-if [ -r configure.in ] ; then
- if [ -z "`grep '^# per\-host:' configure.in`" ] ; then
- echo '***' `pwd`/configure.in has no "per-host:" line. 1>&2
+if [ -z "${srcdir}" ] ; then
+ if [ -r configure.in ] ; then
+ srcdir=.
+ elif [ -r ../configure.in ] ; then
+ srcdir=..
+ else
+ echo '***' "Can't find configure.in. Try using -srcdir=some_dir"
exit 1
fi
+fi
- if [ -z "`grep '^# per\-target:' configure.in`" ] ; then
- echo '***' `pwd`/configure.in has no "per-target:" line. 1>&2
- exit 1
- fi
- if [ -z "${TMPDIR}" ] ; then
- TMPDIR=/tmp ; export TMPDIR
- fi
+### break up ${srcdir}/configure.in.
+if [ -z "`grep '^# per\-host:' ${srcdir}/configure.in`" ] ; then
+ echo '***' ${srcdir}/configure.in has no "per-host:" line. 1>&2
+ exit 1
+fi
- # keep this filename short for &%*%$*# 14 char file names
- tmpfile=${TMPDIR}/cONf$$
+if [ -z "`grep '^# per\-target:' ${srcdir}/configure.in`" ] ; then
+ echo '***' ${srcdir}/configure.in has no "per-target:" line. 1>&2
+ exit 1
+fi
- # split configure.in into common, per-host, per-target,
- # and post-target parts. Post-target is optional.
- sed -e '/^# per\-host:/,$d' configure.in > ${tmpfile}.com
- sed -e '1,/^# per\-host:/d' -e '/^# per\-target:/,$d' configure.in > ${tmpfile}.hst
- if grep '^# post-target:' configure.in >/dev/null ; then
- sed -e '1,/^# per\-target:/d' -e '/^# post\-target:/,$d' configure.in > ${tmpfile}.tgt
- sed -e '1,/^# post\-target:/d' configure.in > ${tmpfile}.pos
- else
- sed -e '1,/^# per\-target:/d' configure.in > ${tmpfile}.tgt
- echo >${tmpfile}.pos
- fi
+if [ -z "${TMPDIR}" ] ; then
+ TMPDIR=/tmp ; export TMPDIR
+fi
+# keep this filename short for &%*%$*# 14 char file names
+tmpfile=${TMPDIR}/cONf$$
+trap "rm -f ${tmpfile}.com ${tmpfile}.tgt ${tmpfile}.hst ${tmpfile}.pos" 0
+
+# split ${srcdir}/configure.in into common, per-host, per-target,
+# and post-target parts. Post-target is optional.
+sed -e '/^# per\-host:/,$d' ${srcdir}/configure.in > ${tmpfile}.com
+sed -e '1,/^# per\-host:/d' -e '/^# per\-target:/,$d' ${srcdir}/configure.in > ${tmpfile}.hst
+if grep '^# post-target:' ${srcdir}/configure.in >/dev/null ; then
+ sed -e '1,/^# per\-target:/d' -e '/^# post\-target:/,$d' ${srcdir}/configure.in > ${tmpfile}.tgt
+ sed -e '1,/^# post\-target:/d' ${srcdir}/configure.in > ${tmpfile}.pos
else
- echo '***' No configure.in in `pwd`
- exit 1
+ sed -e '1,/^# per\-target:/d' ${srcdir}/configure.in > ${tmpfile}.tgt
+ echo >${tmpfile}.pos
fi
### do common part of configure.in
@@ -338,7 +412,7 @@ fi
# some sanity checks on configure.in
if [ -z "${srctrigger}" ] ; then
- echo '***' srctrigger not set in `pwd`/configure.in.
+ echo '***' srctrigger not set in ${PWD}/configure.in.
exit 1
fi
@@ -380,85 +454,88 @@ for host in ${hosts} ; do
. ${tmpfile}.tgt
- hostsubdir=H-${host_alias}
- targetsubdir=T-${target_alias}
-
- if [ -n "${removing}" ] ; then
- if [ -n "${objdir}" ] ; then
- echo '***' +rm not supported for +objdir. Just \"rm -rf ${objdir}\" by hand.
- exit 1
- fi
+ if [ "${host_alias}" = "${target_alias}" ] ; then
+ subdirname=H-${host_alias}
+ else
+ subdirname=X-${host_alias}-${target_alias}
+ fi
- if [ -n "${subdirs}" ] ; then
- if [ -d "${hostsubdir}" ] ; then
- rm -rf ${hostsubdir}/${targetsubdir}
+ if [ -n "${namesubdir}" ] ; then
+ subdirname=${namesubdir}
+ fi
- if [ -z "`(ls ${hostsubdir}) 2>&1 | grep T- | grep -v T-independent`" ] ; then
- rm -rf ${hostsubdir}
- fi
- else
- echo Warning: no `pwd`/${hostsubdir} to remove.
- fi
- else
+ if [ -n "${removing}" ] ; then
+# if [ -n "${objdir}" ] ; then
+# echo '***' --rm not supported for --objdir. Just \"rm -rf ${objdir}\" by hand.
+# exit 1
+# fi
+
+# if [ -n "${subdirs}" ] ; then
+# if [ -d "${subdirname}" ] ; then
+# rm -rf ${hostsubdir}
+# else
+# echo Warning: no ${PWD}/${hostsubdir} to remove.
+# fi
+# else
rm -f ${Makefile} config.status ${links}
- fi
+# fi
else
- if [ -n "${objdir}" ]; then
- srcdir=`pwd`
- cd ${objdir}
- fi
-
- if [ -n "${subdirs}" ] ; then
- # check for existing status before allowing forced subdirs.
- if [ -f ${Makefile} ] ; then
- echo '***' "${Makefile} already exists in source directory. `pwd` not configured." 1>&2
- exit 1
- fi
-
- if [ ! -d ${hostsubdir} ] ; then mkdir ${hostsubdir} ; fi
- cd ${hostsubdir}
-
- if [ ! -d ${targetsubdir} ] ; then
- if [ -z "${commontargets}" ] ; then
- mkdir ${targetsubdir}
- else
- if [ ! -d T-independent ] ; then
- mkdir T-independent
- fi
-
- ${symbolic_link} T-independent ${targetsubdir}
- fi # if target independent
- fi # if no target dir yet
-
- cd ${targetsubdir}
-
- if [ -z "${srcdir}" ] ; then
- srcdir=../..
- fi
- else
- # if not subdir builds, then make sure none exist.
- if [ -n "`(ls .) 2>&1 | (grep H- ; true)`" ] ; then
- echo '***' "Configured subdirs exist. `pwd` not configured." 1>&2
- exit 1
- else
- true
- fi
- fi
+# if [ -n "${objdir}" ]; then
+# srcdir=${PWD}
+# cd ${objdir}
+# fi
+
+# if [ -n "${subdirs}" ] ; then
+# # check for existing status before allowing forced subdirs.
+# if [ -f ${Makefile} ] ; then
+# echo '***' "${Makefile} already exists in source directory. ${PWD} not configured." 1>&2
+# exit 1
+# fi
+#
+# # use a subdir common to all targets for this host iff: this is a cross AND
+# # this tool does not claim to be target dependent AND we have not been asked to name the subdir.
+# if [ ${host_alias} != ${target_alias} -a -z "${target_dependent}" -a -z "${namesubdiroption}" ]
+# then
+# if [ ! -d H-${host_alias} ] ; then mkdir H-${host_alias} ; fi
+#
+# if (${symbolic_link} ${subdirname} H-${host_alias} 2> /dev/null) ; then
+# true
+# else # just give up. they lose.
+# rmdir H-${host_alias}
+# if [ ! -d ${subdirname} ] ; then mkdir ${subdirname} ; fi
+# fi
+# elif [ ! -d ${subdirname} ] ; then
+# mkdir ${subdirname}
+# fi
+#
+# cd ${subdirname}
+#
+# if [ -z "${srcdir}" ] ; then
+# srcdir=..
+# fi
+# elif [ "`echo H-*`" != "H-*" -a "`echo X-*`" != "X-*" ] ; then
+# # if not subdir builds, then make sure none exist.
+# # We might miss if there are explicitly named subdirs.
+# echo '***' "Configured subdirs exist. ${PWD} not configured." 1>&2
+# exit 1
+# else
+# true
+# fi
# Find the source files, if location was not specified.
if [ -z "${srcdir}" ] ; then
srcdirdefaulted=1
srcdir=.
- if [ -n "${srctrigger}" -a ! -r ${srctrigger} ] ; then
+ if [ ! -r ${srctrigger} ] ; then
srcdir=..
fi
fi
- if [ -n "${srctrigger}" -a ! -r ${srcdir}/${srctrigger} ] ; then
+ if [ ! -r ${srcdir}/${srctrigger} ] ; then
if [ -z "${srcdirdefaulted}" ] ; then
- echo '***' "${progname}: Can't find ${srcname} sources in `pwd`/${srcdir}" 1>&2
+ echo '***' "${progname}: Can't find ${srcname} sources in ${PWD}/${srcdir}" 1>&2
else
- echo '***' "${progname}: Can't find ${srcname} sources in `pwd`/. or `pwd`/.." 1>&2
+ echo '***' "${progname}: Can't find ${srcname} sources in ${PWD}/. or ${PWD}/.." 1>&2
fi
echo '***' \(At least ${srctrigger} is missing.\) 1>&2
@@ -498,15 +575,18 @@ for host in ${hosts} ; do
# Create a .gdbinit file which runs the one in srcdir
# and tells GDB to look there for source files.
- case ${srcdir} in
- .)
- ;;
- *)
- echo "dir ." > .gdbinit
- echo "dir ${srcdir}" >> .gdbinit
- echo "source ${srcdir}/.gdbinit" >> .gdbinit
- ;;
- esac
+ if [ -r ${srcdir}/.gdbinit ] ; then
+ case ${srcdir} in
+ .)
+ ;;
+ *)
+ echo "# "${NO_EDIT} > .gdbinit
+ echo "dir ." >> .gdbinit
+ echo "dir ${srcdir}" >> .gdbinit
+ echo "source ${srcdir}/.gdbinit" >> .gdbinit
+ ;;
+ esac
+ fi
# Install a makefile, and make it set VPATH
# if necessary so that the sources are found.
@@ -535,15 +615,15 @@ for host in ${hosts} ; do
echo "target_vendor = ${target_vendor}" >> ${Makefile}
echo "target_os = ${target_os}" >> ${Makefile}
- if [ -n "${subdirs}" ] ; then
- (echo "subdir = /${hostsubdir}/${targetsubdir}" ;
- echo "unsubdir = ../..") >> ${Makefile}
- else
+# if [ -n "${subdirs}" ] ; then
+# (echo "subdir = /${subdirname}" ;
+# echo "unsubdir = ..") >> ${Makefile}
+# else
(echo "subdir =" ;
echo "unsubdir = .") >> ${Makefile}
- fi
+# fi
- # echo "workdir = `pwd`" >> ${Makefile}
+ # echo "workdir = ${PWD}" >> ${Makefile}
echo "VPATH = ${srcdir}" >> ${Makefile}
# add "Makefile.in" (or whatever it's called)
@@ -587,15 +667,15 @@ for host in ${hosts} ; do
sed "s@^srcdir = \.@srcdir = ${srcdir}@" ${Makefile} > Makefile.tem
mv Makefile.tem ${Makefile}
- # set ddestdir
- if [ -n "${ddestdir}" ] ; then
- sed "s:^ddestdir =.*$:ddestdir = ${ddestdir}:" ${Makefile} > Makefile.tem
+ # set prefix
+ if [ -n "${prefix}" ] ; then
+ sed "s:^prefix =.*$:prefix = ${prefix}:" ${Makefile} > Makefile.tem
mv Makefile.tem ${Makefile}
fi
- # set idestdir
- if [ -n "${idestdir}" ] ; then
- sed "s:^idestdir =.*$:idestdir = ${idestdir}:" ${Makefile} > Makefile.tem
+ # set datadir
+ if [ -n "${datadir}" ] ; then
+ sed "s:^datadir =.*$:datadir = ${datadir}:" ${Makefile} > Makefile.tem
mv Makefile.tem ${Makefile}
fi
@@ -611,6 +691,11 @@ for host in ${hosts} ; do
sed -e "s/ //" ${Makefile} > Makefile.tem
mv Makefile.tem ${Makefile}
+ # prepend warning about editting.
+ echo "# "${NO_EDIT} > ${Makefile}.tem
+ cat ${Makefile} >> ${Makefile}.tem
+ mv Makefile.tem ${Makefile}
+
using=
if [ -f ${srcdir}/${host_makefile_frag} ] ; then
using="${using} and \"${host_makefile_frag}\""
@@ -623,7 +708,7 @@ for host in ${hosts} ; do
using="${using} and \"${site_makefile_frag}\""
fi
using=`echo "${using}" | sed 's/and/using/'`
- using="Created \"${Makefile}\" in `pwd`${using}."
+ using="Created \"${Makefile}\" in ${PWD}${using}."
if [ -n "${verbose}" -o -z "${recurring}" ] ; then
echo ${using}
@@ -636,199 +721,94 @@ for host in ${hosts} ; do
# the same configuration. Used in Makefiles to rebuild
# Makefiles.
+ if [ -z "${norecursion}" ] ; then
+ arguments="${arguments} -norecursion"
+ fi
+
echo "#!/bin/sh
-# `pwd` was configured as follows:
-(cd ${srcdir} ; ${progname}" ${arguments} `if [ -z "${norecursion}" ] ; then echo +norecursion ; else true ; fi` ")
+# ${NO_EDIT}
+# ${PWD} was configured as follows:
+${progname}" ${arguments} "
# ${using}" > config.status
chmod a+x config.status
- originaldir=`pwd`
- cd ${srcdir}
+# originaldir=${PWD}
+# cd ${srcdir}
fi
- # If there are subdirectories, then recurse.
+ # If there are subdirectories, then recur.
if [ -z "${norecursion}" -a -n "${configdirs}" ] ; then
for configdir in ${configdirs} ; do
if [ -n "${verbose}" ] ; then
echo Configuring ${configdir}...
fi
- if [ -d ${configdir} ] ; then
- if [ -n "${objdir}" ] ; then
- if [ ! -d ${objdir}/${configdir} ] ; then
- mkdir ${objdir}/${configdir}
+ if [ -d ${srcdir}/${configdir} ] ; then
+ if [ "${srcdir}" != "." ] ; then
+ if [ ! -d ./${configdir} ] ; then
+ mkdir ./${configdir}
fi
fi
- POPDIR=`pwd`
+ POPDIR=${PWD}
cd ${configdir}
- if (${progname} +recurring ${host_alias} +target=${target_alias} \
- ${verbose} ${subdirs} ${removing} +ddestdir=${ddestdir} +idestdir=${idestdir} \
- `if [ -n "${objdir}" ] ; then echo +objdir=${objdir}/${configdir} ; fi` \
- ${tmpdiroption}) ; then
+### figure out what to do with srcdir
+ case "${srcdir}" in
+ ".") ;; # do nothing. We're building in place.
+ "..") srcdiroption="-srcdir=../../${configdir}" ;;
+ *) srcdiroption="-srcdir=${srcdir}/${configdir}" ;;
+ esac
+
+### The recursion line is here.
+ if (${progname} -recurring ${host_alias} -target=${target_alias} \
+ ${verbose} ${subdirs} ${removing} ${prefixoption} \
+ ${tmpdiroption} ${namesubdiroption} ${datadiroption} \
+ ${srcdiroption}) ; then
true
else
exit 1
fi
cd ${POPDIR}
-
-# (cd ${configdir} ;
-# if (${progname} +recurring ${host_alias} +target=${target_alias} \
-# ${verbose} ${subdirs} ${removing} +destdir=${destdir} \
-# `if [ -n "${objdir}" ] ; then echo +objdir=${objdir}/${configdir} ; fi` \
-# ${tmpdiroption}) ; then true ; else exit 1 ; fi) \
-# | sed 's/^/ /'
- else
- if [ -n "${verbose}" ] ; then
- echo Warning: directory \"${configdir}\" is missing.
- fi
+ elif [ -n "${verbose}" ] ; then
+ echo Warning: source directory \"${srcdir}/${configdir}\" is missing.
fi
done
fi
done # for each target
# Now build a Makefile for this host.
- if [ -n "${subdirs}" -a ! -n "${removing}" ] ; then
- push=`pwd`
-
- if [ -n "${objdir}" ] ; then
- cd ${objdir}
- fi
-
- cd ${hostsubdir}
- cat > GNUmakefile << 'E!O!F'
-# Makefile generated by configure for host ${host_alias}.
-
-ALL := $(shell ls -d T-*)
-
-%:
- $(foreach subdir,$(ALL),$(MAKE) -C $(subdir) \$@ &&) true
-
-all:
-E!O!F
- cd ${push}
- fi
+# if [ -n "${subdirs}" -a ! -n "${removing}" ] ; then
+# push=${PWD}
+#
+# if [ -n "${objdir}" ] ; then
+# cd ${objdir}
+# fi
+#
+# cd ${hostsubdir}
+# cat > GNUmakefile << 'E!O!F'
+## Makefile generated by configure for host ${host_alias}.
+#
+#ALL := $(shell ls -d T-*)
+#
+#%:
+# $(foreach subdir,$(ALL),$(MAKE) -C $(subdir) \$@ &&) true
+#
+#all:
+#E!O!F
+# cd ${push}
+# fi
done # for each host
### clean up.
-rm -f ${tmpfile}.com ${tmpfile}.tgt ${tmpfile}.hst ${tmpfile}.pos
+# trap cmd above handles this now:
+#rm -f ${tmpfile}.com ${tmpfile}.tgt ${tmpfile}.hst ${tmpfile}.pos
exit 0
#
-#
-# $Log$
-# Revision 1.71 1991/11/13 20:56:11 sac
-# Passes down version_path for things which install themselves into
-# libsubdir.
-#
-# Revision 1.70 1991/11/13 19:49:17 sac
-# The +noversion flag will make an installation happen to the machine/..
-# directory rather than the machine/version/.. directory.
-#
-# Steve
-#
-# Revision 1.69 1991/11/12 04:41:21 rich
-# allow +foo bar options. stolen from texinfo configure
-#
-# Revision 1.68 1991/11/09 11:34:52 rich
-# correct a comment
-#
-# Revision 1.67 1991/11/06 22:28:08 rich
-# pass +idestdir and +ddestdir
-#
-# Revision 1.66 1991/11/05 04:02:14 rich
-# don't allow +recurring to reach config.status
-#
-# Revision 1.65 1991/11/01 00:25:28 rich
-# new install theme
-#
-# Revision 1.64 1991/10/30 06:55:25 rich
-# suck in site makefile frags first
-#
-# Revision 1.63 1991/10/25 02:07:18 steve
-# More name changing
-#
-# Revision 1.62 1991/10/24 11:59:03 rich
-# add null definitions for makefile_frag_foo
-#
-# Revision 1.61 1991/10/24 00:23:59 hgs
-# Allow for using tmake-sun4
-#
-# Revision 1.60 1991/10/23 21:48:28 rich
-# Makefiles should include the makefile frag names even if the makefile
-# frag doesn't exist in *this* directory. Otherwise we inherit the
-# variable setting from our parent Makefile.
-#
-# Revision 1.59 1991/10/16 19:53:31 gnu
-# Update for SCO problems.
-#
-# * Fix "Larry Wall kludge" line so it works. If this script is run by csh,
-# it will complain, feed itself to sh, and complain some more. But will work.
-#
-# * Use <14 char file names in /tmp.
-#
-# Revision 1.58 1991/10/16 06:12:52 rich
-# Two small bugs. First, single quoted sed line doesn't need to quote
-# '$'. Second, use quotes around the hereis document trigger in order
-# to quote the entire contents of the hereis document.
-#
-# Revision 1.57 1991/10/11 05:31:05 gnu
-# Simplify "Using" message code. Put the message that configure prints
-# (or suppresses) into the config.status file as a comment.
-#
-# Revision 1.56 1991/10/10 05:01:47 rich
-# Remove the set -e but protect the recusion call.
-#
-# Revision 1.55 1991/10/10 04:57:23 rich
-# * Die when sub-configure's do.
-# * get the makefile building message line correct.
-# * set -e
-#
-# Revision 1.54 1991/10/10 01:04:42 rich
-# Backed out the "/bin/sh config.sub" change. Fails when config.sub was
-# on PATH.
-#
-# Revision 1.53 1991/10/10 00:38:08 rich
-# Call config.sub as "/bin/sh config.sub" instead of directly. This
-# protects us from the case where config.sub isn't executable.
-#
-# Revision 1.52 1991/10/09 00:48:26 rich
-# Another patch from jim.
-#
-# Revision 1.51 1991/10/08 06:07:58 wilson
-# Fix bug in smake- file code.
-#
-# Revision 1.50 1991/10/04 23:49:37 rich
-# Per's patch for my config.sub botch.
-#
-# Revision 1.49 1991/10/04 22:52:09 rich
-# Use john's heuristic for finding ourselves. kinda like hare krishna.
-#
-# Revision 1.48 1991/10/02 13:17:28 rich
-# take out the set -e for now
-#
-# Revision 1.47 1991/10/02 10:02:23 rich
-# * temporary files in TMPDIR
-# * +objdir
-#
-# Revision 1.46 1991/10/02 06:29:53 rich
-# Added +site=foo option for naming site specific Makefile fragments.
-#
-# Revision 1.45 1991/10/02 06:15:13 rich
-# Removed +f option. Used to stand for +forcesubdirs which is now
-# called +subdirs.
-#
-# Revision 1.44 1991/10/02 06:02:35 rich
-# Added rcs log line.
-#
-#
-#
-
-#
# Local Variables:
# fill-column: 131
# End: