12345678910111213141516171819202122232425262728293031323334 |
- #!/bin/sh
- set -eu
- if [ -d include/mbedtls ]; then :; else
- echo "$0: must be run from root" >&2
- exit 1
- fi
- HEADERS=$( ls include/mbedtls/*.h | egrep -v 'compat-1\.3\.h|bn_mul' )
- rm -f identifiers
- grep '^[^ /#{]' $HEADERS | \
- sed -e 's/^[^:]*://' | \
- egrep -v '^(extern "C"|(typedef )?(struct|enum)( {)?$|};?$)' \
- > _decls
- if true; then
- sed -n -e 's/.* \**\([a-zA-Z_][a-zA-Z0-9_]*\)(.*/\1/p' \
- -e 's/.*(\*\(.*\))(.*/\1/p' _decls
- grep -v '(' _decls | sed -e 's/\([a-zA-Z0-9_]*\)[;[].*/\1/' -e 's/.* \**//'
- fi > _identifiers
- if [ $( wc -l < _identifiers ) -eq $( wc -l < _decls ) ]; then
- rm _decls
- egrep -v '^(u?int(16|32|64)_t)$' _identifiers | sort > identifiers
- rm _identifiers
- else
- echo "$0: oops, lost some identifiers" 2>&1
- exit 1
- fi
- wc -l identifiers
|