Bug #381
open
libflashrom API should be versioned before a release
Added by Edward . over 2 years ago.
Updated 22 days ago.
Description
The libflashrom API was never quite finalised and in order to avoid being stuck in the future we should at least add a API versioning mechanism before doing a flashrom release.
This way in future a compat layer can be derived for a user while allowing us the flexibility to fundamentally change the API for the better. While unfortunate, it is what it is and a version field is generally a good idea regardless.
There are two types of versioning mechanisms required, one for runtime and the other for build/link-time.
- Assignee changed from Evan Benn to Anastasia Klimchuk
Lets start a list of all the places that have some version:
meson.build
pkg-config --modversion
.so filename: libflashrom.so.1.0.0
libflashrom.map
libflashrom::flashrom_version_info
- Status changed from New to In Progress
- Assignee changed from Anastasia Klimchuk to Evan Benn
- Parent task changed from #353 to #438
There is a specification for versioning here https://semver.org. One implementation could be that we create a separate version.h.in file using template strings and that file is hooked up to the Meson and Make build systems which replace these template strings with their actual value. The result is saved to version.h.
This is an example how we do it with Meson for the man page https://github.com/flashrom/flashrom/blob/master/meson.build#L594.
- Parent task deleted (
#438)
Also available in: Atom
PDF