[sections:bt_bss]
entries:
    .bss+

[sections:bt_common]
entries:
    COMMON

[scheme:bt_default]
entries:
    bt_bss -> dram0_bss
    bt_common -> dram0_bss
    data -> dram0_data

[scheme:bt_extram_bss]
entries:
    bt_bss -> extern_ram
    bt_common -> extern_ram
    data -> dram0_data

# For the following fragments, order matters for
# 'ALIGN(4) ALIGN(4, post) SURROUND(sym)', which generates:
#
#   . = ALIGN(4)
#   _sym_start
#   ...
#   . = ALIGN(4)
#   _sym_end

[mapping:bt]
archive: libbt.a
entries:
    if ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY = y:
        * (bt_extram_bss);
            bt_bss -> extern_ram ALIGN(4) ALIGN(4, post) SURROUND(bt_bss),
            bt_common -> extern_ram ALIGN(4) ALIGN(4, post) SURROUND(bt_common),
            data -> dram0_data  ALIGN(4) ALIGN(4, post) SURROUND(bt_data)
    else:
        * (bt_default);
            bt_bss -> dram0_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_bss),
            bt_common -> dram0_bss ALIGN(4) ALIGN(4, post) SURROUND(bt_common),
            data -> dram0_data  ALIGN(4) ALIGN(4, post) SURROUND(bt_data)