Skip to content

Commit dab0620

Browse files
committed
esp32/Makefile: Reorganise Makefile and add some comments.
1 parent 7d1f635 commit dab0620

File tree

1 file changed

+55
-43
lines changed

1 file changed

+55
-43
lines changed

esp32/Makefile

Lines changed: 55 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -75,34 +75,6 @@ LDFLAGS += -L$(ESPCOMP)/esp32/ld -T $(BUILD)/esp32_out.ld -T ./esp32.custom_comm
7575

7676
LIBGCC_FILE_NAME = $(shell $(CC) $(CFLAGS) -print-libgcc-file-name)
7777

78-
LIBS =
79-
LIBS += $(LDFLAGS_MOD)
80-
LIBS += --start-group
81-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_DRIVER_O))
82-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_ESP32_O))
83-
LIBS += $(ESPCOMP)/esp32/libhal.a
84-
LIBS += -L$(ESPCOMP)/esp32/lib -lcore -lnet80211 -lphy -lrtc -lpp -lwpa -lsmartconfig -lcoexist
85-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_EXPAT_O))
86-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_FREERTOS_O))
87-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_JSON_O))
88-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_LOG_O))
89-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_LWIP_O))
90-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_MBEDTLS_O))
91-
LIBS += $(ESPCOMP)/newlib/lib/libc.a
92-
LIBS += $(ESPCOMP)/newlib/lib/libm.a
93-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_NEWLIB_O))
94-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_NGHTTP_O))
95-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_NVS_FLASH_O))
96-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_OPENSSL_O))
97-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_SPI_FLASH_O))
98-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_TCPIP_ADAPTER_O))
99-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_VFS_O))
100-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_WPA_SUPPLICANT_O))
101-
LIBS += $(addprefix $(BUILD)/, $(ESPIDF_XTENSA_DEBUG_MODULE_O))
102-
LIBS += $(OBJ_MP)
103-
LIBS += -L$(dir $(LIBGCC_FILE_NAME)) -lgcc
104-
LIBS += --end-group
105-
10678
# Debugging/Optimization
10779
ifeq ($(DEBUG), 1)
10880
CFLAGS += -g
@@ -113,6 +85,9 @@ COPT += -Os -DNDEBUG
11385
#LDFLAGS += --gc-sections
11486
endif
11587

88+
################################################################################
89+
# List of MicroPython source and object files
90+
11691
SRC_C = \
11792
main.c \
11893
uart.c \
@@ -171,6 +146,22 @@ endif
171146
DRIVERS_SRC_C = $(addprefix drivers/,\
172147
)
173148

