blob: fee110828c3291e468cad59fa9837ddd33615ed2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
# *****************************************************************************
# * Copyright (c) 2004, 2007 IBM Corporation
# * All rights reserved.
# * This program and the accompanying materials
# * are made available under the terms of the BSD License
# * which accompanies this distribution, and is available at
# * http://www.opensource.org/licenses/bsd-license.php
# *
# * Contributors:
# * IBM Corporation - initial implementation
# ****************************************************************************/
include make.rules
STD_BOARDS = $(shell targets=""; \
for a in `echo board-*`; do \
if [ -e $$a/config ]; then \
targets="$$targets $$a"; \
else \
cd $$a; \
for b in `echo config* | sed -e s/config.//g`; do \
if [ "X$$b" != "Xsimics" ]; then \
if [ "X$$b" != "X`echo $$a|sed -e s/board-//g`" ]; then \
targets="$$targets $$a-$$b"; \
else \
targets="$$targets $$b"; \
fi fi \
done; \
cd ..; \
fi; \
done; \
echo $$targets | sed -e s/board-//g)
all:
@if [ ! -f .target ]; then \
echo "Please specify a build target:"; \
echo " $(STD_BOARDS)"; \
exit 1; \
fi
@make `cat .target`
rom:
@echo "******* Build $(BOARD) System ********"
@echo $(BOARD) > .target
@make -C board-$(BOARD)
@$(RM) -f .crc_flash
rw:
@echo "******* Build $(BOARD) system (RISCWatch boot) ********"
@echo $(BOARD) > .target
@make -C board-$(BOARD) l2b
@$(RM) -f .crc_flash
$(STD_BOARDS):
@echo "******** Building $@ system ********"
@if [ -f .target ]; then \
if [ `cat .target` != $@ ]; then \
echo "Configuration changed - cleaning up first..."; \
make distclean; \
echo $@ > .target; \
fi; \
else \
echo $@ > .target; \
fi
@b=`echo $@ | grep "-"`; \
if [ -n "$$b" ]; then \
subboard=$${b##*-}; \
board=$${b%%-*}; \
make -C board-$$board SUBBOARD=$$subboard; \
else \
make -C board-$@; \
fi
@$(RM) .crc_flash
test_all:
@for i in $(STD_BOARDS); do make distclean $$i; done
driver:
DRIVER=1 make -C board-$(BOARD) driver
@$(RM) -f .crc_flash .boot_xdr.ffs
cli:
make -C clients
# Rules for making clean:
clean_here:
rm -f boot_rom.bin .boot_rom.ffs boot_xdr.bin .boot_xdr.ffs
rm -f boot_l2-dd2.ad boot_l2b.bin .crc_flash
clean: clean_here
@if [ -e .target ]; then \
tar=`cat .target`; \
b=`echo $$tar | grep "-"`; \
if [ -n "$$b" ]; then \
subboard=$${b##*-}; \
board=$${b%%-*}; \
make -C board-$$board SUBBOARD=$$subboard clean; \
else \
pwd; \
make -C board-$$tar clean; \
fi \
fi
distclean: clean_here
@if [ -e .target ]; then \
tar=`cat .target`; \
b=`echo $$tar | grep "-"`; \
if [ -n "$$b" ]; then \
subboard=$${b##*-}; \
board=$${b%%-*}; \
make -C board-$$board SUBBOARD=$$subboard distclean; \
else \
make -C board-$$tar distclean; \
fi; \
rm -f .target; \
fi
distclean_all: clean_here
@for dir in board-* ; do \
$(MAKE) -C $$dir distclean || exit 1; \
done
rm -f .target
cli-clean:
make -C clients clean
|