The following files use macro DOUBLE_SLASH_IS_DISTINCT_ROOT: lib/basename-lgpl.c lib/basename-lgpl.h lib/canonicalize.c lib/canonicalize-lgpl.c lib/dirname-lgpl.c
The corresponding modules should therefore have a dependency to 'double-slash-root'. Relying on an implicit dependency, e.g. canonicalize -> hash-triple -> same -> dirname -> dirname-lgpl -> basename-lgpl -> double-slash-root is dangerous (maintainability problem). Listing the .m4 file without invoking its macro is redundant. 2020-07-07 Bruno Haible <[email protected]> Clarify dependencies to double-slash-root. * modules/canonicalize (Files): Remove m4/double-slash-root.m4. (Depends-on): Add double-slash-root. * modules/canonicalize-lgpl (Depends-on): Add double-slash-root. * modules/dirname-lgpl (Depends-on): Add double-slash-root. diff --git a/modules/canonicalize b/modules/canonicalize index 233fba9..a59b9fb 100644 --- a/modules/canonicalize +++ b/modules/canonicalize @@ -5,10 +5,10 @@ Files: lib/canonicalize.h lib/canonicalize.c m4/canonicalize.m4 -m4/double-slash-root.m4 Depends-on: areadlink-with-size +double-slash-root errno extensions file-set diff --git a/modules/canonicalize-lgpl b/modules/canonicalize-lgpl index 3526422..20ee790 100644 --- a/modules/canonicalize-lgpl +++ b/modules/canonicalize-lgpl @@ -10,15 +10,16 @@ Depends-on: extensions stdlib nocrash -alloca-opt [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -errno [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -filename [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -lstat [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -malloca [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -memmove [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -pathmax [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -readlink [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] -sys_stat [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +alloca-opt [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +double-slash-root [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +errno [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +filename [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +lstat [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +malloca [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +memmove [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +pathmax [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +readlink [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] +sys_stat [test $HAVE_CANONICALIZE_FILE_NAME = 0 || test $REPLACE_CANONICALIZE_FILE_NAME = 1] configure.ac: gl_CANONICALIZE_LGPL diff --git a/modules/dirname-lgpl b/modules/dirname-lgpl index b758535..8eb1dd7 100644 --- a/modules/dirname-lgpl +++ b/modules/dirname-lgpl @@ -8,6 +8,7 @@ lib/stripslash.c Depends-on: basename-lgpl +double-slash-root filename malloc-posix stdbool
