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.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@275354 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f