xref: /openbmc/linux/arch/openrisc/Makefile (revision 2be9e847)
1# BK Id: %F% %I% %G% %U% %#%
2#
3# This file is included by the global makefile so that you can add your own
4# architecture-specific flags and dependencies.
5#
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
8# for more details.
9#
10# Copyright (C) 1994 by Linus Torvalds
11# Modifications for the OpenRISC architecture:
12# Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com>
13# Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
14#
15# Based on:
16# arch/i386/Makefile
17
18KBUILD_DEFCONFIG := or1ksim_defconfig
19
20OBJCOPYFLAGS    := -O binary -R .note -R .comment -S
21LIBGCC 		:= $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
22
23KBUILD_CFLAGS	+= -pipe -ffixed-r10 -D__linux__
24KBUILD_CFLAGS	+= -msfimm -mshftimm
25
26all: vmlinux.bin
27
28boot := arch/$(ARCH)/boot
29
30ifeq ($(CONFIG_OPENRISC_HAVE_INST_MUL),y)
31	KBUILD_CFLAGS += $(call cc-option,-mhard-mul)
32else
33	KBUILD_CFLAGS += $(call cc-option,-msoft-mul)
34endif
35
36ifeq ($(CONFIG_OPENRISC_HAVE_INST_DIV),y)
37	KBUILD_CFLAGS += $(call cc-option,-mhard-div)
38else
39	KBUILD_CFLAGS += $(call cc-option,-msoft-div)
40endif
41
42ifeq ($(CONFIG_OPENRISC_HAVE_INST_CMOV),y)
43	KBUILD_CFLAGS += $(call cc-option,-mcmov)
44endif
45
46ifeq ($(CONFIG_OPENRISC_HAVE_INST_ROR),y)
47	KBUILD_CFLAGS += $(call cc-option,-mror)
48endif
49
50ifeq ($(CONFIG_OPENRISC_HAVE_INST_RORI),y)
51	KBUILD_CFLAGS += $(call cc-option,-mrori)
52endif
53
54ifeq ($(CONFIG_OPENRISC_HAVE_INST_SEXT),y)
55	KBUILD_CFLAGS += $(call cc-option,-msext)
56endif
57
58head-y 		:= arch/openrisc/kernel/head.o
59
60libs-y		+= $(LIBGCC)
61
62PHONY += vmlinux.bin
63
64vmlinux.bin: vmlinux
65	$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
66