diff options
Diffstat (limited to 'm4/ctng_prog_stat.m4')
-rw-r--r-- | m4/ctng_prog_stat.m4 | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/m4/ctng_prog_stat.m4 b/m4/ctng_prog_stat.m4 index 5db34693..6bee0760 100644 --- a/m4/ctng_prog_stat.m4 +++ b/m4/ctng_prog_stat.m4 @@ -2,23 +2,30 @@ # string (BSD or GNU). Defines ac_cv_stat_flavor to either GNU or BSD; # and evaluates either IF-GNU or IF-BSD expression. # CTNG_PROG_STAT([IF-GNU], [IF-BSD]) -AC_DEFUN([CTNG_PROG_STAT], - [AX_REQUIRE_DEFINED([CTNG_CHECK_PROGS_REQ]) - CTNG_CHECK_PROGS_REQ([stat], [stat]) - AC_CACHE_CHECK([whether stat takes GNU or BSD format], - [acx_cv_stat_flavor], +AC_DEFUN([CTNG_PROG_STAT_FORMAT], + [AC_CACHE_CHECK([whether stat takes GNU or BSD format], + [ctng_cv_stat_flavor], [touch conftest chmod 642 conftest attr_bsd=$(stat -f '%Lp' conftest 2>/dev/null) attr_gnu=$(stat -c '%a' conftest 2>/dev/null) rm -f conftest AS_IF([test "$attr_bsd" = "642"], - [acx_cv_stat_flavor=BSD - $2 - ], + [ctng_cv_stat_flavor=BSD], [test "$attr_gnu" = "642"], - [acx_cv_stat_flavor=GNU - $1 - ], - [AC_MSG_ERROR([cannot determine stat(1) format option])])]) + [ctng_cv_stat_flavor=GNU], + [ctng_cv_stat_flavor=unknown])]) + AS_IF([test "$ctng_cv_stat_flavor" = "GNU" ], [$1], + [test "$ctng_cv_stat_flavor" = "BSD" ], [$2], + [AC_MSG_ERROR([cannot determine stat(1) format option])]) + ]) + +AC_DEFUN([CTNG_PROG_STAT], + [AX_REQUIRE_DEFINED([CTNG_CHECK_PROGS_REQ]) + CTNG_CHECK_PROGS_REQ([stat], [stat]) + CTNG_PROG_STAT_FORMAT( + [CTNG_SET_KCONFIG_OPTION([stat_flavor_GNU], [y]) + CTNG_SET_KCONFIG_OPTION([stat_flavor_BSD])], + [CTNG_SET_KCONFIG_OPTION([stat_flavor_BSD], [y]) + CTNG_SET_KCONFIG_OPTION([stat_flavor_GNU])]) ]) |