*** empty log message ***
[gnulib.git] / m4 / dirname.m4
1 #serial 1
2
3 dnl See if the dirname function modifies its argument.
4 dnl We can't just do AC_REPLACE_FUNCS(dirname) because some systems
5 dnl (e.g., X/Open) have a function by that name that modifies and returns
6 dnl its argument.
7 AC_DEFUN(jm_FUNC_DIRNAME,
8 [dnl
9   AC_CACHE_CHECK([for working dirname function], jm_cv_func_working_dirname,
10   [AC_TRY_RUN([
11     int main ()
12     {
13       const char *path = "a/b";
14       char *dir = dirname (path);
15       exit ((dir != path && *dir == 'a' && dir[1] == 0) ? 0 : 1);
16     }
17     ], jm_cv_func_working_dirname=yes dnl The library version works.
18     , jm_cv_func_working_dirname=no dnl The library version does NOT work.
19     , jm_cv_func_working_dirname=no dnl We're cross compiling.
20     )
21   ])
22
23   if test $jm_cv_func_working_dirname = no; then
24     LIBOBJS="$LIBOBJS dirname.o"
25     AC_SUBST(LIBOBJS)dnl
26   fi
27 ])