Files
espurna/code/scripts/espurna_utils/git.py
Max Prokhorov c18490cc4a PIO: pass APP_REVISION via extra scripts (#1946)
* utils/version: use git description token as version, add memoization

* pio: move extra scripts to a separate directory

* pio: add -DAPP_REVISION=... as local build flag
2019-10-16 14:41:43 +03:00

24 lines
596 B
Python

import os
import subprocess
def git(*args):
cmd = ["git"]
cmd.extend(args)
proc = subprocess.Popen(
cmd, stderr=subprocess.PIPE, stdout=subprocess.PIPE, universal_newlines=True
)
return proc.stdout.readlines()[0].strip()
def app_inject_revision(env):
revision = ""
try:
revision = "\\\"{}\\\"".format(git("rev-parse", "--short=8", "HEAD"))
except: # pylint: disable=broad-except
pass
# Note: code expects this as undefined when empty
if revision:
env.Append(CPPDEFINES=[
("APP_REVISION", revision)
])