# HG changeset patch # User Bruno Haible # Date 1168350273 0 # Node ID 2ee7433618feb69b25318f76d4c42c25ba0f4d50 # Parent 0d3b5392387984e73491172b9a6189a2bd7d0d39 Add support for subdirectories of the 'modules/' directory. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-01-08 Bruno Haible + + * gnulib-tool (func_all_modules): Use find, not ls, to traverse the + modules directory. Filter out CVS, ChangeLog, COPYING, README also from + subdirectories. + 2007-01-08 Karl Berry * doc/error.texi: mention that main() fns must set program_name diff --git a/gnulib-tool b/gnulib-tool --- a/gnulib-tool +++ b/gnulib-tool @@ -22,7 +22,7 @@ progname=$0 package=gnulib -cvsdatestamp='$Date: 2007-01-08 19:20:07 $' +cvsdatestamp='$Date: 2007-01-09 13:44:33 $' last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'` version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'` nl=' @@ -814,12 +814,18 @@ # Filter out unit test modules; they can be retrieved through # --extract-tests-module if desired. { - (cd "$gnulib_dir/modules" && ls -1) + (cd "$gnulib_dir" && find modules -type f -print | sed -e 's,^modules/,,') if test -n "$local_gnulib_dir" && test -d "$local_gnulib_dir/modules"; then - (cd "$local_gnulib_dir/modules" && ls -1 | sed -e 's,\.diff$,,') + (cd "$local_gnulib_dir" && find modules -type f -print | sed -e 's,^modules/,,' -e 's,\.diff$,,') fi } \ - | sed -e '/^CVS$/d' -e '/^ChangeLog$/d' -e '/^COPYING$/d' -e '/^README$/d' -e '/^TEMPLATE$/d' -e '/^TEMPLATE-TESTS$/d' -e '/~$/d' \ + | sed -e '/^CVS$/d' -e '/[/]CVS$/d' \ + -e '/^ChangeLog$/d' -e '/[/]ChangeLog$/d' \ + -e '/^COPYING$/d' -e '/[/]COPYING$/d' \ + -e '/^README$/d' -e '/[/]README$/d' \ + -e '/^TEMPLATE$/d' \ + -e '/^TEMPLATE-TESTS$/d' \ + -e '/~$/d' \ | sed -e '/-tests$/d' \ | LC_ALL=C sort -u }