mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
47 lines
1.4 KiB
Python
47 lines
1.4 KiB
Python
#!/usr/bin/env python
|
|
from subprocess import call
|
|
import os
|
|
import re
|
|
Import("env")
|
|
|
|
def build_web(source, target, env):
|
|
print("\n** Build web...")
|
|
call(["gulp", "-f", os.getcwd()+"/tools/webfilesbuilder/gulpfile.js"])
|
|
|
|
bag = {}
|
|
exprs = [
|
|
(re.compile(r'^#define APP_VERSION\s+"(\S+)"'), 'app_version'),
|
|
(re.compile(r'^#define APP_NAME\s+"(\S+)"'), 'app_name'),
|
|
(re.compile(r'^#define APP_HOSTNAME\s+"(\S+)"'), 'app_hostname')
|
|
]
|
|
with open('./src/version.h', 'r') as f:
|
|
for l in f.readlines():
|
|
for expr, var in exprs:
|
|
m = expr.match(l)
|
|
if m and len(m.groups()) > 0:
|
|
bag[var] = m.group(1)
|
|
|
|
with open('./src/ems-esp.cpp', 'r') as f:
|
|
for l in f.readlines():
|
|
for expr, var in exprs:
|
|
m = expr.match(l)
|
|
if m and len(m.groups()) > 0:
|
|
bag[var] = m.group(1)
|
|
|
|
app_version = bag.get('app_version')
|
|
app_name = bag.get('app_name')
|
|
app_hostname = bag.get('app_hostname')
|
|
|
|
board = env['BOARD']
|
|
branch = env['PIOENV']
|
|
|
|
# build the web files
|
|
env.AddPreAction("buildprog", build_web)
|
|
|
|
# build filename, replacing . with _ for the version
|
|
#env.Replace(PROGNAME="firmware_%s" % branch + "_" + app_version.replace(".", "_"))
|
|
#env.Replace(PROGNAME=app_name + "-" + app_version.replace(".", "_") + "-" + board + "-" + branch)
|
|
env.Replace(PROGNAME=app_name + "-" + app_version.replace(".", "_") + "-" + board)
|
|
|
|
|