| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- # SPDX-License-Identifier: GPL-2.0
- ifeq ($(srctree),)
- srctree := $(patsubst %/,%,$(dir $(CURDIR)))
- srctree := $(patsubst %/,%,$(dir $(srctree)))
- endif
- include $(srctree)/tools//scripts/Makefile.include
- define allow-override
- $(if $(or $(findstring environment,$(origin $(1))),\
- $(findstring command line,$(origin $(1)))),,\
- $(eval $(1) = $(2)))
- endef
- $(call allow-override,CC,$(CROSS_COMPILE)gcc)
- $(call allow-override,LD,$(CROSS_COMPILE)ld)
- export HOSTCC HOSTLD HOSTAR
- export srctree CC LD
- MAKEFLAGS := --no-print-directory
- build := -f $(srctree)/tools/build/Makefile.build dir=. obj
- all: $(OUTPUT)fixdep
- # Make sure there's anything to clean,
- # feature contains check for existing OUTPUT
- TMP_O := $(if $(OUTPUT),$(OUTPUT)feature/,./)
- clean:
- $(call QUIET_CLEAN, fixdep)
- $(Q)find $(or $(OUTPUT),.) -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete
- $(Q)rm -f $(OUTPUT)fixdep
- $(call QUIET_CLEAN, feature-detect)
- ifneq ($(wildcard $(TMP_O)),)
- $(Q)$(MAKE) -C feature OUTPUT=$(TMP_O) clean >/dev/null
- endif
- FIXDEP := $(OUTPUT)fixdep
- FIXDEP_IN := $(OUTPUT)fixdep-in.o
- # To track fixdep's dependencies properly, fixdep needs to run on itself.
- # Build it twice the first time.
- $(FIXDEP_IN): FORCE
- $(Q)if [ ! -f $(FIXDEP) ]; then \
- $(MAKE) $(build)=fixdep HOSTCFLAGS="$(KBUILD_HOSTCFLAGS)"; \
- rm -f $(FIXDEP).o; \
- fi
- $(Q)$(MAKE) $(build)=fixdep HOSTCFLAGS="$(KBUILD_HOSTCFLAGS)"
- $(FIXDEP): $(FIXDEP_IN)
- $(QUIET_LINK)$(HOSTCC) $(FIXDEP_IN) $(KBUILD_HOSTLDFLAGS) -o $@
- FORCE:
- .PHONY: FORCE
|