1if(CONFIG_IDF_TARGET_ESP32 AND CONFIG_SPIRAM_CACHE_WORKAROUND AND NOT BOOTLOADER_BUILD)
2    # We do this here as well as in CMakeLists.txt, because targets that
3    # are not part of the ESP-IDF build system (for cases where a generic
4    # non-IDF CMakeLists.txt file is imported into a component) don't depend
5    # on the esp32 component so don't get the extra flag. This handles that case.
6    idf_build_set_property(COMPILE_OPTIONS "-mfix-esp32-psram-cache-issue" APPEND)
7    # note that we don't need to set link options as the library linked is independent of this
8    if(CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST)
9        idf_build_set_property(COMPILE_OPTIONS "-mfix-esp32-psram-cache-strategy=dupldst" APPEND)
10    endif()
11    if(CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW)
12        idf_build_set_property(COMPILE_OPTIONS "-mfix-esp32-psram-cache-strategy=memw" APPEND)
13    endif()
14    if(CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS)
15        idf_build_set_property(COMPILE_OPTIONS "-mfix-esp32-psram-cache-strategy=nops" APPEND)
16    endif()
17endif()
18