diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-11-30 08:11:54 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-11-30 08:11:54 +0000 |
commit | 0fcb9410b9c51a179b3c7a80291f00dac344038c (patch) | |
tree | dab274171657d806e2298ce1efb4180c566744b9 /autoconf/m4 | |
parent | 0f535c6fa8b03491dc110feb65d78922ee29d1fc (diff) | |
download | external_llvm-0fcb9410b9c51a179b3c7a80291f00dac344038c.zip external_llvm-0fcb9410b9c51a179b3c7a80291f00dac344038c.tar.gz external_llvm-0fcb9410b9c51a179b3c7a80291f00dac344038c.tar.bz2 |
Add a check for the tclsh program needed by dejagnu. This can have weird
names that have version numbers in it so this macro, DJ_AC_PATH_TCLSH will
make the necessary checks. The makefile variable TCLSH is set to the path
found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18382 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'autoconf/m4')
-rw-r--r-- | autoconf/m4/path_tclsh.m4 | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/autoconf/m4/path_tclsh.m4 b/autoconf/m4/path_tclsh.m4 new file mode 100644 index 0000000..4fb0029 --- /dev/null +++ b/autoconf/m4/path_tclsh.m4 @@ -0,0 +1,56 @@ +dnl This macro checks for tclsh which is required to run dejagnu. On some +dnl platforms (notably FreeBSD), tclsh is named tclshX.Y - this handles +dnl that for us so we can get the latest installed tclsh version. +dnl +AC_DEFUN([DJ_AC_PATH_TCLSH], [ +dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../ +../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../.. +/../../../../../.." +no_itcl=true +AC_MSG_CHECKING(for the tclsh program) +AC_ARG_WITH(tclinclude, [ --with-tclinclude directory where tcl headers are], with_tclinclude=${withval}) +AC_CACHE_VAL(ac_cv_path_tclsh,[ +dnl first check to see if --with-itclinclude was specified +if test x"${with_tclinclude}" != x ; then + if test -f ${with_tclinclude}/tclsh ; then + ac_cv_path_tclsh=`(cd ${with_tclinclude}; pwd)` + elif test -f ${with_tclinclude}/src/tclsh ; then + ac_cv_path_tclsh=`(cd ${with_tclinclude}/src; pwd)` + else + AC_MSG_ERROR([${with_tclinclude} directory doesn't contain tclsh]) + fi +fi +]) + +dnl next check in private source directory +dnl since ls returns lowest version numbers first, reverse its output +if test x"${ac_cv_path_tclsh}" = x ; then + dnl find the top level Itcl source directory + for i in $dirlist; do + if test -n "`ls -dr $srcdir/$i/tcl* 2>/dev/null`" ; then + tclpath=$srcdir/$i + break + fi + done + + dnl find the exact Itcl source dir. We do it this way, cause there + dnl might be multiple version of Itcl, and we want the most recent one. + for i in `ls -dr $tclpath/tcl* 2>/dev/null ` ; do + if test -f $i/src/tclsh ; then + ac_cv_path_tclsh=`(cd $i/src; pwd)`/tclsh + break + fi + done +fi + +dnl see if one is installed +if test x"${ac_cv_path_tclsh}" = x ; then + AC_MSG_RESULT(none) + AC_PATH_PROG(tclsh, tclsh) +else + AC_MSG_RESULT(${ac_cv_path_tclsh}) +fi +TCLSH="${ac_cv_path_tclsh}" +AC_SUBST(TCLSH) +]) + |