blob: 7c847fb89b28bd9334c41e9e0b2021487a7d0dae (
plain) (
blame)
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
|
#!/bin/sh
gencommon () {
lint="build/${s%.*}${1}.l"
dep="build/${s%.*}${1}.d"
obj="build/${s%.*}${1}"
echo "${dep}:" >> deps.mk
echo "include ${dep}" >> deps.mk
echo "${obj}: ${s}" >> deps.mk
}
genlink () {
gencommon ".ld"
echo " \$(GENLINK) $< | \$(STRIPLINK) | \$(KERN_INFO) > \$@"\
>> deps.mk;
}
genrule () {
gencommon "${1}"
echo " \$(COMPILE) -c \$< -o \$@" >> deps.mk
echo "${lint}: ${s}" >> deps.mk
echo " \$(LINT) -c \$< -o /dev/null" >> deps.mk
}
case "${1}" in
--compile)
suffix=.o
func=genrule
;;
--link)
suffix=.ld
func=genlink
esac
# create all subdirectories
mkdir -p $(echo "${2}" | xargs dirname | uniq | sed 's|^|build/|g')
for s in ${2}
do
${func} ${suffix}
echo ${obj}
done
|