Ich habe Rake ein wenig benutzt (ein Ruby make Programm), und es hat eine Option, um eine Liste aller verfügbaren Ziele zu erhalten, z.B.
> rake --tasks
rake db:charset # retrieve the charset for your data...
rake db:collation # retrieve the collation for your da...
rake db:create # Creates the databases defined in y...
rake db:drop # Drops the database for your curren...
...
aber es scheint keine Option zu geben, dies in GNU make zu tun.
Offenbar ist der Code dafür fast fertig, Stand 2007 - http://www.mail-archive.com/help-make@gnu.org/msg06434.html .
Wie auch immer, ich habe einen kleinen Hack gemacht, um die Ziele aus einem Makefile zu extrahieren, das man in ein Makefile einfügen kann.
list:
@grep '^[^#[:space:]].*:' Makefile
Sie erhalten dann eine Liste der festgelegten Ziele. Das ist nur ein Anfang - es filtert zum Beispiel nicht die Abhängigkeiten heraus.
> make list
list:
copy:
run:
plot:
turnin: