CharGraph-FW/include/version.inc
2026-01-25 20:44:07 +01:00

34 lines
917 B
C++

#ifndef _VERSION_INC_
#define _VERSION_INC_
// Auto-generated version from build date/time
#define BUILD_DATE __DATE__
#define BUILD_TIME __TIME__
// Convert build date/time to version string format: YYYYMMDD-HHMM
// Example: 20250121-1430
inline void generateVersion(char* buffer, size_t bufferSize) {
const char* months[] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
char month[4], day[3], year[5], time[9];
sscanf(BUILD_DATE, "%s %s %s", month, day, year);
strcpy(time, BUILD_TIME);
int monthNum = 1;
for (int i = 0; i < 12; i++) {
if (strcmp(month, months[i]) == 0) {
monthNum = i + 1;
break;
}
}
int h, m, s;
sscanf(time, "%d:%d:%d", &h, &m, &s);
snprintf(buffer, bufferSize, "%s%02d%02d-%02d%02d",
year, monthNum, atoi(day), h, m);
}
#endif