build: fix 'clean' target
authorMans Rullgard <mans@mansr.com>
Mon, 10 Dec 2012 14:55:28 +0000 (14:55 +0000)
committerMans Rullgard <mans@mansr.com>
Mon, 10 Dec 2012 17:23:53 +0000 (17:23 +0000)
This fixes removal of TOOLS as well as HOSTPROGS declared in the
top-level Makefile.  The clean target in common.mak needs to be
eval'd since the variables used within are reset for each library.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Makefile
common.mak
library.mak

index c4dc80c..291197b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -187,7 +187,6 @@ uninstall-data:
 clean::
        $(RM) $(ALLPROGS)
        $(RM) $(CLEANSUFFIXES)
-       $(RM) $(TOOLS)
        $(RM) $(CLEANSUFFIXES:%=tools/%)
 
 distclean::
index c4d2999..5d80986 100644 (file)
@@ -53,7 +53,13 @@ CLEANSUFFIXES     = *.d *.o *~ *.h.c *.map *.ver
 DISTCLEANSUFFIXES = *.pc
 LIBSUFFIXES       = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a
 
+define RULES
 clean::
        $(RM) $(OBJS) $(OBJS:.o=.d)
+       $(RM) $(HOSTPROGS)
+       $(RM) $(TOOLS)
+endef
+
+$(eval $(RULES))
 
 -include $(wildcard $(OBJS:.o=.d) $(HOSTOBJS:.o=.d) $(TESTOBJS:.o=.d) $(HOBJS:.o=.d))
index 9309c42..3b4bd2d 100644 (file)
@@ -58,7 +58,7 @@ $(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(OBJS) $(SUBDIR)lib$(NAME).ver $(DEP_LIBS)
 
 clean::
        $(RM) $(addprefix $(SUBDIR),*-example$(EXESUF) *-test$(EXESUF) $(CLEANFILES) $(CLEANSUFFIXES) $(LIBSUFFIXES)) \
-           $(CLEANSUFFIXES:%=$(SUBDIR)$(ARCH)/%) $(HOSTOBJS) $(HOSTPROGS)
+           $(CLEANSUFFIXES:%=$(SUBDIR)$(ARCH)/%)
 
 distclean:: clean
        $(RM) $(DISTCLEANSUFFIXES:%=$(SUBDIR)%) $(DISTCLEANSUFFIXES:%=$(SUBDIR)$(ARCH)/%)