chiark / gitweb /
Introduce CDEPS_CFLAGS so without cdeps.sd.mk you don't get .*.d
[subdirmk.git] / subdirmk / generate
index 0ad0eb8c930da8832fedaa6b9459cf4a19189b83..486bdc54e1c888b7be9cee539918296651cc8010 100755 (executable)
@@ -8,7 +8,7 @@
 #
 # generates in each subdirectory       from in each subdirectory
 #     Subdir.mk.tmp                        Subdir.sd.mk
-#     Makefile
+#     Makefile                          and included files
 # and in toplevel                      and in toplevel
 #     main.mk.tmp                          Perdir.sd.mk
 
@@ -102,8 +102,9 @@ default: all
 %:     FORCE-ALWAYS-RUN
        \@:
 Makefile FORCE-ALWAYS-RUN:
-       \$(MAKE) -C $cd -f main.mk \$(addprefix ${dir_prefix},\$(MAKECMDGOALS))
+       \$(MAKE) -C $cd -f main.mk \$(addprefix ${dir_prefix},\$(or \$(MAKECMDGOALS),all))
 .SUFFIXES:
+.PHONY:        FORCE-ALWAYS-RUN
 END
 }
 
@@ -164,6 +165,8 @@ sub process_input_mk ($$$$$$$$) {
                s{(?<=[ \t])(?=\S)(?!\\\s*$)}{$prefix}g;
                o $_;
                $_ = $after;
+           } elsif (s{^\#}{}) {
+               $_ = '';
            } elsif (s{^![ \t]+}{}) {
                o $_;
                $_ = '';
@@ -251,7 +254,7 @@ sub process_subtree ($$) {
        }
        print O "\n";
     }
-    
+
     return @targets;
 }