Makefile.projbuild 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. ifdef CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION
  2. PHY_INIT_DATA_OBJ = $(BUILD_DIR_BASE)/phy_init_data.o
  3. PHY_INIT_DATA_BIN = $(BUILD_DIR_BASE)/phy_init_data.bin
  4. # Command to flash PHY init data partition
  5. PHY_INIT_DATA_FLASH_CMD = $(ESPTOOLPY_SERIAL) write_flash $(PHY_DATA_OFFSET) $(PHY_INIT_DATA_BIN)
  6. ESPTOOL_ALL_FLASH_ARGS += $(PHY_DATA_OFFSET) $(PHY_INIT_DATA_BIN)
  7. ESP32_COMPONENT_PATH := $(COMPONENT_PATH)
  8. $(PHY_INIT_DATA_OBJ): $(ESP32_COMPONENT_PATH)/phy_init_data.h $(BUILD_DIR_BASE)/include/sdkconfig.h
  9. $(summary) CC $(notdir $@)
  10. printf "#include \"phy_init_data.h\"\n" | $(CC) -I $(BUILD_DIR_BASE)/include -I $(ESP32_COMPONENT_PATH) -I $(ESP32_COMPONENT_PATH)/include -c -o $@ -xc -
  11. $(PHY_INIT_DATA_BIN): $(PHY_INIT_DATA_OBJ)
  12. $(summary) BIN $(notdir $@)
  13. $(OBJCOPY) -O binary $< $@
  14. phy_init_data: $(PHY_INIT_DATA_BIN)
  15. phy_init_data-flash: $(BUILD_DIR_BASE)/phy_init_data.bin
  16. @echo "Flashing PHY init data..."
  17. $(PHY_INIT_DATA_FLASH_CMD)
  18. phy_init_data-clean:
  19. rm -f $(PHY_INIT_DATA_BIN) $(PHY_INIT_DATA_OBJ)
  20. all: phy_init_data
  21. flash: phy_init_data
  22. endif # CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION
  23. # Enable psram cache bug workaround in compiler if selected
  24. ifdef CONFIG_SPIRAM_CACHE_WORKAROUND
  25. CFLAGS+=-mfix-esp32-psram-cache-issue
  26. CXXFLAGS+=-mfix-esp32-psram-cache-issue
  27. endif
  28. # Enable dynamic esp_timer overflow value if building unit tests
  29. ifneq ("$(filter esp32,$(TEST_COMPONENTS_LIST))","")
  30. CPPFLAGS += -DESP_TIMER_DYNAMIC_OVERFLOW_VAL
  31. endif
  32. ESP32_LINKER_SCRIPT_TEMPLATE := $(COMPONENT_PATH)/ld/esp32.project.ld.in
  33. ESP32_LINKER_SCRIPT_OUTPUT_DIR := $(realpath $(BUILD_DIR_BASE)/esp32)
  34. # Target to generate linker script generator from fragments presented by each of
  35. # the components
  36. $(eval $(call ldgen_process_template, $(ESP32_LINKER_SCRIPT_TEMPLATE), $(ESP32_LINKER_SCRIPT_OUTPUT_DIR)/esp32.project.ld))