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
)
23 # Uncomment the first KBUILD_CFLAGS if you are doing kgdb source level
24 # debugging of the kernel to get the proper debugging information.
27 LDFLAGS
:= -m elf32_sparc
28 CHECKFLAGS
+= -D__sparc__
32 #KBUILD_CFLAGS += -g -pipe -fcall-used-g5 -fcall-used-g7
33 KBUILD_CFLAGS
+= -m32
-pipe
-mno-fpu
-fcall-used-g5
-fcall-used-g7
36 #LDFLAGS_vmlinux = -N -Ttext 0xf0004000
37 # Since 2.5.40, the first stage is left not btfix-ed.
38 # Actual linking is done with "make image".
46 CHECKFLAGS
+= -D__sparc__
-D__sparc_v9__
-D__arch64__
-m64
48 LDFLAGS
:= -m elf64_sparc
50 UTS_MACHINE
:= sparc64
52 KBUILD_CFLAGS
+= -m64
-pipe
-mno-fpu
-mcpu
=ultrasparc
-mcmodel
=medlow \
53 -ffixed-g4
-ffixed-g5
-fcall-used-g7
-Wno-sign-compare \
55 KBUILD_CFLAGS
+= $(call cc-option
,-mtune
=ultrasparc3
)
56 KBUILD_AFLAGS
+= -m64
-mcpu
=ultrasparc
-Wa
,--undeclared-regs
58 ifeq ($(CONFIG_MCOUNT
),y
)
64 head-y
:= arch
/sparc
/kernel
/head_
$(BITS
).o
65 head-y
+= arch
/sparc
/kernel
/init_task.o
67 core-y
+= arch
/sparc
/kernel
/
68 core-y
+= arch
/sparc
/mm
/ arch
/sparc
/math-emu
/
70 libs-y
+= arch
/sparc
/prom
/
71 libs-y
+= arch
/sparc
/lib
/
73 drivers-
$(CONFIG_OPROFILE
) += arch
/sparc
/oprofile
/
75 # Export what is needed by arch/sparc/boot/Makefile
76 export VMLINUX_INIT VMLINUX_MAIN
77 VMLINUX_INIT
:= $(head-y
) $(init-y
)
78 VMLINUX_MAIN
:= $(core-y
) kernel
/ mm
/ fs
/ ipc
/ security
/ crypto
/ block
/
79 VMLINUX_MAIN
+= $(patsubst %/, %/lib.a
, $(libs-y
)) $(libs-y
)
80 VMLINUX_MAIN
+= $(drivers-y
) $(net-y
)
83 export kallsyms.o
:= .tmp_kallsyms2.o
86 boot
:= arch
/sparc
/boot
91 image zImage uImage tftpboot.img vmlinux.aout
: vmlinux
92 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
95 $(Q
)$(MAKE
) $(clean)=$(boot
)
97 # This is the image used for packaging
98 KBUILD_IMAGE
:= $(boot
)/zImage
100 # Don't use tabs in echo arguments.
103 echo
'* image - kernel image ($(boot)/image)'
104 echo
'* zImage - stripped kernel image ($(boot)/zImage)'
105 echo
' uImage - U-Boot SPARC32 Image (only for LEON)'
106 echo
' tftpboot.img - image prepared for tftp'
110 echo
'* vmlinux - standard sparc64 kernel'
111 echo
'* zImage - stripped and compressed sparc64 kernel ($(boot)/zImage)'
112 echo
' vmlinux.aout - a.out kernel for sparc64'
113 echo
' tftpboot.img - image prepared for tftp'