Lines Matching +full:buildman +full:- +full:toolchains

3 # Bloat-o-meter code used here Copyright 2004 Matt Mackall <mpm@selenic.com>
5 # SPDX-License-Identifier: GPL-2.0+
35 Buildman works by keeping the machine as busy as possible, building different
41 commit and builds it (typically without re-configuring). When it runs out
45 Clearly the builder threads could work either way - they could check out a
59 The base directory used by buildman is normally '../<branch>', i.e.
67 Buildman also create working directories for each thread, in a .bm-work/
70 As an example, say we are building branch 'us-net' for boards 'sandbox' and
71 'seaboard', and say that us-net has two commits. We will have directories
74 us-net/ base directory
75 01_of_02_g4ed4ebc_net--Add-tftp-speed-/
77 u-boot.bin
79 u-boot.bin
80 02_of_02_g4ed4ebc_net--Check-tftp-comp/
82 u-boot.bin
84 u-boot.bin
85 .bm-work/
91 u-boot/ source directory
99 trans_valid_chars = string.maketrans('/: ', '---')
100 trans_valid_chars = trans_valid_chars.decode('latin-1')
103 'u-boot.cfg', 'u-boot-spl.cfg', 'u-boot-tpl.cfg'
107 '.config', '.config-spl', '.config-tpl',
108 'autoconf.mk', 'autoconf-spl.mk', 'autoconf-tpl.mk',
109 'autoconf.h', 'autoconf-spl.h','autoconf-tpl.h',
132 """Class for building U-Boot for a particular commit.
134 Public members: (many should ->private)
147 force_build_failures: If a previously-built build (i.e. built on
148 a previous run of buildman) is marked as failed, rebuild it.
152 num_jobs: Number of jobs to run at once (passed to make as -j)
158 toolchains: Toolchains object to use for building
159 upto: Current commit number we are building (0.count-1)
161 force_reconfig: Reconfigure U-Boot on each comiit. This disables
162 incremental building, where buildman reconfigures on the first
164 the following commits. In fact buildman will reconfigure and
167 in_tree: Build U-Boot in-tree instead of specifying an output
169 only useful for testing in-tree builds.
172 _base_board_dict: Last-summarised Dict of boards
173 _base_err_lines: Last-summarised list of errors
174 _base_warn_lines: Last-summarised list of warnings
192 - Each value is itself a dictionary containing
195 func_sizes: Dictionary keyed by filename - e.g. 'u-boot'. Each
199 config: Dictionary keyed by filename - e.g. '.config'. Each
211 def __init__(self, toolchains, base_dir, git_dir, num_threads, num_jobs, argument
219 toolchains: Toolchains object to use for building
223 num_jobs: Number of jobs to run at once (passed to make as -j)
233 verbose_build: Run build with V=1 and don't use 'make -s'
237 board rather than a thread-specific directory
241 self.toolchains = toolchains
243 self._working_dir = os.path.join(base_dir, '.bm-work')
298 # Handle existing graceful with SIGINT / Ctrl-C
337 delta = self._timestamps[-1] - self._timestamps[0]
346 todo = self.count - self.upto
350 self._complete_delay -= timedelta(
355 count -= 1
368 Print(' ' * (self.last_line_len - length), newline=False)
428 ok = self.upto - self.warned - self.fail
433 name = ' /%-5d ' % self.count
442 name += 'commit %2d/%-3d' % (self.commit_upto + 1,
456 commit_upto: Commit number to use (0..self.count-1)
476 commit_upto: Commit number to use (0..self.count-1)
486 commit_upto: Commit number to use (0..self.count-1)
495 commit_upto: Commit number to use (0..self.count-1)
504 commit_upto: Commit number to use (0..self.count-1)
509 '%s.sizes' % elf_fname.replace('/', '-'))
515 commit_upto: Commit number to use (0..self.count-1)
520 '%s.objdump' % elf_fname.replace('/', '-'))
526 commit_upto: Commit number to use (0..self.count-1)
562 size, type, name = line[:-1].split()
564 Print("Invalid line in file '%s': '%s'" % (fname, line[:-1]))
567 # function names begin with '.' on 64-bit powerpc
615 commit_upto: Commit number to check (0..n-1)
656 'text' : int(values[0]) - rodata,
687 commit_upto: Commit number to summarize (0..self.count-1)
702 key: filename - e.g. '.config'
830 delta.append([-old[name], name])
839 diff = new.get(name, 0) - old.get(name, 0)
843 shrink, down = shrink + 1, down - diff
849 args = [add, -remove, grow, -shrink, up, -down, up - down]
856 Print('%s %-38s %7s %7s %+7s' % (indent, 'function', 'old', 'new',
861 msg = '%s %-38s %7s %7s %+7d' % (indent, name,
862 old.get(name, '-'), new.get(name,'-'), diff)
888 Print('%10s %-15s:' % ('', result['_target']),
910 got bigger, - means smaller). The nunmbers are the average number
914 powerpc: (622 boards) text -0.0
915 arm: (285 boards) text -0.0
916 nds32: (3 boards) text -8.0
940 # {'target' : 'snapper9g45, 'data' : 5, 'u-boot-spl:text' : -4}
941 # which means that U-Boot data increased by 5 bytes and SPL
949 diff = sizes[image][part] - base_image[part]
952 if image == 'u-boot':
1033 config: Dictionary keyed by filename - e.g. '.config'. Each
1071 better_lines.append(char + '-' +
1112 lines.append(_CalcConfig('-', name, config_minus))
1122 elif line[0] == '-':
1242 desc = '%s -> %s' % (value, new_value)
1322 """Show a build summary for U-Boot for a given board list.
1350 count = (self.commit_count + self._step - 1) / self._step
1436 - number of boards that failed to build
1437 - number of boards that issued warnings