mirror of
https://xff.cz/git/u-boot/
synced 2025-09-30 06:51:28 +02:00
buildman: Correct operation of MAINTAINERS N:
This doesn't work as intended. Instead it scans every defconfig file in the source tree. Fix it and add a test. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -411,11 +411,16 @@ class MaintainersDatabase:
|
|||||||
walk_path = os.walk(os.path.join(srcdir, 'configs'))
|
walk_path = os.walk(os.path.join(srcdir, 'configs'))
|
||||||
for dirpath, _, fnames in walk_path:
|
for dirpath, _, fnames in walk_path:
|
||||||
for cfg in fnames:
|
for cfg in fnames:
|
||||||
path = os.path.join(dirpath, cfg)
|
path = os.path.join(dirpath, cfg)[len(srcdir) + 1:]
|
||||||
front, match, rear = path.partition('configs/')
|
front, match, rear = path.partition('configs/')
|
||||||
if not front and match:
|
if front or not match:
|
||||||
|
continue
|
||||||
front, match, rear = rear.rpartition('_defconfig')
|
front, match, rear = rear.rpartition('_defconfig')
|
||||||
if match and not rear:
|
|
||||||
|
# Use this entry if it matches the defconfig file
|
||||||
|
# without the _defconfig suffix. For example
|
||||||
|
# 'am335x.*' matches am335x_guardian_defconfig
|
||||||
|
if match and not rear and re.search(rest, front):
|
||||||
targets.append(front)
|
targets.append(front)
|
||||||
elif line == '\n':
|
elif line == '\n':
|
||||||
add_targets(linenum)
|
add_targets(linenum)
|
||||||
|
@@ -933,8 +933,8 @@ Active aarch64 armv8 - armltd total_compute board2
|
|||||||
|
|
||||||
# Move the contents of the second file into this one, removing the
|
# Move the contents of the second file into this one, removing the
|
||||||
# second file, to check multiple records in a single file.
|
# second file, to check multiple records in a single file.
|
||||||
data = orig_data + tools.read_file(other, binary=False)
|
both_data = orig_data + tools.read_file(other, binary=False)
|
||||||
tools.write_file(main, data, binary=False)
|
tools.write_file(main, both_data, binary=False)
|
||||||
os.remove(other)
|
os.remove(other)
|
||||||
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||||
self.assertEquals(2, len(params_list))
|
self.assertEquals(2, len(params_list))
|
||||||
@@ -942,7 +942,7 @@ Active aarch64 armv8 - armltd total_compute board2
|
|||||||
|
|
||||||
# Add another record, this should be ignored with a warning
|
# Add another record, this should be ignored with a warning
|
||||||
extra = '\n\nAnother\nM: Fred\nF: configs/board9_defconfig\nS: other\n'
|
extra = '\n\nAnother\nM: Fred\nF: configs/board9_defconfig\nS: other\n'
|
||||||
tools.write_file(main, data + extra, binary=False)
|
tools.write_file(main, both_data + extra, binary=False)
|
||||||
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||||
self.assertEquals(2, len(params_list))
|
self.assertEquals(2, len(params_list))
|
||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
@@ -950,7 +950,7 @@ Active aarch64 armv8 - armltd total_compute board2
|
|||||||
warnings)
|
warnings)
|
||||||
|
|
||||||
# Add another TARGET to the Kconfig
|
# Add another TARGET to the Kconfig
|
||||||
tools.write_file(main, data, binary=False)
|
tools.write_file(main, both_data, binary=False)
|
||||||
orig_kc_data = tools.read_file(kc_file)
|
orig_kc_data = tools.read_file(kc_file)
|
||||||
extra = (b'''
|
extra = (b'''
|
||||||
if TARGET_BOARD2
|
if TARGET_BOARD2
|
||||||
@@ -975,3 +975,12 @@ endif
|
|||||||
self.assertEquals(
|
self.assertEquals(
|
||||||
['WARNING: board2_defconfig: No TARGET_BOARD2 enabled'],
|
['WARNING: board2_defconfig: No TARGET_BOARD2 enabled'],
|
||||||
warnings)
|
warnings)
|
||||||
|
tools.write_file(kc_file, orig_kc_data)
|
||||||
|
|
||||||
|
# Replace the last F: line of board 2 with an N: line
|
||||||
|
data = ''.join(both_data.splitlines(keepends=True)[:-1])
|
||||||
|
tools.write_file(main, data + 'N: oa.*2\n', binary=False)
|
||||||
|
params_list, warnings = self._boards.build_board_list(config_dir, src)
|
||||||
|
self.assertEquals(2, len(params_list))
|
||||||
|
self.assertFalse(warnings)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user