Merge pull request #347 from jedi2light/feature-show-git-commit-hash-short
Feature: Store and show git short ref on PineTime alongside other firmware information
This commit is contained in:
commit
5b2472c4bc
|
@ -55,10 +55,22 @@ if(BUILD_DFU)
|
|||
set(BUILD_DFU true)
|
||||
endif()
|
||||
|
||||
set(PROJECT_GIT_COMMIT_HASH "")
|
||||
|
||||
execute_process(COMMAND git rev-parse --short HEAD
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE PROJECT_GIT_COMMIT_HASH
|
||||
RESULT_VARIABLE PROJECT_GIT_COMMIT_HASH_SUCCESS)
|
||||
|
||||
string(STRIP ${PROJECT_GIT_COMMIT_HASH} PROJECT_GIT_COMMIT_HASH)
|
||||
|
||||
message("PROJECT_GIT_COMMIT_HASH_SUCCESS? " ${PROJECT_GIT_COMMIT_HASH_SUCCESS})
|
||||
|
||||
message("BUILD CONFIGURATION")
|
||||
message("-------------------")
|
||||
message(" * Version : " ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
|
||||
message(" * Toolchain : " ${ARM_NONE_EABI_TOOLCHAIN_PATH})
|
||||
message(" * GitRef(S) : " ${PROJECT_GIT_COMMIT_HASH})
|
||||
message(" * NRF52 SDK : " ${NRF5_SDK_PATH})
|
||||
set(PROGRAMMER "???")
|
||||
if(USE_JLINK)
|
||||
|
|
3
docker/.gitpod.Dockerfile
vendored
3
docker/.gitpod.Dockerfile
vendored
|
@ -19,8 +19,11 @@ RUN apt-get update -qq \
|
|||
libffi-dev \
|
||||
libssl-dev \
|
||||
python3-dev \
|
||||
git \
|
||||
&& rm -rf /var/cache/apt/* /var/lib/apt/lists/*;
|
||||
|
||||
# Git needed for PROJECT_GIT_COMMIT_HASH variable setting
|
||||
|
||||
# Needs to be installed as root
|
||||
RUN pip3 install adafruit-nrfutil
|
||||
RUN pip3 install -Iv cryptography==3.3
|
||||
|
|
|
@ -19,8 +19,11 @@ RUN apt-get update -qq \
|
|||
libssl-dev \
|
||||
python3-dev \
|
||||
python \
|
||||
git \
|
||||
&& rm -rf /var/cache/apt/* /var/lib/apt/lists/*;
|
||||
|
||||
# Git needed for PROJECT_GIT_COMMIT_HASH variable setting
|
||||
|
||||
RUN pip3 install adafruit-nrfutil
|
||||
RUN pip3 install -Iv cryptography==3.3
|
||||
|
||||
|
|
|
@ -8,11 +8,13 @@ namespace Pinetime {
|
|||
static constexpr uint32_t Major() {return major;}
|
||||
static constexpr uint32_t Minor() {return minor;}
|
||||
static constexpr uint32_t Patch() {return patch;}
|
||||
static constexpr const char* GitCommitHash() {return commitHash;}
|
||||
static constexpr const char* VersionString() {return versionString;}
|
||||
private:
|
||||
static constexpr uint32_t major = @PROJECT_VERSION_MAJOR@;
|
||||
static constexpr uint32_t minor = @PROJECT_VERSION_MINOR@;
|
||||
static constexpr uint32_t patch = @PROJECT_VERSION_PATCH@;
|
||||
static constexpr const char* commitHash = "@PROJECT_GIT_COMMIT_HASH@";
|
||||
static constexpr const char* versionString = "@PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@";
|
||||
};
|
||||
}
|
|
@ -27,6 +27,17 @@ FirmwareValidation::FirmwareValidation(Pinetime::Applications::DisplayApp* app,
|
|||
sprintf(version, "%ld.%ld.%ld", Version::Major(), Version::Minor(), Version::Patch());
|
||||
lv_label_set_text(labelVersionValue, version);
|
||||
|
||||
labelShortRefInfo = lv_label_create(lv_scr_act(), nullptr);
|
||||
lv_obj_align(labelShortRefInfo, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 25);
|
||||
lv_label_set_text(labelShortRefInfo, "ShortRef : ");
|
||||
lv_label_set_align(labelShortRefInfo, LV_LABEL_ALIGN_LEFT);
|
||||
|
||||
labelShortRefValue = lv_label_create(lv_scr_act(), nullptr);
|
||||
lv_obj_align(labelShortRefValue, labelShortRefInfo, LV_ALIGN_OUT_RIGHT_MID, 0, 0);
|
||||
lv_label_set_recolor(labelShortRefValue, true);
|
||||
sprintf(shortref, "%s", Version::GitCommitHash());
|
||||
lv_label_set_text(labelShortRefValue, shortref);
|
||||
|
||||
labelIsValidated = lv_label_create(lv_scr_act(), nullptr);
|
||||
lv_obj_align(labelIsValidated, nullptr, LV_ALIGN_IN_TOP_LEFT, 0, 50);
|
||||
lv_label_set_recolor(labelIsValidated, true);
|
||||
|
|
|
@ -25,7 +25,10 @@ namespace Pinetime {
|
|||
|
||||
lv_obj_t* labelVersionInfo;
|
||||
lv_obj_t* labelVersionValue;
|
||||
lv_obj_t* labelShortRefInfo;
|
||||
lv_obj_t* labelShortRefValue;
|
||||
char version[9];
|
||||
char shortref[9];
|
||||
lv_obj_t* labelIsValidated;
|
||||
lv_obj_t* buttonValidate;
|
||||
lv_obj_t* labelButtonValidate;
|
||||
|
|
|
@ -69,12 +69,14 @@ std::unique_ptr<Screen> SystemInfo::CreateScreen1() {
|
|||
lv_label_set_text_fmt(label,
|
||||
"#FFFF00 InfiniTime#\n\n"
|
||||
"#444444 Version# %ld.%ld.%ld\n\n"
|
||||
"#444444 Short Ref# %s\n\n"
|
||||
"#444444 Build date#\n"
|
||||
"%s\n"
|
||||
"%s\n",
|
||||
Version::Major(),
|
||||
Version::Minor(),
|
||||
Version::Patch(),
|
||||
Version::GitCommitHash(),
|
||||
__DATE__,
|
||||
__TIME__);
|
||||
lv_label_set_align(label, LV_LABEL_ALIGN_CENTER);
|
||||
|
|
Loading…
Reference in a new issue