]> git.draconx.ca Git - dxcommon.git/commitdiff
fix-gnulib: Handle MOSTLYCLEANDIRS.
authorNick Bowler <nbowler@draconx.ca>
Tue, 24 Jul 2012 23:59:34 +0000 (19:59 -0400)
committerNick Bowler <nbowler@draconx.ca>
Tue, 24 Jul 2012 23:59:34 +0000 (19:59 -0400)
Usage of this variable suffers from similar problems as xxxCLEANFILES,
so fix it up in the same way by moving it to the end of the makefile
fragment.  The check needs to be improved a bit as the fragment contains
actual references to this variable, and only want to move the
assignments.

The variable also needs to be set before use, which strangely doesn't
actually happen in the fragment, even though this is a totally internal
thing...

scripts/fix-gnulib.pl

index d4ea7d1b68cac82f0932a654cf3e021768b6e0e2..8b61163a0f1459f28688d1bc958bf343d74d1f20 100755 (executable)
@@ -138,6 +138,10 @@ gnulib_orderonly = $(gnulib_have_orderonly:order-only=|)
 gnulib_core_headers =
 gnulib_raw_headers = $(gnulib_core_headers)
 gnulib_headers = $(gnulib_orderonly) $(gnulib_raw_headers)
+
+# Oddly, gnulib tries to add to MOSTLYCLEANDIRS (which is *not* an automake
+# variable) without defining it.
+MOSTLYCLEANDIRS =
 EOF
 
                $printed_header = 1;
@@ -203,7 +207,7 @@ EOF
        # may not actually delete everything if the configuration changes
        # after building the package.  Stash all the variables for later so
        # they can be moved outside of any conditional.
-       if (/CLEANFILES/) {
+       if (/(CLEANFILES|CLEANDIRS)[[:space:]]*\+=/) {
                push(@cleanfiles, $_);
                drop;
        }