Don't show the includes for modules that were not explicitly specified.
authorBruno Haible <bruno@clisp.org>
Mon, 11 Dec 2006 12:41:09 +0000 (12:41 +0000)
committerBruno Haible <bruno@clisp.org>
Mon, 11 Dec 2006 12:41:09 +0000 (12:41 +0000)
ChangeLog
gnulib-tool

index 89254b17020b31bf99f5740fec7f73dfeff46d02..166166a9e95d296d68f08a6c4c669af9624fe4fd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-12-10  Bruno Haible  <bruno@clisp.org>
+
+       * gnulib-tool (func_import): Show the include files only for those
+       modules that are copied and specified.
+       Reported by Karl Berry.
+
 2006-12-08  Jim Meyering  <jim@meyering.net>
 
        * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
index 29dca28cdca9c36976e565efca3f833b96d119c8..06e5b847c5965ade98a68c96fc35bed30d993f78 100755 (executable)
@@ -22,7 +22,7 @@
 
 progname=$0
 package=gnulib
-cvsdatestamp='$Date: 2006-11-29 14:30:01 $'
+cvsdatestamp='$Date: 2006-12-11 12:41:09 $'
 last_checkin_date=`echo "$cvsdatestamp" | sed -e 's,^\$[D]ate: ,,'`
 version=`echo "$last_checkin_date" | sed -e 's/ .*$//' -e 's,/,-,g'`
 nl='
@@ -2179,10 +2179,17 @@ func_import ()
   echo "Finished."
   echo
   echo "You may need to add #include directives for the following .h files."
+  # Intersect $specified_modules and $modules
+  # (since $specified_modules is not necessarily of subset of $modules - some
+  # may have been skipped through --avoid, and since the elements of $modules
+  # but not in $specified_modules can go away without explicit notice - through
+  # changes in the module dependencies).
+  echo "$specified_modules" > "$tmp"/modules1 # a sorted list, one module per line
+  echo "$modules" > "$tmp"/modules2 # also a sorted list, one module per line
   # First the #include <...> directives without #ifs, sorted for convenience,
   # then the #include "..." directives without #ifs, sorted for convenience,
   # then the #include directives that are surrounded by #ifs. Not sorted.
-  for module in $modules; do
+  for module in `join "$tmp"/modules1 "$tmp"/modules2`; do
     include_directive=`func_get_include_directive "$module"`
     case "$nl$include_directive" in
       *"$nl#if"*)