diff options
Diffstat (limited to 'tools/scripts/make-asm-offsets')
-rwxr-xr-x | tools/scripts/make-asm-offsets | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tools/scripts/make-asm-offsets b/tools/scripts/make-asm-offsets new file mode 100755 index 0000000..61c095f --- /dev/null +++ b/tools/scripts/make-asm-offsets @@ -0,0 +1,27 @@ +#!/bin/sh + +# Adapted from Linux kernel's "Kbuild": +# commit 1cdf25d704f7951d02a04064c97db547d6021872 +# Author: Christoph Lameter <clameter@sgi.com> + +mkdir -p $(dirname $2) + +# Default sed regexp - multiline due to syntax constraints +SED_CMD="/^->/{s:->#\(.*\):/* \1 */:; \ + s:^->\([^ ]*\) [\$$#]*\([-0-9]*\) \(.*\):#define \1 (\2) /* \3 */:; \ + s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \ + s:->::; p;}" + +(set -e + echo "#ifndef __ASM_OFFSETS_H__" + echo "#define __ASM_OFFSETS_H__" + echo "/*" + echo " * DO NOT MODIFY." + echo " *" + echo " * This file was generated by $(basename $0)" + echo " *" + echo " */" + echo "" + sed -ne "${SED_CMD}" $1 + echo "" + echo "#endif" ) > $2 |