mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 17:19:09 -04:00
ci(esp32c5): support to build template app for beta3 and mp
This commit is contained in:
parent
c9d6a11d1d
commit
5a4f040def
@ -9,31 +9,33 @@
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
TEMPLATE_APP_PATH="esp-idf-template"
|
||||
|
||||
gen_configs() {
|
||||
# CONFIG_COMPILER_OPTIMIZATION_NONE with flag -O0
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_NONE=y" > esp-idf-template/sdkconfig.ci.O0
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_NONE=y" > ${TEMPLATE_APP_PATH}/sdkconfig.ci.O0
|
||||
|
||||
# CONFIG_COMPILER_OPTIMIZATION_SIZE with flag -Os
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_SIZE=y" > esp-idf-template/sdkconfig.ci.Os
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y" >> esp-idf-template/sdkconfig.ci.Os
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_SIZE=y" > ${TEMPLATE_APP_PATH}/sdkconfig.ci.Os
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.Os
|
||||
|
||||
# CONFIG_COMPILER_OPTIMIZATION_PERF with flag -O2
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_PERF=y" > esp-idf-template/sdkconfig.ci.O2
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF=y" >> esp-idf-template/sdkconfig.ci.O2
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_PERF=y" > ${TEMPLATE_APP_PATH}/sdkconfig.ci.O2
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF=y" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.O2
|
||||
# -O2 makes the bootloader too large to fit in the default space, otherwise(!)
|
||||
echo "CONFIG_PARTITION_TABLE_OFFSET=0x10000" >> esp-idf-template/sdkconfig.ci.O2
|
||||
echo "CONFIG_PARTITION_TABLE_OFFSET=0x10000" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.O2
|
||||
|
||||
# This part will be built in earlier stage (pre_build job) with only cmake. Built with make in later stage
|
||||
# CONFIG_COMPILER_OPTIMIZATION_DEBUG with flag -Og
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_DEBUG=y" > esp-idf-template/sdkconfig.ci2.Og
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG=y" >> esp-idf-template/sdkconfig.ci2.Og
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_DEBUG=y" > ${TEMPLATE_APP_PATH}/sdkconfig.ci2.Og
|
||||
echo "CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG=y" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci2.Og
|
||||
# -Og makes the bootloader too large to fit in the default space, otherwise(!)
|
||||
echo "CONFIG_PARTITION_TABLE_OFFSET=0x10000" >> esp-idf-template/sdkconfig.ci2.Og
|
||||
echo "CONFIG_PARTITION_TABLE_OFFSET=0x10000" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci2.Og
|
||||
|
||||
# Needs to be built with specific extra flags
|
||||
# Same as O2, but also disable assertions.
|
||||
cp esp-idf-template/sdkconfig.ci.O2 esp-idf-template/sdkconfig.ci3.no_assert
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE=y" >> esp-idf-template/sdkconfig.ci3.no_assert
|
||||
cp ${TEMPLATE_APP_PATH}/sdkconfig.ci.O2 ${TEMPLATE_APP_PATH}/sdkconfig.ci3.no_assert
|
||||
echo "CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE=y" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci3.no_assert
|
||||
}
|
||||
|
||||
get_config_str() {
|
||||
@ -53,7 +55,7 @@ build_stage2() {
|
||||
export EXTRA_CFLAGS=${PEDANTIC_CFLAGS/-Werror=unused-variable -Werror=unused-but-set-variable -Werror=unused-function/}
|
||||
export EXTRA_CXXFLAGS=${PEDANTIC_CXXFLAGS/-Werror=unused-variable -Werror=unused-but-set-variable -Werror=unused-function/}
|
||||
python -m idf_build_apps build -vv \
|
||||
-p esp-idf-template \
|
||||
-p ${TEMPLATE_APP_PATH} \
|
||||
-t all \
|
||||
${CONFIG_STR} \
|
||||
--work-dir ${BUILD_PATH}/cmake \
|
||||
@ -68,7 +70,7 @@ build_stage2() {
|
||||
build_stage1() {
|
||||
CONFIG_STR=$(get_config_str sdkconfig.ci2.*=)
|
||||
python -m idf_build_apps build -vv \
|
||||
-p esp-idf-template \
|
||||
-p ${TEMPLATE_APP_PATH} \
|
||||
-t all \
|
||||
${CONFIG_STR} \
|
||||
--work-dir ${BUILD_PATH}/cmake \
|
||||
@ -79,6 +81,35 @@ build_stage1() {
|
||||
--default-build-targets esp32 esp32s2 esp32s3 esp32c2 esp32c3 esp32c5 esp32c6 esp32h2 esp32p4
|
||||
}
|
||||
|
||||
# TODO: IDF-9197 remove the additional test for esp32c5 beta3
|
||||
build_c5beta3() {
|
||||
# Update the config to select C5 beta3
|
||||
C5BETA3_CFG="CONFIG_IDF_TARGET_ESP32C5_BETA3_VERSION=y\nCONFIG_IDF_TARGET_ESP32C5_MP_VERSION=n"
|
||||
if [ $1 = 1 ]
|
||||
then
|
||||
echo "${C5BETA3_CFG}" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci2.Og
|
||||
CONFIG_STR=$(get_config_str sdkconfig.ci2.*=)
|
||||
KEEP_GOING=""
|
||||
else
|
||||
echo "${C5BETA3_CFG}" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.O0
|
||||
echo "${C5BETA3_CFG}" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.Os
|
||||
echo "${C5BETA3_CFG}" >> ${TEMPLATE_APP_PATH}/sdkconfig.ci.O2
|
||||
CONFIG_STR=$(get_config_str sdkconfig.ci.*=)
|
||||
KEEP_GOING=" --keep-going"
|
||||
fi
|
||||
python -m idf_build_apps build -vv \
|
||||
-p ${TEMPLATE_APP_PATH} \
|
||||
-t esp32c5 \
|
||||
${CONFIG_STR} \
|
||||
--work-dir ${BUILD_PATH}/cmake \
|
||||
--build-dir ${BUILD_DIR} \
|
||||
--build-log ${BUILD_LOG_CMAKE} \
|
||||
--size-file size.json \
|
||||
${KEEP_GOING} \
|
||||
--collect-size-info size_info.txt \
|
||||
--default-build-targets esp32c5
|
||||
}
|
||||
|
||||
# Default arguments
|
||||
# STAGE:
|
||||
# 1 (-p): fast build, 2 (default): regular build
|
||||
@ -104,3 +135,7 @@ then
|
||||
else
|
||||
build_stage2
|
||||
fi
|
||||
|
||||
# TODO: IDF-9197 remove the additional test for esp32c5 beta3
|
||||
echo "Build ESP32-C5 beta3 additionally"
|
||||
build_c5beta3 ${STAGE}
|
||||
|
Loading…
x
Reference in New Issue
Block a user