Patrick Welche <prlw1@cam.ac.uk>
[netbsd-mini2440.git] / external / bsd / am-utils / dist / m4 / macros / check_mnttab_opt.m4
blob97bdd7c85f872f9693981ca330243b43c16e465b
1 dnl ######################################################################
2 dnl check the string type of the name of a filesystem mount table entry
3 dnl option.
4 dnl Usage: AMU_CHECK_MNTTAB_OPT(<fs>)
5 dnl Check if there is an entry for MNTOPT_<fs> in sys/mntent.h or mntent.h
6 dnl define MNTTAB_OPT_<fs> to the string name (e.g., "ro").
7 AC_DEFUN([AMU_CHECK_MNTTAB_OPT],
9 # what name to give to the fs
10 ac_fs_name=$1
11 # store variable name of fs
12 ac_upcase_fs_name=`echo $ac_fs_name | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
13 ac_safe=MNTTAB_OPT_$ac_upcase_fs_name
14 # check for cache and set it if needed
15 AMU_CACHE_CHECK_DYNAMIC(for mount table option $ac_fs_name,
16 ac_cv_mnttab_opt_$ac_fs_name,
18 # undefine by default
19 eval "ac_cv_mnttab_opt_$ac_fs_name=notfound"
20 # and look to see if it was found
21 AMU_EXPAND_CPP_STRING(
22 AMU_MOUNT_HEADERS
23 , MNTOPT_$ac_upcase_fs_name)
24 # set cache variable to value
25 if test "${value}" != notfound
26 then
27   eval "ac_cv_mnttab_opt_$ac_fs_name=\\\"$value\\\""
28 else
29   eval "ac_cv_mnttab_opt_$ac_fs_name=$value"
31 dnl DO NOT CHECK FOR MNT_* b/c bsd44 systems don't use /etc/mnttab,
33 # outside cache check, if ok, define macro
34 ac_tmp=`eval echo '$''{ac_cv_mnttab_opt_'$ac_fs_name'}'`
35 if test "${ac_tmp}" != notfound
36 then
37   AC_DEFINE_UNQUOTED($ac_safe, $ac_tmp)
40 dnl ======================================================================
42 dnl ######################################################################
43 dnl run AMU_CHECK_MNTTAB_OPT on each argument given
44 dnl Usage: AMU_CHECK_MNTTAB_OPTS(arg arg arg ...)
45 AC_DEFUN([AMU_CHECK_MNTTAB_OPTS],
47 for ac_tmp_arg in $1
49 AMU_CHECK_MNTTAB_OPT($ac_tmp_arg)
50 done
52 dnl ======================================================================