1############################################################################### 2# 3# MN10300 Kernel makefile system specifications 4# 5# Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. 6# Modified by David Howells (dhowells@redhat.com) 7# 8# This program is free software; you can redistribute it and/or 9# modify it under the terms of the GNU General Public Licence 10# as published by the Free Software Foundation; either version 11# 2 of the Licence, or (at your option) any later version. 12# 13############################################################################### 14 15KBUILD_DEFCONFIG := asb2303_defconfig 16 17CCSPECS := $(shell $(CC) -v 2>&1 | grep "^Reading specs from " | head -1 | cut -c20-) 18CCDIR := $(strip $(patsubst %/specs,%,$(CCSPECS))) 19KBUILD_CPPFLAGS += -nostdinc -I$(CCDIR)/include 20 21LDFLAGS := 22OBJCOPYFLAGS := -O binary -R .note -R .comment -S 23#LDFLAGS_vmlinux := -Map linkmap.txt 24CHECKFLAGS += 25 26PROCESSOR := unset 27UNIT := unset 28 29KBUILD_CFLAGS += -mam33 -mmem-funcs -DCPU=AM33 30KBUILD_AFLAGS += -mam33 -DCPU=AM33 31 32ifeq ($(CONFIG_MN10300_CURRENT_IN_E2),y) 33KBUILD_CFLAGS += -ffixed-e2 -fcall-saved-e5 34endif 35 36ifeq ($(CONFIG_MN10300_PROC_MN103E010),y) 37PROCESSOR := mn103e010 38endif 39 40ifeq ($(CONFIG_MN10300_UNIT_ASB2303),y) 41UNIT := asb2303 42endif 43ifeq ($(CONFIG_MN10300_UNIT_ASB2305),y) 44UNIT := asb2305 45endif 46 47 48head-y := arch/mn10300/kernel/head.o arch/mn10300/kernel/init_task.o 49 50core-y += arch/mn10300/kernel/ arch/mn10300/mm/ 51 52ifneq ($(PROCESSOR),unset) 53core-y += arch/mn10300/proc-$(PROCESSOR)/ 54endif 55ifneq ($(UNIT),unset) 56core-y += arch/mn10300/unit-$(UNIT)/ 57endif 58libs-y += arch/mn10300/lib/ 59 60drivers-$(CONFIG_OPROFILE) += arch/mn10300/oprofile/ 61 62boot := arch/mn10300/boot 63 64.PHONY: zImage 65 66KBUILD_IMAGE := $(boot)/zImage 67CLEAN_FILES += $(boot)/zImage 68CLEAN_FILES += $(boot)/compressed/vmlinux 69CLEAN_FILES += $(boot)/compressed/vmlinux.bin 70CLEAN_FILES += $(boot)/compressed/vmlinux.bin.gz 71 72zImage: vmlinux 73 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ 74 75all: zImage 76 77bootstrap: 78 $(Q)$(MAKEBOOT) bootstrap 79 80archclean: 81 $(Q)$(MAKE) $(clean)=arch/mn10300/proc-mn103e010 82 $(Q)$(MAKE) $(clean)=arch/mn10300/unit-asb2303 83 $(Q)$(MAKE) $(clean)=arch/mn10300/unit-asb2305 84 85define archhelp 86 echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)' 87endef 88 89# If you make sure the .S files get compiled with debug info, 90# uncomment the following to disable optimisations 91# that are unhelpful whilst debugging. 92ifdef CONFIG_DEBUG_INFO 93#KBUILD_CFLAGS += -O1 94KBUILD_AFLAGS += -Wa,--gdwarf2 95endif 96 97# 98# include the appropriate processor- and unit-specific headers 99# 100KBUILD_CPPFLAGS += -I$(srctree)/arch/mn10300/proc-$(PROCESSOR)/include 101KBUILD_CPPFLAGS += -I$(srctree)/arch/mn10300/unit-$(UNIT)/include 102