In preparation for the conversion of lib/ to non-recursive make, I found that the few remaining VC'd sources in coreutils' lib/ directory were making the task unnecessarily difficult, and that by converting them to gnulib-style modules (i.e., migrating them into the gl/ hierarchy and adding a module file for each), I would make the rest of this conversion job a lot easier. That way, the only lib-related makefile code would be generated by gnulib, and thus the existing conversion process (used by bison and cppi) would apply with little change.
One advantage of converting these is that their .m4 files were so simple that it was easy simply to remove them, preserving their minor semantic contributions via one- or two-line additions to the corresponding (new) module definition files (under gl/modules). >From 07fcfe36cee091b2dc15543dc406597bf1fffe67 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Sat, 8 Sep 2012 16:01:47 +0200 Subject: [PATCH 1/2] maint: move gl/m4/root-dev-ino.m4 contents into its module definition We can get the same effect using the modules file. * gl/m4/root-dev-ino.m4: Remove file. * gl/modules/root-dev-ino (Depends-on): Add lstat. (Files): Remove m4/root-dev-ino.m4. (Makefile.am) [lib_SOURCES]: Add root-dev-ino.c and root-dev-ino.h. (configure.ac): Remove reference to gl_ROOT_DEV_INO. --- gl/m4/root-dev-ino.m4 | 14 -------------- gl/modules/root-dev-ino | 4 ++-- 2 files changed, 2 insertions(+), 16 deletions(-) delete mode 100644 gl/m4/root-dev-ino.m4 diff --git a/gl/m4/root-dev-ino.m4 b/gl/m4/root-dev-ino.m4 deleted file mode 100644 index 4a79404..0000000 --- a/gl/m4/root-dev-ino.m4 +++ /dev/null @@ -1,14 +0,0 @@ -#serial 3 -dnl Copyright (C) 2005-2012 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. - -AC_DEFUN([gl_ROOT_DEV_INO], -[ - AC_LIBOBJ([root-dev-ino]) - - dnl Prerequisites - AC_REQUIRE([AC_FUNC_LSTAT]) - : -]) diff --git a/gl/modules/root-dev-ino b/gl/modules/root-dev-ino index 91e2353..7c05562 100644 --- a/gl/modules/root-dev-ino +++ b/gl/modules/root-dev-ino @@ -4,16 +4,16 @@ Root device and inode number checking. Files: lib/root-dev-ino.h lib/root-dev-ino.c -m4/root-dev-ino.m4 Depends-on: dev-ino +lstat same-inode configure.ac: -gl_ROOT_DEV_INO Makefile.am: +lib_SOURCES += root-dev-ino.c root-dev-ino.h Include: "root-dev-ino.h" -- 1.7.12.289.g0ce9864 >From c424de16b1c8607f2caa7c85d69196f9d8e3a103 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Sat, 8 Sep 2012 15:11:20 +0200 Subject: [PATCH 2/2] maint: move the last coreutils-specific files from lib/ to gl/ Convert the few remaining coreutils-specific files in lib/ to gnulib-style modules under gl/, removing their corresponding .m4 files, since the information recorded in those files is better stored in module-description file in gl/modules/. * bootstrap.conf (gnulib_modules): Add new modules: fd-reopen, buffer-lcm, xfts, strnumcmp. * gl/lib/buffer-lcm.c: Renamed from the file in lib/. * gl/lib/buffer-lcm.h: Likewise. * gl/lib/fd-reopen.c: Likewise. * gl/lib/fd-reopen.h: Likewise. * gl/lib/strintcmp.c: Likewise. * gl/lib/strnumcmp-in.h: Likewise. * gl/lib/strnumcmp.c: Likewise. * gl/lib/strnumcmp.h: Likewise. * gl/lib/xfts.c: Likewise. * gl/lib/xfts.h: Likewise. * gl/modules/buffer-lcm: New module-description file. * gl/modules/fd-reopen: Likewise. * gl/modules/strnumcmp: Likewise. * gl/modules/xfts: Likewise. * m4/fd-reopen.m4: Remove, no longer needed. * m4/strnumcmp.m4: Likewise. * m4/xfts.m4: Likewise. * m4/prereq.m4: Do not AC_REQUIRE the m4 functions from our just-removed m4/*.m4 files. --- bootstrap.conf | 4 ++++ {lib => gl/lib}/buffer-lcm.c | 0 {lib => gl/lib}/buffer-lcm.h | 0 {lib => gl/lib}/fd-reopen.c | 0 {lib => gl/lib}/fd-reopen.h | 0 {lib => gl/lib}/strintcmp.c | 0 {lib => gl/lib}/strnumcmp-in.h | 0 {lib => gl/lib}/strnumcmp.c | 0 {lib => gl/lib}/strnumcmp.h | 0 {lib => gl/lib}/xfts.c | 0 {lib => gl/lib}/xfts.h | 0 gl/modules/buffer-lcm | 23 +++++++++++++++++++++++ gl/modules/fd-reopen | 23 +++++++++++++++++++++++ gl/modules/strnumcmp | 26 ++++++++++++++++++++++++++ gl/modules/xfts | 23 +++++++++++++++++++++++ m4/fd-reopen.m4 | 15 --------------- m4/prereq.m4 | 4 ---- m4/strnumcmp.m4 | 27 --------------------------- m4/xfts.m4 | 14 -------------- 19 files changed, 99 insertions(+), 60 deletions(-) rename {lib => gl/lib}/buffer-lcm.c (100%) rename {lib => gl/lib}/buffer-lcm.h (100%) rename {lib => gl/lib}/fd-reopen.c (100%) rename {lib => gl/lib}/fd-reopen.h (100%) rename {lib => gl/lib}/strintcmp.c (100%) rename {lib => gl/lib}/strnumcmp-in.h (100%) rename {lib => gl/lib}/strnumcmp.c (100%) rename {lib => gl/lib}/strnumcmp.h (100%) rename {lib => gl/lib}/xfts.c (100%) rename {lib => gl/lib}/xfts.h (100%) create mode 100644 gl/modules/buffer-lcm create mode 100644 gl/modules/fd-reopen create mode 100644 gl/modules/strnumcmp create mode 100644 gl/modules/xfts delete mode 100644 m4/fd-reopen.m4 delete mode 100644 m4/strnumcmp.m4 delete mode 100644 m4/xfts.m4 diff --git a/bootstrap.conf b/bootstrap.conf index dc0ffb6..0658e1b 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -36,6 +36,7 @@ gnulib_modules=" autobuild backupfile base64 + buffer-lcm c-strcase c-strtod c-strtold @@ -75,6 +76,7 @@ gnulib_modules=" fclose fcntl fcntl-safer + fd-reopen fdatasync fdl fdopen @@ -219,6 +221,7 @@ gnulib_modules=" strdup-posix strftime strncat + strnumcmp strpbrk strsignal strtod @@ -258,6 +261,7 @@ gnulib_modules=" write-any-file xalloc xfreopen + xfts xgetcwd xgetgroups xgethostname diff --git a/lib/buffer-lcm.c b/gl/lib/buffer-lcm.c similarity index 100% rename from lib/buffer-lcm.c rename to gl/lib/buffer-lcm.c diff --git a/lib/buffer-lcm.h b/gl/lib/buffer-lcm.h similarity index 100% rename from lib/buffer-lcm.h rename to gl/lib/buffer-lcm.h diff --git a/lib/fd-reopen.c b/gl/lib/fd-reopen.c similarity index 100% rename from lib/fd-reopen.c rename to gl/lib/fd-reopen.c diff --git a/lib/fd-reopen.h b/gl/lib/fd-reopen.h similarity index 100% rename from lib/fd-reopen.h rename to gl/lib/fd-reopen.h diff --git a/lib/strintcmp.c b/gl/lib/strintcmp.c similarity index 100% rename from lib/strintcmp.c rename to gl/lib/strintcmp.c diff --git a/lib/strnumcmp-in.h b/gl/lib/strnumcmp-in.h similarity index 100% rename from lib/strnumcmp-in.h rename to gl/lib/strnumcmp-in.h diff --git a/lib/strnumcmp.c b/gl/lib/strnumcmp.c similarity index 100% rename from lib/strnumcmp.c rename to gl/lib/strnumcmp.c diff --git a/lib/strnumcmp.h b/gl/lib/strnumcmp.h similarity index 100% rename from lib/strnumcmp.h rename to gl/lib/strnumcmp.h diff --git a/lib/xfts.c b/gl/lib/xfts.c similarity index 100% rename from lib/xfts.c rename to gl/lib/xfts.c diff --git a/lib/xfts.h b/gl/lib/xfts.h similarity index 100% rename from lib/xfts.h rename to gl/lib/xfts.h diff --git a/gl/modules/buffer-lcm b/gl/modules/buffer-lcm new file mode 100644 index 0000000..1d86f71 --- /dev/null +++ b/gl/modules/buffer-lcm @@ -0,0 +1,23 @@ +Description: +Compute a good buffer size for dealing with two files. + +Files: +lib/buffer-lcm.c +lib/buffer-lcm.h + +Depends-on: +stddef + +configure.ac: + +Makefile.am: +lib_SOURCES += buffer-lcm.c buffer-lcm.h + +Include: +"buffer-lcm.h" + +License: +GPL + +Maintainer: +Paul Eggert diff --git a/gl/modules/fd-reopen b/gl/modules/fd-reopen new file mode 100644 index 0000000..70a21c3 --- /dev/null +++ b/gl/modules/fd-reopen @@ -0,0 +1,23 @@ +Description: +Open a file to a particular file descriptor. + +Files: +lib/fd-reopen.c +lib/fd-reopen.h + +Depends-on: +fcntl-h + +configure.ac: + +Makefile.am: +lib_SOURCES += fd-reopen.c fd-reopen.h + +Include: +"fd-reopen.h" + +License: +GPL + +Maintainer: +Paul Eggert diff --git a/gl/modules/strnumcmp b/gl/modules/strnumcmp new file mode 100644 index 0000000..83f4e7c --- /dev/null +++ b/gl/modules/strnumcmp @@ -0,0 +1,26 @@ +Description: +Compare numeric strings. + +Files: +lib/strintcmp.c +lib/strnumcmp.c +lib/strnumcmp.h +lib/strnumcmp-in.h + +Depends-on: +inline +stddef + +configure.ac: + +Makefile.am: +lib_SOURCES += strintcmp.c strnumcmp.c strnumcmp.h + +Include: +"strnumcmp.h" + +License: +GPL + +Maintainer: +Paul Eggert diff --git a/gl/modules/xfts b/gl/modules/xfts new file mode 100644 index 0000000..335946e --- /dev/null +++ b/gl/modules/xfts @@ -0,0 +1,23 @@ +Description: +a wrapper for fts_open + +Files: +lib/xfts.c +lib/xfts.h + +Depends-on: +stddef + +configure.ac: + +Makefile.am: +lib_SOURCES += xfts.c xfts.h + +Include: +"xfts.h" + +License: +GPL + +Maintainer: +Jim Meyering diff --git a/m4/fd-reopen.m4 b/m4/fd-reopen.m4 deleted file mode 100644 index ae7390c..0000000 --- a/m4/fd-reopen.m4 +++ /dev/null @@ -1,15 +0,0 @@ -# Invoke open, but return either a desired file descriptor or -1. - -dnl Copyright (C) 2005-2012 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. - -dnl Written by Paul Eggert. - -AC_DEFUN([gl_FD_REOPEN], -[ - AC_LIBSOURCES([fd-reopen.c, fd-reopen.h]) - AC_LIBOBJ([fd-reopen]) -]) diff --git a/m4/prereq.m4 b/m4/prereq.m4 index f458f9d..8ba61d1 100644 --- a/m4/prereq.m4 +++ b/m4/prereq.m4 @@ -36,9 +36,5 @@ AC_DEFUN([gl_PREREQ], # Invoke macros of modules that may migrate into gnulib. # There's no need to list gnulib modules here, since gnulib-tool # handles that; see ../bootstrap.conf. - AC_REQUIRE([gl_FD_REOPEN]) AC_REQUIRE([gl_FUNC_XATTR]) - AC_REQUIRE([gl_FUNC_XFTS]) - AC_REQUIRE([gl_STRINTCMP]) - AC_REQUIRE([gl_STRNUMCMP]) ]) diff --git a/m4/strnumcmp.m4 b/m4/strnumcmp.m4 deleted file mode 100644 index 437e18c..0000000 --- a/m4/strnumcmp.m4 +++ /dev/null @@ -1,27 +0,0 @@ -# Compare numeric strings. - -dnl Copyright (C) 2005-2012 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. - -dnl Written by Paul Eggert. - -AC_DEFUN([gl_STRINTCMP], -[ - AC_LIBSOURCES([strintcmp.c, strnumcmp.h, strnumcmp-in.h]) - AC_LIBOBJ([strintcmp]) - - dnl Prerequisites of lib/strintcmp.c. - AC_REQUIRE([AC_INLINE]) -]) - -AC_DEFUN([gl_STRNUMCMP], -[ - AC_LIBSOURCES([strnumcmp.c, strnumcmp.h, strnumcmp-in.h]) - AC_LIBOBJ([strnumcmp]) - - dnl Prerequisites of lib/strnumcmp.c. - AC_REQUIRE([AC_INLINE]) -]) diff --git a/m4/xfts.m4 b/m4/xfts.m4 deleted file mode 100644 index ce55692..0000000 --- a/m4/xfts.m4 +++ /dev/null @@ -1,14 +0,0 @@ -#serial 1 -dnl Copyright (C) 2005-2012 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. - -AC_DEFUN([gl_FUNC_XFTS], -[ - AC_LIBSOURCES([xfts.c, xfts.h]) - AC_LIBOBJ([xfts]) - - dnl Prerequisites of lib/xfts.c. - : -]) -- 1.7.12.289.g0ce9864