修改编译方式
Build Docker Multi-Arch Manifest / docker-manifest (push) Canceled after 0s
Package for OpenSUSE Build Service / package-obs (push) Canceled after 0s
Trigger COPR build / build-copr-hook (push) Canceled after 0s
Daily Packaging / docker-multiarch (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-debian-amd64 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-debian-arm64 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-debian-armv7 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-debian-riscv64 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-alpine-amd64 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-alpine-arm64 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-alpine-armv7 (push) Canceled after 0s
Build Docker Multi-Arch Manifest / docker-alpine-riscv64 (push) Canceled after 0s
Daily Packaging / package-ppa (jammy) (push) Canceled after 0s
Daily Packaging / package-ppa (noble) (push) Canceled after 0s
Daily Packaging / package-ppa (questing) (push) Canceled after 0s
Daily Packaging / package-ppa (resolute) (push) Canceled after 0s
Package for Launchpad PPA / build-debian-src (push) Canceled after 0s
Package for Launchpad PPA / package-ppa (push) Canceled after 0s
Daily Packaging / package-obs (push) Canceled after 0s
Package for OpenSUSE Build Service / build-debian-src (push) Canceled after 0s
Daily Packaging / hook-copr (push) Canceled after 0s
Build Docker / docker-build (push) Canceled after 0s
Build Debian Source Package / build-debian-src (push) Canceled after 0s

This commit is contained in:
2026-06-25 12:57:12 +08:00
parent 7aa004c1eb
commit 8e6525c4aa
2 changed files with 26 additions and 30 deletions
+25 -29
View File
@@ -219,41 +219,37 @@ with open(jsonLoc) as f:
jsonStr = re.sub("//.*","", f.read(), flags=re.MULTILINE)
userPrefs = json.loads(jsonStr)
pref_flags = []
# Pre-process the userPrefs
for pref in userPrefs:
if userPrefs[pref].startswith("{"):
pref_flags.append("-D" + pref + "=" + userPrefs[pref])
elif userPrefs[pref].lstrip("-").replace(".", "").isdigit():
pref_flags.append("-D" + pref + "=" + userPrefs[pref])
elif userPrefs[pref] == "true" or userPrefs[pref] == "false":
pref_flags.append("-D" + pref + "=" + userPrefs[pref])
elif userPrefs[pref].startswith("meshtastic_"):
pref_flags.append("-D" + pref + "=" + userPrefs[pref])
# If the value is a string, we need to wrap it in quotes
else:
pref_flags.append("-D" + pref + "=" + env.StringifyMacro(userPrefs[pref]) + "")
# General options that are passed to the C and C++ compilers
# Calculate unix epoch for current day (midnight)
current_date = datetime.now().replace(hour=0, minute=0, second=0, microsecond=0)
build_epoch = int(current_date.timestamp())
flags = [
"-DAPP_VERSION=" + verObj["long"],
"-DAPP_VERSION_SHORT=" + verObj["short"],
"-DAPP_ENV=" + env.get("PIOENV"),
"-DAPP_REPO=" + repo_owner,
"-DBUILD_EPOCH=" + str(build_epoch),
] + pref_flags
cpp_defines = [
("APP_VERSION", verObj["long"]),
("APP_VERSION_SHORT", verObj["short"]),
("APP_ENV", env.get("PIOENV")),
("APP_REPO", repo_owner),
("BUILD_EPOCH", str(build_epoch)),
]
print("Using flags:")
for flag in flags:
print(flag)
# Process userPrefs into CPPDEFINES
for pref in userPrefs:
val = userPrefs[pref]
if val.startswith("{"):
cpp_defines.append((pref, val))
elif val.lstrip("-").replace(".", "").isdigit():
cpp_defines.append((pref, val))
elif val == "true" or val == "false":
cpp_defines.append((pref, val))
elif val.startswith("meshtastic_"):
cpp_defines.append((pref, val))
else:
cpp_defines.append((pref, env.StringifyMacro(val)))
projenv.Append(
CCFLAGS=flags,
)
print("Using CPPDEFINES:")
for d in cpp_defines:
print(f" -D{d[0]}={d[1]}")
projenv.Append(CPPDEFINES=cpp_defines)
for lb in env.GetLibBuilders():
if lb.name == "meshtastic-device-ui":
+1 -1
View File
@@ -13,7 +13,7 @@ extra_configs =
description = Meshtastic
[env]
test_build_src = true
; test_build_src = true ; disabled for faster incremental builds
extra_scripts =
pre:bin/platformio-pre.py
bin/platformio-custom.py