1# 2# ia64/Makefile 3# 4# This file is included by the global makefile so that you can add your own 5# architecture-specific flags and dependencies. 6# 7# This file is subject to the terms and conditions of the GNU General Public 8# License. See the file "COPYING" in the main directory of this archive 9# for more details. 10# 11# Copyright (C) 1998-2004 by David Mosberger-Tang <davidm@hpl.hp.com> 12# 13 14KBUILD_DEFCONFIG := generic_defconfig 15 16NM := $(CROSS_COMPILE)nm -B 17READELF := $(CROSS_COMPILE)readelf 18 19export AWK 20 21CHECKFLAGS += -m64 -D__ia64=1 -D__ia64__=1 -D_LP64 -D__LP64__ 22 23OBJCOPYFLAGS := --strip-all 24LDFLAGS_vmlinux := -static 25LDFLAGS_MODULE += -T $(srctree)/arch/ia64/module.lds 26AFLAGS_KERNEL := -mconstant-gp 27EXTRA := 28 29cflags-y := -pipe $(EXTRA) -ffixed-r13 -mfixed-range=f12-f15,f32-f127 \ 30 -falign-functions=32 -frename-registers -fno-optimize-sibling-calls 31CFLAGS_KERNEL := -mconstant-gp 32 33GAS_STATUS = $(shell $(srctree)/arch/ia64/scripts/check-gas "$(CC)" "$(OBJDUMP)") 34KBUILD_CPPFLAGS += $(shell $(srctree)/arch/ia64/scripts/toolchain-flags "$(CC)" "$(OBJDUMP)" "$(READELF)") 35 36ifeq ($(GAS_STATUS),buggy) 37$(error Sorry, you need a newer version of the assember, one that is built from \ 38 a source-tree that post-dates 18-Dec-2002. You can find a pre-compiled \ 39 static binary of such an assembler at: \ 40 \ 41 ftp://ftp.hpl.hp.com/pub/linux-ia64/gas-030124.tar.gz) 42endif 43 44ifeq ($(call cc-version),0304) 45 cflags-$(CONFIG_ITANIUM) += -mtune=merced 46 cflags-$(CONFIG_MCKINLEY) += -mtune=mckinley 47endif 48 49KBUILD_CFLAGS += $(cflags-y) 50head-y := arch/ia64/kernel/head.o arch/ia64/kernel/init_task.o 51 52libs-y += arch/ia64/lib/ 53core-y += arch/ia64/kernel/ arch/ia64/mm/ 54core-$(CONFIG_IA32_SUPPORT) += arch/ia64/ia32/ 55core-$(CONFIG_IA64_DIG) += arch/ia64/dig/ 56core-$(CONFIG_IA64_DIG_VTD) += arch/ia64/dig/ 57core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/ 58core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/ 59core-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/dig/ 60core-$(CONFIG_IA64_XEN_GUEST) += arch/ia64/dig/ 61core-$(CONFIG_IA64_SGI_SN2) += arch/ia64/sn/ 62core-$(CONFIG_IA64_SGI_UV) += arch/ia64/uv/ 63core-$(CONFIG_KVM) += arch/ia64/kvm/ 64core-$(CONFIG_XEN) += arch/ia64/xen/ 65 66drivers-$(CONFIG_PCI) += arch/ia64/pci/ 67drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/ 68drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ 69drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ 70drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ arch/ia64/uv/ 71drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/ 72 73boot := arch/ia64/hp/sim/boot 74 75PHONY += boot compressed check 76 77all: compressed unwcheck 78 79compressed: vmlinux.gz 80 81vmlinuz: vmlinux.gz 82 83vmlinux.gz: vmlinux 84 $(Q)$(MAKE) $(build)=$(boot) $@ 85 86unwcheck: vmlinux 87 -$(Q)READELF=$(READELF) python $(srctree)/arch/ia64/scripts/unwcheck.py $< 88 89archclean: 90 $(Q)$(MAKE) $(clean)=$(boot) 91 92CLEAN_FILES += vmlinux.gz bootloader 93 94boot: lib/lib.a vmlinux 95 $(Q)$(MAKE) $(build)=$(boot) $@ 96 97install: vmlinux.gz 98 sh $(srctree)/arch/ia64/install.sh $(KERNELRELEASE) $< System.map "$(INSTALL_PATH)" 99 100define archhelp 101 echo '* compressed - Build compressed kernel image' 102 echo ' install - Install compressed kernel image' 103 echo ' boot - Build vmlinux and bootloader for Ski simulator' 104 echo '* unwcheck - Check vmlinux for invalid unwind info' 105endef 106 107archprepare: make_nr_irqs_h FORCE 108PHONY += make_nr_irqs_h FORCE 109 110make_nr_irqs_h: FORCE 111 $(Q)$(MAKE) $(build)=arch/ia64/kernel include/asm-ia64/nr-irqs.h 112