4 # This file is subject to the terms and conditions of the GNU General Public
5 # License. See the file "COPYING" in the main directory of this archive
8 # Copyright (C) 1998-2004 by David Mosberger-Tang <davidm@hpl.hp.com>
11 NM
:= $(CROSS_COMPILE
)nm
-B
12 READELF
:= $(CROSS_COMPILE
)readelf
16 CHECKFLAGS
+= -m64
-D__ia64
=1 -D__ia64__
=1 -D_LP64
-D__LP64__
18 OBJCOPYFLAGS
:= --strip-all
19 LDFLAGS_vmlinux
:= -static
20 LDFLAGS_MODULE
+= -T
$(srctree
)/arch
/ia64
/module.lds
21 AFLAGS_KERNEL
:= -mconstant-gp
24 cflags-y
:= -pipe
$(EXTRA
) -ffixed-r13
-mfixed-range
=f12-f15
,f32-f127 \
25 -falign-functions
=32 -frename-registers
-fno-optimize-sibling-calls
26 CFLAGS_KERNEL
:= -mconstant-gp
28 GCC_VERSION
:= $(call cc-version
)
29 GAS_STATUS
= $(shell $(srctree
)/arch
/ia64
/scripts
/check-gas
"$(CC)" "$(OBJDUMP)")
30 CPPFLAGS
+= $(shell $(srctree
)/arch
/ia64
/scripts
/toolchain-flags
"$(CC)" "$(OBJDUMP)" "$(READELF)")
32 ifeq ($(GAS_STATUS
),buggy
)
33 $(error Sorry
, you need a newer version of the assember
, one that is built from \
34 a source-tree that post-dates
18-Dec-2002. You can find a pre-compiled \
35 static binary of such an assembler at
: \
37 ftp
://ftp.hpl.hp.com
/pub
/linux-ia64
/gas-030124.
tar.gz
)
40 ifneq ($(shell if
[ $(GCC_VERSION
) -lt
0300 ] ; then echo
"bad"; fi
;),)
41 $(error Sorry
, your compiler is too old. GCC v2.96 is known to generate bad code.
)
44 ifeq ($(GCC_VERSION
),0304)
45 cflags-
$(CONFIG_ITANIUM
) += -mtune
=merced
46 cflags-
$(CONFIG_MCKINLEY
) += -mtune
=mckinley
50 head-y
:= arch
/ia64
/kernel
/head.o arch
/ia64
/kernel
/init_task.o
52 libs-y
+= arch
/ia64
/lib
/
53 core-y
+= arch
/ia64
/kernel
/ arch
/ia64
/mm
/
54 core-
$(CONFIG_IA32_SUPPORT
) += arch
/ia64
/ia32
/
55 core-
$(CONFIG_IA64_DIG
) += arch
/ia64
/dig
/
56 core-
$(CONFIG_IA64_GENERIC
) += arch
/ia64
/dig
/
57 core-
$(CONFIG_IA64_HP_ZX1
) += arch
/ia64
/dig
/
58 core-
$(CONFIG_IA64_HP_ZX1_SWIOTLB
) += arch
/ia64
/dig
/
59 core-
$(CONFIG_IA64_SGI_SN2
) += arch
/ia64
/sn
/
61 drivers-
$(CONFIG_PCI
) += arch
/ia64
/pci
/
62 drivers-
$(CONFIG_IA64_HP_SIM
) += arch
/ia64
/hp
/sim
/
63 drivers-
$(CONFIG_IA64_HP_ZX1
) += arch
/ia64
/hp
/common
/ arch
/ia64
/hp
/zx1
/
64 drivers-
$(CONFIG_IA64_HP_ZX1_SWIOTLB
) += arch
/ia64
/hp
/common
/ arch
/ia64
/hp
/zx1
/
65 drivers-
$(CONFIG_IA64_GENERIC
) += arch
/ia64
/hp
/common
/ arch
/ia64
/hp
/zx1
/ arch
/ia64
/hp
/sim
/ arch
/ia64
/sn
/
66 drivers-
$(CONFIG_OPROFILE
) += arch
/ia64
/oprofile
/
68 boot
:= arch
/ia64
/hp
/sim
/boot
70 .PHONY
: boot compressed
check
72 all: compressed unwcheck
74 compressed
: vmlinux.gz
77 $(Q
)$(MAKE
) $(build
)=$(boot
) $@
80 -$(Q
)READELF
=$(READELF
) $(srctree
)/arch
/ia64
/scripts
/unwcheck.py
$<
83 $(Q
)$(MAKE
) $(clean)=$(boot
)
85 CLEAN_FILES
+= include/asm-ia64
/.offsets.h.stamp vmlinux.gz bootloader
87 MRPROPER_FILES
+= include/asm-ia64
/offsets.h
89 prepare
: include/asm-ia64
/offsets.h
91 arch
/ia64
/kernel
/asm-offsets.s
: include/asm
include/linux
/version.h
include/config
/MARKER
93 include/asm-ia64
/offsets.h
: arch
/ia64
/kernel
/asm-offsets.s
94 $(call filechk
,gen-asm-offsets
)
96 arch
/ia64
/kernel
/asm-offsets.s
: include/asm-ia64
/.offsets.h.stamp
98 include/asm-ia64
/.offsets.h.stamp
:
99 mkdir
-p
include/asm-ia64
100 [ -s
include/asm-ia64
/offsets.h
] \
101 || echo
"#define IA64_TASK_SIZE 0" > include/asm-ia64
/offsets.h
104 boot
: lib
/lib.a vmlinux
105 $(Q
)$(MAKE
) $(build
)=$(boot
) $@
108 sh
$(srctree
)/arch
/ia64
/install.sh
$(KERNELRELEASE
) $< System.map
"$(INSTALL_PATH)"
111 echo
'* compressed - Build compressed kernel image'
112 echo
' install - Install compressed kernel image'
113 echo
' boot - Build vmlinux and bootloader for Ski simulator'
114 echo
'* unwcheck - Check vmlinux for invalid unwind info'