Kbuild: allow arch/xxx to use a different source path
Preparatory patch for the source merge of arch/i386 and arch/x86_64 into arch/x86. This allows to keep the original arch directories as stubs for the main Makefiles, Kconfigs et. al during the transition phase while having the code in the new arch/x86 directory. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Родитель
d7394fe57a
Коммит
6752ed90da
6
Kbuild
6
Kbuild
|
@ -12,7 +12,7 @@ offsets-file := include/asm-$(ARCH)/asm-offsets.h
|
|||
|
||||
always := $(offsets-file)
|
||||
targets := $(offsets-file)
|
||||
targets += arch/$(ARCH)/kernel/asm-offsets.s
|
||||
targets += arch/$(SRCARCH)/kernel/asm-offsets.s
|
||||
clean-files := $(addprefix $(objtree)/,$(targets))
|
||||
|
||||
# Default sed regexp - multiline due to syntax constraints
|
||||
|
@ -40,11 +40,11 @@ define cmd_offsets
|
|||
endef
|
||||
|
||||
# We use internal kbuild rules to avoid the "is up to date" message from make
|
||||
arch/$(ARCH)/kernel/asm-offsets.s: arch/$(ARCH)/kernel/asm-offsets.c FORCE
|
||||
arch/$(SRCARCH)/kernel/asm-offsets.s: arch/$(SRCARCH)/kernel/asm-offsets.c FORCE
|
||||
$(Q)mkdir -p $(dir $@)
|
||||
$(call if_changed_dep,cc_s_c)
|
||||
|
||||
$(obj)/$(offsets-file): arch/$(ARCH)/kernel/asm-offsets.s Kbuild
|
||||
$(obj)/$(offsets-file): arch/$(SRCARCH)/kernel/asm-offsets.s Kbuild
|
||||
$(Q)mkdir -p $(dir $@)
|
||||
$(call cmd,offsets)
|
||||
|
||||
|
|
5
Makefile
5
Makefile
|
@ -187,6 +187,7 @@ CROSS_COMPILE ?=
|
|||
|
||||
# Architecture as present in compile.h
|
||||
UTS_MACHINE := $(ARCH)
|
||||
SRCARCH := $(ARCH)
|
||||
|
||||
KCONFIG_CONFIG ?= .config
|
||||
|
||||
|
@ -322,7 +323,7 @@ KERNELRELEASE = $(shell cat include/config/kernel.release 2> /dev/null)
|
|||
KERNELVERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
|
||||
|
||||
export VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION
|
||||
export ARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC
|
||||
export ARCH SRCARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC
|
||||
export CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE
|
||||
export HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS
|
||||
|
||||
|
@ -609,7 +610,7 @@ libs-y := $(libs-y1) $(libs-y2)
|
|||
vmlinux-init := $(head-y) $(init-y)
|
||||
vmlinux-main := $(core-y) $(libs-y) $(drivers-y) $(net-y)
|
||||
vmlinux-all := $(vmlinux-init) $(vmlinux-main)
|
||||
vmlinux-lds := arch/$(ARCH)/kernel/vmlinux.lds
|
||||
vmlinux-lds := arch/$(SRCARCH)/kernel/vmlinux.lds
|
||||
export KBUILD_VMLINUX_OBJS := $(vmlinux-all)
|
||||
|
||||
# Rule to link vmlinux - also used during CONFIG_KALLSYMS
|
||||
|
|
Загрузка…
Ссылка в новой задаче