Skip to content

Commit

Permalink
Script to check that the lists of helpers are in sync
Browse files Browse the repository at this point in the history
Checks src/cc/libbpf.c, docs/kernel-versions.md, src/cc/compat/linux/bpf.h,
and src/cc/export/helpers.h.
  • Loading branch information
pchaigno committed Feb 14, 2018
1 parent f2354fa commit 3424fb8
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,5 @@ install:
- sudo apt-get install -y python-pip
- sudo pip install pep8
script:
- ./scripts/check-helpers.sh
- find tools/ -type f -name "*.py" | xargs pep8 -r --show-source --ignore=E123,E125,E126,E127,E128,E302
29 changes: 29 additions & 0 deletions scripts/check-helpers.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/bash
ret=0

grep -oP '(?<={")\w+(?=", "\d\.\d+")' src/cc/libbpf.c | sort > /tmp/libbpf.txt
grep -oP "(?<=BPF_FUNC_)\w+" docs/kernel-versions.md | sort > /tmp/doc.txt
dif=`diff /tmp/libbpf.txt /tmp/doc.txt`
if [ $? -ne 0 ]; then
echo "The lists of helpers in src/cc/libbpf.c and docs/kernel-versions.md differ:"
echo -e "$dif\n"
((ret++))
fi

grep -oP "(?<=^\sFN\()\w+" src/cc/compat/linux/bpf.h | tail -n +2 | sort > /tmp/compat.txt
dif=`diff /tmp/doc.txt /tmp/compat.txt`
if [ $? -ne 0 ]; then
echo "The lists of helpers in docs/kernel-versions.md and src/cc/compat/linux/bpf.h differ:"
echo -e "$dif\n"
((ret++))
fi

grep -oP "(?<=BPF_FUNC_)\w+" src/cc/export/helpers.h | sort -u > /tmp/export.txt
dif=`diff /tmp/compat.txt /tmp/export.txt`
if [ $? -ne 0 ]; then
echo "The lists of helpers in src/cc/compat/linux/bpf.h and src/cc/export/helpers.h differ:"
echo "$dif"
((ret++))
fi

exit $ret

0 comments on commit 3424fb8

Please sign in to comment.