blob: c7214abc0d84f9b8e2c4c591fc0256e77da1638e [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001# sparc64/Makefile
2#
3# Makefile for the architecture dependent flags and dependencies on the
4# 64-bit Sparc.
5#
6# Copyright (C) 1996,1998 David S. Miller (davem@caip.rutgers.edu)
7# Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
8#
9
David S. Miller4845afa2008-09-11 23:14:52 -070010CHECKFLAGS += -D__sparc__ -D__sparc_v9__ -D__arch64__ -m64
Linus Torvalds1da177e2005-04-16 15:20:36 -070011
Sam Ravnborg9ae95bc2008-07-07 22:30:35 +020012# Undefine sparc when processing vmlinux.lds - it is used
13# And teach CPP we are doing 64 bit builds (for this case)
14CPPFLAGS_vmlinux.lds += -m64 -Usparc
Linus Torvalds1da177e2005-04-16 15:20:36 -070015
Linus Torvalds1da177e2005-04-16 15:20:36 -070016LDFLAGS := -m elf64_sparc
Linus Torvalds1da177e2005-04-16 15:20:36 -070017
David S. Miller54cd6dd2008-02-14 00:37:21 -080018KBUILD_CFLAGS += -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow \
19 -ffixed-g4 -ffixed-g5 -fcall-used-g7 -Wno-sign-compare \
20 -Wa,--undeclared-regs
David S. Miller966d9052008-02-14 00:58:44 -080021KBUILD_CFLAGS += $(call cc-option,-mtune=ultrasparc3)
David S. Miller54cd6dd2008-02-14 00:37:21 -080022KBUILD_AFLAGS += -m64 -mcpu=ultrasparc -Wa,--undeclared-regs
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
Linus Torvalds1da177e2005-04-16 15:20:36 -070024ifeq ($(CONFIG_MCOUNT),y)
Sam Ravnborga0f97e02007-10-14 22:21:35 +020025 KBUILD_CFLAGS += -pg
Linus Torvalds1da177e2005-04-16 15:20:36 -070026endif
27
28head-y := arch/sparc64/kernel/head.o arch/sparc64/kernel/init_task.o
29
30core-y += arch/sparc64/kernel/ arch/sparc64/mm/
Linus Torvalds1da177e2005-04-16 15:20:36 -070031core-y += arch/sparc64/math-emu/
32libs-y += arch/sparc64/prom/ arch/sparc64/lib/
Linus Torvalds1da177e2005-04-16 15:20:36 -070033drivers-$(CONFIG_OPROFILE) += arch/sparc64/oprofile/
34
35boot := arch/sparc64/boot
36
37image tftpboot.img vmlinux.aout: vmlinux
38 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
39
40archclean:
41 $(Q)$(MAKE) $(clean)=$(boot)
42
43define archhelp
44 echo '* vmlinux - Standard sparc64 kernel'
45 echo ' vmlinux.aout - a.out kernel for sparc64'
46 echo ' tftpboot.img - Image prepared for tftp'
47endef
48