Skip to content

Commit 3b9baf9

Browse files
committed
Only store references to one linker script in a resources object.
Projects have only ever made use of one linker script per compiler. However, the tools would store references to multiple linker scripts in a project and select one in a non-deterministic way. Now we clear out any existing linker script when we add a new one to a project. This way, the last added linker script is always used.
1 parent fd7467c commit 3b9baf9

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

tools/resources/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,10 @@ def add_file_ref(self, file_type, file_name, file_path):
269269
if file_type:
270270
if sep != self._sep:
271271
file_name = file_name.replace(sep, self._sep)
272+
# Mbed OS projects only use one linker script at a time, so remove
273+
# any existing linker script when adding a new one
274+
if file_type == FileType.LD_SCRIPT:
275+
self._file_refs[file_type].clear()
272276
self._file_refs[file_type].add(FileRef(file_name, file_path))
273277

274278
def _include_file(self, ref):

0 commit comments

Comments
 (0)