4 # Makefile for the architecture dependent flags and dependencies on the
7 # Copyright (C) 1994,1996,1998 David S. Miller (davem@caip.rutgers.edu)
8 # Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
10 # We are not yet configured - so test on arch
12 KBUILD_DEFCONFIG
:= sparc32_defconfig
14 KBUILD_DEFCONFIG
:= sparc64_defconfig
17 ifeq ($(CONFIG_SPARC32
),y
)
22 CHECKFLAGS
+= -D__sparc__
23 LDFLAGS
:= -m elf32_sparc
27 # We are adding -Wa,-Av8 to KBUILD_CFLAGS to deal with a specs bug in some
28 # versions of gcc. Some gcc versions won't pass -Av8 to binutils when you
29 # give -mcpu=v8. This silently worked with older bintutils versions but
31 KBUILD_CFLAGS
+= -m32
-mcpu
=v8
-pipe
-mno-fpu
-fcall-used-g5
-fcall-used-g7
32 KBUILD_CFLAGS
+= -Wa
,-Av8
34 KBUILD_AFLAGS
+= -m32
-Wa
,-Av8
41 CHECKFLAGS
+= -D__sparc__
-D__sparc_v9__
-D__arch64__
-m64
42 LDFLAGS
:= -m elf64_sparc
44 UTS_MACHINE
:= sparc64
46 KBUILD_CFLAGS
+= -m64
-pipe
-mno-fpu
-mcpu
=ultrasparc
-mcmodel
=medlow
47 KBUILD_CFLAGS
+= -ffixed-g4
-ffixed-g5
-fcall-used-g7
-Wno-sign-compare
48 KBUILD_CFLAGS
+= -Wa
,--undeclared-regs
49 KBUILD_CFLAGS
+= $(call cc-option
,-mtune
=ultrasparc3
)
50 KBUILD_AFLAGS
+= -m64
-mcpu
=ultrasparc
-Wa
,--undeclared-regs
52 ifeq ($(CONFIG_MCOUNT
),y
)
58 head-y
:= arch
/sparc
/kernel
/head_
$(BITS
).o
60 # See arch/sparc/Kbuild for the core part of the kernel
63 libs-y
+= arch
/sparc
/prom
/
64 libs-y
+= arch
/sparc
/lib
/
66 drivers-
$(CONFIG_PM
) += arch
/sparc
/power
/
67 drivers-
$(CONFIG_OPROFILE
) += arch
/sparc
/oprofile
/
69 boot
:= arch
/sparc
/boot
74 image zImage uImage tftpboot.img vmlinux.aout
: vmlinux
75 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
78 $(Q
)$(MAKE
) $(build
)=$(boot
) $@
81 $(Q
)$(MAKE
) $(clean)=$(boot
)
83 # This is the image used for packaging
84 KBUILD_IMAGE
:= $(boot
)/zImage
86 # Don't use tabs in echo arguments.
89 echo
'* image - kernel image ($(boot)/image)'
90 echo
'* zImage - stripped kernel image ($(boot)/zImage)'
91 echo
' uImage - U-Boot SPARC32 Image (only for LEON)'
92 echo
' tftpboot.img - image prepared for tftp'
96 echo
'* vmlinux - standard sparc64 kernel'
97 echo
'* zImage - stripped and compressed sparc64 kernel ($(boot)/zImage)'
98 echo
' vmlinux.aout - a.out kernel for sparc64'
99 echo
' tftpboot.img - image prepared for tftp'