Merge branch 'for-4.0' of git://linux-nfs.org/~bfields/linux
[sfrench/cifs-2.6.git] / arch / sparc / Makefile
1 #
2 # sparc/Makefile
3 #
4 # Makefile for the architecture dependent flags and dependencies on the
5 # Sparc and sparc64.
6 #
7 # Copyright (C) 1994,1996,1998 David S. Miller (davem@caip.rutgers.edu)
8 # Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
9
10 # We are not yet configured - so test on arch
11 ifeq ($(ARCH),sparc)
12         KBUILD_DEFCONFIG := sparc32_defconfig
13 else
14         KBUILD_DEFCONFIG := sparc64_defconfig
15 endif
16
17 ifeq ($(CONFIG_SPARC32),y)
18 #####
19 # sparc32
20 #
21
22 CHECKFLAGS     += -D__sparc__
23 LDFLAGS        := -m elf32_sparc
24 export BITS    := 32
25 UTS_MACHINE    := sparc
26
27 KBUILD_CFLAGS  += -m32 -mcpu=v8 -pipe -mno-fpu -fcall-used-g5 -fcall-used-g7
28 KBUILD_AFLAGS  += -m32 -Wa,-Av8
29
30 else
31 #####
32 # sparc64
33 #
34
35 CHECKFLAGS    += -D__sparc__ -D__sparc_v9__ -D__arch64__ -m64
36 LDFLAGS       := -m elf64_sparc
37 export BITS   := 64
38 UTS_MACHINE   := sparc64
39
40 KBUILD_CFLAGS += -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow
41 KBUILD_CFLAGS += -ffixed-g4 -ffixed-g5 -fcall-used-g7 -Wno-sign-compare
42 KBUILD_CFLAGS += -Wa,--undeclared-regs
43 KBUILD_CFLAGS += $(call cc-option,-mtune=ultrasparc3)
44 KBUILD_AFLAGS += -m64 -mcpu=ultrasparc -Wa,--undeclared-regs
45
46 ifeq ($(CONFIG_MCOUNT),y)
47   KBUILD_CFLAGS += -pg
48 endif
49
50 endif
51
52 head-y                 := arch/sparc/kernel/head_$(BITS).o
53
54 # See arch/sparc/Kbuild for the core part of the kernel
55 core-y                 += arch/sparc/
56
57 libs-y                 += arch/sparc/prom/
58 libs-y                 += arch/sparc/lib/
59
60 drivers-$(CONFIG_PM) += arch/sparc/power/
61 drivers-$(CONFIG_OPROFILE)      += arch/sparc/oprofile/
62
63 boot := arch/sparc/boot
64
65 # Default target
66 all: zImage
67
68 image zImage uImage tftpboot.img vmlinux.aout: vmlinux
69         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
70
71 install:
72         $(Q)$(MAKE) $(build)=$(boot) $@
73
74 archclean:
75         $(Q)$(MAKE) $(clean)=$(boot)
76
77 # This is the image used for packaging
78 KBUILD_IMAGE := $(boot)/zImage
79
80 # Don't use tabs in echo arguments.
81 ifeq ($(ARCH),sparc)
82 define archhelp
83   echo  '* image        - kernel image ($(boot)/image)'
84   echo  '* zImage       - stripped kernel image ($(boot)/zImage)'
85   echo  '  uImage       - U-Boot SPARC32 Image (only for LEON)'
86   echo  '  tftpboot.img - image prepared for tftp'
87 endef
88 else
89 define archhelp
90   echo  '* vmlinux      - standard sparc64 kernel'
91   echo  '* zImage       - stripped and compressed sparc64 kernel ($(boot)/zImage)'
92   echo  '  vmlinux.aout - a.out kernel for sparc64'
93   echo  '  tftpboot.img - image prepared for tftp'
94 endef
95 endif