@@ -502,7 +502,7 @@ CLIPPY_DRIVER = clippy-driver
BINDGEN = bindgen
CARGO = cargo
PAHOLE = pahole
-RESOLVE_BTFIDS = $(objtree)/tools/bpf/resolve_btfids/resolve_btfids
+RESOLVE_BTFIDS = $(objtree)tools/bpf/resolve_btfids/resolve_btfids
LEX = flex
YACC = bison
AWK = awk
@@ -534,9 +534,9 @@ LDFLAGS_vmlinux =
# Use USERINCLUDE when you must reference the UAPI directories only.
USERINCLUDE := \
-I$(srctree)arch/$(SRCARCH)/include/uapi \
- -I$(objtree)/arch/$(SRCARCH)/include/generated/uapi \
+ -I$(objtree)arch/$(SRCARCH)/include/generated/uapi \
-I$(srctree)include/uapi \
- -I$(objtree)/include/generated/uapi \
+ -I$(objtree)include/generated/uapi \
-include $(srctree)include/linux/compiler-version.h \
-include $(srctree)include/linux/kconfig.h
@@ -544,9 +544,9 @@ USERINCLUDE := \
# Needed to be compatible with the O= option
LINUXINCLUDE := \
-I$(srctree)arch/$(SRCARCH)/include \
- -I$(objtree)/arch/$(SRCARCH)/include/generated \
+ -I$(objtree)arch/$(SRCARCH)/include/generated \
$(if $(building_out_of_srctree),-I$(srctree)include) \
- -I$(objtree)/include \
+ -I$(objtree)include \
$(USERINCLUDE)
KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE
@@ -561,7 +561,7 @@ KBUILD_CFLAGS += -fno-strict-aliasing
KBUILD_CPPFLAGS := -D__KERNEL__
KBUILD_RUSTFLAGS := $(rust_common_flags) \
- --target=$(objtree)/scripts/target.json \
+ --target=$(objtree)scripts/target.json \
-Cpanic=abort -Cembed-bitcode=n -Clto=n \
-Cforce-unwind-tables=n -Ccodegen-units=1 \
-Csymbol-mangling-version=v0 \
@@ -1273,7 +1273,7 @@ headerdep:
# Kernel headers
#Default location for installed headers
-export INSTALL_HDR_PATH = $(objtree)/usr
+export INSTALL_HDR_PATH = $(objtree)usr
quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include
cmd_headers_install = \
@@ -1352,11 +1352,11 @@ tools_silent=s
endif
tools/: FORCE
- $(Q)mkdir -p $(objtree)/tools
+ $(Q)mkdir -p $(objtree)tools
$(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abs_objtree) subdir=tools -C $(srctree)tools/
tools/%: FORCE
- $(Q)mkdir -p $(objtree)/tools
+ $(Q)mkdir -p $(objtree)tools
$(Q)$(MAKE) LDFLAGS= MAKEFLAGS="$(tools_silent) $(filter --j% -j,$(MAKEFLAGS))" O=$(abs_objtree) subdir=tools -C $(srctree)tools/ $*
# ---------------------------------------------------------------------------
@@ -1371,9 +1371,9 @@ kselftest-%: headers FORCE
PHONY += kselftest-merge
kselftest-merge:
- $(if $(wildcard $(objtree)/.config),, $(error No .config exists, config your kernel first!))
+ $(if $(wildcard $(objtree).config),, $(error No .config exists, config your kernel first!))
$(Q)find $(srctree)tools/testing/selftests -name config -o -name config.$(UTS_MACHINE) | \
- xargs $(srctree)scripts/kconfig/merge_config.sh -y -m $(objtree)/.config
+ xargs $(srctree)scripts/kconfig/merge_config.sh -y -m $(objtree).config
$(Q)$(MAKE) -f $(srctree)Makefile olddefconfig
# ---------------------------------------------------------------------------
@@ -14,8 +14,8 @@ targets := vmlinux.gz vmlinux \
tools/bootpzh bootloader bootpheader bootpzheader
OBJSTRIP := $(obj)/tools/objstrip
-KBUILD_HOSTCFLAGS := -Wall -I$(objtree)/usr/include
-BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)$(obj)
+KBUILD_HOSTCFLAGS := -Wall -I$(objtree)usr/include
+BOOTCFLAGS += -I$(objtree)$(obj) -I$(srctree)$(obj)
# SRM bootable image. Copy to offset 512 of a partition.
$(obj)/bootimage: $(addprefix $(obj)/tools/,mkbb lxboot bootlx) $(obj)/vmlinux.nh
@@ -149,7 +149,7 @@ if [ $(words $(ZRELADDR)) -gt 1 -a "$(CONFIG_AUTO_ZRELADDR)" = "" ]; then \
false; \
fi
-efi-obj-$(CONFIG_EFI_STUB) := $(objtree)/drivers/firmware/efi/libstub/lib.a
+efi-obj-$(CONFIG_EFI_STUB) := $(objtree)drivers/firmware/efi/libstub/lib.a
$(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/$(HEAD) $(obj)/piggy.o \
$(addprefix $(obj)/, $(OBJS)) \
@@ -62,4 +62,4 @@ quiet_cmd_vdsold_and_vdso_check = LD $@
cmd_vdsold_and_vdso_check = $(cmd_ld); $(cmd_vdso_check)
quiet_cmd_vdsomunge = MUNGE $@
- cmd_vdsomunge = $(objtree)/$(obj)/vdsomunge $< $@
+ cmd_vdsomunge = $(objtree)$(obj)/vdsomunge $< $@
@@ -145,7 +145,7 @@ KBUILD_CPPFLAGS += -DKASAN_SHADOW_SCALE_SHIFT=$(KASAN_SHADOW_SCALE_SHIFT)
KBUILD_AFLAGS += -DKASAN_SHADOW_SCALE_SHIFT=$(KASAN_SHADOW_SCALE_SHIFT)
libs-y := arch/arm64/lib/ $(libs-y)
-libs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
+libs-$(CONFIG_EFI_STUB) += $(objtree)drivers/firmware/efi/libstub/lib.a
# Default target when executing plain make
boot := arch/arm64/boot
@@ -90,7 +90,7 @@ obj-y += head.o
extra-y += vmlinux.lds
ifeq ($(CONFIG_DEBUG_EFI),y)
-AFLAGS_head.o += -DVMLINUX_PATH="\"$(realpath $(objtree)/vmlinux)\""
+AFLAGS_head.o += -DVMLINUX_PATH="\"$(realpath $(objtree)vmlinux)\""
endif
# for cleaning
@@ -15,7 +15,7 @@ ccflags-y += -fno-stack-protector \
$(DISABLE_STACKLEAK_PLUGIN)
hostprogs := gen-hyprel
-HOST_EXTRACFLAGS += -I$(objtree)/include
+HOST_EXTRACFLAGS += -I$(objtree)include
lib-objs := clear_page.o copy_page.o memcpy.o memset.o
lib-objs := $(addprefix ../../../lib/, $(lib-objs))
@@ -130,7 +130,7 @@ CHECKFLAGS += $(shell $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) -dM -E -x c /dev
endif
libs-y += arch/loongarch/lib/
-libs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
+libs-$(CONFIG_EFI_STUB) += $(objtree)drivers/firmware/efi/libstub/lib.a
drivers-y += arch/loongarch/crypto/
@@ -286,7 +286,7 @@ ifdef CONFIG_PHYSICAL_START
load-y = $(CONFIG_PHYSICAL_START)
endif
-entry-y = $(shell $(objtree)/arch/mips/tools/elf-entry vmlinux)
+entry-y = $(shell $(objtree)arch/mips/tools/elf-entry vmlinux)
cflags-y += -I$(srctree)arch/mips/include/asm/mach-generic
drivers-$(CONFIG_PCI) += arch/mips/pci/
@@ -530,13 +530,13 @@ endef
.PHONY: $(generic_defconfigs)
$(generic_defconfigs):
$(Q)$(CONFIG_SHELL) $(srctree)scripts/kconfig/merge_config.sh \
- -m -O $(objtree) $(srctree)arch/$(ARCH)/configs/generic_defconfig $^ | \
+ -m -O $(objtree:%/=%) $(srctree)arch/$(ARCH)/configs/generic_defconfig $^ | \
grep -Ev '^#'
- $(Q)cp $(KCONFIG_CONFIG) $(objtree)/.config.$@
+ $(Q)cp $(KCONFIG_CONFIG) $(objtree).config.$@
$(Q)$(MAKE) -f $(srctree)Makefile olddefconfig \
- KCONFIG_CONFIG=$(objtree)/.config.$@ >/dev/null
+ KCONFIG_CONFIG=$(objtree).config.$@ >/dev/null
$(Q)$(CONFIG_SHELL) $(srctree)arch/$(ARCH)/tools/generic-board-config.sh \
- $(srctree:%/=%) $(objtree) $(objtree)/.config.$@ $(KCONFIG_CONFIG) \
+ $(srctree:%/=%) $(objtree:%/=%) $(objtree).config.$@ $(KCONFIG_CONFIG) \
"$(origin BOARDS)" $(BOARDS)
$(Q)$(MAKE) -f $(srctree)Makefile olddefconfig
@@ -159,10 +159,10 @@ targets += vmlinux.lzo.itb
quiet_cmd_itb-image = ITB $@
cmd_itb-image = \
- env PATH="$(objtree)/scripts/dtc:$(PATH)" \
+ env PATH="$(objtree)scripts/dtc:$(PATH)" \
$(BASH) $(MKIMAGE) \
-D "-I dts -O dtb -p 500 \
- --include $(objtree)/arch/mips \
+ --include $(objtree)arch/mips \
--warning no-unit_address_vs_reg" \
-f $(2) $@
@@ -111,13 +111,13 @@ quiet_cmd_zld = LD $@
quiet_cmd_strip = STRIP $@
cmd_strip = $(STRIP) -s $@
-$(objtree)/vmlinuz: $(src)/ld.script $(vmlinuzobjs-y) $(obj)/calc_vmlinuz_load_addr
+$(objtree)vmlinuz: $(src)/ld.script $(vmlinuzobjs-y) $(obj)/calc_vmlinuz_load_addr
$(call cmd,zld)
$(call cmd,strip)
-objboot := $(objtree)/arch/mips/boot
+objboot := $(objtree)arch/mips/boot
-$(objboot)/vmlinuz: $(objtree)/vmlinuz FORCE
+$(objboot)/vmlinuz: $(objtree)vmlinuz FORCE
#
# Some DECstations need all possible sections of an ECOFF executable
@@ -130,7 +130,7 @@ endif
hostprogs += ../elf2ecoff
ifdef CONFIG_32BIT
- VMLINUZ = $(objtree)/vmlinuz
+ VMLINUZ = $(objtree)vmlinuz
else
VMLINUZ = $(objboot)/vmlinuz.32
endif
@@ -140,7 +140,7 @@ targets += ../vmlinuz.32
quiet_cmd_32 = OBJCOPY $@
cmd_32 = $(OBJCOPY) -O $(32bit-bfd) $(OBJCOPYFLAGS) $< $@
-$(objboot)/vmlinuz.32: $(objtree)/vmlinuz
+$(objboot)/vmlinuz.32: $(objtree)vmlinuz
$(call cmd,32)
targets += ../vmlinuz.ecoff
@@ -155,14 +155,14 @@ targets += ../vmlinuz.bin
OBJCOPYFLAGS_vmlinuz.bin := $(OBJCOPYFLAGS) -O binary
-$(objboot)/vmlinuz.bin: $(objtree)/vmlinuz
+$(objboot)/vmlinuz.bin: $(objtree)vmlinuz
$(call cmd,objcopy)
targets += ../vmlinuz.srec
OBJCOPYFLAGS_vmlinuz.srec := $(OBJCOPYFLAGS) -S -O srec
-$(objboot)/vmlinuz.srec: $(objtree)/vmlinuz
+$(objboot)/vmlinuz.srec: $(objtree)vmlinuz
$(call cmd,objcopy)
targets += ../uzImage.bin
@@ -208,10 +208,10 @@ targets += ../vmlinuz.itb
quiet_cmd_itb-image = ITB $@
cmd_itb-image = \
- env PATH="$(objtree)/scripts/dtc:$(PATH)" \
+ env PATH="$(objtree)scripts/dtc:$(PATH)" \
$(BASH) $(MKIMAGE) \
-D "-I dts -O dtb -p 500 \
- --include $(objtree)/arch/mips \
+ --include $(objtree)arch/mips \
--warning no-unit_address_vs_reg" \
-f $(2) $@
@@ -128,7 +128,7 @@ PALO := $(shell if (which palo 2>&1); then : ; \
fi)
PALOCONF := $(shell if [ -f $(srctree)palo.conf ]; then echo $(srctree)palo.conf; \
- else echo $(objtree)/palo.conf; \
+ else echo $(objtree)palo.conf; \
fi)
palo lifimage: vmlinuz
@@ -138,7 +138,7 @@ palo lifimage: vmlinuz
false; \
fi
@if test ! -f "$(PALOCONF)"; then \
- cp $(srctree)arch/parisc/defpalo.conf $(objtree)/palo.conf; \
+ cp $(srctree)arch/parisc/defpalo.conf $(objtree)palo.conf; \
echo 'A generic palo config file ($(objree)/palo.conf) has been created for you.'; \
echo 'You should check it and re-run "make palo".'; \
echo 'WARNING: the "lifimage" file is now placed in this directory by default!'; \
@@ -10,7 +10,7 @@ subdir- := compressed
$(obj)/image: vmlinux FORCE
$(call if_changed,objcopy)
-$(obj)/bzImage: $(if $(CONFIG_KERNEL_UNCOMPRESSED),$(objtree)/vmlinux,$(obj)/compressed/vmlinux) FORCE
+$(obj)/bzImage: $(if $(CONFIG_KERNEL_UNCOMPRESSED),$(objtree)vmlinux,$(obj)/compressed/vmlinux) FORCE
$(call if_changed,objcopy)
$(obj)/compressed/vmlinux: FORCE
@@ -35,15 +35,15 @@ quiet_cmd_sizes = GEN $@
$(obj)/sizes.h: vmlinux FORCE
$(call if_changed,sizes)
-AFLAGS_head.o += -I$(objtree)/$(obj) -DBOOTLOADER
+AFLAGS_head.o += -I$(objtree)$(obj) -DBOOTLOADER
$(obj)/head.o: $(obj)/sizes.h
-CFLAGS_misc.o += -I$(objtree)/$(obj)
+CFLAGS_misc.o += -I$(objtree)$(obj)
$(obj)/misc.o: $(obj)/sizes.h
AFLAGS_real2.o += -DBOOTLOADER
-CPPFLAGS_vmlinux.lds += -I$(objtree)/$(obj) -DBOOTLOADER
+CPPFLAGS_vmlinux.lds += -I$(objtree)$(obj) -DBOOTLOADER
$(obj)/vmlinux.lds: $(obj)/sizes.h
OBJCOPYFLAGS_vmlinux.bin := -R .comment -R .note -S
@@ -99,7 +99,7 @@ BOOTCFLAGS += -fno-stack-protector
endif
BOOTCFLAGS += -include $(srctree)include/linux/compiler_attributes.h
-BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)$(obj)
+BOOTCFLAGS += -I$(objtree)$(obj) -I$(srctree)$(obj)
DTC_FLAGS ?= -p 1024
@@ -11,7 +11,7 @@ common-objs-y += powerpc.o emulate_loadstore.o
obj-$(CONFIG_KVM_EXIT_TIMING) += timing.o
obj-$(CONFIG_KVM_BOOK3S_HANDLER) += book3s_exports.o
-AFLAGS_booke_interrupts.o := -I$(objtree)/$(obj)
+AFLAGS_booke_interrupts.o := -I$(objtree)$(obj)
kvm-e500-objs := \
$(common-objs-y) \
@@ -132,7 +132,7 @@ KBUILD_IMAGE := $(boot)/Image.gz
endif
libs-y += arch/riscv/lib/
-libs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
+libs-$(CONFIG_EFI_STUB) += $(objtree)drivers/firmware/efi/libstub/lib.a
ifeq ($(KBUILD_EXTMOD),)
ifeq ($(CONFIG_MMU),y)
@@ -70,15 +70,15 @@ KBUILD_AFLAGS += $(ARCH_INCLUDE)
USER_CFLAGS = $(patsubst $(KERNEL_DEFINES),,$(patsubst -I%,,$(KBUILD_CFLAGS))) \
$(ARCH_INCLUDE) $(MODE_INCLUDE) $(filter -I%,$(CFLAGS)) \
-D_FILE_OFFSET_BITS=64 -idirafter $(srctree)include \
- -idirafter $(objtree)/include -D__KERNEL__ -D__UM_HOST__
+ -idirafter $(objtree)include -D__KERNEL__ -D__UM_HOST__
#This will adjust *FLAGS accordingly to the platform.
include $(srctree)$(ARCH_DIR)/Makefile-os-Linux
KBUILD_CPPFLAGS += -I$(srctree)$(HOST_DIR)/include \
-I$(srctree)$(HOST_DIR)/include/uapi \
- -I$(objtree)/$(HOST_DIR)/include/generated \
- -I$(objtree)/$(HOST_DIR)/include/generated/uapi
+ -I$(objtree)$(HOST_DIR)/include/generated \
+ -I$(objtree)$(HOST_DIR)/include/generated/uapi
# -Derrno=kernel_errno - This turns all kernel references to errno into
# kernel_errno to separate them from the libc errno. This allows -fno-common
@@ -36,7 +36,7 @@ targets := config.c config.tmp capflags.c
# Be careful with the below Sed code - sed is pitfall-rich!
# We use sed to lower build requirements, for "embedded" builders for instance.
-$(obj)/config.tmp: $(objtree)/.config FORCE
+$(obj)/config.tmp: $(objtree).config FORCE
$(call if_changed,quote1)
quiet_cmd_quote1 = QUOTE $@
@@ -284,8 +284,8 @@ ifeq ($(CONFIG_X86_DECODER_SELFTEST),y)
$(Q)$(MAKE) $(build)=arch/x86/tools posttest
endif
$(Q)$(MAKE) $(build)=$(boot) $(KBUILD_IMAGE)
- $(Q)mkdir -p $(objtree)/arch/$(UTS_MACHINE)/boot
- $(Q)ln -fsn ../../x86/boot/bzImage $(objtree)/arch/$(UTS_MACHINE)/boot/$@
+ $(Q)mkdir -p $(objtree)arch/$(UTS_MACHINE)/boot
+ $(Q)ln -fsn ../../x86/boot/bzImage $(objtree)arch/$(UTS_MACHINE)/boot/$@
$(BOOT_TARGETS): vmlinux
$(Q)$(MAKE) $(build)=$(boot) $@
@@ -322,8 +322,8 @@ archprepare: $(orc_hash_h)
endif
archclean:
- $(Q)rm -rf $(objtree)/arch/i386
- $(Q)rm -rf $(objtree)/arch/x86_64
+ $(Q)rm -rf $(objtree)arch/i386
+ $(Q)rm -rf $(objtree)arch/x86_64
define archhelp
echo '* bzImage - Compressed kernel image (arch/x86/boot/bzImage)'
@@ -99,7 +99,7 @@ $(obj)/zoffset.h: $(obj)/compressed/vmlinux FORCE
$(call if_changed,zoffset)
-AFLAGS_header.o += -I$(objtree)/$(obj)
+AFLAGS_header.o += -I$(objtree)$(obj)
$(obj)/header.o: $(obj)/zoffset.h
LDFLAGS_setup.elf := -m elf_i386 -z noexecstack -T
@@ -54,9 +54,9 @@ KBUILD_CFLAGS += $(call cc-option,-Wa$(comma)-mrelax-relocations=no)
KBUILD_CFLAGS += -include $(srctree)include/linux/hidden.h
# sev.c indirectly includes inat-table.h which is generated during
-# compilation and stored in $(objtree). Add the directory to the includes so
+# compilation and stored in $(objtree:%/=%). Add the directory to the includes so
# that the compiler finds it even with out-of-tree builds (make O=/some/path).
-CFLAGS_sev.o += -I$(objtree)/arch/x86/lib/
+CFLAGS_sev.o += -I$(objtree)arch/x86/lib/
KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMBLY__
GCOV_PROFILE := n
@@ -116,7 +116,7 @@ vmlinux-objs-$(CONFIG_UNACCEPTED_MEMORY) += $(obj)/mem.o
vmlinux-objs-$(CONFIG_EFI) += $(obj)/efi.o
vmlinux-objs-$(CONFIG_EFI_MIXED) += $(obj)/efi_mixed.o
-vmlinux-objs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a
+vmlinux-objs-$(CONFIG_EFI_STUB) += $(objtree)drivers/firmware/efi/libstub/lib.a
$(obj)/vmlinux: $(vmlinux-objs-y) FORCE
$(call if_changed,ld)
@@ -51,7 +51,7 @@ targets += realmode.lds
$(obj)/realmode.lds: $(obj)/pasyms.h
LDFLAGS_realmode.elf := -m elf_i386 --emit-relocs -T
-CPPFLAGS_realmode.lds += -P -C -I$(objtree)/$(obj)
+CPPFLAGS_realmode.lds += -P -C -I$(objtree)$(obj)
targets += realmode.elf
$(obj)/realmode.elf: $(obj)/realmode.lds $(REALMODE_OBJS) FORCE
@@ -17,7 +17,7 @@ reformatter = $(srctree)arch/x86/tools/objdump_reformat.awk
chkobjdump = $(srctree)arch/x86/tools/chkobjdump.awk
quiet_cmd_posttest = TEST $@
- cmd_posttest = $(OBJDUMP) -d -j .text $(objtree)/vmlinux | $(AWK) -f $(reformatter) | $(obj)/insn_decoder_test $(posttest_64bit) $(posttest_verbose)
+ cmd_posttest = $(OBJDUMP) -d -j .text $(objtree)vmlinux | $(AWK) -f $(reformatter) | $(obj)/insn_decoder_test $(posttest_64bit) $(posttest_verbose)
quiet_cmd_sanitytest = TEST $@
cmd_sanitytest = $(obj)/insn_sanity $(posttest_64bit) -m 1000000
@@ -29,14 +29,14 @@ posttest: $(obj)/insn_decoder_test vmlinux $(obj)/insn_sanity
hostprogs += insn_decoder_test insn_sanity
# -I needed for generated C source and C source which in the kernel tree.
-HOSTCFLAGS_insn_decoder_test.o := -Wall -I$(srctree)tools/arch/x86/lib/ -I$(srctree)tools/arch/x86/include/ -I$(objtree)/arch/x86/lib/
+HOSTCFLAGS_insn_decoder_test.o := -Wall -I$(srctree)tools/arch/x86/lib/ -I$(srctree)tools/arch/x86/include/ -I$(objtree)arch/x86/lib/
-HOSTCFLAGS_insn_sanity.o := -Wall -I$(srctree)tools/arch/x86/lib/ -I$(srctree)tools/arch/x86/include/ -I$(objtree)/arch/x86/lib/
+HOSTCFLAGS_insn_sanity.o := -Wall -I$(srctree)tools/arch/x86/lib/ -I$(srctree)tools/arch/x86/include/ -I$(objtree)arch/x86/lib/
# Dependencies are also needed.
-$(obj)/insn_decoder_test.o: $(srctree)tools/arch/x86/lib/insn.c $(srctree)tools/arch/x86/lib/inat.c $(srctree)tools/arch/x86/include/asm/inat_types.h $(srctree)tools/arch/x86/include/asm/inat.h $(srctree)tools/arch/x86/include/asm/insn.h $(objtree)/arch/x86/lib/inat-tables.c
+$(obj)/insn_decoder_test.o: $(srctree)tools/arch/x86/lib/insn.c $(srctree)tools/arch/x86/lib/inat.c $(srctree)tools/arch/x86/include/asm/inat_types.h $(srctree)tools/arch/x86/include/asm/inat.h $(srctree)tools/arch/x86/include/asm/insn.h $(objtree)arch/x86/lib/inat-tables.c
-$(obj)/insn_sanity.o: $(srctree)tools/arch/x86/lib/insn.c $(srctree)tools/arch/x86/lib/inat.c $(srctree)tools/arch/x86/include/asm/inat_types.h $(srctree)tools/arch/x86/include/asm/inat.h $(srctree)tools/arch/x86/include/asm/insn.h $(objtree)/arch/x86/lib/inat-tables.c
+$(obj)/insn_sanity.o: $(srctree)tools/arch/x86/lib/insn.c $(srctree)tools/arch/x86/lib/inat.c $(srctree)tools/arch/x86/include/asm/inat_types.h $(srctree)tools/arch/x86/include/asm/inat.h $(srctree)tools/arch/x86/include/asm/insn.h $(objtree)arch/x86/lib/inat-tables.c
HOST_EXTRACFLAGS += -I$(srctree)tools/include
hostprogs += relocs
@@ -50,7 +50,7 @@ AFLAGS_zboot-header.o += -DMACHINE_TYPE=IMAGE_FILE_MACHINE_$(EFI_ZBOOT_MACH_TYPE
$(obj)/zboot-header.o: $(srctree)drivers/firmware/efi/libstub/zboot-header.S FORCE
$(call if_changed_rule,as_o_S)
-ZBOOT_DEPS := $(obj)/zboot-header.o $(objtree)/drivers/firmware/efi/libstub/lib.a
+ZBOOT_DEPS := $(obj)/zboot-header.o $(objtree)drivers/firmware/efi/libstub/lib.a
LDFLAGS_vmlinuz.efi.elf := -T $(srctree)drivers/firmware/efi/libstub/zboot.lds
$(obj)/vmlinuz.efi.elf: $(obj)/vmlinuz.o $(ZBOOT_DEPS) FORCE
@@ -59,7 +59,7 @@ $(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm
$(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \
$(srctree)$(src)/aic7xxx.seq
-$(aic7xxx-gen-y): $(objtree)/$(obj)/aic7xxx_seq.h
+$(aic7xxx-gen-y): $(objtree)$(obj)/aic7xxx_seq.h
@true
else
$(obj)/aic7xxx_reg_print.c: $(src)/aic7xxx_reg_print.c_shipped
@@ -77,7 +77,7 @@ $(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm
$(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \
$(srctree)$(src)/aic79xx.seq
-$(aic79xx-gen-y): $(objtree)/$(obj)/aic79xx_seq.h
+$(aic79xx-gen-y): $(objtree)$(obj)/aic79xx_seq.h
@true
else
$(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped
@@ -1,5 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-ccflags-y := -DSRCTREE='"$(srctree:%/=%)"' -DOBJTREE='"$(objtree)"'
+ccflags-y := -DSRCTREE='"$(srctree:%/=%)"' -DOBJTREE='"$(objtree:%/=%)"'
obj-y := base.o fs.o
obj-$(CONFIG_CC_IS_GCC) += gcc_base.o gcc_4_7.o
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
# Where to place rustdoc generated documentation
-rustdoc_output := $(objtree)/Documentation/output/rust/rustdoc
+rustdoc_output := $(objtree)Documentation/output/rust/rustdoc
obj-$(CONFIG_RUST) += core.o compiler_builtins.o
always-$(CONFIG_RUST) += exports_core_generated.h
@@ -75,11 +75,11 @@ quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
cmd_rustdoc = \
OBJTREE=$(abs_objtree) \
$(RUSTDOC) $(if $(rustdoc_host),$(rust_common_flags),$(rust_flags)) \
- $(rustc_target_flags) -L$(objtree)/$(obj) \
+ $(rustc_target_flags) -L$(objtree)$(obj) \
--output $(rustdoc_output) \
--crate-name $(subst rustdoc-,,$@) \
$(if $(rustdoc_host),,--sysroot=/dev/null) \
- @$(objtree)/include/generated/rustc_cfg $<
+ @$(objtree)include/generated/rustc_cfg $<
# The `html_logo_url` and `html_favicon_url` forms of the `doc` attribute
# can be used to specify a custom logo. However:
@@ -127,7 +127,7 @@ rustdoc-alloc: $(src)/alloc/lib.rs rustdoc-core rustdoc-compiler_builtins FORCE
$(call if_changed,rustdoc)
rustdoc-kernel: private rustc_target_flags = --extern alloc \
- --extern build_error --extern macros=$(objtree)/$(obj)/libmacros.so \
+ --extern build_error --extern macros=$(objtree)$(obj)/libmacros.so \
--extern bindings --extern uapi
rustdoc-kernel: $(src)/kernel/lib.rs rustdoc-core rustdoc-macros \
rustdoc-compiler_builtins rustdoc-alloc $(obj)/libmacros.so \
@@ -138,11 +138,11 @@ quiet_cmd_rustc_test_library = RUSTC TL $<
cmd_rustc_test_library = \
OBJTREE=$(abs_objtree) \
$(RUSTC) $(rust_common_flags) \
- @$(objtree)/include/generated/rustc_cfg $(rustc_target_flags) \
+ @$(objtree)include/generated/rustc_cfg $(rustc_target_flags) \
--crate-type $(if $(rustc_test_library_proc),proc-macro,rlib) \
- --out-dir $(objtree)/$(obj)/test --cfg testlib \
- --sysroot $(objtree)/$(obj)/test/sysroot \
- -L$(objtree)/$(obj)/test \
+ --out-dir $(objtree)$(obj)/test --cfg testlib \
+ --sysroot $(objtree)$(obj)/test/sysroot \
+ -L$(objtree)$(obj)/test \
--crate-name $(subst rusttest-,,$(subst rusttestlib-,,$@)) $<
rusttestlib-build_error: $(src)/build_error.rs rusttest-prepare FORCE
@@ -163,32 +163,32 @@ quiet_cmd_rustdoc_test = RUSTDOC T $<
cmd_rustdoc_test = \
OBJTREE=$(abs_objtree) \
$(RUSTDOC) --test $(rust_common_flags) \
- @$(objtree)/include/generated/rustc_cfg \
+ @$(objtree)include/generated/rustc_cfg \
$(rustc_target_flags) $(rustdoc_test_target_flags) \
- --sysroot $(objtree)/$(obj)/test/sysroot $(rustdoc_test_quiet) \
- -L$(objtree)/$(obj)/test --output $(rustdoc_output) \
+ --sysroot $(objtree)$(obj)/test/sysroot $(rustdoc_test_quiet) \
+ -L$(objtree)$(obj)/test --output $(rustdoc_output) \
--crate-name $(subst rusttest-,,$@) $<
quiet_cmd_rustdoc_test_kernel = RUSTDOC TK $<
cmd_rustdoc_test_kernel = \
- rm -rf $(objtree)/$(obj)/test/doctests/kernel; \
- mkdir -p $(objtree)/$(obj)/test/doctests/kernel; \
+ rm -rf $(objtree)$(obj)/test/doctests/kernel; \
+ mkdir -p $(objtree)$(obj)/test/doctests/kernel; \
OBJTREE=$(abs_objtree) \
$(RUSTDOC) --test $(rust_flags) \
- @$(objtree)/include/generated/rustc_cfg \
- -L$(objtree)/$(obj) --extern alloc --extern kernel \
+ @$(objtree)include/generated/rustc_cfg \
+ -L$(objtree)$(obj) --extern alloc --extern kernel \
--extern build_error --extern macros \
--extern bindings --extern uapi \
--no-run --crate-name kernel -Zunstable-options \
--sysroot=/dev/null \
- --test-builder $(objtree)/scripts/rustdoc_test_builder \
+ --test-builder $(objtree)scripts/rustdoc_test_builder \
$< $(rustdoc_test_kernel_quiet); \
- $(objtree)/scripts/rustdoc_test_gen
+ $(objtree)scripts/rustdoc_test_gen
%/doctests_kernel_generated.rs %/doctests_kernel_generated_kunit.c: \
$(src)/kernel/lib.rs $(obj)/kernel.o \
- $(objtree)/scripts/rustdoc_test_builder \
- $(objtree)/scripts/rustdoc_test_gen FORCE
+ $(objtree)scripts/rustdoc_test_builder \
+ $(objtree)scripts/rustdoc_test_gen FORCE
$(call if_changed,rustdoc_test_kernel)
# We cannot use `-Zpanic-abort-tests` because some tests are dynamic,
@@ -197,12 +197,12 @@ quiet_cmd_rustc_test = RUSTC T $<
cmd_rustc_test = \
OBJTREE=$(abs_objtree) \
$(RUSTC) --test $(rust_common_flags) \
- @$(objtree)/include/generated/rustc_cfg \
- $(rustc_target_flags) --out-dir $(objtree)/$(obj)/test \
- --sysroot $(objtree)/$(obj)/test/sysroot \
- -L$(objtree)/$(obj)/test \
+ @$(objtree)include/generated/rustc_cfg \
+ $(rustc_target_flags) --out-dir $(objtree)$(obj)/test \
+ --sysroot $(objtree)$(obj)/test/sysroot \
+ -L$(objtree)$(obj)/test \
--crate-name $(subst rusttest-,,$@) $<; \
- $(objtree)/$(obj)/test/$(subst rusttest-,,$@) $(rust_test_quiet) \
+ $(objtree)$(obj)/test/$(subst rusttest-,,$@) $(rust_test_quiet) \
$(rustc_test_run_flags)
rusttest: rusttest-macros rusttest-kernel
@@ -236,22 +236,22 @@ rusttest: rusttest-macros rusttest-kernel
# `-Zbuild-std` and related hacks are not needed.
quiet_cmd_rustsysroot = RUSTSYSROOT
cmd_rustsysroot = \
- rm -rf $(objtree)/$(obj)/test; \
- mkdir -p $(objtree)/$(obj)/test; \
- cp -a $(rustc_sysroot) $(objtree)/$(obj)/test/sysroot; \
+ rm -rf $(objtree)$(obj)/test; \
+ mkdir -p $(objtree)$(obj)/test; \
+ cp -a $(rustc_sysroot) $(objtree)$(obj)/test/sysroot; \
cp -r $(srctree)$(src)/alloc/* \
- $(objtree)/$(obj)/test/sysroot/lib/rustlib/src/rust/library/alloc/src; \
- echo '\#!/bin/sh' > $(objtree)/$(obj)/test/rustc_sysroot; \
+ $(objtree)$(obj)/test/sysroot/lib/rustlib/src/rust/library/alloc/src; \
+ echo '\#!/bin/sh' > $(objtree)$(obj)/test/rustc_sysroot; \
echo "$(RUSTC) --sysroot=$(abs_objtree)/$(obj)/test/sysroot \"\$$@\"" \
- >> $(objtree)/$(obj)/test/rustc_sysroot; \
- chmod u+x $(objtree)/$(obj)/test/rustc_sysroot; \
- $(CARGO) -q new $(objtree)/$(obj)/test/dummy; \
- RUSTC=$(objtree)/$(obj)/test/rustc_sysroot $(CARGO) $(cargo_quiet) \
+ >> $(objtree)$(obj)/test/rustc_sysroot; \
+ chmod u+x $(objtree)$(obj)/test/rustc_sysroot; \
+ $(CARGO) -q new $(objtree)$(obj)/test/dummy; \
+ RUSTC=$(objtree)$(obj)/test/rustc_sysroot $(CARGO) $(cargo_quiet) \
test -Zbuild-std --target $(rustc_host_target) \
- --manifest-path $(objtree)/$(obj)/test/dummy/Cargo.toml; \
- rm $(objtree)/$(obj)/test/sysroot/lib/rustlib/$(rustc_host_target)/lib/*; \
- cp $(objtree)/$(obj)/test/dummy/target/$(rustc_host_target)/debug/deps/* \
- $(objtree)/$(obj)/test/sysroot/lib/rustlib/$(rustc_host_target)/lib
+ --manifest-path $(objtree)$(obj)/test/dummy/Cargo.toml; \
+ rm $(objtree)$(obj)/test/sysroot/lib/rustlib/$(rustc_host_target)/lib/*; \
+ cp $(objtree)$(obj)/test/dummy/target/$(rustc_host_target)/debug/deps/* \
+ $(objtree)$(obj)/test/sysroot/lib/rustlib/$(rustc_host_target)/lib
rusttest-prepare: FORCE
$(call if_changed,rustsysroot)
@@ -360,7 +360,7 @@ $(obj)/bindings/bindings_helpers_generated.rs: private bindgen_target_flags = \
--blocklist-type '.*' --allowlist-var '' \
--allowlist-function 'rust_helper_.*'
$(obj)/bindings/bindings_helpers_generated.rs: private bindgen_target_cflags = \
- -I$(objtree)/$(obj) -Wno-missing-prototypes -Wno-missing-declarations
+ -I$(objtree)$(obj) -Wno-missing-prototypes -Wno-missing-declarations
$(obj)/bindings/bindings_helpers_generated.rs: private bindgen_target_extra = ; \
sed -Ei 's/pub fn rust_helper_([a-zA-Z0-9_]*)/#[link_name="rust_helper_\1"]\n pub fn \1/g' $@
$(obj)/bindings/bindings_helpers_generated.rs: $(src)/helpers.c FORCE
@@ -405,7 +405,7 @@ quiet_cmd_rustc_library = $(if $(skip_clippy),RUSTC,$(RUSTC_OR_CLIPPY_QUIET)) L
$(filter-out $(skip_flags),$(rust_flags) $(rustc_target_flags)) \
--emit=dep-info=$(depfile) --emit=obj=$@ \
--emit=metadata=$(dir $@)$(patsubst %.o,lib%.rmeta,$(notdir $@)) \
- --crate-type rlib -L$(objtree)/$(obj) \
+ --crate-type rlib -L$(objtree)$(obj) \
--crate-name $(patsubst %.o,%,$(notdir $@)) $< \
--sysroot=/dev/null \
$(if $(rustc_objcopy),;$(OBJCOPY) $(rustc_objcopy) $@)
@@ -415,7 +415,7 @@ rust-analyzer:
--cfgs='core=$(core-cfgs)' --cfgs='alloc=$(alloc-cfgs)' \
$(abs_srctree) $(abs_objtree) \
$(RUST_LIB_SRC) $(KBUILD_EXTMOD) > \
- $(if $(KBUILD_EXTMOD),$(extmod_prefix),$(objtree))/rust-project.json
+ $(if $(KBUILD_EXTMOD),$(extmod_prefix),$(objtree:%/=%))/rust-project.json
redirect-intrinsics = \
__addsf3 __eqsf2 __gesf2 __lesf2 __ltsf2 __mulsf3 __nesf2 __unordsf2 \
@@ -176,7 +176,7 @@ TPROGS_CFLAGS += $(call try-run,\
printf "int main() { return 0; }" |\
$(CC) -Werror -fsanitize=bounds -x c - -o "$$TMP",-fsanitize=bounds,)
-TPROGS_CFLAGS += -I$(objtree)/usr/include
+TPROGS_CFLAGS += -I$(objtree)usr/include
TPROGS_CFLAGS += -I$(srctree)tools/testing/selftests/bpf/
TPROGS_CFLAGS += -I$(LIBBPF_INCLUDE)
TPROGS_CFLAGS += -I$(srctree)tools/include
@@ -40,10 +40,10 @@ tprog-cobjs := $(addprefix $(obj)/,$(tprog-cobjs))
_tprogc_flags = $(TPROGS_CFLAGS) \
$(TPROGCFLAGS_$(basetarget).o)
-# $(objtree)/$(obj) for including generated headers from checkin source files
+# $(objtree)$(obj) for including generated headers from checkin source files
ifeq ($(KBUILD_EXTMOD),)
ifdef building_out_of_srctree
-_tprogc_flags += -I $(objtree)/$(obj)
+_tprogc_flags += -I $(objtree)$(obj)
endif
endif
@@ -45,7 +45,7 @@ TPROGS_CFLAGS += -Wall -O2
TPROGS_CFLAGS += -Wmissing-prototypes
TPROGS_CFLAGS += -Wstrict-prototypes
-TPROGS_CFLAGS += -I$(objtree)/usr/include
+TPROGS_CFLAGS += -I$(objtree)usr/include
TPROGS_CFLAGS += -I$(LIBBPF_INCLUDE)
TPROGS_CFLAGS += -I$(srctree)tools/include
@@ -40,10 +40,10 @@ tprog-cobjs := $(addprefix $(obj)/,$(tprog-cobjs))
_tprogc_flags = $(TPROGS_CFLAGS) \
$(TPROGCFLAGS_$(basetarget).o)
-# $(objtree)/$(obj) for including generated headers from checkin source files
+# $(objtree)$(obj) for including generated headers from checkin source files
ifeq ($(KBUILD_EXTMOD),)
ifdef building_out_of_srctree
-_tprogc_flags += -I $(objtree)/$(obj)
+_tprogc_flags += -I $(objtree)$(obj)
endif
endif
Date: Tue, 20 Feb 2024 09:13:37 -0800 This isn't much more than `find | sed` to adjust all uses of $(objtree). This is split into a separate commit to highlight the actual changes to the build machinery. Signed-off-by: Elliott Mitchell <ehem+linux@m5p.com> --- `grep` was also used to locate things which needed other actions (notably the non-toplevel Makefile adjustments), but this is roughly: find . -name Makefile\* -print0 | xargs -0 sed -i -e's,$(objtree)$,$(objtree:%/=%),' -e's,$(objtree)\([^,/]\),$(objtree:%/=%)\1,g' -es',$(objtree)/,$(objtree),g' There could be goofs in here or missed bits. I hope not, but... --- Makefile | 22 +++--- arch/alpha/boot/Makefile | 4 +- arch/arm/boot/compressed/Makefile | 2 +- arch/arm/vdso/Makefile | 2 +- arch/arm64/Makefile | 2 +- arch/arm64/kernel/Makefile | 2 +- arch/arm64/kvm/hyp/nvhe/Makefile | 2 +- arch/loongarch/Makefile | 2 +- arch/mips/Makefile | 10 +-- arch/mips/boot/Makefile | 4 +- arch/mips/boot/compressed/Makefile | 18 ++--- arch/parisc/Makefile | 4 +- arch/parisc/boot/Makefile | 2 +- arch/parisc/boot/compressed/Makefile | 6 +- arch/powerpc/boot/Makefile | 2 +- arch/powerpc/kvm/Makefile | 2 +- arch/riscv/Makefile | 2 +- arch/um/Makefile | 6 +- arch/um/kernel/Makefile | 2 +- arch/x86/Makefile | 8 +-- arch/x86/boot/Makefile | 2 +- arch/x86/boot/compressed/Makefile | 6 +- arch/x86/realmode/rm/Makefile | 2 +- arch/x86/tools/Makefile | 10 +-- drivers/firmware/efi/libstub/Makefile.zboot | 2 +- drivers/scsi/aic7xxx/Makefile | 4 +- kernel/gcov/Makefile | 2 +- rust/Makefile | 80 ++++++++++----------- samples/bpf/Makefile | 2 +- samples/bpf/Makefile.target | 4 +- samples/hid/Makefile | 2 +- samples/hid/Makefile.target | 4 +- 32 files changed, 112 insertions(+), 112 deletions(-)