Commit b1992c37 authored by Masahiro Yamada's avatar Masahiro Yamada

kbuild: use $(src) instead of $(srctree)/$(src) for source directory

Kbuild conventionally uses $(obj)/ for generated files, and $(src)/ for
checked-in source files. It is merely a convention without any functional
difference. In fact, $(obj) and $(src) are exactly the same, as defined
in scripts/Makefile.build:

    src := $(obj)

When the kernel is built in a separate output directory, $(src) does
not accurately reflect the source directory location. While Kbuild
resolves this discrepancy by specifying VPATH=$(srctree) to search for
source files, it does not cover all cases. For example, when adding a
header search path for local headers, -I$(srctree)/$(src) is typically
passed to the compiler.

This introduces inconsistency between upstream and downstream Makefiles
because $(src) is used instead of $(srctree)/$(src) for the latter.

To address this inconsistency, this commit changes the semantics of
$(src) so that it always points to the directory in the source tree.

Going forward, the variables used in Makefiles will have the following
meanings:

  $(obj)     - directory in the object tree
  $(src)     - directory in the source tree  (changed by this commit)
  $(objtree) - the top of the kernel object tree
  $(srctree) - the top of the kernel source tree

Consequently, $(srctree)/$(src) in upstream Makefiles need to be replaced
with $(src).
Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
Reviewed-by: default avatarNicolas Schier <nicolas@fjasle.eu>
parent 9a0ebe50
...@@ -76,22 +76,22 @@ loop_cmd = $(echo-cmd) $(cmd_$(1)) || exit; ...@@ -76,22 +76,22 @@ loop_cmd = $(echo-cmd) $(cmd_$(1)) || exit;
# * dest folder relative to $(BUILDDIR) and # * dest folder relative to $(BUILDDIR) and
# * cache folder relative to $(BUILDDIR)/.doctrees # * cache folder relative to $(BUILDDIR)/.doctrees
# $4 dest subfolder e.g. "man" for man pages at userspace-api/media/man # $4 dest subfolder e.g. "man" for man pages at userspace-api/media/man
# $5 reST source folder relative to $(srctree)/$(src), # $5 reST source folder relative to $(src),
# e.g. "userspace-api/media" for the linux-tv book-set at ./Documentation/userspace-api/media # e.g. "userspace-api/media" for the linux-tv book-set at ./Documentation/userspace-api/media
quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4) quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/userspace-api/media $2 && \ cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/userspace-api/media $2 && \
PYTHONDONTWRITEBYTECODE=1 \ PYTHONDONTWRITEBYTECODE=1 \
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(srctree)/$(src)/$5/$(SPHINX_CONF)) \ BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(src)/$5/$(SPHINX_CONF)) \
$(PYTHON3) $(srctree)/scripts/jobserver-exec \ $(PYTHON3) $(srctree)/scripts/jobserver-exec \
$(CONFIG_SHELL) $(srctree)/Documentation/sphinx/parallel-wrapper.sh \ $(CONFIG_SHELL) $(srctree)/Documentation/sphinx/parallel-wrapper.sh \
$(SPHINXBUILD) \ $(SPHINXBUILD) \
-b $2 \ -b $2 \
-c $(abspath $(srctree)/$(src)) \ -c $(abspath $(src)) \
-d $(abspath $(BUILDDIR)/.doctrees/$3) \ -d $(abspath $(BUILDDIR)/.doctrees/$3) \
-D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) \ -D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) \
$(ALLSPHINXOPTS) \ $(ALLSPHINXOPTS) \
$(abspath $(srctree)/$(src)/$5) \ $(abspath $(src)/$5) \
$(abspath $(BUILDDIR)/$3/$4) && \ $(abspath $(BUILDDIR)/$3/$4) && \
if [ "x$(DOCS_CSS)" != "x" ]; then \ if [ "x$(DOCS_CSS)" != "x" ]; then \
cp $(if $(patsubst /%,,$(DOCS_CSS)),$(abspath $(srctree)/$(DOCS_CSS)),$(DOCS_CSS)) $(BUILDDIR)/$3/_static/; \ cp $(if $(patsubst /%,,$(DOCS_CSS)),$(abspath $(srctree)/$(DOCS_CSS)),$(DOCS_CSS)) $(BUILDDIR)/$3/_static/; \
......
...@@ -25,7 +25,7 @@ quiet_cmd_extract_ex = DTEX $@ ...@@ -25,7 +25,7 @@ quiet_cmd_extract_ex = DTEX $@
$(obj)/%.example.dts: $(src)/%.yaml check_dtschema_version FORCE $(obj)/%.example.dts: $(src)/%.yaml check_dtschema_version FORCE
$(call if_changed,extract_ex) $(call if_changed,extract_ex)
find_all_cmd = find $(srctree)/$(src) \( -name '*.yaml' ! \ find_all_cmd = find $(src) \( -name '*.yaml' ! \
-name 'processed-schema*' \) -name 'processed-schema*' \)
find_cmd = $(find_all_cmd) | \ find_cmd = $(find_all_cmd) | \
...@@ -37,12 +37,12 @@ CHK_DT_EXAMPLES := $(patsubst $(srctree)/%.yaml,%.example.dtb, $(shell $(find_cm ...@@ -37,12 +37,12 @@ CHK_DT_EXAMPLES := $(patsubst $(srctree)/%.yaml,%.example.dtb, $(shell $(find_cm
quiet_cmd_yamllint = LINT $(src) quiet_cmd_yamllint = LINT $(src)
cmd_yamllint = ($(find_cmd) | \ cmd_yamllint = ($(find_cmd) | \
xargs -n200 -P$$(nproc) \ xargs -n200 -P$$(nproc) \
$(DT_SCHEMA_LINT) -f parsable -c $(srctree)/$(src)/.yamllint >&2) \ $(DT_SCHEMA_LINT) -f parsable -c $(src)/.yamllint >&2) \
&& touch $@ || true && touch $@ || true
quiet_cmd_chk_bindings = CHKDT $(src) quiet_cmd_chk_bindings = CHKDT $(src)
cmd_chk_bindings = ($(find_cmd) | \ cmd_chk_bindings = ($(find_cmd) | \
xargs -n200 -P$$(nproc) $(DT_DOC_CHECKER) -u $(srctree)/$(src)) \ xargs -n200 -P$$(nproc) $(DT_DOC_CHECKER) -u $(src)) \
&& touch $@ || true && touch $@ || true
quiet_cmd_mk_schema = SCHEMA $@ quiet_cmd_mk_schema = SCHEMA $@
......
...@@ -346,7 +346,7 @@ ccflags-y, asflags-y and ldflags-y ...@@ -346,7 +346,7 @@ ccflags-y, asflags-y and ldflags-y
Example:: Example::
#arch/cris/boot/compressed/Makefile #arch/cris/boot/compressed/Makefile
ldflags-y += -T $(srctree)/$(src)/decompress_$(arch-y).lds ldflags-y += -T $(src)/decompress_$(arch-y).lds
subdir-ccflags-y, subdir-asflags-y subdir-ccflags-y, subdir-asflags-y
The two flags listed above are similar to ccflags-y and asflags-y. The two flags listed above are similar to ccflags-y and asflags-y.
...@@ -426,14 +426,14 @@ path to prerequisite files and target files. ...@@ -426,14 +426,14 @@ path to prerequisite files and target files.
Two variables are used when defining custom rules: Two variables are used when defining custom rules:
$(src) $(src)
$(src) is a relative path which points to the directory $(src) is the directory where the Makefile is located. Always use $(src) when
where the Makefile is located. Always use $(src) when
referring to files located in the src tree. referring to files located in the src tree.
$(obj) $(obj)
$(obj) is a relative path which points to the directory $(obj) is the directory where the target is saved. Always use $(obj) when
where the target is saved. Always use $(obj) when referring to generated files. Use $(obj) for pattern rules that need to work
referring to generated files. for both generated files and real sources (VPATH will help to find the
prerequisites not only in the object tree but also in the source tree).
Example:: Example::
......
...@@ -263,7 +263,14 @@ srctree := $(abs_srctree) ...@@ -263,7 +263,14 @@ srctree := $(abs_srctree)
endif endif
objtree := . objtree := .
VPATH :=
ifeq ($(KBUILD_EXTMOD),)
ifdef building_out_of_srctree
VPATH := $(srctree) VPATH := $(srctree)
endif
endif
export building_out_of_srctree srctree objtree VPATH export building_out_of_srctree srctree objtree VPATH
......
...@@ -10,8 +10,7 @@ obj-y += $(builtindtb-y).dtb.o ...@@ -10,8 +10,7 @@ obj-y += $(builtindtb-y).dtb.o
dtb-y := $(builtindtb-y).dtb dtb-y := $(builtindtb-y).dtb
# for CONFIG_OF_ALL_DTBS test # for CONFIG_OF_ALL_DTBS test
dtstree := $(srctree)/$(src) dtb- := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb- := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
# board-specific dtc flags # board-specific dtc flags
DTC_FLAGS_hsdk += --pad 20 DTC_FLAGS_hsdk += --pad 20
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
obj-$(CONFIG_FPE_NWFPE) += nwfpe/ obj-$(CONFIG_FPE_NWFPE) += nwfpe/
# Put arch/arm/fastfpe/ to use this. # Put arch/arm/fastfpe/ to use this.
obj-$(CONFIG_FPE_FASTFPE) += $(patsubst $(srctree)/$(src)/%,%,$(wildcard $(srctree)/$(src)/fastfpe/)) obj-$(CONFIG_FPE_FASTFPE) += $(patsubst $(src)/%,%,$(wildcard $(src)/fastfpe/))
obj-$(CONFIG_VFP) += vfp/ obj-$(CONFIG_VFP) += vfp/
obj-$(CONFIG_XEN) += xen/ obj-$(CONFIG_XEN) += xen/
obj-$(CONFIG_VDSO) += vdso/ obj-$(CONFIG_VDSO) += vdso/
......
...@@ -25,8 +25,7 @@ targets := Image zImage xipImage bootpImage uImage ...@@ -25,8 +25,7 @@ targets := Image zImage xipImage bootpImage uImage
ifeq ($(CONFIG_XIP_KERNEL),y) ifeq ($(CONFIG_XIP_KERNEL),y)
cmd_deflate_xip_data = $(CONFIG_SHELL) -c \ cmd_deflate_xip_data = $(CONFIG_SHELL) -c '$(src)/deflate_xip_data.sh $< $@'
'$(srctree)/$(src)/deflate_xip_data.sh $< $@'
ifeq ($(CONFIG_XIP_DEFLATED_DATA),y) ifeq ($(CONFIG_XIP_DEFLATED_DATA),y)
quiet_cmd_mkxip = XIPZ $@ quiet_cmd_mkxip = XIPZ $@
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# #
# Copyright 2009 Simtec Electronics # Copyright 2009 Simtec Electronics
include $(srctree)/$(src)/Makefile.s3c64xx include $(src)/Makefile.s3c64xx
# Objects we always build independent of SoC choice # Objects we always build independent of SoC choice
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# #
# Makefile for the linux kernel. # Makefile for the linux kernel.
# #
ccflags-y := -I$(srctree)/$(src)/include ccflags-y := -I$(src)/include
orion-gpio-$(CONFIG_GPIOLIB) += gpio.o orion-gpio-$(CONFIG_GPIOLIB) += gpio.o
obj-$(CONFIG_PLAT_ORION_LEGACY) += irq.o pcie.o time.o common.o mpp.o obj-$(CONFIG_PLAT_ORION_LEGACY) += irq.o pcie.o time.o common.o mpp.o
......
...@@ -9,7 +9,7 @@ gen := arch/$(ARCH)/include/generated ...@@ -9,7 +9,7 @@ gen := arch/$(ARCH)/include/generated
kapi := $(gen)/asm kapi := $(gen)/asm
uapi := $(gen)/uapi/asm uapi := $(gen)/uapi/asm
syshdr := $(srctree)/scripts/syscallhdr.sh syshdr := $(srctree)/scripts/syscallhdr.sh
sysnr := $(srctree)/$(src)/syscallnr.sh sysnr := $(src)/syscallnr.sh
systbl := $(srctree)/scripts/syscalltbl.sh systbl := $(srctree)/scripts/syscalltbl.sh
syscall := $(src)/syscall.tbl syscall := $(src)/syscall.tbl
......
...@@ -68,7 +68,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE ...@@ -68,7 +68,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE
$(call if_changed,objcopy) $(call if_changed,objcopy)
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Makefile for Kernel-based Virtual Machine module # Makefile for Kernel-based Virtual Machine module
# #
ccflags-y += -I $(srctree)/$(src) ccflags-y += -I $(src)
include $(srctree)/virt/kvm/Makefile.kvm include $(srctree)/virt/kvm/Makefile.kvm
...@@ -30,7 +30,7 @@ define rule_gen_hyp_constants ...@@ -30,7 +30,7 @@ define rule_gen_hyp_constants
$(call filechk,offsets,__HYP_CONSTANTS_H__) $(call filechk,offsets,__HYP_CONSTANTS_H__)
endef endef
CFLAGS_hyp-constants.o = -I $(srctree)/$(src)/hyp/include CFLAGS_hyp-constants.o = -I $(src)/hyp/include
$(obj)/hyp-constants.s: $(src)/hyp/hyp-constants.c FORCE $(obj)/hyp-constants.s: $(src)/hyp/hyp-constants.c FORCE
$(call if_changed_dep,cc_s_c) $(call if_changed_dep,cc_s_c)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Makefile for Kernel-based Virtual Machine module, HYP part # Makefile for Kernel-based Virtual Machine module, HYP part
# #
incdir := $(srctree)/$(src)/include incdir := $(src)/include
subdir-asflags-y := -I$(incdir) subdir-asflags-y := -I$(incdir)
subdir-ccflags-y := -I$(incdir) subdir-ccflags-y := -I$(incdir)
......
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
dtstree := $(srctree)/$(src) dtb-y := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb-y := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
...@@ -57,4 +57,4 @@ quiet_cmd_vdsold = VDSOLD $@ ...@@ -57,4 +57,4 @@ quiet_cmd_vdsold = VDSOLD $@
# Extracts symbol offsets from the VDSO, converting them into an assembly file # Extracts symbol offsets from the VDSO, converting them into an assembly file
# that contains the same symbols at the same offsets. # that contains the same symbols at the same offsets.
quiet_cmd_so2s = SO2S $@ quiet_cmd_so2s = SO2S $@
cmd_so2s = $(NM) -D $< | $(srctree)/$(src)/so2s.sh > $@ cmd_so2s = $(NM) -D $< | $(src)/so2s.sh > $@
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Makefile for LoongArch KVM support # Makefile for LoongArch KVM support
# #
ccflags-y += -I $(srctree)/$(src) ccflags-y += -I $(src)
include $(srctree)/virt/kvm/Makefile.kvm include $(srctree)/virt/kvm/Makefile.kvm
......
...@@ -52,7 +52,7 @@ quiet_cmd_vdsoas_o_S = AS $@ ...@@ -52,7 +52,7 @@ quiet_cmd_vdsoas_o_S = AS $@
cmd_vdsoas_o_S = $(CC) $(a_flags) -c -o $@ $< cmd_vdsoas_o_S = $(CC) $(a_flags) -c -o $@ $<
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -5,7 +5,7 @@ uapi := arch/$(SRCARCH)/include/generated/uapi/asm ...@@ -5,7 +5,7 @@ uapi := arch/$(SRCARCH)/include/generated/uapi/asm
$(shell mkdir -p $(uapi) $(kapi)) $(shell mkdir -p $(uapi) $(kapi))
syshdr := $(srctree)/scripts/syscallhdr.sh syshdr := $(srctree)/scripts/syscallhdr.sh
sysnr := $(srctree)/$(src)/syscallnr.sh sysnr := $(src)/syscallnr.sh
systbl := $(srctree)/scripts/syscalltbl.sh systbl := $(srctree)/scripts/syscalltbl.sh
quiet_cmd_syshdr = SYSHDR $@ quiet_cmd_syshdr = SYSHDR $@
......
...@@ -43,8 +43,8 @@ CFLAGS_vgettimeofday.o = -include $(c-gettimeofday-y) ...@@ -43,8 +43,8 @@ CFLAGS_vgettimeofday.o = -include $(c-gettimeofday-y)
# config-n32-o32-env.c prepares the environment to build a 32bit vDSO # config-n32-o32-env.c prepares the environment to build a 32bit vDSO
# library on a 64bit kernel. # library on a 64bit kernel.
# Note: Needs to be included before than the generic library. # Note: Needs to be included before than the generic library.
CFLAGS_vgettimeofday-o32.o = -include $(srctree)/$(src)/config-n32-o32-env.c -include $(c-gettimeofday-y) CFLAGS_vgettimeofday-o32.o = -include $(src)/config-n32-o32-env.c -include $(c-gettimeofday-y)
CFLAGS_vgettimeofday-n32.o = -include $(srctree)/$(src)/config-n32-o32-env.c -include $(c-gettimeofday-y) CFLAGS_vgettimeofday-n32.o = -include $(src)/config-n32-o32-env.c -include $(c-gettimeofday-y)
endif endif
CFLAGS_REMOVE_vgettimeofday.o = $(CC_FLAGS_FTRACE) CFLAGS_REMOVE_vgettimeofday.o = $(CC_FLAGS_FTRACE)
......
...@@ -2,5 +2,4 @@ ...@@ -2,5 +2,4 @@
obj-y := $(patsubst %.dts,%.dtb.o,$(CONFIG_NIOS2_DTB_SOURCE)) obj-y := $(patsubst %.dts,%.dtb.o,$(CONFIG_NIOS2_DTB_SOURCE))
dtstree := $(srctree)/$(src) dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
...@@ -40,7 +40,7 @@ quiet_cmd_vdso32as = VDSO32A $@ ...@@ -40,7 +40,7 @@ quiet_cmd_vdso32as = VDSO32A $@
cmd_vdso32as = $(CROSS32CC) $(a_flags) -c -o $@ $< cmd_vdso32as = $(CROSS32CC) $(a_flags) -c -o $@ $<
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -40,7 +40,7 @@ quiet_cmd_vdso64as = VDSO64A $@ ...@@ -40,7 +40,7 @@ quiet_cmd_vdso64as = VDSO64A $@
cmd_vdso64as = $(CC) $(a_flags) -c -o $@ $< cmd_vdso64as = $(CC) $(a_flags) -c -o $@ $<
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -218,7 +218,7 @@ $(addprefix $(obj)/,$(libfdt) $(libfdtheader)): $(obj)/%: $(srctree)/scripts/dtc ...@@ -218,7 +218,7 @@ $(addprefix $(obj)/,$(libfdt) $(libfdtheader)): $(obj)/%: $(srctree)/scripts/dtc
$(obj)/empty.c: $(obj)/empty.c:
$(Q)touch $@ $(Q)touch $@
$(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds : $(obj)/%: $(srctree)/$(src)/%.S $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds : $(obj)/%: $(src)/%.S
$(Q)cp $< $@ $(Q)cp $< $@
clean-files := $(zlib-) $(zlibheader-) $(zliblinuxheader-) \ clean-files := $(zlib-) $(zlibheader-) $(zliblinuxheader-) \
...@@ -252,9 +252,9 @@ targets += $(patsubst $(obj)/%,%,$(obj-boot) wrapper.a) zImage.lds ...@@ -252,9 +252,9 @@ targets += $(patsubst $(obj)/%,%,$(obj-boot) wrapper.a) zImage.lds
extra-y := $(obj)/wrapper.a $(obj-plat) $(obj)/empty.o \ extra-y := $(obj)/wrapper.a $(obj-plat) $(obj)/empty.o \
$(obj)/zImage.lds $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds $(obj)/zImage.lds $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds
dtstree := $(srctree)/$(src)/dts dtstree := $(src)/dts
wrapper :=$(srctree)/$(src)/wrapper wrapper := $(src)/wrapper
wrapperbits := $(extra-y) $(addprefix $(obj)/,addnote hack-coff mktree) \ wrapperbits := $(extra-y) $(addprefix $(obj)/,addnote hack-coff mktree) \
$(wrapper) FORCE $(wrapper) FORCE
......
...@@ -2,5 +2,4 @@ ...@@ -2,5 +2,4 @@
subdir-y += fsl subdir-y += fsl
dtstree := $(srctree)/$(src) dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
dtstree := $(srctree)/$(src) dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
...@@ -90,10 +90,10 @@ $(obj)/vgettimeofday-64.o: %-64.o: %.c FORCE ...@@ -90,10 +90,10 @@ $(obj)/vgettimeofday-64.o: %-64.o: %.c FORCE
$(call if_changed_dep,cc_o_c) $(call if_changed_dep,cc_o_c)
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdso32sym := $(srctree)/$(src)/gen_vdso32_offsets.sh gen-vdso32sym := $(src)/gen_vdso32_offsets.sh
quiet_cmd_vdso32sym = VDSO32SYM $@ quiet_cmd_vdso32sym = VDSO32SYM $@
cmd_vdso32sym = $(NM) $< | $(gen-vdso32sym) | LC_ALL=C sort > $@ cmd_vdso32sym = $(NM) $< | $(gen-vdso32sym) | LC_ALL=C sort > $@
gen-vdso64sym := $(srctree)/$(src)/gen_vdso64_offsets.sh gen-vdso64sym := $(src)/gen_vdso64_offsets.sh
quiet_cmd_vdso64sym = VDSO64SYM $@ quiet_cmd_vdso64sym = VDSO64SYM $@
cmd_vdso64sym = $(NM) $< | $(gen-vdso64sym) | LC_ALL=C sort > $@ cmd_vdso64sym = $(NM) $< | $(gen-vdso64sym) | LC_ALL=C sort > $@
......
...@@ -58,7 +58,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE ...@@ -58,7 +58,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE
$(call if_changed,objcopy) $(call if_changed,objcopy)
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-compat_vdsosym := $(srctree)/$(src)/gen_compat_vdso_offsets.sh gen-compat_vdsosym := $(src)/gen_compat_vdso_offsets.sh
quiet_cmd_compat_vdsosym = VDSOSYM $@ quiet_cmd_compat_vdsosym = VDSOSYM $@
cmd_compat_vdsosym = $(NM) $< | $(gen-compat_vdsosym) | LC_ALL=C sort > $@ cmd_compat_vdsosym = $(NM) $< | $(gen-compat_vdsosym) | LC_ALL=C sort > $@
......
...@@ -60,7 +60,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE ...@@ -60,7 +60,7 @@ $(obj)/%.so: $(obj)/%.so.dbg FORCE
$(call if_changed,objcopy) $(call if_changed,objcopy)
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Makefile for RISC-V KVM support # Makefile for RISC-V KVM support
# #
ccflags-y += -I $(srctree)/$(src) ccflags-y += -I $(src)
include $(srctree)/virt/kvm/Makefile.kvm include $(srctree)/virt/kvm/Makefile.kvm
......
...@@ -4,8 +4,8 @@ gen := arch/$(ARCH)/include/generated ...@@ -4,8 +4,8 @@ gen := arch/$(ARCH)/include/generated
kapi := $(gen)/asm kapi := $(gen)/asm
uapi := $(gen)/uapi/asm uapi := $(gen)/uapi/asm
syscall := $(srctree)/$(src)/syscall.tbl syscall := $(src)/syscall.tbl
systbl := $(srctree)/$(src)/syscalltbl systbl := $(src)/syscalltbl
gen-y := $(kapi)/syscall_table.h gen-y := $(kapi)/syscall_table.h
kapi-hdrs-y := $(kapi)/unistd_nr.h kapi-hdrs-y := $(kapi)/unistd_nr.h
......
...@@ -62,7 +62,7 @@ quiet_cmd_vdso32cc = VDSO32C $@ ...@@ -62,7 +62,7 @@ quiet_cmd_vdso32cc = VDSO32C $@
cmd_vdso32cc = $(CC) $(c_flags) -c -o $@ $< cmd_vdso32cc = $(CC) $(c_flags) -c -o $@ $<
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -72,7 +72,7 @@ quiet_cmd_vdso64cc = VDSO64C $@ ...@@ -72,7 +72,7 @@ quiet_cmd_vdso64cc = VDSO64C $@
cmd_vdso64cc = $(CC) $(c_flags) -c -o $@ $< cmd_vdso64cc = $(CC) $(c_flags) -c -o $@ $<
# Generate VDSO offsets using helper script # Generate VDSO offsets using helper script
gen-vdsosym := $(srctree)/$(src)/gen_vdso_offsets.sh gen-vdsosym := $(src)/gen_vdso_offsets.sh
quiet_cmd_vdsosym = VDSOSYM $@ quiet_cmd_vdsosym = VDSOSYM $@
cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@ cmd_vdsosym = $(NM) $< | $(gen-vdsosym) | LC_ALL=C sort > $@
......
...@@ -103,7 +103,7 @@ quiet_cmd_vdso = VDSO $@ ...@@ -103,7 +103,7 @@ quiet_cmd_vdso = VDSO $@
cmd_vdso = $(LD) -nostdlib -o $@ \ cmd_vdso = $(LD) -nostdlib -o $@ \
$(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \ $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \
-T $(filter %.lds,$^) $(filter %.o,$^) && \ -T $(filter %.lds,$^) $(filter %.o,$^) && \
sh $(srctree)/$(src)/checkundef.sh '$(OBJDUMP)' '$@' sh $(src)/checkundef.sh '$(OBJDUMP)' '$@'
VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 -Bsymbolic VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 -Bsymbolic
GCOV_PROFILE := n GCOV_PROFILE := n
...@@ -47,7 +47,7 @@ $(obj)/config.c: $(src)/config.c.in $(obj)/config.tmp FORCE ...@@ -47,7 +47,7 @@ $(obj)/config.c: $(src)/config.c.in $(obj)/config.tmp FORCE
$(call if_changed,quote2) $(call if_changed,quote2)
quiet_cmd_mkcapflags = MKCAP $@ quiet_cmd_mkcapflags = MKCAP $@
cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/../../x86/kernel/cpu/mkcapflags.sh $@ $^ cmd_mkcapflags = $(CONFIG_SHELL) $(src)/../../x86/kernel/cpu/mkcapflags.sh $@ $^
cpufeature = $(src)/../../x86/include/asm/cpufeatures.h cpufeature = $(src)/../../x86/include/asm/cpufeatures.h
vmxfeature = $(src)/../../x86/include/asm/vmxfeatures.h vmxfeature = $(src)/../../x86/include/asm/vmxfeatures.h
......
...@@ -129,7 +129,7 @@ targets += mtools.conf ...@@ -129,7 +129,7 @@ targets += mtools.conf
# genimage.sh requires bash, but it also has a bunch of other # genimage.sh requires bash, but it also has a bunch of other
# external dependencies. # external dependencies.
quiet_cmd_genimage = GENIMAGE $3 quiet_cmd_genimage = GENIMAGE $3
cmd_genimage = $(BASH) $(srctree)/$(src)/genimage.sh $2 $3 $(obj)/bzImage \ cmd_genimage = $(BASH) $(src)/genimage.sh $2 $3 $(obj)/bzImage \
$(obj)/mtools.conf '$(FDARGS)' $(FDINITRD) $(obj)/mtools.conf '$(FDARGS)' $(FDINITRD)
PHONY += bzdisk fdimage fdimage144 fdimage288 hdimage isoimage PHONY += bzdisk fdimage fdimage144 fdimage288 hdimage isoimage
......
...@@ -176,7 +176,7 @@ quiet_cmd_vdso = VDSO $@ ...@@ -176,7 +176,7 @@ quiet_cmd_vdso = VDSO $@
cmd_vdso = $(LD) -o $@ \ cmd_vdso = $(LD) -o $@ \
$(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \ $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \
-T $(filter %.lds,$^) $(filter %.o,$^) && \ -T $(filter %.lds,$^) $(filter %.o,$^) && \
sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@' sh $(src)/checkundef.sh '$(NM)' '$@'
VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 \ VDSO_LDFLAGS = -shared --hash-style=both --build-id=sha1 \
$(call ld-option, --eh-frame-hdr) -Bsymbolic -z noexecstack $(call ld-option, --eh-frame-hdr) -Bsymbolic -z noexecstack
......
...@@ -40,7 +40,7 @@ KMSAN_SANITIZE_sev.o := n ...@@ -40,7 +40,7 @@ KMSAN_SANITIZE_sev.o := n
KCOV_INSTRUMENT_head$(BITS).o := n KCOV_INSTRUMENT_head$(BITS).o := n
KCOV_INSTRUMENT_sev.o := n KCOV_INSTRUMENT_sev.o := n
CFLAGS_irq.o := -I $(srctree)/$(src)/../include/asm/trace CFLAGS_irq.o := -I $(src)/../include/asm/trace
obj-y += head_$(BITS).o obj-y += head_$(BITS).o
obj-y += head$(BITS).o obj-y += head$(BITS).o
......
...@@ -60,7 +60,7 @@ obj-$(CONFIG_ACRN_GUEST) += acrn.o ...@@ -60,7 +60,7 @@ obj-$(CONFIG_ACRN_GUEST) += acrn.o
obj-$(CONFIG_DEBUG_FS) += debugfs.o obj-$(CONFIG_DEBUG_FS) += debugfs.o
quiet_cmd_mkcapflags = MKCAP $@ quiet_cmd_mkcapflags = MKCAP $@
cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/mkcapflags.sh $@ $^ cmd_mkcapflags = $(CONFIG_SHELL) $(src)/mkcapflags.sh $@ $^
cpufeature = $(src)/../../include/asm/cpufeatures.h cpufeature = $(src)/../../include/asm/cpufeatures.h
vmxfeature = $(src)/../../include/asm/vmxfeatures.h vmxfeature = $(src)/../../include/asm/vmxfeatures.h
......
...@@ -34,7 +34,7 @@ obj-y += pat/ ...@@ -34,7 +34,7 @@ obj-y += pat/
CFLAGS_physaddr.o := -fno-stack-protector CFLAGS_physaddr.o := -fno-stack-protector
CFLAGS_mem_encrypt_identity.o := -fno-stack-protector CFLAGS_mem_encrypt_identity.o := -fno-stack-protector
CFLAGS_fault.o := -I $(srctree)/$(src)/../include/asm/trace CFLAGS_fault.o := -I $(src)/../include/asm/trace
obj-$(CONFIG_X86_32) += pgtable_32.o iomap_32.o obj-$(CONFIG_X86_32) += pgtable_32.o iomap_32.o
......
...@@ -63,7 +63,7 @@ quiet_cmd_vdso = VDSO $@ ...@@ -63,7 +63,7 @@ quiet_cmd_vdso = VDSO $@
cmd_vdso = $(CC) -nostdlib -o $@ \ cmd_vdso = $(CC) -nostdlib -o $@ \
$(CC_FLAGS_LTO) $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \ $(CC_FLAGS_LTO) $(VDSO_LDFLAGS) $(VDSO_LDFLAGS_$(filter %.lds,$(^F))) \
-Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) && \ -Wl,-T,$(filter %.lds,$^) $(filter %.o,$^) && \
sh $(srctree)/$(src)/checkundef.sh '$(NM)' '$@' sh $(src)/checkundef.sh '$(NM)' '$@'
VDSO_LDFLAGS = -fPIC -shared -Wl,--hash-style=sysv -z noexecstack VDSO_LDFLAGS = -fPIC -shared -Wl,--hash-style=sysv -z noexecstack
GCOV_PROFILE := n GCOV_PROFILE := n
...@@ -10,5 +10,4 @@ ...@@ -10,5 +10,4 @@
obj-$(CONFIG_OF) += $(addsuffix .dtb.o, $(CONFIG_BUILTIN_DTB_SOURCE)) obj-$(CONFIG_OF) += $(addsuffix .dtb.o, $(CONFIG_BUILTIN_DTB_SOURCE))
# for CONFIG_OF_ALL_DTBS test # for CONFIG_OF_ALL_DTBS test
dtstree := $(srctree)/$(src) dtb- := $(patsubst $(src)/%.dts,%.dtb, $(wildcard $(src)/*.dts))
dtb- := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
...@@ -13,7 +13,7 @@ CFLAGS_blacklist_hashes.o := -I $(obj) ...@@ -13,7 +13,7 @@ CFLAGS_blacklist_hashes.o := -I $(obj)
quiet_cmd_check_and_copy_blacklist_hash_list = GEN $@ quiet_cmd_check_and_copy_blacklist_hash_list = GEN $@
cmd_check_and_copy_blacklist_hash_list = \ cmd_check_and_copy_blacklist_hash_list = \
$(if $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST), \ $(if $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST), \
$(AWK) -f $(srctree)/$(src)/check-blacklist-hashes.awk $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST) >&2; \ $(AWK) -f $(src)/check-blacklist-hashes.awk $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST) >&2; \
{ cat $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST); echo $(comma) NULL; } > $@, \ { cat $(CONFIG_SYSTEM_BLACKLIST_HASH_LIST); echo $(comma) NULL; } > $@, \
echo NULL > $@) echo NULL > $@)
...@@ -55,7 +55,7 @@ $(obj)/signing_key.pem: $(obj)/x509.genkey FORCE ...@@ -55,7 +55,7 @@ $(obj)/signing_key.pem: $(obj)/x509.genkey FORCE
targets += signing_key.pem targets += signing_key.pem
quiet_cmd_copy_x509_config = COPY $@ quiet_cmd_copy_x509_config = COPY $@
cmd_copy_x509_config = cat $(srctree)/$(src)/default_x509.genkey > $@ cmd_copy_x509_config = cat $(src)/default_x509.genkey > $@
# You can provide your own config file. If not present, copy the default one. # You can provide your own config file. If not present, copy the default one.
$(obj)/x509.genkey: $(obj)/x509.genkey:
......
...@@ -6,11 +6,6 @@ ...@@ -6,11 +6,6 @@
# Rewritten to use lists instead of if-statements. # Rewritten to use lists instead of if-statements.
# #
# Some driver Makefiles miss $(srctree)/ for include directive.
ifdef building_out_of_srctree
MAKEFLAGS += --include-dir=$(srctree)
endif
obj-y += cache/ obj-y += cache/
obj-y += irqchip/ obj-y += irqchip/
obj-y += bus/ obj-y += bus/
......
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_420XX) += qat_420xx.o obj-$(CONFIG_CRYPTO_DEV_QAT_420XX) += qat_420xx.o
qat_420xx-objs := adf_drv.o adf_420xx_hw_data.o qat_420xx-objs := adf_drv.o adf_420xx_hw_data.o
# SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only) # SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0-only)
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_4XXX) += qat_4xxx.o obj-$(CONFIG_CRYPTO_DEV_QAT_4XXX) += qat_4xxx.o
qat_4xxx-objs := adf_drv.o adf_4xxx_hw_data.o qat_4xxx-objs := adf_drv.o adf_4xxx_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_C3XXX) += qat_c3xxx.o obj-$(CONFIG_CRYPTO_DEV_QAT_C3XXX) += qat_c3xxx.o
qat_c3xxx-objs := adf_drv.o adf_c3xxx_hw_data.o qat_c3xxx-objs := adf_drv.o adf_c3xxx_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_C3XXXVF) += qat_c3xxxvf.o obj-$(CONFIG_CRYPTO_DEV_QAT_C3XXXVF) += qat_c3xxxvf.o
qat_c3xxxvf-objs := adf_drv.o adf_c3xxxvf_hw_data.o qat_c3xxxvf-objs := adf_drv.o adf_c3xxxvf_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_C62X) += qat_c62x.o obj-$(CONFIG_CRYPTO_DEV_QAT_C62X) += qat_c62x.o
qat_c62x-objs := adf_drv.o adf_c62x_hw_data.o qat_c62x-objs := adf_drv.o adf_c62x_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_C62XVF) += qat_c62xvf.o obj-$(CONFIG_CRYPTO_DEV_QAT_C62XVF) += qat_c62xvf.o
qat_c62xvf-objs := adf_drv.o adf_c62xvf_hw_data.o qat_c62xvf-objs := adf_drv.o adf_c62xvf_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_DH895xCC) += qat_dh895xcc.o obj-$(CONFIG_CRYPTO_DEV_QAT_DH895xCC) += qat_dh895xcc.o
qat_dh895xcc-objs := adf_drv.o adf_dh895xcc_hw_data.o qat_dh895xcc-objs := adf_drv.o adf_dh895xcc_hw_data.o
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../qat_common ccflags-y := -I $(src)/../qat_common
obj-$(CONFIG_CRYPTO_DEV_QAT_DH895xCCVF) += qat_dh895xccvf.o obj-$(CONFIG_CRYPTO_DEV_QAT_DH895xCCVF) += qat_dh895xccvf.o
qat_dh895xccvf-objs := adf_drv.o adf_dh895xccvf_hw_data.o qat_dh895xccvf-objs := adf_drv.o adf_dh895xccvf_hw_data.o
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
# Makefile for the drm device driver. This driver provides support for the # Makefile for the drm device driver. This driver provides support for the
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher. # Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
FULL_AMD_PATH=$(srctree)/$(src)/.. FULL_AMD_PATH=$(src)/..
DISPLAY_FOLDER_NAME=display DISPLAY_FOLDER_NAME=display
FULL_AMD_DISPLAY_PATH = $(FULL_AMD_PATH)/$(DISPLAY_FOLDER_NAME) FULL_AMD_DISPLAY_PATH = $(FULL_AMD_PATH)/$(DISPLAY_FOLDER_NAME)
......
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
ccflags-y := \ ccflags-y := \
-I $(srctree)/$(src)/../include \ -I $(src)/../include \
-I $(srctree)/$(src) -I $(src)
komeda-y := \ komeda-y := \
komeda_drv.o \ komeda_drv.o \
......
...@@ -41,7 +41,7 @@ CFLAGS_display/intel_fbdev.o = -Wno-override-init ...@@ -41,7 +41,7 @@ CFLAGS_display/intel_fbdev.o = -Wno-override-init
# drivers. Define I915 when building i915. # drivers. Define I915 when building i915.
subdir-ccflags-y += -DI915 subdir-ccflags-y += -DI915
subdir-ccflags-y += -I$(srctree)/$(src) subdir-ccflags-y += -I$(src)
# Please keep these build lists sorted! # Please keep these build lists sorted!
...@@ -434,7 +434,7 @@ no-header-test := \ ...@@ -434,7 +434,7 @@ no-header-test := \
always-$(CONFIG_DRM_I915_WERROR) += \ always-$(CONFIG_DRM_I915_WERROR) += \
$(patsubst %.h,%.hdrtest, $(filter-out $(no-header-test), \ $(patsubst %.h,%.hdrtest, $(filter-out $(no-header-test), \
$(shell cd $(srctree)/$(src) && find * -name '*.h'))) $(shell cd $(src) && find * -name '*.h')))
quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@) quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; \ cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; \
......
# SPDX-License-Identifier: GPL-2.0-only OR MIT # SPDX-License-Identifier: GPL-2.0-only OR MIT
# Copyright (c) 2023 Imagination Technologies Ltd. # Copyright (c) 2023 Imagination Technologies Ltd.
subdir-ccflags-y := -I$(srctree)/$(src) subdir-ccflags-y := -I$(src)
powervr-y := \ powervr-y := \
pvr_ccb.o \ pvr_ccb.o \
......
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
ccflags-y := -I $(srctree)/$(src) ccflags-y := -I $(src)
ccflags-y += -I $(srctree)/$(src)/disp/dpu1 ccflags-y += -I $(src)/disp/dpu1
ccflags-$(CONFIG_DRM_MSM_DSI) += -I $(srctree)/$(src)/dsi ccflags-$(CONFIG_DRM_MSM_DSI) += -I $(src)/dsi
ccflags-$(CONFIG_DRM_MSM_DP) += -I $(srctree)/$(src)/dp ccflags-$(CONFIG_DRM_MSM_DP) += -I $(src)/dp
msm-y := \ msm-y := \
adreno/adreno_device.o \ adreno/adreno_device.o \
......
NOUVEAU_PATH ?= $(srctree)
# SPDX-License-Identifier: MIT # SPDX-License-Identifier: MIT
ccflags-y += -I $(NOUVEAU_PATH)/$(src)/include ccflags-y += -I $(src)/include
ccflags-y += -I $(NOUVEAU_PATH)/$(src)/include/nvkm ccflags-y += -I $(src)/include/nvkm
ccflags-y += -I $(NOUVEAU_PATH)/$(src)/nvkm ccflags-y += -I $(src)/nvkm
ccflags-y += -I $(NOUVEAU_PATH)/$(src) ccflags-y += -I $(src)
# NVKM - HW resource manager # NVKM - HW resource manager
#- code also used by various userspace tools/tests #- code also used by various userspace tools/tests
......
...@@ -32,7 +32,7 @@ endif ...@@ -32,7 +32,7 @@ endif
# Enable -Werror in CI and development # Enable -Werror in CI and development
subdir-ccflags-$(CONFIG_DRM_XE_WERROR) += -Werror subdir-ccflags-$(CONFIG_DRM_XE_WERROR) += -Werror
subdir-ccflags-y += -I$(obj) -I$(srctree)/$(src) subdir-ccflags-y += -I$(obj) -I$(src)
# generated sources # generated sources
hostprogs := xe_gen_wa_oob hostprogs := xe_gen_wa_oob
...@@ -43,7 +43,7 @@ quiet_cmd_wa_oob = GEN $(notdir $(generated_oob)) ...@@ -43,7 +43,7 @@ quiet_cmd_wa_oob = GEN $(notdir $(generated_oob))
cmd_wa_oob = mkdir -p $(@D); $^ $(generated_oob) cmd_wa_oob = mkdir -p $(@D); $^ $(generated_oob)
$(obj)/generated/%_wa_oob.c $(obj)/generated/%_wa_oob.h: $(obj)/xe_gen_wa_oob \ $(obj)/generated/%_wa_oob.c $(obj)/generated/%_wa_oob.h: $(obj)/xe_gen_wa_oob \
$(srctree)/$(src)/xe_wa_oob.rules $(src)/xe_wa_oob.rules
$(call cmd,wa_oob) $(call cmd,wa_oob)
uses_generated_oob := \ uses_generated_oob := \
...@@ -166,8 +166,8 @@ endif ...@@ -166,8 +166,8 @@ endif
# i915 Display compat #defines and #includes # i915 Display compat #defines and #includes
subdir-ccflags-$(CONFIG_DRM_XE_DISPLAY) += \ subdir-ccflags-$(CONFIG_DRM_XE_DISPLAY) += \
-I$(srctree)/$(src)/display/ext \ -I$(src)/display/ext \
-I$(srctree)/$(src)/compat-i915-headers \ -I$(src)/compat-i915-headers \
-I$(srctree)/drivers/gpu/drm/i915/display/ \ -I$(srctree)/drivers/gpu/drm/i915/display/ \
-Ddrm_i915_gem_object=xe_bo \ -Ddrm_i915_gem_object=xe_bo \
-Ddrm_i915_private=xe_device -Ddrm_i915_private=xe_device
...@@ -310,7 +310,7 @@ ifneq ($(CONFIG_DRM_XE_DISPLAY),y) ...@@ -310,7 +310,7 @@ ifneq ($(CONFIG_DRM_XE_DISPLAY),y)
endif endif
always-$(CONFIG_DRM_XE_WERROR) += \ always-$(CONFIG_DRM_XE_WERROR) += \
$(patsubst %.h,%.hdrtest, $(shell cd $(srctree)/$(src) && find * -name '*.h' $(hdrtest_find_args))) $(patsubst %.h,%.hdrtest, $(shell cd $(src) && find * -name '*.h' $(hdrtest_find_args)))
quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@) quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
cmd_hdrtest = $(CC) -DHDRTEST $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; touch $@ cmd_hdrtest = $(CC) -DHDRTEST $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; touch $@
......
...@@ -13,4 +13,4 @@ amd_sfh-objs += sfh1_1/amd_sfh_init.o ...@@ -13,4 +13,4 @@ amd_sfh-objs += sfh1_1/amd_sfh_init.o
amd_sfh-objs += sfh1_1/amd_sfh_interface.o amd_sfh-objs += sfh1_1/amd_sfh_interface.o
amd_sfh-objs += sfh1_1/amd_sfh_desc.o amd_sfh-objs += sfh1_1/amd_sfh_desc.o
ccflags-y += -I $(srctree)/$(src)/ ccflags-y += -I $(src)/
...@@ -23,4 +23,4 @@ intel-ishtp-hid-objs += ishtp-hid-client.o ...@@ -23,4 +23,4 @@ intel-ishtp-hid-objs += ishtp-hid-client.o
obj-$(CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER) += intel-ishtp-loader.o obj-$(CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER) += intel-ishtp-loader.o
intel-ishtp-loader-objs += ishtp-fw-loader.o intel-ishtp-loader-objs += ishtp-fw-loader.o
ccflags-y += -I $(srctree)/$(src)/ishtp ccflags-y += -I $(src)/ishtp
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I$(srctree)/$(src) -I$(srctree)/$(src)/indexer ccflags-y := -I$(src) -I$(src)/indexer
obj-$(CONFIG_DM_VDO) += dm-vdo.o obj-$(CONFIG_DM_VDO) += dm-vdo.o
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
obj-$(CONFIG_AQTION) += atlantic.o obj-$(CONFIG_AQTION) += atlantic.o
ccflags-y += -I$(srctree)/$(src) ccflags-y += -I$(src)
atlantic-objs := aq_main.o \ atlantic-objs := aq_main.o \
aq_nic.o \ aq_nic.o \
......
# SPDX-License-Identifier: GPL-2.0-only # SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I $(srctree)/$(src)/../cxgb4 ccflags-y := -I $(src)/../cxgb4
obj-$(CONFIG_CHELSIO_LIB) += libcxgb.o obj-$(CONFIG_CHELSIO_LIB) += libcxgb.o
......
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) # SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
ccflags-y += -I$(srctree)/$(src)/../funcore -I$(srctree)/$(src) ccflags-y += -I$(src)/../funcore -I$(src)
obj-$(CONFIG_FUN_ETH) += funeth.o obj-$(CONFIG_FUN_ETH) += funeth.o
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Makefile for the HISILICON network device drivers. # Makefile for the HISILICON network device drivers.
# #
ccflags-y += -I$(srctree)/$(src) ccflags-y += -I$(src)
ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3pf ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3pf
ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3vf ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3vf
ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3_common ccflags-y += -I$(srctree)/drivers/net/ethernet/hisilicon/hns3/hns3_common
......
...@@ -6,8 +6,8 @@ ...@@ -6,8 +6,8 @@
# #
ccflags-y += \ ccflags-y += \
-I $(srctree)/$(src) \ -I $(src) \
-I $(srctree)/$(src)/../include -I $(src)/../include
obj-$(CONFIG_BRCMFMAC) += brcmfmac.o obj-$(CONFIG_BRCMFMAC) += brcmfmac.o
brcmfmac-objs += \ brcmfmac-objs += \
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
# Copyright (c) 2022 Broadcom Corporation # Copyright (c) 2022 Broadcom Corporation
ccflags-y += \ ccflags-y += \
-I $(srctree)/$(src) \ -I $(src) \
-I $(srctree)/$(src)/.. \ -I $(src)/.. \
-I $(srctree)/$(src)/../../include -I $(src)/../../include
obj-m += brcmfmac-bca.o obj-m += brcmfmac-bca.o
brcmfmac-bca-objs += \ brcmfmac-bca-objs += \
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
# Copyright (c) 2022 Broadcom Corporation # Copyright (c) 2022 Broadcom Corporation
ccflags-y += \ ccflags-y += \
-I $(srctree)/$(src) \ -I $(src) \
-I $(srctree)/$(src)/.. \ -I $(src)/.. \
-I $(srctree)/$(src)/../../include -I $(src)/../../include
obj-m += brcmfmac-cyw.o obj-m += brcmfmac-cyw.o
brcmfmac-cyw-objs += \ brcmfmac-cyw-objs += \
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
# Copyright (c) 2022 Broadcom Corporation # Copyright (c) 2022 Broadcom Corporation
ccflags-y += \ ccflags-y += \
-I $(srctree)/$(src) \ -I $(src) \
-I $(srctree)/$(src)/.. \ -I $(src)/.. \
-I $(srctree)/$(src)/../../include -I $(src)/../../include
obj-m += brcmfmac-wcc.o obj-m += brcmfmac-wcc.o
brcmfmac-wcc-objs += \ brcmfmac-wcc-objs += \
......
...@@ -16,9 +16,9 @@ ...@@ -16,9 +16,9 @@
# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
ccflags-y := \ ccflags-y := \
-I $(srctree)/$(src) \ -I $(src) \
-I $(srctree)/$(src)/phy \ -I $(src)/phy \
-I $(srctree)/$(src)/../include -I $(src)/../include
brcmsmac-y := \ brcmsmac-y := \
mac80211_if.o \ mac80211_if.o \
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# #
# Copyright (c) 2011 Broadcom Corporation # Copyright (c) 2011 Broadcom Corporation
# #
ccflags-y := -I $(srctree)/$(src)/../include ccflags-y := -I $(src)/../include
obj-$(CONFIG_BRCMUTIL) += brcmutil.o obj-$(CONFIG_BRCMUTIL) += brcmutil.o
brcmutil-objs = utils.o d11.o brcmutil-objs = utils.o d11.o
...@@ -11,4 +11,4 @@ iwldvm-objs += rxon.o devices.o ...@@ -11,4 +11,4 @@ iwldvm-objs += rxon.o devices.o
iwldvm-$(CONFIG_IWLWIFI_LEDS) += led.o iwldvm-$(CONFIG_IWLWIFI_LEDS) += led.o
iwldvm-$(CONFIG_IWLWIFI_DEBUGFS) += debugfs.o iwldvm-$(CONFIG_IWLWIFI_DEBUGFS) += debugfs.o
ccflags-y += -I $(srctree)/$(src)/../ ccflags-y += -I $(src)/../
...@@ -5,4 +5,4 @@ iwlmei-y += net.o ...@@ -5,4 +5,4 @@ iwlmei-y += net.o
iwlmei-$(CONFIG_IWLWIFI_DEVICE_TRACING) += trace.o iwlmei-$(CONFIG_IWLWIFI_DEVICE_TRACING) += trace.o
CFLAGS_trace.o := -I$(src) CFLAGS_trace.o := -I$(src)
ccflags-y += -I $(srctree)/$(src)/../ ccflags-y += -I $(src)/../
...@@ -15,4 +15,4 @@ iwlmvm-$(CONFIG_IWLWIFI_LEDS) += led.o ...@@ -15,4 +15,4 @@ iwlmvm-$(CONFIG_IWLWIFI_LEDS) += led.o
iwlmvm-$(CONFIG_PM) += d3.o iwlmvm-$(CONFIG_PM) += d3.o
iwlmvm-$(CONFIG_IWLMEI) += vendor-cmd.o iwlmvm-$(CONFIG_IWLMEI) += vendor-cmd.o
ccflags-y += -I $(srctree)/$(src)/../ ccflags-y += -I $(src)/../
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
iwlwifi-tests-y += module.o devinfo.o iwlwifi-tests-y += module.o devinfo.o
ccflags-y += -I$(srctree)/$(src)/../ ccflags-y += -I$(src)/../
obj-$(CONFIG_IWLWIFI_KUNIT_TESTS) += iwlwifi-tests.o obj-$(CONFIG_IWLWIFI_KUNIT_TESTS) += iwlwifi-tests.o
...@@ -3,4 +3,4 @@ rtl818x_pci-objs := dev.o rtl8225.o sa2400.o max2820.o grf5101.o rtl8225se.o ...@@ -3,4 +3,4 @@ rtl818x_pci-objs := dev.o rtl8225.o sa2400.o max2820.o grf5101.o rtl8225se.o
obj-$(CONFIG_RTL8180) += rtl818x_pci.o obj-$(CONFIG_RTL8180) += rtl818x_pci.o
ccflags-y += -I $(srctree)/$(src)/.. ccflags-y += -I $(src)/..
...@@ -3,4 +3,4 @@ rtl8187-objs := dev.o rtl8225.o leds.o rfkill.o ...@@ -3,4 +3,4 @@ rtl8187-objs := dev.o rtl8225.o leds.o rfkill.o
obj-$(CONFIG_RTL8187) += rtl8187.o obj-$(CONFIG_RTL8187) += rtl8187.o
ccflags-y += -I $(srctree)/$(src)/.. ccflags-y += -I $(src)/..
...@@ -55,9 +55,9 @@ aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \ ...@@ -55,9 +55,9 @@ aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \
ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y) ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y)
$(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm $(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm
$(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic7xxx_reg.h \ $(obj)/aicasm/aicasm -I $(src) -r $(obj)/aic7xxx_reg.h \
$(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \ $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \
$(srctree)/$(src)/aic7xxx.seq $(src)/aic7xxx.seq
$(aic7xxx-gen-y): $(objtree)/$(obj)/aic7xxx_seq.h $(aic7xxx-gen-y): $(objtree)/$(obj)/aic7xxx_seq.h
@true @true
...@@ -73,9 +73,9 @@ aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \ ...@@ -73,9 +73,9 @@ aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \
ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y) ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y)
$(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm $(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm
$(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic79xx_reg.h \ $(obj)/aicasm/aicasm -I $(src) -r $(obj)/aic79xx_reg.h \
$(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \ $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \
$(srctree)/$(src)/aic79xx.seq $(src)/aic79xx.seq
$(aic79xx-gen-y): $(objtree)/$(obj)/aic79xx_seq.h $(aic79xx-gen-y): $(objtree)/$(obj)/aic79xx_seq.h
@true @true
...@@ -83,5 +83,5 @@ else ...@@ -83,5 +83,5 @@ else
$(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped $(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped
endif endif
$(obj)/aicasm/aicasm: $(srctree)/$(src)/aicasm/*.[chyl] $(obj)/aicasm/aicasm: $(src)/aicasm/*.[chyl]
$(MAKE) -C $(srctree)/$(src)/aicasm OUTDIR=$(shell pwd)/$(obj)/aicasm/ $(MAKE) -C $(src)/aicasm OUTDIR=$(shell pwd)/$(obj)/aicasm/
...@@ -62,4 +62,4 @@ r8723bs-y = \ ...@@ -62,4 +62,4 @@ r8723bs-y = \
obj-$(CONFIG_RTL8723BS) := r8723bs.o obj-$(CONFIG_RTL8723BS) := r8723bs.o
ccflags-y += -I$(srctree)/$(src)/include -I$(srctree)/$(src)/hal ccflags-y += -I$(src)/include -I$(src)/hal
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# All Rights Reserved. # All Rights Reserved.
# #
ccflags-y += -I $(srctree)/$(src) # needed for trace events ccflags-y += -I $(src) # needed for trace events
obj-$(CONFIG_FS_IOMAP) += iomap.o obj-$(CONFIG_FS_IOMAP) += iomap.o
......
...@@ -18,13 +18,13 @@ ifdef REGENERATE_UTF8DATA ...@@ -18,13 +18,13 @@ ifdef REGENERATE_UTF8DATA
quiet_cmd_utf8data = GEN $@ quiet_cmd_utf8data = GEN $@
cmd_utf8data = $< \ cmd_utf8data = $< \
-a $(srctree)/$(src)/DerivedAge.txt \ -a $(src)/DerivedAge.txt \
-c $(srctree)/$(src)/DerivedCombiningClass.txt \ -c $(src)/DerivedCombiningClass.txt \
-p $(srctree)/$(src)/DerivedCoreProperties.txt \ -p $(src)/DerivedCoreProperties.txt \
-d $(srctree)/$(src)/UnicodeData.txt \ -d $(src)/UnicodeData.txt \
-f $(srctree)/$(src)/CaseFolding.txt \ -f $(src)/CaseFolding.txt \
-n $(srctree)/$(src)/NormalizationCorrections.txt \ -n $(src)/NormalizationCorrections.txt \
-t $(srctree)/$(src)/NormalizationTest.txt \ -t $(src)/NormalizationTest.txt \
-o $@ -o $@
$(obj)/utf8data.c: $(obj)/mkutf8data $(filter %.txt, $(cmd_utf8data)) FORCE $(obj)/utf8data.c: $(obj)/mkutf8data $(filter %.txt, $(cmd_utf8data)) FORCE
......
...@@ -4,8 +4,8 @@ ...@@ -4,8 +4,8 @@
# All Rights Reserved. # All Rights Reserved.
# #
ccflags-y += -I $(srctree)/$(src) # needed for trace events ccflags-y += -I $(src) # needed for trace events
ccflags-y += -I $(srctree)/$(src)/libxfs ccflags-y += -I $(src)/libxfs
obj-$(CONFIG_XFS_FS) += xfs.o obj-$(CONFIG_XFS_FS) += xfs.o
......
...@@ -52,7 +52,7 @@ CFLAGS_version.o := -include $(obj)/utsversion-tmp.h ...@@ -52,7 +52,7 @@ CFLAGS_version.o := -include $(obj)/utsversion-tmp.h
# Build version-timestamp.c with final UTS_VERSION # Build version-timestamp.c with final UTS_VERSION
# #
include/generated/utsversion.h: build-version-auto = $(shell $(srctree)/$(src)/build-version) include/generated/utsversion.h: build-version-auto = $(shell $(src)/build-version)
include/generated/utsversion.h: build-timestamp-auto = $(shell LC_ALL=C date) include/generated/utsversion.h: build-timestamp-auto = $(shell LC_ALL=C date)
include/generated/utsversion.h: FORCE include/generated/utsversion.h: FORCE
$(call filechk,uts_version) $(call filechk,uts_version)
......
...@@ -352,7 +352,7 @@ $(obj)/oid_registry_data.c: $(srctree)/include/linux/oid_registry.h \ ...@@ -352,7 +352,7 @@ $(obj)/oid_registry_data.c: $(srctree)/include/linux/oid_registry.h \
$(call cmd,build_OID_registry) $(call cmd,build_OID_registry)
quiet_cmd_build_OID_registry = GEN $@ quiet_cmd_build_OID_registry = GEN $@
cmd_build_OID_registry = perl $(srctree)/$(src)/build_OID_registry $< $@ cmd_build_OID_registry = perl $(src)/build_OID_registry $< $@
clean-files += oid_registry_data.c clean-files += oid_registry_data.c
...@@ -412,8 +412,8 @@ obj-$(CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED) += devmem_is_allowed.o ...@@ -412,8 +412,8 @@ obj-$(CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED) += devmem_is_allowed.o
obj-$(CONFIG_FIRMWARE_TABLE) += fw_table.o obj-$(CONFIG_FIRMWARE_TABLE) += fw_table.o
# FORTIFY_SOURCE compile-time behavior tests # FORTIFY_SOURCE compile-time behavior tests
TEST_FORTIFY_SRCS = $(wildcard $(srctree)/$(src)/test_fortify/*-*.c) TEST_FORTIFY_SRCS = $(wildcard $(src)/test_fortify/*-*.c)
TEST_FORTIFY_LOGS = $(patsubst $(srctree)/$(src)/%.c, %.log, $(TEST_FORTIFY_SRCS)) TEST_FORTIFY_LOGS = $(patsubst $(src)/%.c, %.log, $(TEST_FORTIFY_SRCS))
TEST_FORTIFY_LOG = test_fortify.log TEST_FORTIFY_LOG = test_fortify.log
quiet_cmd_test_fortify = TEST $@ quiet_cmd_test_fortify = TEST $@
......
...@@ -53,7 +53,7 @@ endif ...@@ -53,7 +53,7 @@ endif
endif endif
quiet_cmd_unroll = UNROLL $@ quiet_cmd_unroll = UNROLL $@
cmd_unroll = $(AWK) -v N=$* -f $(srctree)/$(src)/unroll.awk < $< > $@ cmd_unroll = $(AWK) -v N=$* -f $(src)/unroll.awk < $< > $@
targets += int1.c int2.c int4.c int8.c targets += int1.c int2.c int4.c int8.c
$(obj)/int%.c: $(src)/int.uc $(src)/unroll.awk FORCE $(obj)/int%.c: $(src)/int.uc $(src)/unroll.awk FORCE
......
...@@ -25,7 +25,7 @@ ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),) ...@@ -25,7 +25,7 @@ ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),)
cfg80211-y += extra-certs.o cfg80211-y += extra-certs.o
endif endif
$(obj)/shipped-certs.c: $(sort $(wildcard $(srctree)/$(src)/certs/*.hex)) $(obj)/shipped-certs.c: $(sort $(wildcard $(src)/certs/*.hex))
@$(kecho) " GEN $@" @$(kecho) " GEN $@"
$(Q)(echo '#include "reg.h"'; \ $(Q)(echo '#include "reg.h"'; \
echo 'const u8 shipped_regdb_certs[] = {'; \ echo 'const u8 shipped_regdb_certs[] = {'; \
......
...@@ -239,7 +239,7 @@ quiet_cmd_rustsysroot = RUSTSYSROOT ...@@ -239,7 +239,7 @@ quiet_cmd_rustsysroot = RUSTSYSROOT
rm -rf $(objtree)/$(obj)/test; \ rm -rf $(objtree)/$(obj)/test; \
mkdir -p $(objtree)/$(obj)/test; \ mkdir -p $(objtree)/$(obj)/test; \
cp -a $(rustc_sysroot) $(objtree)/$(obj)/test/sysroot; \ cp -a $(rustc_sysroot) $(objtree)/$(obj)/test/sysroot; \
cp -r $(srctree)/$(src)/alloc/* \ cp -r $(src)/alloc/* \
$(objtree)/$(obj)/test/sysroot/lib/rustlib/src/rust/library/alloc/src; \ $(objtree)/$(obj)/test/sysroot/lib/rustlib/src/rust/library/alloc/src; \
echo '\#!/bin/sh' > $(objtree)/$(obj)/test/rustc_sysroot; \ echo '\#!/bin/sh' > $(objtree)/$(obj)/test/rustc_sysroot; \
echo "$(RUSTC) --sysroot=$(abspath $(objtree)/$(obj)/test/sysroot) \"\$$@\"" \ echo "$(RUSTC) --sysroot=$(abspath $(objtree)/$(obj)/test/sysroot) \"\$$@\"" \
...@@ -340,7 +340,7 @@ quiet_cmd_bindgen = BINDGEN $@ ...@@ -340,7 +340,7 @@ quiet_cmd_bindgen = BINDGEN $@
$(bindgen_target_cflags) $(bindgen_target_extra) $(bindgen_target_cflags) $(bindgen_target_extra)
$(obj)/bindings/bindings_generated.rs: private bindgen_target_flags = \ $(obj)/bindings/bindings_generated.rs: private bindgen_target_flags = \
$(shell grep -Ev '^#|^$$' $(srctree)/$(src)/bindgen_parameters) $(shell grep -Ev '^#|^$$' $(src)/bindgen_parameters)
$(obj)/bindings/bindings_generated.rs: private bindgen_target_extra = ; \ $(obj)/bindings/bindings_generated.rs: private bindgen_target_extra = ; \
sed -Ei 's/pub const RUST_CONST_HELPER_([a-zA-Z0-9_]*)/pub const \1/g' $@ sed -Ei 's/pub const RUST_CONST_HELPER_([a-zA-Z0-9_]*)/pub const \1/g' $@
$(obj)/bindings/bindings_generated.rs: $(src)/bindings/bindings_helper.h \ $(obj)/bindings/bindings_generated.rs: $(src)/bindings/bindings_helper.h \
...@@ -348,7 +348,7 @@ $(obj)/bindings/bindings_generated.rs: $(src)/bindings/bindings_helper.h \ ...@@ -348,7 +348,7 @@ $(obj)/bindings/bindings_generated.rs: $(src)/bindings/bindings_helper.h \
$(call if_changed_dep,bindgen) $(call if_changed_dep,bindgen)
$(obj)/uapi/uapi_generated.rs: private bindgen_target_flags = \ $(obj)/uapi/uapi_generated.rs: private bindgen_target_flags = \
$(shell grep -Ev '^#|^$$' $(srctree)/$(src)/bindgen_parameters) $(shell grep -Ev '^#|^$$' $(src)/bindgen_parameters)
$(obj)/uapi/uapi_generated.rs: $(src)/uapi/uapi_helper.h \ $(obj)/uapi/uapi_generated.rs: $(src)/uapi/uapi_helper.h \
$(src)/bindgen_parameters FORCE $(src)/bindgen_parameters FORCE
$(call if_changed_dep,bindgen) $(call if_changed_dep,bindgen)
......
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
BPF_SAMPLES_PATH ?= $(abspath $(srctree)/$(src)) BPF_SAMPLES_PATH ?= $(abspath $(src))
TOOLS_PATH := $(BPF_SAMPLES_PATH)/../../tools TOOLS_PATH := $(BPF_SAMPLES_PATH)/../../tools
pound := \# pound := \#
......
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
HID_SAMPLES_PATH ?= $(abspath $(srctree)/$(src)) HID_SAMPLES_PATH ?= $(abspath $(src))
TOOLS_PATH := $(HID_SAMPLES_PATH)/../../tools TOOLS_PATH := $(HID_SAMPLES_PATH)/../../tools
pound := \# pound := \#
......
...@@ -62,8 +62,7 @@ stringify = $(squote)$(quote)$1$(quote)$(squote) ...@@ -62,8 +62,7 @@ stringify = $(squote)$(quote)$1$(quote)$(squote)
### ###
# The path to Kbuild or Makefile. Kbuild has precedence over Makefile. # The path to Kbuild or Makefile. Kbuild has precedence over Makefile.
kbuild-dir = $(if $(filter /%,$(src)),$(src),$(srctree)/$(src)) kbuild-file = $(or $(wildcard $(src)/Kbuild),$(src)/Makefile)
kbuild-file = $(or $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Makefile)
### ###
# Read a file, replacing newlines with spaces # Read a file, replacing newlines with spaces
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
PHONY := all PHONY := all
all: all:
src := $(subst /generated,,$(obj)) src := $(srctree)/$(subst /generated,,$(obj))
include $(srctree)/scripts/Kbuild.include include $(srctree)/scripts/Kbuild.include
-include $(kbuild-file) -include $(kbuild-file)
...@@ -20,14 +20,14 @@ include $(srctree)/$(generic)/Kbuild ...@@ -20,14 +20,14 @@ include $(srctree)/$(generic)/Kbuild
endif endif
redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y)) redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f))) redundant += $(foreach f, $(generic-y), $(if $(wildcard $(src)/$(f)),$(f)))
redundant := $(sort $(redundant)) redundant := $(sort $(redundant))
$(if $(redundant),\ $(if $(redundant),\
$(warning redundant generic-y found in $(src)/Kbuild: $(redundant))) $(warning redundant generic-y found in $(src)/Kbuild: $(redundant)))
# If arch does not implement mandatory headers, fallback to asm-generic ones. # If arch does not implement mandatory headers, fallback to asm-generic ones.
mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) mandatory-y := $(filter-out $(generated-y), $(mandatory-y))
generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f))) generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(src)/$(f)),,$(f)))
generic-y := $(addprefix $(obj)/, $(generic-y)) generic-y := $(addprefix $(obj)/, $(generic-y))
generated-y := $(addprefix $(obj)/, $(generated-y)) generated-y := $(addprefix $(obj)/, $(generated-y))
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Building # Building
# ========================================================================== # ==========================================================================
src := $(obj) src := $(if $(VPATH),$(VPATH)/)$(obj)
PHONY := $(obj)/ PHONY := $(obj)/
$(obj)/: $(obj)/:
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
# Cleaning up # Cleaning up
# ========================================================================== # ==========================================================================
src := $(obj) src := $(if $(VPATH),$(VPATH)/)$(obj)
PHONY := __clean PHONY := __clean
__clean: __clean:
......
...@@ -209,13 +209,13 @@ _c_flags += $(if $(patsubst n%,, \ ...@@ -209,13 +209,13 @@ _c_flags += $(if $(patsubst n%,, \
-D__KCSAN_INSTRUMENT_BARRIERS__) -D__KCSAN_INSTRUMENT_BARRIERS__)
endif endif
# $(srctree)/$(src) for including checkin headers from generated source files # $(src) for including checkin headers from generated source files
# $(objtree)/$(obj) for including generated headers from checkin source files # $(obj) for including generated headers from checkin source files
ifeq ($(KBUILD_EXTMOD),) ifeq ($(KBUILD_EXTMOD),)
ifdef building_out_of_srctree ifdef building_out_of_srctree
_c_flags += $(addprefix -I $(srctree)/,$(src)) $(addprefix -I $(objtree)/,$(obj)) _c_flags += $(addprefix -I, $(src) $(obj))
_a_flags += $(addprefix -I $(srctree)/,$(src)) $(addprefix -I $(objtree)/,$(obj)) _a_flags += $(addprefix -I, $(src) $(obj))
_cpp_flags += $(addprefix -I $(srctree)/,$(src)) $(addprefix -I $(objtree)/,$(obj)) _cpp_flags += $(addprefix -I, $(src) $(obj))
endif endif
endif endif
......
...@@ -112,7 +112,7 @@ else ...@@ -112,7 +112,7 @@ else
# set src + obj - they may be used in the modules's Makefile # set src + obj - they may be used in the modules's Makefile
obj := $(KBUILD_EXTMOD) obj := $(KBUILD_EXTMOD)
src := $(obj) src := $(if $(VPATH),$(VPATH)/)$(obj)
# Include the module's Makefile to find KBUILD_EXTRA_SYMBOLS # Include the module's Makefile to find KBUILD_EXTRA_SYMBOLS
include $(kbuild-file) include $(kbuild-file)
......
...@@ -16,12 +16,12 @@ libfdt = $(addprefix libfdt/,$(libfdt-objs)) ...@@ -16,12 +16,12 @@ libfdt = $(addprefix libfdt/,$(libfdt-objs))
fdtoverlay-objs := $(libfdt) fdtoverlay.o util.o fdtoverlay-objs := $(libfdt) fdtoverlay.o util.o
# Source files need to get at the userspace version of libfdt_env.h to compile # Source files need to get at the userspace version of libfdt_env.h to compile
HOST_EXTRACFLAGS += -I $(srctree)/$(src)/libfdt HOST_EXTRACFLAGS += -I $(src)/libfdt
HOST_EXTRACFLAGS += -DNO_YAML HOST_EXTRACFLAGS += -DNO_YAML
# Generated files need one more search path to include headers in source tree # Generated files need one more search path to include headers in source tree
HOSTCFLAGS_dtc-lexer.lex.o := -I $(srctree)/$(src) HOSTCFLAGS_dtc-lexer.lex.o := -I $(src)
HOSTCFLAGS_dtc-parser.tab.o := -I $(srctree)/$(src) HOSTCFLAGS_dtc-parser.tab.o := -I $(src)
# dependencies on generated files need to be listed explicitly # dependencies on generated files need to be listed explicitly
$(obj)/dtc-lexer.lex.o: $(obj)/dtc-parser.tab.h $(obj)/dtc-lexer.lex.o: $(obj)/dtc-parser.tab.h
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
ifdef building_out_of_srctree ifdef building_out_of_srctree
symlinks := $(patsubst $(srctree)/$(src)/%,%,$(wildcard $(srctree)/$(src)/*.py)) symlinks := $(patsubst $(src)/%,%,$(wildcard $(src)/*.py))
quiet_cmd_symlink = SYMLINK $@ quiet_cmd_symlink = SYMLINK $@
cmd_symlink = ln -fsn $(patsubst $(obj)/%,$(abspath $(srctree))/$(src)/%,$@) $@ cmd_symlink = ln -fsn $(patsubst $(obj)/%,$(abspath $(srctree))/$(src)/%,$@) $@
......
...@@ -23,8 +23,8 @@ $(obj)/pars%.tab.c $(obj)/pars%.tab.h: $(src)/pars%.y FORCE ...@@ -23,8 +23,8 @@ $(obj)/pars%.tab.c $(obj)/pars%.tab.h: $(src)/pars%.y FORCE
endif endif
# -I needed for generated C source to include headers in source tree # -I needed for generated C source to include headers in source tree
HOSTCFLAGS_parse.tab.o := -I $(srctree)/$(src) HOSTCFLAGS_parse.tab.o := -I $(src)
HOSTCFLAGS_lex.lex.o := -I $(srctree)/$(src) HOSTCFLAGS_lex.lex.o := -I $(src)
# dependencies on generated files need to be listed explicitly # dependencies on generated files need to be listed explicitly
$(obj)/lex.lex.o: $(obj)/parse.tab.h $(obj)/lex.lex.o: $(obj)/parse.tab.h
...@@ -57,7 +57,7 @@ $(foreach c, config menuconfig nconfig gconfig xconfig, $(eval $(call config_rul ...@@ -57,7 +57,7 @@ $(foreach c, config menuconfig nconfig gconfig xconfig, $(eval $(call config_rul
PHONY += localmodconfig localyesconfig PHONY += localmodconfig localyesconfig
localyesconfig localmodconfig: $(obj)/conf localyesconfig localmodconfig: $(obj)/conf
$(Q)$(PERL) $(srctree)/$(src)/streamline_config.pl --$@ $(srctree) $(Kconfig) > .tmp.config $(Q)$(PERL) $(src)/streamline_config.pl --$@ $(srctree) $(Kconfig) > .tmp.config
$(Q)if [ -f .config ]; then \ $(Q)if [ -f .config ]; then \
cmp -s .tmp.config .config || \ cmp -s .tmp.config .config || \
(mv -f .config .config.old.1; \ (mv -f .config .config.old.1; \
...@@ -118,7 +118,7 @@ tinyconfig: ...@@ -118,7 +118,7 @@ tinyconfig:
# CHECK: -o cache_dir=<path> working? # CHECK: -o cache_dir=<path> working?
PHONY += testconfig PHONY += testconfig
testconfig: $(obj)/conf testconfig: $(obj)/conf
$(Q)$(PYTHON3) -B -m pytest $(srctree)/$(src)/tests \ $(Q)$(PYTHON3) -B -m pytest $(src)/tests \
-o cache_dir=$(abspath $(obj)/tests/.cache) \ -o cache_dir=$(abspath $(obj)/tests/.cache) \
$(if $(findstring 1,$(KBUILD_VERBOSE)),--capture=no) $(if $(findstring 1,$(KBUILD_VERBOSE)),--capture=no)
clean-files += tests/.cache clean-files += tests/.cache
...@@ -165,8 +165,8 @@ common-objs := confdata.o expr.o lexer.lex.o menu.o parser.tab.o \ ...@@ -165,8 +165,8 @@ common-objs := confdata.o expr.o lexer.lex.o menu.o parser.tab.o \
preprocess.o symbol.o util.o preprocess.o symbol.o util.o
$(obj)/lexer.lex.o: $(obj)/parser.tab.h $(obj)/lexer.lex.o: $(obj)/parser.tab.h
HOSTCFLAGS_lexer.lex.o := -I $(srctree)/$(src) HOSTCFLAGS_lexer.lex.o := -I $(src)
HOSTCFLAGS_parser.tab.o := -I $(srctree)/$(src) HOSTCFLAGS_parser.tab.o := -I $(src)
# conf: Used for defconfig, oldconfig and related targets # conf: Used for defconfig, oldconfig and related targets
hostprogs += conf hostprogs += conf
......
...@@ -11,7 +11,7 @@ quiet_cmd_policy = POLICY $@ ...@@ -11,7 +11,7 @@ quiet_cmd_policy = POLICY $@
printf '\t"";\n';) \ printf '\t"";\n';) \
} > $@ } > $@
$(obj)/builtin-policy.h: $(wildcard $(obj)/policy/*.conf $(srctree)/$(src)/policy/*.conf.default) FORCE $(obj)/builtin-policy.h: $(wildcard $(obj)/policy/*.conf $(src)/policy/*.conf.default) FORCE
$(call if_changed,policy) $(call if_changed,policy)
ifndef CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING ifndef CONFIG_SECURITY_TOMOYO_INSECURE_BUILTIN_SETTING
......
...@@ -22,7 +22,7 @@ cpio-data := ...@@ -22,7 +22,7 @@ cpio-data :=
# If CONFIG_INITRAMFS_SOURCE is empty, generate a small initramfs with the # If CONFIG_INITRAMFS_SOURCE is empty, generate a small initramfs with the
# default contents. # default contents.
ifeq ($(ramfs-input),) ifeq ($(ramfs-input),)
ramfs-input := $(srctree)/$(src)/default_cpio_list ramfs-input := $(src)/default_cpio_list
endif endif
ifeq ($(words $(ramfs-input)),1) ifeq ($(words $(ramfs-input)),1)
......
...@@ -78,7 +78,7 @@ quiet_cmd_hdrtest = HDRTEST $< ...@@ -78,7 +78,7 @@ quiet_cmd_hdrtest = HDRTEST $<
cmd_hdrtest = \ cmd_hdrtest = \
$(CC) $(c_flags) -fsyntax-only -x c /dev/null \ $(CC) $(c_flags) -fsyntax-only -x c /dev/null \
$(if $(filter-out $(no-header-test), $*.h), -include $< -include $<); \ $(if $(filter-out $(no-header-test), $*.h), -include $< -include $<); \
$(PERL) $(srctree)/$(src)/headers_check.pl $(obj) $(SRCARCH) $<; \ $(PERL) $(src)/headers_check.pl $(obj) $(SRCARCH) $<; \
touch $@ touch $@
$(obj)/%.hdrtest: $(obj)/%.h FORCE $(obj)/%.hdrtest: $(obj)/%.h FORCE
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment