version.c 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include "version.h"
  2. struct Version {
  3. const char* git_hash;
  4. const char* git_branch;
  5. const char* git_branch_num;
  6. const char* build_date;
  7. const char* version;
  8. const uint8_t target;
  9. };
  10. /* version of current running firmware (bootloader/flipper) */
  11. static const Version version = {
  12. .git_hash = GIT_COMMIT,
  13. .git_branch = GIT_BRANCH,
  14. .git_branch_num = GIT_BRANCH_NUM,
  15. .build_date = BUILD_DATE,
  16. .version = VERSION,
  17. .target = TARGET,
  18. };
  19. const Version* version_get(void) {
  20. return &version;
  21. }
  22. const char* version_get_githash(const Version* v) {
  23. return v ? v->git_hash : version.git_hash;
  24. }
  25. const char* version_get_gitbranch(const Version* v) {
  26. return v ? v->git_branch : version.git_branch;
  27. }
  28. const char* version_get_gitbranchnum(const Version* v) {
  29. return v ? v->git_branch_num : version.git_branch_num;
  30. }
  31. const char* version_get_builddate(const Version* v) {
  32. return v ? v->build_date : version.build_date;
  33. }
  34. const char* version_get_version(const Version* v) {
  35. return v ? v->version : version.version;
  36. }
  37. const uint8_t version_get_target(const Version* v) {
  38. return v ? v->target : version.target;
  39. }