Bash程序  |  14行  |  468 B

#!/bin/sh -e

list="$(sed -n '/^strace_SOURCES[[:space:]]*=/,/^[[:space:]]*# end of strace_SOURCES/ s/^[[:space:]]*\([[:alnum:]][^.]*\.c\)[[:space:]]*\\$/\1/p' Makefile.am |
	xargs -r grep -lx '#[[:space:]]*include[[:space:]]\+MPERS_DEFS' |
	tr '\n' ' ')"

cat > mpers.am <<EOF
# Generated by $0; do not edit.
mpers_source_files = $list
EOF

sed -n 's/^#[[:space:]]*include[[:space:]]*"xlat\/\([^."]\+\)\.h".*/extern const struct xlat \1[];/p' \
	$list > mpers_xlat.h