diff options
Diffstat (limited to 'arch/mips/Makefile')
-rw-r--r-- | arch/mips/Makefile | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/arch/mips/Makefile b/arch/mips/Makefile index 4eb6ba7721..65a00379ab 100644 --- a/arch/mips/Makefile +++ b/arch/mips/Makefile @@ -1,3 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0-only + KBUILD_DEFCONFIG := qemu-malta_defconfig # @@ -43,8 +45,8 @@ mips-ldflags-y += $(shell $(CC) -dumpmachine |grep -q 'mips.*el-.*' || echo -EL endif KBUILD_LDFLAGS += $(mips-ldflags-y) -m $(ld-emul) -LDFLAGS_barebox += $(mips-ldflags-y) -LDFLAGS_pbl += $(mips-ldflags-y) +LDFLAGS_barebox += $(KBUILD_LDFLAGS) +LDFLAGS_pbl += $(KBUILD_LDFLAGS) # # CPU-dependent compiler/assembler options for optimization. @@ -55,7 +57,13 @@ cflags-$(CONFIG_CPU_MIPS64_R1) += $(call cc-option,-march=mips64,-mips64 -U_MIPS cflags-$(CONFIG_CPU_MIPS64_R2) += $(call cc-option,-march=mips64r2,-mips64r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS64) -Wa,-mips64r2 -Wa,--trap cflags-$(CONFIG_CPU_GS232) += $(call cc-option,-march=mips32r2,-mips32r2 -U_MIPS_ISA -D_MIPS_ISA=_MIPS_ISA_MIPS32) -Wa,-mips32r2 -Wa,--trap -KBUILD_CPPFLAGS += -DTEXT_BASE=$(CONFIG_TEXT_BASE) +ifdef CONFIG_64BIT +MIPS_TEXT_BASE = $(subst 0x,0xffffffff,$(CONFIG_TEXT_BASE)) +else +MIPS_TEXT_BASE = $(CONFIG_TEXT_BASE) +endif + +KBUILD_CPPFLAGS += -DTEXT_BASE=$(MIPS_TEXT_BASE) ifndef CONFIG_MODULES # Add cleanup flags @@ -72,8 +80,6 @@ KBUILD_BINARY := barebox.bin KBUILD_TARGET := barebox.bin endif -LDFLAGS_barebox += -nostdlib - machine-$(CONFIG_MACH_MIPS_MALTA) := malta machine-$(CONFIG_MACH_MIPS_AR231X) := ar231x machine-$(CONFIG_MACH_MIPS_ATH79) := ath79 @@ -100,7 +106,7 @@ KBUILD_CFLAGS += $(cflags-y) lds-$(CONFIG_GENERIC_LINKER_SCRIPT) := arch/mips/lib/barebox.lds -cmd_barebox__ ?= $(LD) $(KBUILD_LDFLAGS) $(LDFLAGS_barebox) -o $@ \ +cmd_barebox__ ?= $(LD) $(LDFLAGS_barebox) -o $@ \ -T $(BAREBOX_LDS) \ --whole-archive $(BAREBOX_OBJS) --no-whole-archive \ $(filter-out $(BAREBOX_LDS) $(BAREBOX_OBJS) FORCE ,$^); \ |