The *.d depends files for make just list the files used when building an object file. Removing a file listed in such a dependency file causes make to search for a way to recreate it. This usually cannot work because these files aren't autogenerated.
The gcc option -MP can be used to generate empty rule for these files. Removing a file in a dependency list will then execute this empty rule and continue with the execution of the creation of the object file. This compilation process will then automatically correct the dependency file.
Signed-off-by: Sven Eckelmann sven@narfation.org --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile index 50d1fe8..6eae7ef 100755 --- a/Makefile +++ b/Makefile @@ -37,7 +37,7 @@ MANPAGE = man/batmand.8 #NO_POLICY_ROUTING = -DNO_POLICY_ROUTING
# batmand flags and options -CFLAGS += -pedantic -Wall -W -std=gnu99 -MD -fno-strict-aliasing +CFLAGS += -pedantic -Wall -W -std=gnu99 -MD -MP -fno-strict-aliasing CPPFLAGS += -DDEBUG_MALLOC -DMEMORY_USAGE -DPROFILE_DATA $(NO_POLICY_ROUTING) LDLIBS += -lpthread