Skip to content

Commit 4b53b05

Browse files
committed
fix: script: avoid duplicate entry in boards_entry.txt
STM32_open_pin_data have some mcu defined in several xml files, while it is not fixed prevent duplicate entry. Signed-off-by: Frederic Pillon <[email protected]>
1 parent 4a63482 commit 4b53b05

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

CI/utils/stm32variant.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1881,15 +1881,24 @@ def merge_dir(out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp)
18811881
new_mcu_dir = out_temp_path / mcu_family.name / new_mcu_dirname
18821882

18831883
board_entry = ""
1884+
with open(mcu_dir / boards_entry_filename) as fp:
1885+
board_entry = fp.read()
18841886
# Handle files
18851887
# Skip first dir
18861888
for dir_name in group_mcu_dir[1:]:
18871889
# Save board entry
1890+
skip = False
18881891
with open(dir_name / boards_entry_filename) as fp:
18891892
for index, line in enumerate(fp):
1890-
# Skip first line
1891-
if index > 4:
1892-
board_entry += line
1893+
# Skip until next empty line (included)
1894+
if skip:
1895+
if line == "\n":
1896+
skip = False
1897+
continue
1898+
if line != "\n" and line in board_entry:
1899+
skip = True
1900+
continue
1901+
board_entry += line
18931902
# Delete directory
18941903
for filepath in dir_name.glob("*.*"):
18951904
filepath.unlink()
@@ -1927,8 +1936,8 @@ def merge_dir(out_temp_path, group_mcu_dir, mcu_family, periph_xml, variant_exp)
19271936
update_file(mcu_dir / generic_clock_filename, update_regex, new_line_c)
19281937
update_file(mcu_dir / variant_h_filename, update_regex, new_line_h)
19291938

1930-
# Appending to board_entry file
1931-
with open(mcu_dir / boards_entry_filename, "a", newline="\n") as fp:
1939+
# Dump new board_entry file
1940+
with open(mcu_dir / boards_entry_filename, "w", newline="\n") as fp:
19321941
fp.write(board_entry)
19331942

19341943
update_file(

0 commit comments

Comments
 (0)