
The kernel doesn't use features of the FDPIC toolchain, disable FDPIC code generation when using such toolchain and select ordinary ELF linker emulation. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2.2 KiB
This file is subject to the terms and conditions of the GNU General Public
License. See the file "COPYING" in the main directory of this archive
for more details.
Copyright (C) 2001 - 2005 Tensilica Inc.
Copyright (C) 2014 Cadence Design Systems Inc.
This file is included by the global makefile so that you can add your own
architecture-specific flags and dependencies.
Core configuration.
(Use VAR=<xtensa_config> to use another default compiler.)
variant-y := $(CONFIG_XTENSA_VARIANT_NAME)
VARIANT = $(variant-y)
ifneq ($(VARIANT),) ifdef cross_compiling ifndef CROSS_COMPILE CROSS_COMPILE = xtensa_$(VARIANT)- endif endif endif
Platform configuration
platform-$(CONFIG_XTENSA_PLATFORM_XT2000) := xt2000 platform-$(CONFIG_XTENSA_PLATFORM_ISS) := iss platform-$(CONFIG_XTENSA_PLATFORM_XTFPGA) := xtfpga
temporarily until string.h is fixed
KBUILD_CFLAGS += -ffreestanding -D__linux__ KBUILD_CFLAGS += -pipe -mlongcalls -mtext-section-literals KBUILD_CFLAGS += $(call cc-option,-mforce-no-pic,) KBUILD_CFLAGS += $(call cc-option,-mno-serialize-volatile,) KBUILD_CFLAGS += $(call cc-option,-mno-fdpic,) ifneq ($(CONFIG_KERNEL_ABI_CALL0),) KBUILD_CFLAGS += -mabi=call0 KBUILD_AFLAGS += -mabi=call0 endif
KBUILD_AFLAGS += -mlongcalls -mtext-section-literals KBUILD_AFLAGS += $(call cc-option,-mno-fdpic,)
KBUILD_LDFLAGS += -m elf32xtensa
ifneq ($(CONFIG_LD_NO_RELAX),) KBUILD_LDFLAGS += --no-relax endif
CHECKFLAGS += -D$(if $(CONFIG_CPU_BIG_ENDIAN),XTENSA_EB,XTENSA_EL)
vardirs := $(patsubst %,arch/xtensa/variants/%/,$(variant-y)) plfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(platform-y))
KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs))
KBUILD_DEFCONFIG := iss_defconfig
libs-y += arch/xtensa/lib/
boot := arch/xtensa/boot
all Image zImage uImage xipImage: vmlinux $(Q)$(MAKE) $(build)=$(boot) $@
archheaders: $(Q)$(MAKE) $(build)=arch/xtensa/kernel/syscalls all
define archhelp @echo '* Image - Kernel ELF image with reset vector' @echo '* zImage - Compressed kernel image (arch/xtensa/boot/images/zImage.)' @echo ' uImage - U-Boot wrapped image' @echo ' xipImage - XIP image' endef