Loading...
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
58libs-y += $(LIBGCC)
59
60PHONY += vmlinux.bin
61
62vmlinux.bin: vmlinux
63 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
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. Remember to do have actions
5# for "archclean" and "archdep" for cleaning up and making dependencies for
6# this architecture
7#
8# This file is subject to the terms and conditions of the GNU General Public
9# License. See the file "COPYING" in the main directory of this archive
10# for more details.
11#
12# Copyright (C) 1994 by Linus Torvalds
13# Modifications for the OpenRISC architecture:
14# Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com>
15# Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
16#
17# Based on:
18# arch/i386/Makefile
19
20KBUILD_DEFCONFIG := or1ksim_defconfig
21
22LDFLAGS :=
23OBJCOPYFLAGS := -O binary -R .note -R .comment -S
24LDFLAGS_vmlinux :=
25LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
26
27KBUILD_CFLAGS += -pipe -ffixed-r10 -D__linux__
28CHECKFLAGS += -mbig-endian
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
42head-y := arch/openrisc/kernel/head.o
43
44core-y += arch/openrisc/lib \
45 arch/openrisc/kernel/ \
46 arch/openrisc/mm/
47libs-y += $(LIBGCC)
48
49ifneq '$(CONFIG_OPENRISC_BUILTIN_DTB)' '""'
50BUILTIN_DTB := y
51else
52BUILTIN_DTB := n
53endif
54core-$(BUILTIN_DTB) += arch/openrisc/boot/dts/
55
56all: vmlinux