1 # SPDX-License-Identifier: GPL-2.0 !! 1 # 2 # Makefile for the Hexagon arch !! 2 # alpha/Makefile 3 !! 3 # 4 KBUILD_DEFCONFIG = comet_defconfig !! 4 # This file is subject to the terms and conditions of the GNU General Public 5 !! 5 # License. See the file "COPYING" in the main directory of this archive 6 # Do not use GP-relative jumps !! 6 # for more details. 7 KBUILD_CFLAGS += -G0 !! 7 # 8 LDFLAGS_vmlinux += -G0 !! 8 # Copyright (C) 1994 by Linus Torvalds 9 !! 9 # 10 # Do not use single-byte enums; these will ove !! 10 11 KBUILD_CFLAGS += -fno-short-enums !! 11 NM := $(NM) -B 12 !! 12 13 # We must use long-calls: !! 13 LDFLAGS_vmlinux := -static -N #-relax 14 KBUILD_CFLAGS += -mlong-calls !! 14 CHECKFLAGS += -D__alpha__ 15 !! 15 cflags-y := -pipe -mno-fp-regs -ffixed-8 16 # Modules must use either long-calls, or use p !! 16 cflags-y += $(call cc-option, -fno-jump-tables) 17 # Use long-calls for now, it's easier. And fa !! 17 18 # KBUILD_CFLAGS_MODULE += -fPIC !! 18 cpuflags-$(CONFIG_ALPHA_EV56) := -mcpu=ev56 19 # KBUILD_LDFLAGS_MODULE += -shared !! 19 cpuflags-$(CONFIG_ALPHA_POLARIS) := -mcpu=pca56 20 KBUILD_CFLAGS_MODULE += -mlong-calls !! 20 cpuflags-$(CONFIG_ALPHA_SX164) := -mcpu=pca56 21 !! 21 cpuflags-$(CONFIG_ALPHA_EV6) := -mcpu=ev6 22 cflags-y += $(call cc-option,-mv${CONFIG_HEXAG !! 22 cpuflags-$(CONFIG_ALPHA_EV67) := -mcpu=ev67 23 aflags-y += $(call cc-option,-mv${CONFIG_HEXAG !! 23 # If GENERIC, make sure to turn off any instruction set extensions that 24 ldflags-y += $(call cc-option,-mv${CONFIG_HEXA !! 24 # the host compiler might have on by default. 25 !! 25 cpuflags-$(CONFIG_ALPHA_GENERIC) := -mcpu=ev56 -mtune=ev6 26 KBUILD_CFLAGS += $(cflags-y) !! 26 27 KBUILD_AFLAGS += $(aflags-y) !! 27 cflags-y += $(cpuflags-y) 28 KBUILD_LDFLAGS += $(ldflags-y) !! 28 29 !! 29 30 # Thread-info register will be r19. This valu !! 30 # For TSUNAMI, we must have the assembler not emulate our instructions. 31 # it is hard-coded in several files. !! 31 # The same is true for IRONGATE, POLARIS, PYXIS. 32 TIR_NAME := r19 !! 32 # BWX is most important, but we don't really want any emulation ever. 33 KBUILD_CFLAGS += -ffixed-$(TIR_NAME) -DTHREADI !! 33 KBUILD_CFLAGS += $(cflags-y) -Wa,-mev6 34 KBUILD_AFLAGS += -DTHREADINFO_REG=$(TIR_NAME) !! 34 >> 35 libs-y += arch/alpha/lib/ >> 36 >> 37 # export what is needed by arch/alpha/boot/Makefile >> 38 LIBS_Y := $(patsubst %/, %/lib.a, $(libs-y)) >> 39 export LIBS_Y >> 40 >> 41 boot := arch/alpha/boot >> 42 >> 43 #Default target when executing make with no arguments >> 44 all boot: $(boot)/vmlinux.gz >> 45 >> 46 $(boot)/vmlinux.gz: vmlinux >> 47 $(Q)$(MAKE) $(build)=$(boot) $@ >> 48 >> 49 bootimage bootpfile bootpzfile: vmlinux >> 50 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ >> 51 >> 52 archheaders: >> 53 $(Q)$(MAKE) $(build)=arch/alpha/kernel/syscalls all >> 54 >> 55 define archhelp >> 56 echo '* boot - Compressed kernel image (arch/alpha/boot/vmlinux.gz)' >> 57 echo ' bootimage - SRM bootable image (arch/alpha/boot/bootimage)' >> 58 echo ' bootpfile - BOOTP bootable image (arch/alpha/boot/bootpfile)' >> 59 echo ' bootpzfile - compressed kernel BOOTP image (arch/alpha/boot/bootpzfile)' >> 60 endef
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.