Browse Source

version: add optional oem version tag (ext/oem-<version>) and log it

release/1.12
Beat Küng 4 years ago committed by Daniel Agar
parent
commit
c3985709e4
  1. 13
      src/lib/version/px_update_git_header.py
  2. 5
      src/lib/version/version.c
  3. 5
      src/lib/version/version.h
  4. 7
      src/modules/logger/logger.cpp

13
src/lib/version/px_update_git_header.py

@ -84,15 +84,26 @@ except: @@ -84,15 +84,26 @@ except:
git_branch_name = ''
git_version_short = git_version[0:16]
# OEM version
try:
oem_tag = subprocess.check_output('git describe --match ext/oem-* --tags'.split(),
stderr=subprocess.STDOUT).decode('utf-8').strip()
oem_tag = oem_tag[8:]
except:
oem_tag = ''
header += """
#define PX4_GIT_VERSION_STR "{git_version}"
#define PX4_GIT_VERSION_BINARY 0x{git_version_short}
#define PX4_GIT_TAG_STR "{git_tag}"
#define PX4_GIT_BRANCH_NAME "{git_branch_name}"
#define PX4_GIT_OEM_VERSION_STR "{oem_tag}"
""".format(git_tag=git_tag,
git_version=git_version,
git_version_short=git_version_short,
git_branch_name=git_branch_name)
git_branch_name=git_branch_name,
oem_tag=oem_tag)
# ECL

5
src/lib/version/version.c

@ -370,3 +370,8 @@ uint64_t px4_os_version_binary(void) @@ -370,3 +370,8 @@ uint64_t px4_os_version_binary(void)
#endif
}
const char *px4_firmware_oem_version_string(void)
{
return PX4_GIT_OEM_VERSION_STR;
}

5
src/lib/version/version.h

@ -187,5 +187,10 @@ __EXPORT uint64_t px4_mavlink_lib_version_binary(void); @@ -187,5 +187,10 @@ __EXPORT uint64_t px4_mavlink_lib_version_binary(void);
*/
__EXPORT uint64_t px4_os_version_binary(void);
/**
* get the git oem version tag (can be empty, no particular format)
*/
__EXPORT const char *px4_firmware_oem_version_string(void);
__END_DECLS

7
src/modules/logger/logger.cpp

@ -1781,6 +1781,13 @@ void Logger::write_version(LogType type) @@ -1781,6 +1781,13 @@ void Logger::write_version(LogType type)
write_info(type, "sys_os_ver", os_version);
}
const char *oem_version = px4_firmware_oem_version_string();
if (oem_version && oem_version[0]) {
write_info(type, "ver_oem", oem_version);
}
write_info(type, "sys_os_ver_release", px4_os_version());
write_info(type, "sys_toolchain", px4_toolchain_name());
write_info(type, "sys_toolchain_ver", px4_toolchain_version());

Loading…
Cancel
Save