blob: 121c717d9db5d9d975c79d3ac09528b8d93bdef5 [file] [log] [blame]
Marian Balakowiczf9328632006-09-01 19:49:50 +02001# (C) Copyright 2000-2006
wdenk3c2b3d42005-04-05 23:32:21 +00002# Wolfgang Denk, DENX Software Engineering, wd@denx.de
3#
4# (C) Copyright 2005
5# Ladislav Michl, 2N Telekomunikace, michl@2n.cz
6#
7# See file CREDITS for list of people who contributed to this
8# project.
9#
10# This program is free software; you can redistribute it and/or modify
11# it under the terms of the GNU General Public License version 2 as
12# published by the Free Software Foundation.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
20# along with this program; if not, write to the Free Software
21# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22# MA 02111-1307 USA
23#
24
25include $(TOPDIR)/config.mk
26
Marian Balakowiczf9328632006-09-01 19:49:50 +020027LIB = $(obj)lib$(BOARD).a
wdenk3c2b3d42005-04-05 23:32:21 +000028
Marian Balakowiczf9328632006-09-01 19:49:50 +020029COBJS := voiceblue.o
wdenk3c2b3d42005-04-05 23:32:21 +000030SOBJS := setup.o
31
Marian Balakowiczf9328632006-09-01 19:49:50 +020032SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) eeprom.c eeprom_start.S
33OBJS := $(addprefix $(obj),$(COBJS))
34SOBJS := $(addprefix $(obj),$(SOBJS))
35
wdenk3c2b3d42005-04-05 23:32:21 +000036gcclibdir := $(shell dirname `$(CC) -print-libgcc-file-name`)
37
38LOAD_ADDR = 0x10400000
Wolfgang Denkb2f50802005-08-12 23:43:12 +020039LDSCRIPT = $(TOPDIR)/board/$(BOARDDIR)/eeprom.lds
Marian Balakowiczf9328632006-09-01 19:49:50 +020040lnk = $(if $(obj),$(obj),.)
wdenk3c2b3d42005-04-05 23:32:21 +000041
Marian Balakowiczf9328632006-09-01 19:49:50 +020042all: $(obj).depend $(LIB) $(obj)eeprom.srec $(obj)eeprom.bin
wdenk3c2b3d42005-04-05 23:32:21 +000043
44$(LIB): $(OBJS) $(SOBJS)
Wolfgang Denk2b208f52006-10-09 01:02:05 +020045 $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS)
wdenk3c2b3d42005-04-05 23:32:21 +000046
Wolfgang Denk1aada9c2009-08-17 14:00:53 +020047$(obj)eeprom.srec: $(obj)eeprom.o $(obj)eeprom_start.o $(obj)u-boot.lds
48 cd $(lnk) && $(LD) -T $(obj)u-boot.lds -g -Ttext $(LOAD_ADDR) \
Marian Balakowiczf9328632006-09-01 19:49:50 +020049 -o $(<:.o=) -e eeprom eeprom.o eeprom_start.o \
Wolfgang Denk48677a12009-07-22 23:53:23 +020050 -L$(obj)../../examples/standalone -lstubs \
Marian Balakowiczf9328632006-09-01 19:49:50 +020051 -L$(obj)../../lib_generic -lgeneric \
wdenk3c2b3d42005-04-05 23:32:21 +000052 -L$(gcclibdir) -lgcc
53 $(OBJCOPY) -O srec $(<:.o=) $@
54
Marian Balakowiczf9328632006-09-01 19:49:50 +020055$(obj)eeprom.bin: $(obj)eeprom.srec
Wolfgang Denke5445282005-08-12 22:56:51 +020056 $(OBJCOPY) -I srec -O binary $< $@ 2>/dev/null
wdenk3c2b3d42005-04-05 23:32:21 +000057
Wolfgang Denk1aada9c2009-08-17 14:00:53 +020058$(obj)u-boot.lds: $(LDSCRIPT)
59 $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
60
wdenk3c2b3d42005-04-05 23:32:21 +000061clean:
Marian Balakowiczf9328632006-09-01 19:49:50 +020062 rm -f $(SOBJS) $(OBJS) $(obj)eeprom \
63 $(obj)eeprom.srec $(obj)eeprom.bin \
Wolfgang Denk1aada9c2009-08-17 14:00:53 +020064 $(obj)eeprom.o $(obj)eeprom_start.o \
65 $(obj)u-boot.lds
wdenk3c2b3d42005-04-05 23:32:21 +000066
67distclean: clean
Wolfgang Denkc8a3b102008-07-02 23:49:18 +020068 rm -f $(LIB) core *.bak $(obj).depend
wdenk3c2b3d42005-04-05 23:32:21 +000069
70#########################################################################
71
Marian Balakowiczf9328632006-09-01 19:49:50 +020072# defines $(obj).depend target
73include $(SRCTREE)/rules.mk
wdenk3c2b3d42005-04-05 23:32:21 +000074
Marian Balakowiczf9328632006-09-01 19:49:50 +020075sinclude $(obj).depend
wdenk3c2b3d42005-04-05 23:32:21 +000076
77#########################################################################