Makefile.projbuild 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. # Enable psram cache bug workaround in compiler if selected
  2. ifdef CONFIG_SPIRAM_CACHE_WORKAROUND
  3. SPIRAM_CACHE_WORKAROUND_FLAGS = -mfix-esp32-psram-cache-issue
  4. ifdef CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST
  5. SPIRAM_CACHE_WORKAROUND_FLAGS += -mfix-esp32-psram-cache-strategy=dupldst
  6. endif
  7. ifdef CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW
  8. SPIRAM_CACHE_WORKAROUND_FLAGS += -mfix-esp32-psram-cache-strategy=memw
  9. endif
  10. ifdef CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS
  11. SPIRAM_CACHE_WORKAROUND_FLAGS += -mfix-esp32-psram-cache-strategy=nops
  12. endif
  13. CFLAGS+=$(SPIRAM_CACHE_WORKAROUND_FLAGS)
  14. CXXFLAGS+=$(SPIRAM_CACHE_WORKAROUND_FLAGS)
  15. LDFLAGS+=$(SPIRAM_CACHE_WORKAROUND_FLAGS)
  16. endif
  17. # Enable dynamic esp_timer overflow value if building unit tests
  18. ifneq ("$(filter esp32,$(TEST_COMPONENTS_LIST))","")
  19. CPPFLAGS += -DESP_TIMER_DYNAMIC_OVERFLOW_VAL
  20. endif
  21. ESP32_LINKER_SCRIPT_TEMPLATE := $(COMPONENT_PATH)/ld/esp32.project.ld.in
  22. ESP32_LINKER_SCRIPT_OUTPUT_DIR := $(realpath $(BUILD_DIR_BASE)/esp32)
  23. # Target to generate linker script generator from fragments presented by each of
  24. # the components
  25. $(eval $(call ldgen_process_template, $(ESP32_LINKER_SCRIPT_TEMPLATE), $(ESP32_LINKER_SCRIPT_OUTPUT_DIR)/esp32.project.ld))