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__
31 #KBUILD_CFLAGS += -g -pipe -fcall-used-g5 -fcall-used-g7
32 KBUILD_CFLAGS
+= -m32
-pipe
-mno-fpu
-fcall-used-g5
-fcall-used-g7
35 #LDFLAGS_vmlinux = -N -Ttext 0xf0004000
36 # Since 2.5.40, the first stage is left not btfix-ed.
37 # Actual linking is done with "make image".
45 CHECKFLAGS
+= -D__sparc__
-D__sparc_v9__
-D__arch64__
-m64
47 LDFLAGS
:= -m elf64_sparc
50 KBUILD_CFLAGS
+= -m64
-pipe
-mno-fpu
-mcpu
=ultrasparc
-mcmodel
=medlow \
51 -ffixed-g4
-ffixed-g5
-fcall-used-g7
-Wno-sign-compare \
53 KBUILD_CFLAGS
+= $(call cc-option
,-mtune
=ultrasparc3
)
54 KBUILD_AFLAGS
+= -m64
-mcpu
=ultrasparc
-Wa
,--undeclared-regs
56 ifeq ($(CONFIG_MCOUNT
),y
)
62 head-y
:= arch
/sparc
/kernel
/head_
$(BITS
).o
63 head-y
+= arch
/sparc
/kernel
/init_task.o
65 core-y
+= arch
/sparc
/kernel
/
66 core-y
+= arch
/sparc
/mm
/ arch
/sparc
/math-emu
/
68 libs-y
+= arch
/sparc
/prom
/
69 libs-y
+= arch
/sparc
/lib
/
71 drivers-
$(CONFIG_OPROFILE
) += arch
/sparc
/oprofile
/
73 # Export what is needed by arch/sparc/boot/Makefile
74 export VMLINUX_INIT VMLINUX_MAIN
75 VMLINUX_INIT
:= $(head-y
) $(init-y
)
76 VMLINUX_MAIN
:= $(core-y
) kernel
/ mm
/ fs
/ ipc
/ security
/ crypto
/ block
/
77 VMLINUX_MAIN
+= $(patsubst %/, %/lib.a
, $(libs-y
)) $(libs-y
)
78 VMLINUX_MAIN
+= $(drivers-y
) $(net-y
)
81 export kallsyms.o
:= .tmp_kallsyms2.o
84 boot
:= arch
/sparc
/boot
89 image zImage tftpboot.img vmlinux.aout
: vmlinux
90 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
93 $(Q
)$(MAKE
) $(clean)=$(boot
)
95 # This is the image used for packaging
96 KBUILD_IMAGE
:= $(boot
)/zImage
98 # Don't use tabs in echo arguments.
101 echo
'* image - kernel image ($(boot)/image)'
102 echo
'* zImage - stripped kernel image ($(boot)/zImage)'
103 echo
' tftpboot.img - image prepared for tftp'
107 echo
'* vmlinux - standard sparc64 kernel'
108 echo
'* zImage - stripped and compressed sparc64 kernel ($(boot)/zImage)'
109 echo
' vmlinux.aout - a.out kernel for sparc64'
110 echo
' tftpboot.img - image prepared for tftp'