149+
OBJ_MP =
150+
OBJ_MP += $(PY_O)
151+
OBJ_MP += $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
152+
OBJ_MP += $(addprefix $(BUILD)/, $(STM_SRC_C:.c=.o))
153+
OBJ_MP += $(addprefix $(BUILD)/, $(EXTMOD_SRC_C:.c=.o))
154+
OBJ_MP += $(addprefix $(BUILD)/, $(LIB_SRC_C:.c=.o))
155+
OBJ_MP += $(addprefix $(BUILD)/, $(DRIVERS_SRC_C:.c=.o))
156+
157+
# List of sources for qstr extraction
158+
SRC_QSTR += $(SRC_C) $(STM_SRC_C) $(EXTMOD_SRC_C) $(DRIVERS_SRC_C)
159+
# Append any auto-generated sources that are needed by sources listed in SRC_QSTR
160+
SRC_QSTR_AUTO_DEPS +=
161+
162+
################################################################################
163+
# List of object files from the ESP32 IDF components
164+
174165
ESPIDF_DRIVER_O = $(addprefix $(ESPCOMP)/driver/,\
175166
uart.o \
176167
periph_ctrl.o \
@@ -478,14 +469,6 @@ ESPIDF_WPA_SUPPLICANT_O = $(addprefix $(ESPCOMP)/wpa_supplicant/,\
478469
src/crypto/crypto_internal-cipher.o \
479470
)
480471

481-
OBJ_MP =
482-
OBJ_MP += $(PY_O)
483-
OBJ_MP += $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
484-
OBJ_MP += $(addprefix $(BUILD)/, $(STM_SRC_C:.c=.o))
485-
OBJ_MP += $(addprefix $(BUILD)/, $(EXTMOD_SRC_C:.c=.o))
486-
OBJ_MP += $(addprefix $(BUILD)/, $(LIB_SRC_C:.c=.o))
487-
OBJ_MP += $(addprefix $(BUILD)/, $(DRIVERS_SRC_C:.c=.o))
488-
489472
OBJ_ESPIDF =
490473
OBJ_ESPIDF += $(addprefix $(BUILD)/, $(ESPIDF_NEWLIB_O))
491474
OBJ_ESPIDF += $(addprefix $(BUILD)/, $(ESPIDF_DRIVER_O))
@@ -505,12 +488,8 @@ OBJ_ESPIDF += $(addprefix $(BUILD)/, $(ESPIDF_OPENSSL_O))
505488
OBJ_ESPIDF += $(addprefix $(BUILD)/, $(ESPIDF_SPI_FLASH_O))
506489
OBJ_ESPIDF += $(addprefix $(BUILD)/, $(ESPIDF_WPA_SUPPLICANT_O))
507490

508-
OBJ = $(OBJ_MP) $(OBJ_ESPIDF)
509-
510-
# List of sources for qstr extraction
511-
SRC_QSTR += $(SRC_C) $(STM_SRC_C) $(EXTMOD_SRC_C) $(DRIVERS_SRC_C)
512-
# Append any auto-generated sources that are needed by sources listed in SRC_QSTR
513-
SRC_QSTR_AUTO_DEPS +=
491+
################################################################################
492+
# Main targets
514493

515494
all: $(BUILD)/bootloader.bin $(BUILD)/partitions.bin $(BUILD)/application.bin
516495

@@ -527,6 +506,39 @@ erase:
527506
$(ECHO) "Erasing flash"
528507
$(Q)$(ESPTOOL) --chip esp32 --port $(PORT) --baud $(BAUD) erase_flash
529508

509+
################################################################################
510+
# Declarations to build the application
511+
512+
OBJ = $(OBJ_MP) $(OBJ_ESPIDF)
513+
514+
APP_LD_ARGS =
515+
APP_LD_ARGS += $(LDFLAGS_MOD)
516+
APP_LD_ARGS += --start-group
517+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_DRIVER_O))
518+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_ESP32_O))
519+
APP_LD_ARGS += $(ESPCOMP)/esp32/libhal.a
520+
APP_LD_ARGS += -L$(ESPCOMP)/esp32/lib -lcore -lnet80211 -lphy -lrtc -lpp -lwpa -lsmartconfig -lcoexist
521+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_EXPAT_O))
522+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_FREERTOS_O))
523+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_JSON_O))
524+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_LOG_O))
525+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_LWIP_O))
526+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_MBEDTLS_O))
527+
APP_LD_ARGS += $(ESPCOMP)/newlib/lib/libc.a
528+
APP_LD_ARGS += $(ESPCOMP)/newlib/lib/libm.a
529+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_NEWLIB_O))
530+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_NGHTTP_O))
531+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_NVS_FLASH_O))
532+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_OPENSSL_O))
533+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_SPI_FLASH_O))
534+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_TCPIP_ADAPTER_O))
535+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_VFS_O))
536+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_WPA_SUPPLICANT_O))
537+
APP_LD_ARGS += $(addprefix $(BUILD)/, $(ESPIDF_XTENSA_DEBUG_MODULE_O))
538+
APP_LD_ARGS += $(OBJ_MP)
539+
APP_LD_ARGS += -L$(dir $(LIBGCC_FILE_NAME)) -lgcc
540+
APP_LD_ARGS += --end-group
541+
530542
$(BUILD)/esp32_out.ld: sdkconfig.h
531543
$(Q)$(CC) -I. -C -P -x c -E $(ESPCOMP)/esp32/ld/esp32.ld -o $@
532544

@@ -536,7 +548,7 @@ $(BUILD)/application.bin: $(BUILD)/application.elf
536548

537549
$(BUILD)/application.elf: $(OBJ) $(BUILD)/esp32_out.ld
538550
$(ECHO) "LINK $@"
539-
$(Q)$(LD) $(LDFLAGS) -o $@ $(LIBS)
551+
$(Q)$(LD) $(LDFLAGS) -o $@ $(APP_LD_ARGS)
540552
$(Q)$(SIZE) $@
541553

542554
define compile_cxx

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy