extend version handling with git describe

This commit is contained in:
2022-04-22 14:04:18 +02:00
parent 8c6c8ad3c0
commit 07155e2546
7 changed files with 382 additions and 12 deletions

View File

@ -2,8 +2,9 @@
#define FSFW_VERSION_H_
// Versioning is kept in project CMakeLists.txt file
#define FSFW_VERSION_MAJOR @FSFW_VERSION@
#define FSFW_VERSION_MINOR @FSFW_SUBVERSION@
#define FSFW_VERSION_REVISION @FSFW_REVISION@
static constexpr int FSFW_VERSION_MAJOR = @FSFW_VERSION@;
static constexpr int FSFW_VERSION_MINOR = @FSFW_SUBVERSION@;
static constexpr int FSFW_VERSION_REVISION = @FSFW_REVISION@;
static const char FSFW_VERSION_CST_GIT_SHA1[] = "@FSFW_VERSION_CST_GIT_SHA1@";
#endif /* FSFW_VERSION_H_ */

View File

@ -13,7 +13,7 @@
const Version fsfw::FSFW_VERSION = {FSFW_VERSION_MAJOR, FSFW_VERSION_MINOR, FSFW_VERSION_REVISION};
Version::Version(uint32_t major, uint32_t minor, uint32_t revision, const char* addInfo)
Version::Version(int major, int minor, int revision, const char* addInfo)
: major(major), minor(minor), revision(revision), addInfo(addInfo) {}
void Version::getVersion(char* str, size_t maxLen) const {

View File

@ -10,10 +10,10 @@
class Version {
public:
Version(uint32_t major, uint32_t minor, uint32_t revision, const char* addInfo = nullptr);
uint32_t major = 0;
uint32_t minor = 0;
uint32_t revision = 0;
Version(int major, int minor, int revision, const char* addInfo = nullptr);
int major = -1;
int minor = -1;
int revision = -1;
// Additional information, e.g. a git SHA hash
const char* addInfo = nullptr;