2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 18:07:57 +00:00
criu/scripts/protobuf-gen.sh

24 lines
483 B
Bash
Raw Permalink Normal View History

#!/bin/bash
TR="y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/"
sed -n '/PB_AUTOGEN_START/,/PB_AUTOGEN_STOP/ {
/PB_AUTOGEN_ST/d;
/^[ \t]*$/d;
s/,.*$//;
s/\tPB_//;
p;
}' criu/include/protobuf-desc.h | \
while IFS= read -r x; do
x_la=$(echo "$x" | sed $TR)
x_uf=$(echo "$x" | sed -nr 's/^./&#\\\
/;
s/_(.)/\\\
\1#\\\
/g;
p;' | \
sed -r "/^[A-Z]#\\\\\$/!{ $TR; }" | \
sed -r ':loop; N; s/#?\\\n//; t loop')
echo "CR_PB_DESC($x, $x_uf, $x_la);"
done