18c2ecf20Sopenharmony_ci#
28c2ecf20Sopenharmony_ci# alpha/Makefile
38c2ecf20Sopenharmony_ci#
48c2ecf20Sopenharmony_ci# This file is subject to the terms and conditions of the GNU General Public
58c2ecf20Sopenharmony_ci# License.  See the file "COPYING" in the main directory of this archive
68c2ecf20Sopenharmony_ci# for more details.
78c2ecf20Sopenharmony_ci#
88c2ecf20Sopenharmony_ci# Copyright (C) 1994 by Linus Torvalds
98c2ecf20Sopenharmony_ci#
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciNM := $(NM) -B
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ciLDFLAGS_vmlinux	:= -static -N #-relax
148c2ecf20Sopenharmony_ciCHECKFLAGS	+= -D__alpha__
158c2ecf20Sopenharmony_cicflags-y	:= -pipe -mno-fp-regs -ffixed-8
168c2ecf20Sopenharmony_cicflags-y	+= $(call cc-option, -fno-jump-tables)
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_EV4)		:= -mcpu=ev4
198c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_EV5)		:= -mcpu=ev5
208c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_EV56)		:= -mcpu=ev56
218c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_POLARIS)	:= -mcpu=pca56
228c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_SX164)		:= -mcpu=pca56
238c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_EV6)		:= -mcpu=ev6
248c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_EV67)		:= -mcpu=ev67
258c2ecf20Sopenharmony_ci# If GENERIC, make sure to turn off any instruction set extensions that
268c2ecf20Sopenharmony_ci# the host compiler might have on by default.  Given that EV4 and EV5
278c2ecf20Sopenharmony_ci# have the same instruction set, prefer EV5 because an EV5 schedule is
288c2ecf20Sopenharmony_ci# more likely to keep an EV4 processor busy than vice-versa.
298c2ecf20Sopenharmony_cicpuflags-$(CONFIG_ALPHA_GENERIC)	:= -mcpu=ev5
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_cicflags-y				+= $(cpuflags-y)
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci# For TSUNAMI, we must have the assembler not emulate our instructions.
358c2ecf20Sopenharmony_ci# The same is true for IRONGATE, POLARIS, PYXIS.
368c2ecf20Sopenharmony_ci# BWX is most important, but we don't really want any emulation ever.
378c2ecf20Sopenharmony_ciKBUILD_CFLAGS += $(cflags-y) -Wa,-mev6
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_cihead-y := arch/alpha/kernel/head.o
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_cicore-y				+= arch/alpha/kernel/ arch/alpha/mm/
428c2ecf20Sopenharmony_cicore-$(CONFIG_MATHEMU)		+= arch/alpha/math-emu/
438c2ecf20Sopenharmony_cidrivers-$(CONFIG_OPROFILE)	+= arch/alpha/oprofile/
448c2ecf20Sopenharmony_cilibs-y				+= arch/alpha/lib/
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci# export what is needed by arch/alpha/boot/Makefile
478c2ecf20Sopenharmony_ciLIBS_Y := $(patsubst %/, %/lib.a, $(libs-y))
488c2ecf20Sopenharmony_ciexport LIBS_Y
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciboot := arch/alpha/boot
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci#Default target when executing make with no arguments
538c2ecf20Sopenharmony_ciall boot: $(boot)/vmlinux.gz
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci$(boot)/vmlinux.gz: vmlinux
568c2ecf20Sopenharmony_ci	$(Q)$(MAKE) $(build)=$(boot) $@
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_cibootimage bootpfile bootpzfile: vmlinux
598c2ecf20Sopenharmony_ci	$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ciarchclean:
628c2ecf20Sopenharmony_ci	$(Q)$(MAKE) $(clean)=$(boot)
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ciarchheaders:
658c2ecf20Sopenharmony_ci	$(Q)$(MAKE) $(build)=arch/alpha/kernel/syscalls all
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_cidefine archhelp
688c2ecf20Sopenharmony_ci  echo '* boot		- Compressed kernel image (arch/alpha/boot/vmlinux.gz)'
698c2ecf20Sopenharmony_ci  echo '  bootimage	- SRM bootable image (arch/alpha/boot/bootimage)'
708c2ecf20Sopenharmony_ci  echo '  bootpfile	- BOOTP bootable image (arch/alpha/boot/bootpfile)'
718c2ecf20Sopenharmony_ci  echo '  bootpzfile	- compressed kernel BOOTP image (arch/alpha/boot/bootpzfile)'
728c2ecf20Sopenharmony_ciendef
73