root / make_device_config.sh @ bd9141bb
History | View | Annotate | Download (596 Bytes)
1 |
#! /bin/sh |
---|---|
2 |
# Construct a target device config file from a default, pulling in any |
3 |
# files from include directives. |
4 |
|
5 |
dest=$1.tmp |
6 |
dep=$1.d |
7 |
src=$2 |
8 |
src_dir=`dirname $src` |
9 |
all_includes= |
10 |
|
11 |
process_includes () { |
12 |
cat $1 | grep '^include' | \ |
13 |
while read include file ; do |
14 |
all_includes="$all_includes $src_dir/$file" |
15 |
process_includes $src_dir/$file |
16 |
done |
17 |
} |
18 |
|
19 |
f=$src |
20 |
while [ -n "$f" ] ; do |
21 |
f=`awk '/^include / {print "'$src_dir'/" $2}' $f` |
22 |
all_includes="$all_includes $f" |
23 |
done |
24 |
process_includes $src > $dest |
25 |
|
26 |
cat $src $all_includes | grep -v '^include' > $dest |
27 |
echo "$1: $all_includes" > $dep |