-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.local
111 lines (96 loc) · 2.92 KB
/
config.local
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
MAKEFILE=Makefile.tmp
NEWMAKEFILE=Makefile
SYSTEM=$(uname -s)
MOD_SUFFIX=-mod.o
TARGETOBJS=""
TARGETMODS=""
addobjs(){
TARGETOBJS="$TARGETOBJS $1"
}
addmods(){
TARGETMODS="$TARGETMODS $1"
}
addcleanfiles(){
TARGETCLEANFILES="$TARGETCLEANFILES $1"
}
init(){
echo "SYSTEM=$SYSTEM" >$MAKEFILE
echo >>$MAKEFILE
echo "########## rules.mak" >>$MAKEFILE
echo >>$MAKEFILE
cat rules.mak >>$MAKEFILE
echo >>$MAKEFILE
echo "########## $SYSTEM.mak" >>$MAKEFILE
echo >>$MAKEFILE
cat $SYSTEM.mak >>$MAKEFILE
echo >>$MAKEFILE
echo "##########" >>$MAKEFILE
echo >>$MAKEFILE
}
fini(){
echo OBJS += $TARGETOBJS >> $MAKEFILE
echo MODS += $TARGETMODS >> $MAKEFILE
echo CLEANFILES += $TARGETCLEANFILES >> $MAKEFILE
echo everything: \${OBJS} \${MODS} >> $MAKEFILE
mv $MAKEFILE $NEWMAKEFILE
}
clock(){
#$1 = bind -> -bind/-meta tuple
# = spec -> spec file
#$2 = Vendor
#$3 = Model
#$4 = Additional files (for bind type)
if test "x$1" = "xbind"; then
echo clock/$2/$3.o: clock/$2/$3-bind.o clock/$2/$3-meta.o $4 >> $MAKEFILE
addobjs "clock/$2/$3.o clock/$2/$3-bind.o clock/$2/$3-meta.o $4"
fi
if test "x$1" = "xspec"; then
echo clock/$2/$3.o: clock/$2/$3-fixed.o clock/fixed-meta.o >> $MAKEFILE
addobjs "clock/$2/$3.o clock/$2/$3-fixed.o clock/fixed-meta.o"
fi
}
ramdac(){
#$1 = Vendor
#$2 = Model
#$3 = Additional files (for bind type)
echo ramdac/$1/$2.o: ramdac/$1/$2-bind.o ramdac/$1/$2-meta.o $3 >> $MAKEFILE
addobjs "ramdac/$1/$2.o ramdac/$1/$2-bind.o ramdac/$1/$2-meta.o $3"
}
chipset(){
#$1 = Vendor
#$2 = Model
#$3 = Additional files (for bind type)
echo chipset/$1/$2.o: chipset/$1/$2-bind.o chipset/$1/$2-meta.o $3 >> $MAKEFILE
addobjs "chipset/$1/$2.o chipset/$1/$2-bind.o chipset/$1/$2-meta.o $3"
}
board(){
#$1 = Vendor
#$2 = Model
DRIVERS=$( grep "Driver(.*)" board/$1/$2.spec |grep -v monitor |sed "s|.*(\(.*\),[ ]*\(.*\),.*).*|\1/\2.o|g" )
echo board/$1/$2$MOD_SUFFIX: board/$1/$2-board.o $DRIVERS >> $MAKEFILE
addobjs "board/$1/$2$MOD_SUFFIX board/$1/$2-board.o $DRIVERS"
addmods "board/$1/$2$MOD_SUFFIX"
}
monitor(){
#$1 = bind -> -bind/-meta tuple
# = spec -> spec file
# = timings -> .t -> -timings.c -> ...
#$2 = Vendor
#$3 = Model
#$4 = Additional files (for bind type)
if test "x$1" = "xbind"; then
echo monitor/$2/$2.o: monitor/$2/$2-bind.o monitor/$2/$2-meta.o $3 >> $MAKEFILE
addobjs "monitor/$2/$2.o monitor/$2/$2-bind.o monitor/$2/$2-meta.o $3"
fi
if test "x$1" = "xspec"; then
echo monitor/$2/$4-monitor.o: monitor/$2/$4-$3.o monitor/$3/$3.o $5 >> $MAKEFILE
echo monitor/$2/$4$MOD_SUFFIX: monitor/$2/$4-monitor.o >> $MAKEFILE
addobjs "monitor/$2/$4$MOD_SUFFIX monitor/$2/$4-monitor.o monitor/$2/$4-$3.o $5"
addmods "monitor/$2/$4$MOD_SUFFIX"
fi
if test "x$1" = "xtimings"; then
echo monitor/$2/$3-timings.o: monitor/$2/$3-timings.c $4 >> $MAKEFILE
addobjs "monitor/$2/$3-timings.o $4"
addcleanfiles "monitor/$2/$3-timings.c"
fi
}