*** empty log message ***
authorJim Meyering <jim@meyering.net>
Mon, 7 Dec 1998 05:54:29 +0000 (05:54 +0000)
committerJim Meyering <jim@meyering.net>
Mon, 7 Dec 1998 05:54:29 +0000 (05:54 +0000)
m4/dirname.m4 [new file with mode: 0644]

diff --git a/m4/dirname.m4 b/m4/dirname.m4
new file mode 100644 (file)
index 0000000..48ecd00
--- /dev/null
@@ -0,0 +1,27 @@
+#serial 1
+
+dnl See if the dirname function modifies its argument.
+dnl We can't just do AC_REPLACE_FUNCS(dirname) because some systems
+dnl (e.g., X/Open) have a function by that name that modifies and returns
+dnl its argument.
+AC_DEFUN(jm_FUNC_DIRNAME,
+[dnl
+  AC_CACHE_CHECK([for working dirname function], jm_cv_func_working_dirname,
+  [AC_TRY_RUN([
+    int main ()
+    {
+      const char *path = "a/b";
+      char *dir = dirname (path);
+      exit ((dir != path && *dir == 'a' && dir[1] == 0) ? 0 : 1);
+    }
+    ], jm_cv_func_working_dirname=yes dnl The library version works.
+    , jm_cv_func_working_dirname=no dnl The library version does NOT work.
+    , jm_cv_func_working_dirname=no dnl We're cross compiling.
+    )
+  ])
+
+  if test $jm_cv_func_working_dirname = no; then
+    LIBOBJS="$LIBOBJS dirname.o"
+    AC_SUBST(LIBOBJS)dnl
+  fi
+])