mirror of
https://github.com/micropython/micropython.git
synced 2026-01-08 13:10:21 +01:00
Add the git version to the banner
This commit is contained in:
16
py/py-version.sh
Executable file
16
py/py-version.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
git_hash="$(git rev-parse --short HEAD 2> /dev/null || echo unknown)"
|
||||
git_files_are_clean=1
|
||||
# Check if there are any modified files.
|
||||
git diff --no-ext-diff --quiet --exit-code 2> /dev/null || git_files_are_clean=0
|
||||
# Check if there are any staged files.
|
||||
git diff-index --cached --quiet HEAD -- 2> /dev/null || git_files_are_clean=0
|
||||
if [ "${git_files_are_clean}" != "1" ]; then
|
||||
git_hash="${git_hash}-dirty"
|
||||
fi
|
||||
cat <<EOF
|
||||
// This file was generated by py/py-version.sh
|
||||
#define MICROPY_GIT_HASH "${git_hash}"
|
||||
#define MICROPY_BUILD_DATE "$(date '+%Y-%m-%d')"
|
||||
EOF
|
||||
10
py/py.mk
10
py/py.mk
@@ -90,6 +90,14 @@ PY_O_BASENAME = \
|
||||
# prepend the build destination prefix to the py object files
|
||||
PY_O = $(addprefix $(PY_BUILD)/, $(PY_O_BASENAME))
|
||||
|
||||
# Anything that depends on FORCE will be considered out-of-date
|
||||
FORCE:
|
||||
.PHONY: FORCE
|
||||
|
||||
$(PY_BUILD)/py-version.h: FORCE
|
||||
$(Q)$(PY_SRC)/py-version.sh > $@.tmp
|
||||
$(Q)if [ -f "$@" ] && cmp -s $@ $@.tmp; then rm $@.tmp; else echo "Generating $@"; mv $@.tmp $@; fi
|
||||
|
||||
# qstr data
|
||||
|
||||
# Adding an order only dependency on $(PY_BUILD) causes $(PY_BUILD) to get
|
||||
@@ -104,7 +112,7 @@ $(PY_BUILD)/qstrdefs.generated.h: $(PY_QSTR_DEFS) $(QSTR_DEFS) $(PY_SRC)/makeqst
|
||||
# the right .o's to get recompiled if the generated.h file changes. Adding
|
||||
# an order-only dependendency to all of the .o's will cause the generated .h
|
||||
# to get built before we try to compile any of them.
|
||||
$(PY_O): | $(PY_BUILD)/qstrdefs.generated.h
|
||||
$(PY_O): | $(PY_BUILD)/qstrdefs.generated.h $(PY_BUILD)/py-version.h
|
||||
|
||||
# emitters
|
||||
|
||||
|
||||
Reference in New Issue
Block a user