# With the '-Os' option, char arrays have not to be 32-bit word aligned. This # leads to an alignment exception when the address of a char array is assigned # to an 'uint32_t' pointer and the pointer is used for the access. CFLAGS_OPT ?= -O2 # ESP8266 specific flashing options # DO NOT CHANGE, ESP8266/ESP8285 modules only work with dout and 26m FLASH_CHIP = esp8266 FLASH_OPTS = --version 3 FLASH_MODE = dout FLASH_FREQ = 26m FLASH_SIZE ?= 1 BOOTLOADER_POS = 0x0000 FLASHFILE_POS = 0x10000 include $(RIOTCPU)/esp_common/Makefile.include # regular Makefile TARGET_ARCH_ESP8266 ?= xtensa-esp8266-elf TARGET_ARCH ?= $(TARGET_ARCH_ESP8266) PSEUDOMODULES += esp_sw_timer INCLUDES += -I$(RIOTCPU)/$(CPU) INCLUDES += -I$(RIOTCPU)/$(CPU)/include INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/ INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/bootloader_support/include INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/esp8266/include INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/esp8266/include/esp8266 INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/heap/include INCLUDES += -I$(RIOTCPU)/$(CPU)/vendor/esp-idf/log/include CFLAGS += -D__ESP_FILE__=__FILE__ ifneq (,$(filter esp_gdbstub,$(USEMODULE))) GDBSTUB_DIR ?= $(RIOTCPU)/$(CPU)/vendor/esp-gdbstub CFLAGS += -DGDBSTUB_BREAK_ON_INIT=1 INCLUDES += -I$(GDBSTUB_DIR) endif ifneq (,$(filter esp_now,$(USEMODULE))) ARCHIVES += -lespnow endif ARCHIVES += -lgcc -lhal -lwpa -lcore -lnet80211 -lphy -lpp -lstdc++ LINKFLAGS += -L$(RIOTCPU)/$(CPU)/ld LINKFLAGS += -Tesp8266.rom.ld LINKFLAGS += -Tesp8266.riot-os.ld LINKFLAGS += -Tesp8266.peripherals.ld LINKFLAGS += -Wl,-wrap=pp_attach LINKFLAGS += -Wl,-wrap=pm_attach