]> git.proxmox.com Git - mirror_qemu.git/blame - scripts/make_device_config.sh
9pfs: clear migration blocker at session reset
[mirror_qemu.git] / scripts / make_device_config.sh
CommitLineData
bd9141bb 1#! /bin/sh
15564d85
PB
2# Writes a target device config file to stdout, from a default and from
3# include directives therein. Also emits Makefile dependencies.
4#
5# Usage: make_device_config.sh SRC DEPFILE-NAME DEPFILE-TARGET > DEST
bd9141bb 6
15564d85
PB
7src=$1
8dep=$2
9target=$3
bbd90802 10src_dir=$(dirname $src)
bd9141bb
PB
11all_includes=
12
13process_includes () {
14 cat $1 | grep '^include' | \
15 while read include file ; do
16 all_includes="$all_includes $src_dir/$file"
17 process_includes $src_dir/$file
18 done
19}
20
21f=$src
22while [ -n "$f" ] ; do
bbd90802 23 f=$(cat $f | tr -d '\r' | awk '/^include / {printf "'$src_dir'/%s ", $2}')
cf66924f 24 [ $? = 0 ] || exit 1
bd9141bb
PB
25 all_includes="$all_includes $f"
26done
15564d85 27process_includes $src
bd9141bb 28
15564d85
PB
29cat $src $all_includes | grep -v '^include'
30echo "$target: $all_includes" > $dep