~taiite/protodump

e203d8753e13ad96e2a19128d5fb4da689a946ab — Hubert Hirtz 10 days ago 56119d3
Update README.md and add a man page
2 files changed, 55 insertions(+), 2 deletions(-)

M README.md
A doc/protodump.1.scd
M README.md => README.md +11 -2
@@ 1,6 1,6 @@
# protodump

Free .o to .h converter.  It's WIP.
Free .o to .h converter.

protodump reads object files, look for DWARF information and combines it with
the table of exported symbols.  Use it with `diff` to see whether your library


@@ 18,9 18,18 @@ protodump $(which protodump)
cargo run -- target/debug/protodump
```

Run `protodump --help` for the list of options, and see the man page
`protodump(1)` for more information.

## Contributing

Install & configure [git-send-email](https://git-send-email.io/), then
Ask questions and send patches on the mailing list:
https://lists.sr.ht/~taiite/public-inbox

File bugs on the bug tracker: https://todo.sr.ht/~taiite/protodump

To send a patch, install & configure
[git-send-email](https://git-send-email.io/), then

```
git config sendemail.to '~taiite/public-inbox@lists.sr.ht'

A doc/protodump.1.scd => doc/protodump.1.scd +44 -0
@@ 0,0 1,44 @@
protodump(1)

# NAME

protodump - dumps object files in a header-like format

# SYNOPSIS

*protodump* [options] FILE

# OPTIONS

*-h, --help*
	Show an help message and quit.

*-i, --imports*
	Take into account the list of imported symbols.  Imported symbols are
	symbols that are expected to come from another shared object.  They are
	located in the dynamically-accessible symbol table, are either global or
	weak and have a _st_value_ of zero.

*-g, --globals**
	Take into account global and weak symbols even if they are not
	dynamically accessible.

*-l, --local**
	Take into account local symbols.

# DESCRIPTION

protodump (for PROTOtype DUMPer) dumps object symbols that are found in debug
information (DWARF) of the same object.  The output format is made
human-readable, in a C-like header format.  It can be used in conjunction of
diff to detect changes in the object ABI.

# NOTES

protodump use the *mmap*(3P) system call to read object files.  It is up to the
caller to ensure those files are not open during protodump lifetime.

# AUTHORS

Maintained by Hubert Hirtz <hubert@hirtz.pm>.  For more information about
protodump development, see <https://sr.ht/~taiite/protodump>.