]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | # |
2 | # frv/Makefile | |
3 | # | |
4 | # This file is included by the global makefile so that you can add your own | |
5 | # architecture-specific flags and dependencies. Remember to do have actions | |
6 | # for "archclean" and "archdep" for cleaning up and making dependencies for | |
7 | # this architecture | |
8 | # | |
9 | # This file is subject to the terms and conditions of the GNU General Public | |
10 | # License. See the file "COPYING" in the main directory of this archive | |
11 | # for more details. | |
12 | # | |
13 | # Copyright (c) 2003, 2004 Red Hat Inc. | |
14 | # - Written by David Howells <[email protected]> | |
15 | # - Derived from arch/m68knommu/Makefile, | |
16 | # Copyright (c) 1999,2001 D. Jeff Dionne <[email protected]>, | |
17 | # Rt-Control Inc. / Lineo, Inc. | |
18 | # | |
19 | # Copyright (C) 1998,1999 D. Jeff Dionne <[email protected]>, | |
20 | # Kenneth Albanowski <[email protected]>, | |
21 | # | |
22 | # Based on arch/m68k/Makefile: | |
23 | # Copyright (C) 1994 by Hamish Macdonald | |
24 | # | |
25 | ||
26 | CCSPECS := $(shell $(CC) -v 2>&1 | grep "^Reading specs from " | head -1 | cut -c20-) | |
27 | CCDIR := $(strip $(patsubst %/specs,%,$(CCSPECS))) | |
28 | CPUCLASS := fr400 | |
29 | ||
30 | # test for cross compiling | |
31 | COMPILE_ARCH = $(shell uname -m) | |
32 | ||
33 | ifdef CONFIG_MMU | |
34 | UTS_SYSNAME = -DUTS_SYSNAME=\"Linux\" | |
35 | else | |
36 | UTS_SYSNAME = -DUTS_SYSNAME=\"uClinux\" | |
37 | endif | |
38 | ||
39 | ARCHMODFLAGS += -G0 -mlong-calls | |
40 | ||
41 | ifdef CONFIG_GPREL_DATA_8 | |
42 | CFLAGS += -G8 | |
43 | else | |
44 | ifdef CONFIG_GPREL_DATA_4 | |
45 | CFLAGS += -G4 | |
46 | else | |
47 | ifdef CONFIG_GPREL_DATA_NONE | |
48 | CFLAGS += -G0 | |
49 | endif | |
50 | endif | |
51 | endif | |
52 | ||
53 | #LDFLAGS_vmlinux := -Map linkmap.txt | |
54 | ||
55 | ifdef CONFIG_GC_SECTIONS | |
56 | CFLAGS += -ffunction-sections -fdata-sections | |
57 | LINKFLAGS += --gc-sections | |
58 | endif | |
59 | ||
60 | ifndef CONFIG_FRAME_POINTER | |
61 | CFLAGS += -mno-linked-fp | |
62 | endif | |
63 | ||
64 | ifdef CONFIG_CPU_FR451_COMPILE | |
65 | CFLAGS += -mcpu=fr450 | |
66 | AFLAGS += -mcpu=fr450 | |
67 | ASFLAGS += -mcpu=fr450 | |
68 | else | |
69 | ifdef CONFIG_CPU_FR551_COMPILE | |
70 | CFLAGS += -mcpu=fr550 | |
71 | AFLAGS += -mcpu=fr550 | |
72 | ASFLAGS += -mcpu=fr550 | |
73 | else | |
74 | CFLAGS += -mcpu=fr400 | |
75 | AFLAGS += -mcpu=fr400 | |
76 | ASFLAGS += -mcpu=fr400 | |
77 | endif | |
78 | endif | |
79 | ||
80 | # pretend the kernel is going to run on an FR400 with no media-fp unit | |
81 | # - reserve CC3 for use with atomic ops | |
82 | # - all the extra registers are dealt with only at context switch time | |
83 | CFLAGS += -mno-fdpic -mgpr-32 -msoft-float -mno-media | |
28baebae | 84 | CFLAGS += -ffixed-fcc3 -ffixed-cc3 -ffixed-gr15 -ffixed-icc2 |
1da177e4 LT |
85 | AFLAGS += -mno-fdpic |
86 | ASFLAGS += -mno-fdpic | |
87 | ||
88 | # make sure the .S files get compiled with debug info | |
89 | # and disable optimisations that are unhelpful whilst debugging | |
90 | ifdef CONFIG_DEBUG_INFO | |
91 | CFLAGS += -O1 | |
92 | AFLAGS += -Wa,--gdwarf2 | |
93 | ASFLAGS += -Wa,--gdwarf2 | |
94 | endif | |
95 | ||
96 | head-y := arch/frv/kernel/head.o arch/frv/kernel/init_task.o | |
97 | ||
98 | core-y += arch/frv/kernel/ arch/frv/mm/ | |
99 | libs-y += arch/frv/lib/ | |
100 | ||
101 | core-$(CONFIG_MB93090_MB00) += arch/frv/mb93090-mb00/ | |
102 | ||
103 | all: Image | |
104 | ||
105 | Image: vmlinux | |
106 | $(Q)$(MAKE) $(build)=arch/frv/boot $@ | |
107 | ||
108 | bootstrap: | |
109 | $(Q)$(MAKEBOOT) bootstrap | |
110 | ||
1da177e4 | 111 | archclean: |
00ddaf20 | 112 | $(Q)$(MAKE) $(clean)=arch/frv/boot |
1da177e4 LT |
113 | |
114 | archdep: scripts/mkdep symlinks | |
41be6aef | 115 | $(Q)$(MAKE) $(build)=arch/frv/boot dep |