glibc/scripts
Joseph Myers bf469f0ce9 Make build-many-glibcs.py store more information about builds.
This patch makes build-many-glibcs.py store information about builds
in JSON format.  This is part of preparing it for use in a bot
checking for regressions.

The information stored is: time of last build (of host-libraries,
compilers or glibcs); versions of components used in the last build
(for compilers, host library versions are properly copied from those
used for the previous host-libraries build, and for glibcs, component
versions other than that of glibc are similarly copied from the last
compilers build); PASS/FAIL/UNRESOLVED results of the individual build
steps; a list of changed results; a list of tests (that are still run
at all) that have ever been recorded to PASS.

The first pieces of information are intended to be used by a bot to
decide whether a rebuild is appropriate (based on some combination of
elapsed time and changes to versions; a bot might want to rebuild
glibcs if there had been any change but only rebuild compilers after
enough time had elapsed, for example).  All the information is
intended to be used in generating mails with results information.

This state is specifically for full builds (no individual configs for
building compilers or glibcs specified).  If individual configs are
specified, build-time and build-versions information is cleared (since
it will no longer accurately reflect the install directory contents),
while the other information is left unchanged.  This reflects the
motivation of providing information for a bot checking for
regressions; the contents of build-state.json in a tree used for
manual builds that may be only for some configurations are not
particularly important.

	* scripts/build-many-glibcs.py: Import datetime module.
	(Context.__init__): Load JSON build state.  Initialize list of
	status logs.
	(Context.run_builds): Update saved build state.
	(Context.add_makefile_cmdlist): Update list of status logs.
	(Context.load_build_state_json): New function.
	(Context.store_build_state_json): Likewise.
	(Context.clear_last_build_state): Likewise.
	(Context.update_build_state): Likewise.
	(CommandList.status_logs): Likewise.
2016-11-26 00:10:24 +00:00
..
abi-versions.awk
abilist.awk
begin-end-check.pl
build-many-glibcs.py Make build-many-glibcs.py store more information about builds. 2016-11-26 00:10:24 +00:00
check-c++-types.sh
check-execstack.awk
check-installed-headers.sh Make check-installed-headers.sh ignore sys/sysctl.h for x32. 2016-11-07 23:32:17 +00:00
check-local-headers.sh mach: Add more allowed external headers 2016-08-21 03:24:55 +02:00
check-localplt.awk
check-textrel.awk
config-uname.sh
config.guess
config.sub
cpp
cross-test-ssh.sh
documented.sh
evaluate-test.sh
firstversions.awk
gen-as-const.awk
gen-libc-abis
gen-libc-modules.awk
gen-posix-conf-vars.awk
gen-sorted.awk
install-sh
lib-names.awk
list-fixed-bugs.py
list-sources.sh
localplt.awk
merge-test-results.sh
mkinstalldirs
move-if-change
output-format.sed
pylint
pylintrc
rellns-sh
soversions.awk
sysd-rules.awk sysd-rules: Cut down the number of rtld-% pattern rules 2016-09-20 10:41:05 +02:00
test-installation.pl
update-abilist.sh
update-copyrights
versionlist.awk
versions.awk