Do not include dependency files if make command goals contain "clean".
authorAndre Noll <maan@systemlinux.org>
Sat, 19 Dec 2009 13:14:45 +0000 (14:14 +0100)
committerAndre Noll <maan@systemlinux.org>
Sat, 19 Dec 2009 13:14:45 +0000 (14:14 +0100)
Calling "make clean2" was particularly annoying because it first regenerated the
dependency files it is supposed to remove.

Unfortunately, this patch breaks multiple goals if one of them matches "clean".
For example "make clean all" does no longer work. But as this can easily be worked
around by calling "make clean && make all", we don't care.

Makefile.in
autogen.sh

index e4a3dd3..72f66a9 100644 (file)
@@ -210,7 +210,10 @@ afh_objs := $(addprefix $(object_dir)/, @afh_objs@)
 all_objs := $(recv_objs) $(filter_objs) $(client_objs) $(gui_objs) \
        $(audiod_objs) $(audioc_objs) $(fade_objs) $(server_objs) \
        $(write_objs) $(afh_objs)
+
+ifeq ($(findstring clean, $(MAKECMDGOALS)),)
 -include $(all_objs:.o=.d)
+endif
 
 para_recv: $(recv_objs)
        @[ -z "$(Q)" ] || echo 'LD $@'
index 5c3d931..76eaef2 100755 (executable)
@@ -5,8 +5,9 @@ if test -f Makefile; then
 fi
 aclocal -I . &> /dev/null
 autoconf
-autoheader 
+autoheader
 echo configuring...
 ./configure $@ > /dev/null
 echo compiling...
-make clean all > /dev/null
+make clean2 &> /dev/null
+make > /dev/null