From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Mon, 25 Apr 2016 10:41:55 -0600 Subject: [U-Boot] [PATCH V2] buildman: allow more incremental building In-Reply-To: <1460393324-2155-1-git-send-email-swarren@wwwdotorg.org> References: <1460393324-2155-1-git-send-email-swarren@wwwdotorg.org> Message-ID: <571E48D3.5020603@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 04/11/2016 10:48 AM, Stephen Warren wrote: > From: Stephen Warren > > One use-case for buildman is to continually run it interactively after > each small step in a large refactoring operation. This gives more > immediate feedback than making a number of commits and then going back and > testing them. For this to work well, buildman needs to be extremely fast. > At present, a couple issues prevent it being as fast as it could be: > > 1) Each time buildman runs "make %_defconfig", it runs "make mrproper" > first. This throws away all previous build results, requiring a > from-scratch build. Optionally avoiding this would speed up the build, at > the cost of potentially causing or missing some build issues. > > 2) A build tree is created per thread rather than per board. When a thread > switches between building different boards, this often causes many files > to be rebuilt due to changing config options. Using a separate build tree > for each board would avoid this. This does put more strain on the system's > disk cache, but it is worth it on my system at least. > > This commit adds two command-line options to implement the changes > described above; -I ("--incremental") turns of "make mrproper" and -P > ("--per-board-out-dir") creats a build directory per board rather than per > thread. > > Tested: > > ./tools/buildman/buildman.py tegra > ./tools/buildman/buildman.py -I -P tegra > ./tools/buildman/buildman.py -b tegra_dev tegra > ./tools/buildman/buildman.py -b tegra_dev -I -P tegra > > ... each once after deleting the buildman result/work directory, and once > "incrementally" after a previous identical invocation. > > Signed-off-by: Stephen Warren > Reviewed-by: Tom Rini > Acked-by: Simon Glass # v1 > Tested-by: Simon Glass # v1 > --- > v2: Add README updates. Simon, does this version look good?