Changes in kernel/Makefile [0c793e2:f1380b7] in mainline


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/Makefile

    r0c793e2 rf1380b7  
    4848#
    4949
    50 AUTOGEN = $(ROOT_PATH)/tools/autogen2.sh
     50AGDEPEND = Makefile.ag.depend
    5151RAW = kernel.raw
    5252BIN = kernel.bin
     
    7373
    7474.PHONY: all clean autogen_clean depend
    75 .DELETE_ON_ERROR:
    7675
    7776all: $(VERSION_DEF) $(COMMON_MAKEFILE) $(COMMON_HEADER) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) $(BIN) $(DISASM)
     
    133132-include arch/$(KARCH)/Makefile.inc
    134133-include genarch/Makefile.inc
     134-include $(AGDEPEND)
    135135
    136136## The at-sign
     
    354354GENARCH_DEPENDS := $(addsuffix .d,$(basename $(GENARCH_SOURCES)))
    355355
     356GENARCH_AUTOGENS_H := $(addsuffix .h,$(basename $(GENARCH_AUTOGENS_AG)))
     357GENARCH_AUTOGENS_PROBE_C := $(addsuffix .ag.probe.c,$(basename $(GENARCH_AUTOGENS_AG)))
     358GENARCH_AUTOGENS_PROBE_S := $(addsuffix .ag.probe.s,$(basename $(GENARCH_AUTOGENS_AG)))
     359
     360ARCH_AUTOGENS_H := $(addsuffix .h,$(basename $(ARCH_AUTOGENS_AG)))
     361ARCH_AUTOGENS_PROBE_C := $(addsuffix .ag.probe.c,$(basename $(ARCH_AUTOGENS_AG)))
     362ARCH_AUTOGENS_PROBE_S := $(addsuffix .ag.probe.s,$(basename $(ARCH_AUTOGENS_AG)))
     363
     364AUTOGENS_H := $(ARCH_AUTOGENS_H) $(GENARCH_AUTOGENS_H)
    356365AUTOGENS_AG := $(ARCH_AUTOGENS_AG) $(GENARCH_AUTOGENS_AG)
    357 AUTOGEN_DEPENDS := $(addsuffix .d,$(AUTOGENS_AG))
    358366
    359367AS_CFLAGS := $(addprefix -Xassembler ,$(AFLAGS))
     
    363371-include $(ARCH_DEPENDS)
    364372-include $(GENARCH_DEPENDS)
    365 -include $(AUTOGEN_DEPENDS)
    366373
    367374ifeq ($(COMPILER),clang)
     
    395402        $(CC) $(DEFS) $(CFLAGS) -D__ASM__ -D__LINKER__ -E -x c $< | grep -v "^\#" > $@
    396403
    397 %.ag.h %.ag.s %.ag.c %.ag.d: %.h
    398         CC="$(CC)" CFLAGS="-DKERNEL $(CFLAGS)" $(AUTOGEN) $< $@
     404%.h: %.ag
     405        $(AUTOGEN) probe $< >$<.probe.c
     406        $(CC_AUTOGEN) $(DEFS) $(CFLAGS) -S -o $<.probe.s $<.probe.c
     407        $(AUTOGEN) generate $< <$<.probe.s >$@
    399408
    400409%.o: %.S | depend
     
    432441        $(GENMAP) $(MAP_PREV) $(DUMP) $@
    433442
    434 depend: $(AUTOGENS_AG)
     443$(AUTOGENS_H): $(AGDEPEND)
     444
     445$(AGDEPEND): $(AUTOGENS_AG)
     446        echo "# DO NOT EDIT" >$@
     447        for g in $^; do \
     448                h=`dirname $$g`/`basename $$g .ag`.h; \
     449                for l in `$(AUTOGEN) depend $$g`; do \
     450                        echo "$$h: $$l" >>$@; \
     451                done \
     452        done
     453
     454depend: $(AUTOGENS_H)
    435455
    436456autogen_clean:
    437         -rm $(AUTOGENS_AG) $(AUTOGEN_DEPENDS) $(AUTOGENS_AG)
     457        -rm $(ARCH_AUTOGENS_H) $(ARCH_AUTOGENS_PROBE_C) $(ARCH_AUTOGENS_PROBE_S)
     458        -rm $(GENARCH_AUTOGENS_H) $(GENARCH_AUTOGENS_PROBE_C) $(GENARCH_AUTOGENS_PROBE_S)
     459        -rm $(AGDEPEND)
Note: See TracChangeset for help on using the changeset viewer.