.SUFFIXES: .c .S .o .os .oS .so .a .s .i
+PHONY := FORCE
# order is important, the stripping uses STRIP_FLAGS for lib-so, but not for lib-a
ifeq ($(HAVE_SHARED),y)
.LIBPATTERNS: "lib%.so"
disp_ar = $($(DISP)_disp_ar)
disp_ld = $($(DISP)_disp_ld)
-any-prereq = $(filter-out FORCE,$?) $(filter-out FORCE $(wildcard $^),$^)
+any-prereq = $(filter-out $(PHONY),$?) $(filter-out $(PHONY) $(wildcard $^),$^)
# True if not identical. Neither order nor whitespace nor identical flags
# matter.
CFLAGS_gen.dep = -MT $@ -MD -MF $(dir $@).$(notdir $@).dep
-cmd_compile.c = $(CC) -c $< -o $@ $(CFLAGS) $(ARCH_CFLAGS) $(CFLAGS-$(suffix $@)) $(filter-out $(CFLAGS-OMIT-$(notdir $<)),$(CFLAGS-$(notdir $(<D)))) $(CFLAGS-$(subst $(top_srcdir),,$(dir $<))) $(CFLAGS-$(notdir $<)) $(CFLAGS-$(notdir $@)) $(CFLAGS_gen.dep)
+cmd_compile.c = $(CC) -c $< -o $@ $(CFLAGS) $(ARCH_CFLAGS) \
+ $(CFLAGS-$(suffix $@)) \
+ $(filter-out $(CFLAGS-OMIT-$(notdir $<)),$(CFLAGS-$(notdir $(<D)))) \
+ $(CFLAGS-$(subst $(top_srcdir),,$(dir $<))) \
+ $(CFLAGS-$(notdir $<)) \
+ $(CFLAGS-$(notdir $@)) \
+ $(CFLAGS_gen.dep)
cmd_compile.i = $(cmd_compile.c:-c=-E -dD)
cmd_compile.s = $(cmd_compile.c:-c=-S)
cmd_compile.u = $(CC) $^ $(DEPS-$(notdir $@)) -o $@ $(CFLAGS) $(CFLAGS-$(notdir $(^D))) $(CFLAGS-$(notdir $@)) $(CFLAGS_gen.dep)
-include $(.depends.dep)
endif
-.PHONY: dummy FORCE
+.PHONY: dummy $(PHONY)
FORCE:
clean: objclean-y headers_clean-y