Skip to content

Commit 72f6d7e

Browse files
authored
Merge pull request #3155 from jepler/esp32s2-parallel-build
esp32s2: Take care to invoke the sub-build-system only once
2 parents 7bb508b + 910f69c commit 72f6d7e

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

ports/esp32s2/Makefile

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -217,8 +217,8 @@ $(BUILD)/esp-idf/config/sdkconfig.h: boards/$(BOARD)/sdkconfig | $(BUILD)/esp-id
217217

218218
# build a lib
219219
# Adding -d explain -j 1 -v to the ninja line will output debug info
220-
$(BUILD)/esp-idf/esp-idf/%.a: $(BUILD)/esp-idf/config/sdkconfig.h
221-
ninja -C $(BUILD)/esp-idf esp-idf/$*.a
220+
#$(BUILD)/esp-idf/esp-idf/%.a: $(BUILD)/esp-idf/config/sdkconfig.h
221+
# ninja -C $(BUILD)/esp-idf esp-idf/$*.a
222222

223223
$(BUILD)/esp-idf/esp-idf/esp32s2/esp32s2_out.ld: $(BUILD)/esp-idf/config/sdkconfig.h
224224
ninja -C $(BUILD)/esp-idf esp-idf/esp32s2/esp32s2_out.ld
@@ -230,9 +230,6 @@ $(BUILD)/esp-idf/esp-idf/esp32s2/ld/esp32s2.project.ld: $(BUILD)/esp-idf/config/
230230
$(BUILD)/esp-idf/partition_table/partition-table.bin: $(BUILD)/esp-idf/config/sdkconfig.h
231231
IDF_PATH=$(IDF_PATH) ninja -C $(BUILD)/esp-idf partition_table/partition-table.bin
232232

233-
$(BUILD)/esp-idf/bootloader/bootloader.bin: $(BUILD)/esp-idf/config/sdkconfig.h
234-
ninja -C $(BUILD)/esp-idf bootloader/bootloader.bin
235-
236233
# run menuconfig
237234
menuconfig: $(BUILD)/esp-idf/config
238235
ninja -C $(BUILD)/esp-idf menuconfig
@@ -260,7 +257,18 @@ FLASH_FLAGS = --flash_mode $(CIRCUITPY_ESP_FLASH_MODE) --flash_freq $(CIRCUITPY_
260257

261258
all: $(BUILD)/firmware.bin $(BUILD)/firmware.uf2
262259

263-
$(BUILD)/firmware.elf: $(OBJ) | $(ESP_IDF_COMPONENTS_EXPANDED) $(ESP_AUTOGEN_LD)
260+
.PHONY: esp-idf-stamp
261+
esp-idf-stamp: $(BUILD)/esp-idf/config/sdkconfig.h
262+
ninja -C $(BUILD)/esp-idf \
263+
bootloader/bootloader.bin \
264+
esp-idf/bootloader_support/libbootloader_support.a \
265+
esp-idf/esp32s2/ld/esp32s2.project.ld \
266+
esp-idf/esp_system/libesp_system.a \
267+
esp-idf/freertos/libfreertos.a \
268+
esp-idf/log/liblog.a \
269+
esp-idf/xtensa/libxtensa.a
270+
271+
$(BUILD)/firmware.elf: $(OBJ) | esp-idf-stamp
264272
$(STEPECHO) "LINK $@"
265273
$(Q)$(CC) -o $@ $(LDFLAGS) $^ $(ESP_IDF_COMPONENTS_EXPANDED) $(BINARY_BLOBS) build-$(BOARD)/esp-idf/esp-idf/newlib/libnewlib.a -u newlib_include_pthread_impl
266274
# $(Q)$(SIZE) $@ | $(PYTHON3) $(TOP)/tools/build_memory_info.py $(BUILD)/esp-idf/esp-idf/esp32s2/esp32s2_out.ld
@@ -271,7 +279,7 @@ $(BUILD)/circuitpython-firmware.bin: $(BUILD)/firmware.elf
271279
# $(Q)$(OBJCOPY) -O binary $^ $@
272280
# $(Q)$(OBJCOPY) -O binary -j .vectors -j .text -j .data $^ $@
273281

274-
$(BUILD)/firmware.bin: $(BUILD)/esp-idf/partition_table/partition-table.bin $(BUILD)/esp-idf/bootloader/bootloader.bin $(BUILD)/circuitpython-firmware.bin
282+
$(BUILD)/firmware.bin: $(BUILD)/circuitpython-firmware.bin | esp-idf-stamp
275283
$(Q)$(PYTHON) ../../tools/join_bins.py $@ 0x1000 $(BUILD)/esp-idf/bootloader/bootloader.bin 0x8000 $(BUILD)/esp-idf/partition_table/partition-table.bin 0x10000 $(BUILD)/circuitpython-firmware.bin
276284

277285
$(BUILD)/firmware.uf2: $(BUILD)/circuitpython-firmware.bin

0 commit comments

Comments
 (0)