| # Check to make sure that the build environment is sane. -*- Autoconf -*- |
| |
| # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 |
| # Free Software Foundation, Inc. |
| # |
| # This file is free software; the Free Software Foundation |
| # gives unlimited permission to copy and/or distribute it, |
| # with or without modifications, as long as this notice is preserved. |
| |
| # serial 5 |
| |
| # AM_SANITY_CHECK |
| # --------------- |
| AC_DEFUN([AM_SANITY_CHECK], |
| [AC_MSG_CHECKING([whether build environment is sane]) |
| # Just in case |
| sleep 1 |
| echo timestamp > conftest.file |
| # Reject unsafe characters in $srcdir or the absolute working directory |
| # name. Accept space and tab only in the latter. |
| am_lf=' |
| ' |
| case `pwd` in |
| *[[\\\"\#\$\&\'\`$am_lf]]*) |
| AC_MSG_ERROR([unsafe absolute working directory name]);; |
| esac |
| case $srcdir in |
| *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) |
| AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; |
| esac |
| |
| # Do `set' in a subshell so we don't clobber the current shell's |
| # arguments. Must try -L first in case configure is actually a |
| # symlink; some systems play weird games with the mod time of symlinks |
| # (eg FreeBSD returns the mod time of the symlink's containing |
| # directory). |
| if ( |
| set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` |
| if test "$[*]" = "X"; then |
| # -L didn't work. |
| set X `ls -t "$srcdir/configure" conftest.file` |
| fi |
| rm -f conftest.file |
| if test "$[*]" != "X $srcdir/configure conftest.file" \ |
| && test "$[*]" != "X conftest.file $srcdir/configure"; then |
| |
| # If neither matched, then we have a broken ls. This can happen |
| # if, for instance, CONFIG_SHELL is bash and it inherits a |
| # broken ls alias from the environment. This has actually |
| # happened. Such a system could not be considered "sane". |
| AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken |
| alias in your environment]) |
| fi |
| |
| test "$[2]" = conftest.file |
| ) |
| then |
| # Ok. |
| : |
| else |
| AC_MSG_ERROR([newly created file is older than distributed files! |
| Check your system clock]) |
| fi |
| AC_MSG_RESULT(yes)]) |