pier 01/09/14 16:51:34
Modified: webapp/support aplocal.m4
Log:
Added LOCAL_CHECK_PROG to check and fail if a program was not found.
Added documentation on functions (this file is getting big and cumbersome)
Modified LOCAL_FILTEREXEC to store the error-code returned by execution in
a variable (specified by name)
Modified LOCAL_RESOLVEDIR to check for the directory before resolving (doh)
and to store the full path name in to a variable (specified by name)
Revision Changes Path
1.6 +95 -21 jakarta-tomcat-connectors/webapp/support/aplocal.m4
Index: aplocal.m4
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/support/aplocal.m4,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- aplocal.m4 2001/09/14 01:26:19 1.5
+++ aplocal.m4 2001/09/14 23:51:34 1.6
@@ -57,17 +57,22 @@
dnl --------------------------------------------------------------------------
dnl Author Pier Fumagalli <[EMAIL PROTECTED]>
-dnl Version $Id: aplocal.m4,v 1.5 2001/09/14 01:26:19 pier Exp $
+dnl Version $Id: aplocal.m4,v 1.6 2001/09/14 23:51:34 pier Exp $
dnl --------------------------------------------------------------------------
+dnl --------------------------------------------------------------------------
+dnl LOCAL_INIT
+dnl Discover binaries required further on in the automake process and to
+dnl process makefiles. Those are TRUE, ECHO, GREP, CAT, SED and RM
+dnl --------------------------------------------------------------------------
AC_DEFUN(LOCAL_INIT,[
- AC_PATH_PROG(TEST,test,${PATH})
- AC_PATH_PROG(TRUE,true,${PATH})
- AC_PATH_PROG(ECHO,echo,${PATH})
- AC_PATH_PROG(GREP,grep,${PATH})
- AC_PATH_PROG(CAT,cat,${PATH})
- AC_PATH_PROG(SED,sed,${PATH})
- AC_PATH_PROG(RM,rm,${PATH})
+ AC_CHECK_PROG(TEST,"test","test","",${PATH})
+ LOCAL_CHECK_PROG(TRUE,true)
+ LOCAL_CHECK_PROG(ECHO,echo)
+ LOCAL_CHECK_PROG(GREP,grep)
+ LOCAL_CHECK_PROG(CAT,cat)
+ LOCAL_CHECK_PROG(SED,sed)
+ LOCAL_CHECK_PROG(RM,rm)
AC_SUBST(TEST)
AC_SUBST(TRUE)
AC_SUBST(ECHO)
@@ -77,6 +82,34 @@
AC_SUBST(RM)
])
+dnl --------------------------------------------------------------------------
+dnl LOCAL_CHECK_PROG
+dnl Check wether a program exists in the current PATH or not and fail if
+dnl this was not found.
+dnl
+dnl Parameters:
+dnl $1 - name of the variable where the program name must be stored
+dnl $2 - binary name of the program to look for
+dnl --------------------------------------------------------------------------
+AC_DEFUN(LOCAL_CHECK_PROG,[
+ local_vnam="$1"
+ AC_CHECK_PROG($1,$2,$2,,${PATH})
+ local_vval=`eval "echo \\$$local_vnam"`
+ if ${TEST} -z "${local_vval}"
+ then
+ AC_MSG_ERROR([cannot find required binary \"$2\"])
+ fi
+ unset local_vnam
+ unset local_vval
+])
+
+dnl --------------------------------------------------------------------------
+dnl LOCAL_HEADER
+dnl Output a header for a stage of the configure process
+dnl
+dnl Parameters:
+dnl $1 - message to be printed in the header
+dnl --------------------------------------------------------------------------
AC_DEFUN(LOCAL_HEADER,[
${ECHO} ""
${ECHO} "$1" 1>&2
@@ -89,11 +122,29 @@
AC_DIVERT_POP()
])
+dnl --------------------------------------------------------------------------
+dnl LOCAL_FILTEREXEC
+dnl Execute a program filtering its output (pretty printing).
+dnl
+dnl Parameters:
+dnl $1 - name of the variable containing the return value (error code).
+dnl $2 - name of the binary/script to invoke
+dnl $3 - message used for pretty printing output
+dnl --------------------------------------------------------------------------
AC_DEFUN(LOCAL_FILTEREXEC,[
- ${ECHO} " Invoking: $1"
+ local_vnam="$1"
+ ${ECHO} " Invoking: $2"
${ECHO} "-1" > retvalue.tmp
+
+ set local_file $2
+ local_file=[$]2
+ if ${TEST} ! -x "${local_file}"
+ then
+ AC_MSG_ERROR([cannot find or execute \"${local_file}\" in \"`pwd`\"])
+ fi
+
{
- $1
+ $2
${ECHO} retvalue $?
}|{
ret=0
@@ -108,25 +159,48 @@
then
ret="${line}"
else
- ${ECHO} " $2: ${first} ${line}"
+ ${ECHO} " $3: ${first} ${line}"
fi
fi
done
+ echo "${ret}" > retvalue.tmp
unset first
unset line
- echo "${ret}" > retvalue.tmp
+ unset ret
}
- ret=`${CAT} retvalue.tmp`
+
+ eval "$local_vnam=`${CAT} retvalue.tmp`"
+ local_vval=`eval "echo \\$$local_vnam"`
${RM} retvalue.tmp
- ${ECHO} " Execution of $1 returned ${ret}"
+ ${ECHO} " Execution of $2 returned ${local_vval}"
+ unset local_vnam
+ unset local_vval
])
+dnl --------------------------------------------------------------------------
+dnl LOCAL_RESOLVEDIR
+dnl Resolve the full path name of a directory.
+dnl
+dnl Parameters:
+dnl $1 - name of the variable in which the full path name will be stored
+dnl $2 - directory name to resolve
+dnl $3 - message used for this check
+dnl --------------------------------------------------------------------------
AC_DEFUN(LOCAL_RESOLVEDIR,[
- AC_MSG_CHECKING([for $2])
- localdir="`pwd`"
- cd "$1"
- DIR=`pwd`
- AC_MSG_RESULT([${DIR}])
+ AC_MSG_CHECKING([for $3])
+ if ${TEST} -d "$2"
+ then
+ curdir="`pwd`"
+ cd "$2"
+ newdir="`pwd`"
+ eval "$1=${newdir}"
+ AC_SUBST($1)
+ AC_MSG_RESULT([${newdir}])
+ cd "${curdir}"
+ unset curdir
+ unset newdir
+ else
+ AC_MSG_RESULT([error])
+ AC_MSG_ERROR([Directory not found \"$2\"])
+ fi
])
-
-