1 # This file is included by the global makefile so that you can add your own
2 # architecture-specific flags and dependencies. Remember to do have actions
3 # for "archclean" and "archdep" for cleaning up and making dependencies for
6 # This file is subject to the terms and conditions of the GNU General Public
7 # License. See the file "COPYING" in the main directory of this archive
10 # Copyright (C) 1994 by Linus Torvalds
11 # Changes for PPC by Gary Thomas
12 # Rewritten by Cort Dougan and Paul Mackerras
13 # Adjusted for PPC64 by Tom Gall
16 KERNELLOAD
:= 0xc000000000000000
18 HAS_BIARCH
:= $(call cc-option-yn
, -m64
)
19 ifeq ($(HAS_BIARCH
),y
)
21 LD
:= $(LD
) -m elf64ppc
25 new_nm
:= $(shell if
$(NM
) --help
2>&1 | grep
-- '--synthetic' > /dev
/null
; then echo y
; else echo n
; fi
)
28 NM
:= $(NM
) --synthetic
31 CHECKFLAGS
+= -m64
-D__powerpc__
33 LDFLAGS
:= -m elf64ppc
34 LDFLAGS_vmlinux
:= -Bstatic
-e
$(KERNELLOAD
) -Ttext
$(KERNELLOAD
)
35 CFLAGS
+= -msoft-float
-pipe
-mminimal-toc
-mtraceback
=none
37 ifeq ($(CONFIG_POWER4_ONLY
),y
)
38 CFLAGS
+= $(call cc-option
,-mcpu
=power4
)
40 CFLAGS
+= $(call cc-option
,-mtune
=power4
)
43 # Enable unit-at-a-time mode when possible. It shrinks the
44 # kernel considerably.
45 CFLAGS
+= $(call cc-option
,-funit-at-a-time
)
47 head-y
:= arch
/ppc64
/kernel
/head.o
49 libs-y
+= arch
/ppc64
/lib
/
50 core-y
+= arch
/ppc64
/kernel
/
51 core-y
+= arch
/ppc64
/mm
/
52 core-
$(CONFIG_XMON
) += arch
/ppc64
/xmon
/
53 drivers-
$(CONFIG_OPROFILE
) += arch
/ppc64
/oprofile
/
55 boot
:= arch
/ppc64
/boot
57 boottarget-
$(CONFIG_PPC_PSERIES
) := zImage zImage.initrd
58 boottarget-
$(CONFIG_PPC_ISERIES
) := vmlinux.sminitrd vmlinux.initrd vmlinux.sm
59 $(boottarget-y
): vmlinux
60 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
62 bootimage-
$(CONFIG_PPC_PSERIES
) := zImage
63 bootimage-
$(CONFIG_PPC_ISERIES
) := vmlinux
64 BOOTIMAGE
:= $(bootimage-y
)
66 $(Q
)$(MAKE
) $(build
)=$(boot
) BOOTIMAGE
=$(BOOTIMAGE
) $@
71 $(Q
)$(MAKE
) $(clean)=$(boot
)
73 prepare
: include/asm-ppc64
/offsets.h
75 arch
/ppc64
/kernel
/asm-offsets.s
: include/asm
include/linux
/version.h \
78 include/asm-ppc64
/offsets.h
: arch
/ppc64
/kernel
/asm-offsets.s
79 $(call filechk
,gen-asm-offsets
)
82 echo
'* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
83 echo
' zImage.initrd- Compressed kernel image with initrd attached,'
84 echo
' sourced from arch/$(ARCH)/boot/ramdisk.image.gz'
85 echo
' (arch/$(ARCH)/boot/zImage.initrd)'
88 CLEAN_FILES
+= include/asm-ppc64
/offsets.h