Update tools/shlib-compat.
- Update dwarfdump / compiler support. Use hex instead of decimal for integers. Add boolean and restrict type definitions. Add options for specifing dwarfdump and objdump executables.
- Fix reporting missing symbol definitions as matching.
- Compare external variable definitions.
- Exclude special symbols like _init, _end by default.
- Fix test build.