2005-04-17 02:20:36 +04:00
#
# ia64/Makefile
#
2006-03-06 01:14:10 +03:00
# This file is included by the global makefile so that you can add your own
# architecture-specific flags and dependencies.
#
2005-04-17 02:20:36 +04:00
# This file is subject to the terms and conditions of the GNU General Public
# License. See the file "COPYING" in the main directory of this archive
# for more details.
#
# Copyright (C) 1998-2004 by David Mosberger-Tang <davidm@hpl.hp.com>
#
2008-02-26 22:54:46 +03:00
KBUILD_DEFCONFIG := generic_defconfig
2005-04-17 02:20:36 +04:00
NM := $( CROSS_COMPILE) nm -B
READELF := $( CROSS_COMPILE) readelf
export AWK
2018-05-30 23:48:38 +03:00
CHECKFLAGS += -D__ia64= 1 -D__ia64__= 1 -D_LP64 -D__LP64__
2005-04-17 02:20:36 +04:00
OBJCOPYFLAGS := --strip-all
LDFLAGS_vmlinux := -static
kbuild: allow assignment to {A,C,LD}FLAGS_MODULE on the command line
It is now possible to assign options to AS, CC and LD
on the command line - which is only used when building modules.
{A,C,LD}FLAGS_MODULE was all used both in the top-level Makefile
in the arch makefiles, thus users had no way to specify
additional options to AS, CC, LD when building modules
without overriding the original value.
Introduce a new set of variables KBUILD_{A,C,LD}FLAGS_MODULE
that is used by arch specific files and free up
{A,C,LD}FLAGS_MODULE so they can be assigned on
the command line.
All arch Makefiles that used the old variables has been updated.
Note: Previously we had a MODFLAGS variable for both
AS and CC. But in favour of consistency this was dropped.
So in some cases arch Makefile has one assignmnet replaced by
two assignmnets.
Note2: MODFLAGS was not documented and is dropped
without any notice. I do not expect much/any breakage
from this.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Denys Vlasenko <vda.linux@googlemail.com>
Cc: Haavard Skinnemoen <hskinnemoen@atmel.com>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Chen Liqin <liqin.chen@sunplusct.com>
Acked-by: Mike Frysinger <vapier@gentoo.org> [blackfin]
Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> [avr32]
Signed-off-by: Michal Marek <mmarek@suse.cz>
2010-07-28 19:33:09 +04:00
KBUILD_LDFLAGS_MODULE += -T $( srctree) /arch/ia64/module.lds
2010-07-28 21:11:27 +04:00
KBUILD_AFLAGS_KERNEL := -mconstant-gp
2005-04-17 02:20:36 +04:00
EXTRA :=
cflags-y := -pipe $( EXTRA) -ffixed-r13 -mfixed-range= f12-f15,f32-f127 \
-falign-functions= 32 -frename-registers -fno-optimize-sibling-calls
2010-07-28 21:11:27 +04:00
KBUILD_CFLAGS_KERNEL := -mconstant-gp
2005-04-17 02:20:36 +04:00
GAS_STATUS = $( shell $( srctree) /arch/ia64/scripts/check-gas " $( CC) " " $( OBJDUMP) " )
2007-10-16 00:17:25 +04:00
KBUILD_CPPFLAGS += $( shell $( srctree) /arch/ia64/scripts/toolchain-flags " $( CC) " " $( OBJDUMP) " " $( READELF) " )
2005-04-17 02:20:36 +04:00
i f e q ( $( GAS_STATUS ) , b u g g y )
$( error Sorry , you need a newer version of the assember , one that is built from \
a source-tree that post-dates 18-Dec-2002. You can find a pre-compiled \
static binary of such an assembler at: \
\
ftp://ftp.hpl.hp.com/pub/linux-ia64/gas-030124.tar.gz)
e n d i f
2007-10-15 00:21:35 +04:00
KBUILD_CFLAGS += $( cflags-y)
2018-01-02 18:12:01 +03:00
head-y := arch/ia64/kernel/head.o
2005-04-17 02:20:36 +04:00
libs-y += arch/ia64/lib/
core-y += arch/ia64/kernel/ arch/ia64/mm/
core-$(CONFIG_IA64_DIG) += arch/ia64/dig/
2008-10-17 23:14:13 +04:00
core-$(CONFIG_IA64_DIG_VTD) += arch/ia64/dig/
2005-04-17 02:20:36 +04:00
core-$(CONFIG_IA64_GENERIC) += arch/ia64/dig/
core-$(CONFIG_IA64_HP_ZX1) += arch/ia64/dig/
core-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/dig/
core-$(CONFIG_IA64_SGI_SN2) += arch/ia64/sn/
2008-06-14 16:57:25 +04:00
core-$(CONFIG_IA64_SGI_UV) += arch/ia64/uv/
2005-04-17 02:20:36 +04:00
drivers-$(CONFIG_PCI) += arch/ia64/pci/
drivers-$(CONFIG_IA64_HP_SIM) += arch/ia64/hp/sim/
drivers-$(CONFIG_IA64_HP_ZX1) += arch/ia64/hp/common/ arch/ia64/hp/zx1/
drivers-$(CONFIG_IA64_HP_ZX1_SWIOTLB) += arch/ia64/hp/common/ arch/ia64/hp/zx1/
2008-05-07 00:18:57 +04:00
drivers-$(CONFIG_IA64_GENERIC) += arch/ia64/hp/common/ arch/ia64/hp/zx1/ arch/ia64/hp/sim/ arch/ia64/sn/ arch/ia64/uv/
2005-04-17 02:20:36 +04:00
drivers-$(CONFIG_OPROFILE) += arch/ia64/oprofile/
boot := arch/ia64/hp/sim/boot
2006-03-06 01:14:10 +03:00
PHONY += boot compressed check
2005-04-17 02:20:36 +04:00
all : compressed unwcheck
compressed : vmlinux .gz
2006-06-06 20:23:34 +04:00
vmlinuz : vmlinux .gz
2005-04-17 02:20:36 +04:00
vmlinux.gz : vmlinux
$( Q) $( MAKE) $( build) = $( boot) $@
unwcheck : vmlinux
2014-07-18 08:40:11 +04:00
-$( Q) READELF = $( READELF) $( PYTHON) $( srctree) /arch/ia64/scripts/unwcheck.py $<
2005-04-17 02:20:36 +04:00
archclean :
$( Q) $( MAKE) $( clean) = $( boot)
2005-09-13 19:50:39 +04:00
CLEAN_FILES += vmlinux.gz bootloader
2005-09-10 00:03:13 +04:00
2005-04-17 02:20:36 +04:00
boot : lib /lib .a vmlinux
$( Q) $( MAKE) $( build) = $( boot) $@
install : vmlinux .gz
sh $( srctree) /arch/ia64/install.sh $( KERNELRELEASE) $< System.map " $( INSTALL_PATH) "
d e f i n e a r c h h e l p
echo '* compressed - Build compressed kernel image'
echo ' install - Install compressed kernel image'
echo ' boot - Build vmlinux and bootloader for Ski simulator'
echo '* unwcheck - Check vmlinux for invalid unwind info'
e n d e f
2008-05-19 17:13:40 +04:00
2016-03-13 03:13:55 +03:00
archprepare : make_nr_irqs_h
2016-04-08 05:16:10 +03:00
PHONY += make_nr_irqs_h
2008-05-19 17:13:40 +04:00
2016-03-13 03:13:55 +03:00
make_nr_irqs_h :
2009-04-20 21:35:54 +04:00
$( Q) $( MAKE) $( build) = arch/ia64/kernel include/generated/nr-irqs.h