kbuild: create symbolic link only for ARM, AVR32, SPARC, PowerPC, x86

The symbolic link to SoC/CPU specific header directory is created
during the build, while it is only necessary for ARM, AVR32, SPARC,
x86, and some CPUs of PowerPC.  For the other architectures, it just
results in a broken symbolic link.

Introduce CONFIG_CREATE_ARCH_SYMLINK to not create unneeded symbolic
links.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Masahiro Yamada 2015-07-15 20:59:29 +09:00 committed by Tom Rini
parent 7e3f94e145
commit a350c6a602
3 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,6 @@
config CREATE_ARCH_SYMLINK
bool
config HAVE_GENERIC_BOARD
bool
@ -18,12 +21,14 @@ config ARC
config ARM
bool "ARM architecture"
select CREATE_ARCH_SYMLINK
select HAVE_PRIVATE_LIBGCC if !ARM64
select HAVE_GENERIC_BOARD
select SUPPORT_OF_CONTROL
config AVR32
bool "AVR32 architecture"
select CREATE_ARCH_SYMLINK
select HAVE_GENERIC_BOARD
select SYS_GENERIC_BOARD
@ -84,9 +89,11 @@ config SH
config SPARC
bool "SPARC architecture"
select CREATE_ARCH_SYMLINK
config X86
bool "x86 architecture"
select CREATE_ARCH_SYMLINK
select HAVE_PRIVATE_LIBGCC
select HAVE_GENERIC_BOARD
select SYS_GENERIC_BOARD

View File

@ -22,9 +22,11 @@ config MPC8260
config MPC83xx
bool "MPC83xx"
select CREATE_ARCH_SYMLINK
config MPC85xx
bool "MPC85xx"
select CREATE_ARCH_SYMLINK
config MPC86xx
bool "MPC86xx"
@ -34,6 +36,7 @@ config 8xx
config 4xx
bool "PPC4xx"
select CREATE_ARCH_SYMLINK
endchoice

View File

@ -107,6 +107,7 @@ include/config.h: scripts/Makefile.autoconf create_symlink FORCE
# Otherwise, create a symbolic link to arch/$(ARCH)/include/asm/arch-$(SOC).
PHONY += create_symlink
create_symlink:
ifdef CONFIG_CREATE_ARCH_SYMLINK
ifneq ($(KBUILD_SRC),)
$(Q)mkdir -p include/asm
$(Q)if [ -d $(KBUILD_SRC)/arch/$(ARCH)/mach-$(SOC)/include/mach ]; then \
@ -123,6 +124,7 @@ else
fi; \
ln -fsn $$dest arch/$(ARCH)/include/asm/arch
endif
endif
PHONY += FORCE
FORCE: