更新工程构建脚本

This commit is contained in:
LokLiang
2025-04-10 10:57:59 +08:00
parent 133181c542
commit 9d51493326
8 changed files with 39 additions and 53 deletions

View File

@@ -1,8 +1,5 @@
#!/bin/bash
# 非释放版本
DEV_VERSION=1
# 对应在 sdkconfig_defaults 文件夹中的文件名的字段(对应 6 个字节的固件类型)
FW_NAME=ESPEVB

View File

@@ -1,8 +1,5 @@
#!/bin/bash
# 非释放版本
DEV_VERSION=1
# 对应在 sdkconfig_defaults 文件夹中的文件名的字段(对应 6 个字节的固件类型)
FW_NAME=ESPEVB

View File

@@ -1,8 +1,5 @@
#!/bin/bash
# 非释放版本
DEV_VERSION=1
# 对应在 sdkconfig_defaults 文件夹中的文件名的字段(对应 6 个字节的固件类型)
FW_NAME=ESPEVB

View File

@@ -1,30 +1,31 @@
#!/bin/bash
if [ -n "$(git status --porcelain)" ]; then
if [ -z ${DEV_VERSION} ] && [ "$1" != "menuconfig" ]; then
echo -e "\033[31m[ERROR]\033[0m ${BASH_SOURCE}:${LINENO}: PLEASE COMMIT YOUR CHANGE FIRST!!!"
# exit 1
fi
fi
SAVE_FLAG=0
if [ $# -eq 1 ]; then
if [ "$1" != "save" ] && [ "$1" != "menuconfig" ]; then
if [ "$1" == "save" ]; then
SAVE_FLAG=1
elif [ "$1" != "menuconfig" ]; then
echo -e "\033[31m[ERROR]\033[0m ${BASH_SOURCE}:${LINENO}: Input parameter 'save' to save output file or 'menuconfig' to set configuration"
exit 1
fi
SAVE_FLAG=1
fi
# 固定变量
RELEASE_DIR=release
GIT_TIME=$(git log -1 --format="%at" | xargs -I{} date -d @{} +%Y%m%d_%H%M)
GIT_HASH=$(git -C . log -1 --format="%h")
if [ -z ${DEV_VERSION} ]; then
GIT_RELEASE_CODE=${GIT_TIME}-${GIT_HASH}
if [ -n "$(git status --porcelain)" ]; then
if [ "$1" = "save" ]; then
echo -e "\033[31m[ERROR]\031[0m ${BASH_SOURCE}:${LINENO}: PLEASE COMMIT YOUR CHANGE FIRST!!!"
exit 1
fi
if [ "$1" != "menuconfig" ]; then
echo -e "\033[33m[WARNING]\033[0m ${BASH_SOURCE}:${LINENO}: NEVER COMMIT YOUR CHANGE"
sleep 2
fi
GIT_RELEASE_CODE="(beta)"
else
GIT_RELEASE_CODE="(Development_version)"
GIT_TIME=$(git log -1 --format="%at" | xargs -I{} date -d @{} +%Y%m%d_%H%M)
GIT_HASH=$(git -C . log -1 --format="%h")
GIT_RELEASE_CODE=${GIT_TIME}-${GIT_HASH}
fi
RELEASE_DIR=release
RELEASE_NAME=${FW_NAME}-${CHIP_NAME}-${GIT_RELEASE_CODE}-v${FW_VERSION_MAIN}.${FW_VERSION_MINOR}.${FW_VERSION_BUILD}
RELEASE_PRO_FILE=${RELEASE_DIR}/Release-pro-${RELEASE_NAME}.bin
RELEASE_OTA_FILE=${RELEASE_DIR}/Release-ota-${RELEASE_NAME}.bin
@@ -85,21 +86,23 @@ RELEASE_DIR=${RELEASE_DIR}/${FW_NAME}
RELEASE_OTA_FILE_SAVE=${RELEASE_DIR}/$(basename ${RELEASE_OTA_FILE})
RELEASE_PRO_FILE_SAVE=${RELEASE_DIR}/$(basename ${RELEASE_PRO_FILE})
if [ "${SAVE_FLAG}" == "0" ]; then
if [ "${GIT_RELEASE_CODE}" != "(beta)" ]; then
if [ "${SAVE_FLAG}" == "1" ]; then
# 将固定位置的 升级包和量产包 保存到对应的固件类型目录中
mkdir -p ${RELEASE_DIR} || exit 1
if [ ! -f ${RELEASE_OTA_FILE_SAVE} ] || [ ! -f ${RELEASE_PRO_FILE_SAVE} ]; then
cp ${RELEASE_OTA_FILE} ${RELEASE_OTA_FILE_SAVE} || exit 1
cp ${RELEASE_PRO_FILE} ${RELEASE_PRO_FILE_SAVE} || exit 1
fi
echo -e "Release ota packet: \x1b[34m${RELEASE_OTA_FILE_SAVE}\x1b[0m"
echo -e "Release production packet: \x1b[34m${RELEASE_PRO_FILE_SAVE}\x1b[0m"
else
if [ ! -f ${RELEASE_OTA_FILE_SAVE} ] || [ ! -f ${RELEASE_PRO_FILE_SAVE} ]; then
echo -e "To save these release files, run this command:\r\n${0} save"
fi
if [ ! -f ${RELEASE_OTA_FILE_SAVE} ] || [ ! -f ${RELEASE_PRO_FILE_SAVE} ]; then
echo -e "To save these release files, run this command:\r\n${0} save"
fi
else
# 将固定位置的 升级包和量产包 保存到对应的固件类型目录中
mkdir -p ${RELEASE_DIR} || exit 1
if [ ! -f ${RELEASE_OTA_FILE_SAVE} ] || [ ! -f ${RELEASE_PRO_FILE_SAVE} ]; then
cp ${RELEASE_OTA_FILE} ${RELEASE_OTA_FILE_SAVE} || exit 1
cp ${RELEASE_PRO_FILE} ${RELEASE_PRO_FILE_SAVE} || exit 1
fi
echo -e "Release ota packet: \x1b[34m${RELEASE_OTA_FILE_SAVE}\x1b[0m"
echo -e "Release production packet: \x1b[34m${RELEASE_PRO_FILE_SAVE}\x1b[0m"
fi

View File

@@ -1,12 +1,11 @@
# This file was generated using idf.py save-defconfig. It can be edited manually.
# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
# Espressif IoT Development Framework (ESP-IDF) 5.2.1 Project Minimal Configuration
#
CONFIG_IDF_TARGET="esp32c2"
CONFIG_BOOTLOADER_LOG_LEVEL_WARN=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_BOARD_NAME_DEVKIT_ESP32C2=y
CONFIG_PRODUCT_ID_SBFWC2=y
CONFIG_BT_ENABLED=y
CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
CONFIG_BT_LE_50_FEATURE_SUPPORT=n

View File

@@ -1,13 +1,10 @@
# This file was generated using idf.py save-defconfig. It can be edited manually.
# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
# Espressif IoT Development Framework (ESP-IDF) 5.2.1 Project Minimal Configuration
#
CONFIG_IDF_TARGET="esp32c3"
CONFIG_BOOTLOADER_LOG_LEVEL_WARN=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PRODUCT_ID_SBDEMO=y
CONFIG_CAP_LED_STRIP=y
CONFIG_LED_STRIP_SKIP_PWRUP=y
CONFIG_BT_ENABLED=y
CONFIG_BT_BLE_42_FEATURES_SUPPORTED=y
CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH=y

View File

@@ -1,13 +1,11 @@
# This file was generated using idf.py save-defconfig. It can be edited manually.
# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
# Espressif IoT Development Framework (ESP-IDF) 5.2.1 Project Minimal Configuration
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_BOOTLOADER_LOG_LEVEL_WARN=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_BOARD_NAME_DEVKIT_ESP32S3=y
CONFIG_PRODUCT_ID_SBF7V4=y
CONFIG_CAP_LED_STRIP=y
CONFIG_BUILD_WIFI=y
CONFIG_BT_ENABLED=y
CONFIG_BT_BLUEDROID_PINNED_TO_CORE_1=y

View File

@@ -1,14 +1,12 @@
# This file was generated using idf.py save-defconfig. It can be edited manually.
# Espressif IoT Development Framework (ESP-IDF) Project Minimal Configuration
# Espressif IoT Development Framework (ESP-IDF) 5.2.1 Project Minimal Configuration
#
CONFIG_IDF_TARGET="esp32s3"
CONFIG_BOOTLOADER_LOG_LEVEL_WARN=y
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_BOARD_NAME_DEVKIT_ESP32S3=y
CONFIG_PRODUCT_ID_SBF7V4=y
CONFIG_CAP_LED_STRIP=y
CONFIG_BUILD_WIFI=y
CONFIG_PRODUCT_ID_SBDEMO=y
CONFIG_BT_ENABLED=y
CONFIG_BT_BLUEDROID_PINNED_TO_CORE_1=y
CONFIG_BT_LOG_HCI_TRACE_LEVEL_ERROR=y