ABI Monitor — monitor new versions of a software library, try to build them and create profile for ABI Tracker: https://github.com/lvc/abi-tracker
The tool is intended to be used with the ABI Tracker tool to visualize API/ABI changes timeline of a C/C++ library.
The tool is developed by Andrey Ponomarenko: http://abi-laboratory.pro/
sudo make install prefix=/usr
- Perl 5 (5.8 or newer)
- perl-Data-Dumper
- curl
- wget
- cmake
- autotools
- meson
- gcc
- g++
abi-monitor [options] [profile]
The input profile will be extended after execution. Then it can be passed to the ABI Tracker.
abi-monitor -get -build libssh.json
abi-monitor -rebuild -v 0.7.0 libssh.json
{
"Name": "SHORT LIBRARY NAME",
"SourceUrl": "URL TO DOWNLOAD PACKAGES",
"Git": "GIT ADDRESS TO CLONE"
}
{
"Name": "libssh",
"SourceUrl": "https://red.libssh.org/projects/libssh/files",
"Git": "https://git.libssh.org/projects/libssh.git"
}
See more profile examples in this directory: https://github.com/lvc/upstream-tracker/tree/master/profile
You can set additional option BuildScript
to define the path to the shell script that should be used to build packages. It will be executed inside the source tree of a package. The script should install the library to the output directory defined by the INSTALL_TO
environment variable. The code should be compiled with the -g -Og
GCC options.
If you just want to add some configure options then you can define the Configure
option of the profile.
The other option SourceDir
allows to index packages from a local directory instead of downloading them from SourceUrl
.
For advanced usage, see output of -help
option.