Skip to content

Commit b19365c

Browse files
authored
add COMPONENTS_SUBSET
1 parent 3d21f8c commit b19365c

File tree

1 file changed

+22
-8
lines changed

1 file changed

+22
-8
lines changed

build.sh

+22-8
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,25 @@
11
#!/bin/bash
22

33
if ! [ -x "$(command -v python3)" ]; then
4-
echo "ERROR: python is not installed! Please install python first."
4+
echo "ERROR: python is not installed or not in PATH! Please install python first."
55
exit 1
66
fi
77

88
if ! [ -x "$(command -v git)" ]; then
9-
echo "ERROR: git is not installed! Please install git first."
9+
echo "ERROR: git is not installed or not in PATH! Please install git first."
10+
exit 1
11+
fi
12+
13+
if ! [ -x "$(command -v ninja)" ]; then
14+
echo "ERROR: ninja is not installed or not in PATH! Please install ninja first."
1015
exit 1
1116
fi
1217

1318
# Fixes building some components. See https://github.com/espressif/arduino-esp32/issues/10167
1419
export IDF_COMPONENT_OVERWRITE_MANAGED_COMPONENTS=1
1520

21+
CCACHE_ENABLE=1
22+
1623
export TARGET="esp32"
1724
BUILD_TYPE="all"
1825
SKIP_ENV=0
@@ -21,8 +28,9 @@ ARCHIVE_OUT=1
2128
DEPLOY_OUT=0
2229

2330
function print_help() {
24-
echo "Usage: build.sh [-s] [-A <arduino_branch>] [-I <idf_branch>] [-i <idf_commit>] [-c <path>] [-t <target>] [-b <build|menuconfig|reconfigure|idf-libs|copy-bootloader|mem-variant>] [config ...]"
31+
echo "Usage: build.sh [-s] [-n] [-A <arduino_branch>] [-I <idf_branch>] [-i <idf_commit>] [-c <path>] [-t <target>] [-b <build|menuconfig|reconfigure|idf-libs|copy-bootloader|mem-variant>] [config ...]"
2532
echo " -s Skip installing/updating of ESP-IDF and all components"
33+
echo " -n Disable ccache"
2634
echo " -A Set which branch of arduino-esp32 to be used for compilation"
2735
echo " -I Set which branch of ESP-IDF to be used for compilation"
2836
echo " -i Set which commit of ESP-IDF to be used for compilation"
@@ -38,6 +46,9 @@ while getopts ":A:I:i:c:t:b:sde" opt; do
3846
s )
3947
SKIP_ENV=1
4048
;;
49+
n )
50+
CCACHE_ENABLE=0
51+
;;
4152
e )
4253
ARCHIVE_OUT=1
4354
;;
@@ -78,14 +89,17 @@ done
7889
shift $((OPTIND -1))
7990
CONFIGS=$@
8091

92+
export IDF_CCACHE_ENABLE=$CCACHE_ENABLE
93+
8194
# Output the TARGET array
8295
echo "TARGET(s): ${TARGET[@]}"
8396

8497
mkdir -p dist
8598
rm -rf dependencies.lock
8699

87100
if [ $SKIP_ENV -eq 0 ]; then
88-
echo "* Installing ESP-IDF/Arduino and all components..."
101+
echo "* Installing/Updating Arduino and ESP-IDF."
102+
89103
# install arduino component
90104
./tools/install-arduino.sh
91105
if [ $? -ne 0 ]; then exit 1; fi
@@ -137,7 +151,7 @@ if [ "$BUILD_TYPE" != "all" ]; then
137151

138152
echo "idf.py -DIDF_TARGET=\"$target\" -DSDKCONFIG_DEFAULTS=\"$configs\" $BUILD_TYPE"
139153
rm -rf build sdkconfig
140-
idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$configs" $BUILD_TYPE
154+
COMPONENTS_SUBSET=full idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$configs" $BUILD_TYPE
141155
if [ $? -ne 0 ]; then exit 1; fi
142156
done
143157
exit 0
@@ -200,7 +214,7 @@ for target_json in `jq -c '.targets[]' configs/builds.json`; do
200214

201215
echo "* Build IDF-Libs: $idf_libs_configs"
202216
rm -rf build sdkconfig
203-
idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$idf_libs_configs" idf-libs
217+
COMPONENTS_SUBSET=full idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$idf_libs_configs" idf-libs
204218
if [ $? -ne 0 ]; then exit 1; fi
205219

206220
# Build Bootloaders
@@ -212,7 +226,7 @@ for target_json in `jq -c '.targets[]' configs/builds.json`; do
212226

213227
echo "* Build BootLoader: $bootloader_configs"
214228
rm -rf build sdkconfig
215-
idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$bootloader_configs" copy-bootloader
229+
COMPONENTS_SUBSET=none idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$bootloader_configs" copy-bootloader
216230
if [ $? -ne 0 ]; then exit 1; fi
217231
done
218232

@@ -225,7 +239,7 @@ for target_json in `jq -c '.targets[]' configs/builds.json`; do
225239

226240
echo "* Build Memory Variant: $mem_configs"
227241
rm -rf build sdkconfig
228-
idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$mem_configs" mem-variant
242+
COMPONENTS_SUBSET=none idf.py -DIDF_TARGET="$target" -DSDKCONFIG_DEFAULTS="$mem_configs" mem-variant
229243
if [ $? -ne 0 ]; then exit 1; fi
230244
done
231245
done

0 commit comments

Comments
 (0)