1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 ifeq ($(srctree),) 2 ifeq ($(srctree),) 3 srctree := $(patsubst %/,%,$(dir $(CURDIR))) 3 srctree := $(patsubst %/,%,$(dir $(CURDIR))) 4 srctree := $(patsubst %/,%,$(dir $(srctree))) 4 srctree := $(patsubst %/,%,$(dir $(srctree))) 5 endif 5 endif 6 6 7 include $(srctree)/tools//scripts/Makefile.inc 7 include $(srctree)/tools//scripts/Makefile.include 8 8 9 define allow-override 9 define allow-override 10 $(if $(or $(findstring environment,$(origin 10 $(if $(or $(findstring environment,$(origin $(1))),\ 11 $(findstring command line,$(origin 11 $(findstring command line,$(origin $(1)))),,\ 12 $(eval $(1) = $(2))) 12 $(eval $(1) = $(2))) 13 endef 13 endef 14 14 15 $(call allow-override,CC,$(CROSS_COMPILE)gcc) 15 $(call allow-override,CC,$(CROSS_COMPILE)gcc) 16 $(call allow-override,LD,$(CROSS_COMPILE)ld) 16 $(call allow-override,LD,$(CROSS_COMPILE)ld) 17 17 18 export HOSTCC HOSTLD HOSTAR 18 export HOSTCC HOSTLD HOSTAR 19 19 20 ifeq ($(V),1) 20 ifeq ($(V),1) 21 Q = 21 Q = 22 else 22 else 23 Q = @ 23 Q = @ 24 endif 24 endif 25 25 26 export Q srctree CC LD 26 export Q srctree CC LD 27 27 28 MAKEFLAGS := --no-print-directory 28 MAKEFLAGS := --no-print-directory 29 build := -f $(srctree)/tools/build/Makefil 29 build := -f $(srctree)/tools/build/Makefile.build dir=. obj 30 30 31 all: $(OUTPUT)fixdep 31 all: $(OUTPUT)fixdep 32 32 33 # Make sure there's anything to clean, 33 # Make sure there's anything to clean, 34 # feature contains check for existing OUTPUT 34 # feature contains check for existing OUTPUT 35 TMP_O := $(if $(OUTPUT),$(OUTPUT)feature/,./) 35 TMP_O := $(if $(OUTPUT),$(OUTPUT)feature/,./) 36 36 37 clean: 37 clean: 38 $(call QUIET_CLEAN, fixdep) 38 $(call QUIET_CLEAN, fixdep) 39 $(Q)find $(or $(OUTPUT),.) -name '*.o' !! 39 $(Q)find $(if $(OUTPUT),$(OUTPUT),.) -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete 40 $(Q)rm -f $(OUTPUT)fixdep 40 $(Q)rm -f $(OUTPUT)fixdep 41 $(call QUIET_CLEAN, feature-detect) 41 $(call QUIET_CLEAN, feature-detect) 42 ifneq ($(wildcard $(TMP_O)),) 42 ifneq ($(wildcard $(TMP_O)),) 43 $(Q)$(MAKE) -C feature OUTPUT=$(TMP_O) 43 $(Q)$(MAKE) -C feature OUTPUT=$(TMP_O) clean >/dev/null 44 endif 44 endif 45 45 46 $(OUTPUT)fixdep: $(srctree)/tools/build/fixdep !! 46 $(OUTPUT)fixdep-in.o: FORCE 47 $(QUIET_CC)$(HOSTCC) $(KBUILD_HOSTCFLA !! 47 $(Q)$(MAKE) $(build)=fixdep >> 48 >> 49 $(OUTPUT)fixdep: $(OUTPUT)fixdep-in.o >> 50 $(QUIET_LINK)$(HOSTCC) $(KBUILD_HOSTLDFLAGS) -o $@ $< >> 51 >> 52 FORCE: >> 53 >> 54 .PHONY: FORCE
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.