]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/netstar/Makefile
imported Freescale specific U-Boot additions for i.MX28,... release L2.6.31_10.08.01
[karo-tx-uboot.git] / board / netstar / Makefile
1 #
2 # (C) Copyright 2006
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 #
5 # (C) Copyright 2005
6 # Ladislav Michl, 2N Telekomunikace, michl@2n.cz
7 #
8 # See file CREDITS for list of people who contributed to this
9 # project.
10 #
11 # This program is free software; you can redistribute it and/or
12 # modify it under the terms of the GNU General Public License as
13 # published by the Free Software Foundation; either version 2 of
14 # the License, or (at your option) any later version.
15 #
16 # This program is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 # GNU General Public License for more details.
20 #
21 # You should have received a copy of the GNU General Public License
22 # along with this program; if not, write to the Free Software
23 # Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24 # MA 02111-1307 USA
25 #
26
27 include $(TOPDIR)/config.mk
28
29 LIB     = $(obj)lib$(BOARD).a
30
31 COBJS   := netstar.o
32 SOBJS   := setup.o crcek.o
33
34 SRCS    := $(SOBJS:.o=.S) $(COBJS:.o=.c) eeprom.c \
35                 eeprom_start.S
36 OBJS    := $(addprefix $(obj),$(COBJS))
37 SOBJS   := $(addprefix $(obj),$(SOBJS))
38
39 gcclibdir := $(shell dirname `$(CC) -print-libgcc-file-name`)
40
41 LOAD_ADDR = 0x10400000
42 LDSCRIPT = $(TOPDIR)/board/$(BOARDDIR)/eeprom.lds
43 lnk = $(if $(obj),$(obj),.)
44
45 HOSTCFLAGS = -Wall -pedantic -I$(TOPDIR)/include
46
47 all:    $(obj).depend $(LIB) $(obj)eeprom.srec $(obj)eeprom.bin \
48                 $(obj)crcek.srec $(obj)crcek.bin $(obj)crcit
49
50 $(LIB): $(OBJS) $(SOBJS)
51         $(AR) $(ARFLAGS) $@ $^
52
53 $(obj)eeprom.srec:      $(obj)eeprom.o $(obj)eeprom_start.o $(obj)u-boot.lds
54         cd $(lnk) && $(LD) -T $(obj)u-boot.lds -g -Ttext $(LOAD_ADDR) \
55                 -o $(<:.o=) -e eeprom eeprom.o eeprom_start.o \
56                 -L$(obj)../../examples/standalone -lstubs \
57                 -L$(obj)../../lib_generic -lgeneric \
58                 -L$(gcclibdir) -lgcc
59         $(OBJCOPY) -O srec $(<:.o=) $@
60
61 $(obj)eeprom.bin:       $(obj)eeprom.srec
62         $(OBJCOPY) -I srec -O binary $< $@ 2>/dev/null
63
64 $(obj)crcek.srec:       $(obj)crcek.o
65         $(LD) -g -Ttext 0x00000000 \
66                 -o $(<:.o=) -e crcek $^
67         $(OBJCOPY) -O srec $(<:.o=) $@
68
69 $(obj)crcek.bin:        $(obj)crcek.srec
70         $(OBJCOPY) -I srec -O binary $< $@ 2>/dev/null
71
72 $(obj)crcit:            $(obj)crcit.o $(obj)crc32.o
73         $(HOSTCC) $(HOSTCFLAGS) -o $@ $^
74
75 $(obj)crcit.o:  crcit.c
76         $(HOSTCC) $(HOSTCFLAGS) -o $@ -c $<
77
78 $(obj)crc32.o:  $(SRCTREE)/lib_generic/crc32.c
79         $(HOSTCC) $(HOSTCFLAGS) -DUSE_HOSTCC -o $@ -c $<
80
81 $(obj)u-boot.lds: $(LDSCRIPT)
82         $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -ansi -D__ASSEMBLY__ -P - <$^ >$@
83
84 clean:
85         rm -f $(SOBJS) $(OBJS) $(obj)eeprom $(obj)eeprom.srec \
86                 $(obj)eeprom.bin $(obj)crcek $(obj)crcek.srec \
87                 $(obj)crcek.bin $(obj)u-boot.lds
88
89 distclean:      clean
90         rm -f $(LIB) core *.bak $(obj).depend
91
92 #########################################################################
93
94 # defines $(obj).depend target
95 include $(SRCTREE)/rules.mk
96
97 sinclude $(obj).depend
98
99 #########################################################################