bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

split off module mkdirat from module openat


From: Bruno Haible
Subject: split off module mkdirat from module openat
Date: Fri, 4 Nov 2011 11:32:12 +0100
User-agent: KMail/1.13.6 (Linux/2.6.37.6-0.5-desktop; KDE/4.6.0; x86_64; ; )

Hi Jim,

This proposed patch splits off module mkdirat from module openat.


2011-11-04  Bruno Haible  <address@hidden>

        New module 'mkdirat', split off from module 'openat'.
        * m4/mkdirat.m4: New file. extracted from m4/openat.m4.
        * m4/openat.m4 (gl_FUNC_OPENAT): Don't require gl_SYS_STAT_H_DEFAULTS.
        Don't test for mkdirat. Don't set GNULIB_MKDIRAT, HAVE_MKDIRAT.
        * modules/mkdirat: New file, extracted from modules/openat.
        * modules/openat (Files): Remove lib/mkdirat.c.
        (Depends-on): Remove mkdir.
        (configure.ac): Remove AC_LIBOBJ of mkdirat.
        (Include): Remove <sys/stat.h>.
        * modules/mkdirat-tests: New file, extracted from modules/openat-tests.
        * modules/openat-tests (Files): Remove tests/test-mkdirat.c,
        tests/test-mkdir.h.
        (Depends-on): Remove ignore-value.
        (Makefile.am): Remove rules for test-mkdirat.
        * doc/posix-functions/mkdirat.texi: Mention module 'mkdirat' instead
        of module 'openat'.
        * NEWS: Mention the change.

================================ m4/mkdirat.m4 ================================
# mkdirat.m4 serial 1
dnl Copyright (C) 2004-2011 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.

# Written by Jim Meyering.

AC_DEFUN([gl_FUNC_MKDIRAT],
[
  AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
  AC_CHECK_FUNCS_ONCE([mkdirat])
  if test $ac_cv_func_mkdirat != yes; then
    HAVE_MKDIRAT=0
  fi
])

# Prerequisite of mkdirat's declaration and of lib/mkdirat.c.
AC_DEFUN([gl_PREREQ_MKDIRAT],
[
  AC_REQUIRE([AC_TYPE_MODE_T])
])
=============================== modules/mkdirat ===============================
Description:
mkdirat() function: Create a directory relative to a given directory.

Files:
lib/mkdirat.c
lib/at-func.c
lib/openat.h
lib/openat-priv.h
m4/mkdirat.m4

Depends-on:
dirent
dosname
errno
extensions
fchdir
fcntl-h
mkdir           [test $HAVE_MKDIRAT = 0]
openat
openat-die
save-cwd
stdbool
sys_stat
unistd

configure.ac:
gl_FUNC_MKDIRAT
if test $HAVE_MKDIRAT = 0; then
  AC_LIBOBJ([mkdirat])
  gl_PREREQ_MKDIRAT
fi
gl_SYS_STAT_MODULE_INDICATOR([mkdirat])

Makefile.am:

Include:
<sys/stat.h>

License:
GPL

Maintainer:
Jim Meyering, Eric Blake
============================ modules/mkdirat-tests ============================
Files:
tests/test-mkdirat.c
tests/test-mkdir.h
tests/signature.h
tests/macros.h

Depends-on:
ignore-value
progname
symlink

configure.ac:

Makefile.am:
TESTS += test-mkdirat
check_PROGRAMS += test-mkdirat
test_mkdirat_LDADD = $(LDADD) @LIBINTL@
===============================================================================
--- NEWS.orig   Fri Nov  4 11:27:24 2011
+++ NEWS        Fri Nov  4 11:02:03 2011
@@ -12,6 +12,10 @@
 
 Date        Modules         Changes
 
+2011-11-05  openat          This module no longer provides the mkdirat()
+                            function. If you need this function, you now need
+                            to request the 'mkdirat' module.
+
 2011-11-04  openat          This module no longer provides the fstatat()
                             function. If you need this function, you now need
                             to request the 'fstatat' module.
--- doc/posix-functions/mkdirat.texi.orig       Fri Nov  4 11:27:24 2011
+++ doc/posix-functions/mkdirat.texi    Fri Nov  4 11:15:04 2011
@@ -4,7 +4,7 @@
 
 POSIX specification:@* 
@url{http://www.opengroup.org/onlinepubs/9699919799/functions/mkdirat.html}
 
-Gnulib module: openat
+Gnulib module: mkdirat
 
 Portability problems fixed by Gnulib:
 @itemize
--- m4/openat.m4.orig   Fri Nov  4 11:27:24 2011
+++ m4/openat.m4        Fri Nov  4 11:11:24 2011
@@ -1,4 +1,4 @@
-# serial 41
+# serial 42
 # See if we need to use our replacement for Solaris' openat et al functions.
 
 dnl Copyright (C) 2004-2011 Free Software Foundation, Inc.
@@ -13,11 +13,8 @@
   AC_REQUIRE([gl_FCNTL_H_DEFAULTS])
   GNULIB_OPENAT=1
 
-  AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
-  GNULIB_MKDIRAT=1
-
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
-  AC_CHECK_FUNCS_ONCE([mkdirat openat])
+  AC_CHECK_FUNCS_ONCE([openat])
   AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
   case $ac_cv_func_openat+$gl_cv_func_lstat_dereferences_slashed_symlink in
   yes+yes)
@@ -31,9 +28,6 @@
     HAVE_OPENAT=0
     gl_PREREQ_OPENAT;;
   esac
-  if test $ac_cv_func_mkdirat != yes; then
-    HAVE_MKDIRAT=0
-  fi
 
   dnl This is tested at least via getcwd.c.
   gl_MODULE_INDICATOR([openat])
--- modules/openat.orig Fri Nov  4 11:27:24 2011
+++ modules/openat      Fri Nov  4 11:08:34 2011
@@ -3,7 +3,6 @@
 
 Files:
 lib/at-func.c
-lib/mkdirat.c
 lib/openat.c
 lib/openat.h
 lib/openat-priv.h
@@ -22,7 +21,6 @@
 gettext-h
 intprops
 largefile
-mkdir           [test $HAVE_MKDIRAT = 0]
 open
 openat-die
 save-cwd
@@ -33,9 +31,6 @@
 configure.ac:
 gl_FUNC_OPENAT
 AC_LIBOBJ([openat-proc])
-if test $HAVE_MKDIRAT = 0; then
-  AC_LIBOBJ([mkdirat])
-fi
 if test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1; then
   AC_LIBOBJ([openat])
 fi
@@ -44,7 +39,6 @@
 
 Include:
 <fcntl.h>
-<sys/stat.h>
 <unistd.h>
 "openat.h"
 
--- modules/openat-tests.orig   Fri Nov  4 11:27:24 2011
+++ modules/openat-tests        Fri Nov  4 11:18:04 2011
@@ -1,21 +1,15 @@
 Files:
-tests/test-mkdir.h
-tests/test-mkdirat.c
 tests/test-openat.c
 tests/signature.h
 tests/macros.h
 
 Depends-on:
-ignore-value
 progname
 symlink
 
 configure.ac:
 
 Makefile.am:
-TESTS += \
-  test-mkdirat test-openat
-check_PROGRAMS += \
-  test-mkdirat test-openat
-test_mkdirat_LDADD = $(LDADD) @LIBINTL@
+TESTS += test-openat
+check_PROGRAMS += test-openat
 test_openat_LDADD = $(LDADD) @LIBINTL@

-- 
In memoriam Yitzhak Rabin <http://en.wikipedia.org/wiki/Yitzhak_Rabin>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]