UPLOADCMD='$UPLOADER $UPLOADERFLAGS', ) # # Target: Build executable and linkable firmware # target_elf = env.BuildProgram() # # Target: Build the .hex or SPIFFS image # if set(["uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS): target_firm = env.DataToBin( join("$BUILD_DIR", "spiffs"), "$PROJECTDATA_DIR") AlwaysBuild(target_firm) elif "uploadlazy" in COMMAND_LINE_TARGETS: if "PIOFRAMEWORK" not in env: target_firm = [ join("$BUILD_DIR", "firmware_00000.bin"), join("$BUILD_DIR", "firmware_40000.bin") ] else: target_firm = join("$BUILD_DIR", "firmware.bin") else: if "PIOFRAMEWORK" not in env: target_firm = env.ElfToBin( [join("$BUILD_DIR", "firmware_00000"), join("$BUILD_DIR", "firmware_40000")], target_elf)
# Target: Build executable and linkable firmware or SPIFFS image # target_elf = env.BuildProgram() if "nobuild" in COMMAND_LINE_TARGETS: target_elf = join("$BUILD_DIR", "${PROGNAME}.elf") if set(["uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS): fetch_spiffs_size(env) target_firm = join("$BUILD_DIR", "%s.bin" % env.get("SPIFFSNAME", "spiffs")) else: target_firm = join("$BUILD_DIR", "${PROGNAME}.bin") else: if set(["buildfs", "uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS): target_firm = env.DataToBin( join("$BUILD_DIR", env.get("SPIFFSNAME", "spiffs")), "$PROJECTDATA_DIR") AlwaysBuild(target_firm) AlwaysBuild(env.Alias("buildfs", target_firm)) else: target_firm = env.ElfToBin(join("$BUILD_DIR", "${PROGNAME}"), target_elf) AlwaysBuild(env.Alias("nobuild", target_firm)) target_buildprog = env.Alias("buildprog", target_firm, target_firm) # update max upload size based on CSV file if env.get("PIOMAINPROG"): env.AddPreAction( "checkprogsize", env.VerboseAction(
# Target: Build executable and linkable firmware or SPIFFS image # target_elf = None if "nobuild" in COMMAND_LINE_TARGETS: target_elf = join("$BUILD_DIR", "${PROGNAME}.elf") if set(["uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS): fetch_spiffs_size(env) target_firm = join("$BUILD_DIR", "${ESP32_SPIFFS_IMAGE_NAME}.bin") else: target_firm = join("$BUILD_DIR", "${PROGNAME}.bin") else: target_elf = env.BuildProgram() if set(["buildfs", "uploadfs", "uploadfsota"]) & set(COMMAND_LINE_TARGETS): target_firm = env.DataToBin( join("$BUILD_DIR", "${ESP32_SPIFFS_IMAGE_NAME}"), "$PROJECTDATA_DIR") env.NoCache(target_firm) AlwaysBuild(target_firm) else: target_firm = env.ElfToBin(join("$BUILD_DIR", "${PROGNAME}"), target_elf) env.AddPlatformTarget("buildfs", target_firm, None, "Build Filesystem Image") AlwaysBuild(env.Alias("nobuild", target_firm)) target_buildprog = env.Alias("buildprog", target_firm, target_firm) # update max upload size based on CSV file if env.get("PIOMAINPROG"): env.AddPreAction( "checkprogsize",
# Target: Build executable, linkable firmware and data image # target_elf = None if "nobuild" in COMMAND_LINE_TARGETS: target_elf = join("$BUILD_DIR", "${PROGNAME}.elf") else: target_elf = env.BuildProgram() if "uploadfs" in COMMAND_LINE_TARGETS: data_dir = env.subst("$PROJECTDATA_DIR") if not (isdir(data_dir) and listdir(data_dir)): sys.stderr.write( "Please create `data` directory in a project and put some files\n") env.Exit(1) target_firm = env.DataToBin(join("$BUILD_DIR", "data"), target_elf) else: target_firm = target_elf env.AddPlatformTarget("buildfs", target_firm, None, "Build Filesystem Image") AlwaysBuild(env.Alias("nobuild", target_firm)) target_buildprog = env.Alias("buildprog", target_firm, target_firm) # # Target: Print binary size # target_size = env.AddPlatformTarget( "size", target_elf, env.VerboseAction("$SIZEPRINTCMD", "Calculating size $SOURCE"),