9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 1) #!/bin/sh
b24413180f560 (Greg Kroah-Hartman 2017-11-01 15:07:57 +0100 2) # SPDX-License-Identifier: GPL-2.0
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 3) out="$1"
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 4) shift
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 5) in="$@"
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 6)
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 7) for i in $in; do
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 8) eval $CPP $LINUXINCLUDE -dD -imacros "$i" -x c /dev/null
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 9) done | \
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 10) awk '$1 == "#define" && $2 ~ /__HYPERVISOR_[a-z][a-z_0-9]*/ { v[$3] = $2 }
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 11) END { print "/* auto-generated by scripts/xen-hypercall.sh */"
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 12) for (i in v) if (!(v[i] in v))
9b4ade226f746 (Juergen Gross 2015-01-21 08:49:22 +0100 13) print "HYPERCALL("substr(v[i], 14)")"}' | sort -u >$out