Es gibt einen Weg, die Abhängigkeiten automatisch zu erzeugen, schau Dir
dazu mal die makefiles in der WINAVR-Distribution an.
Dabei werden vom gcc-Compiler .d Dateien erzeugt (steht für .depency).
Bei WINAVR-Beispiel-makefiles landen diese im .dep Verzeicnis. Das
passiert mit diesen Zeilen:
1 | # Compiler flags to generate dependency files.
|
2 | GENDEPFLAGS = -MD -MP -MF .dep/$(@F).d
|
Diese werden bei späteren makefile Aufrufen durch diese Zeilen
mitberücksichtigt:
1 | # Include the dependency files.
|
2 | -include $(shell mkdir .dep 2>/dev/null) $(wildcard .dep/*)
|
Durch diese Technik musst Du nur die .c Files angeben, Änderungen bei
den includes werden automatisch mitgeführt.
Gruß, Stefan