Build arch/$ARCH/lib/bootm.o depending on CONFIG_CMD_BOOTM
[karo-tx-uboot.git] / arch / sh / lib / Makefile
1 #
2 # Copyright (c) 2007
3 # Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
4 #
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License as
7 # published by the Free Software Foundation; either version 2 of
8 # the License, or (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place, Suite 330, Boston,
18 # MA 02111-1307 USA
19 #
20
21 include $(TOPDIR)/config.mk
22
23 LIB     = $(obj)lib$(ARCH).o
24 LIBGCC  = $(obj)libgcc.o
25
26 SOBJS-y +=
27 GLSOBJS += ashiftrt.o
28 GLSOBJS += ashiftlt.o
29 GLSOBJS += lshiftrt.o
30 GLSOBJS += ashldi3.o
31 GLSOBJS += ashrsi3.o
32 GLSOBJS += lshrdi3.o
33 GLSOBJS += movmem.o
34
35 COBJS-y += board.o
36 COBJS-$(CONFIG_CMD_BOOTM) += bootm.o
37 ifeq ($(CONFIG_SH2),y)
38 COBJS-y += time_sh2.o
39 else
40 COBJS-y += time.o
41 endif
42 ifeq ($(CONFIG_CMD_SH_ZIMAGEBOOT),y)
43 COBJS-y += zimageboot.o
44 endif
45
46 SRCS    := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c)
47 OBJS    := $(addprefix $(obj),$(SOBJS-y) $(COBJS-y))
48 LGOBJS  := $(addprefix $(obj),$(GLSOBJS)) \
49            $(addprefix $(obj),$(GLCOBJS))
50
51 # Always build libsh.o
52 TARGETS := $(LIB)
53
54 # Build private libgcc only when asked for
55 ifdef USE_PRIVATE_LIBGCC
56 TARGETS += $(LIBGCC)
57 endif
58
59 all:    $(TARGETS)
60
61 $(LIB): $(obj).depend $(OBJS)
62         $(call cmd_link_o_target, $(OBJS))
63
64 $(LIBGCC): $(obj).depend $(LGOBJS)
65         $(call cmd_link_o_target, $(LGOBJS))
66
67 #########################################################################
68
69 # defines $(obj).depend target
70 include $(SRCTREE)/rules.mk
71
72 sinclude $(obj).depend
73
74 #########################################################################