commit | 2a01f1c3295097ac553899aabf753dc840708ad8 | [log] [tgz] |
---|---|---|
author | Jake Ehrlich <jakehehrlich@google.com> | Wed Mar 27 20:12:17 2019 +0000 |
committer | CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> | Wed Mar 27 20:12:17 2019 +0000 |
tree | 0dd369c465d4a83606225c2fbd03443da6c2be61 | |
parent | b22d440c081f0c8a75936621df9ca7e6bc018a43 [diff] |
[buildidtool] Introduce tool to manage .build-id This tool uses stamp files and dep files to make .build-id entries a first class citizen of the build system. Each stamp file acts as a place holder fot the associated .build-id entry. The tool is carefully designed to be atomic and work and many bizzare rebuild senerios. There are some invalid states that you can get into but they involve leaving additional files on the disk and do not invalidate your build. When the tool functions normally, when it overwrites the stamp file it also overwrites the .build-id entry that it was previouslly associated with to mimic the .build-id entry being overwriten. A dep file is also emited which means that if a .build-id file is altered or deleted it will be rebuilt (this is somewhat counterintuitive) Test: I implemented the GN changes for this and built Fuchsia under many senerios + CQ Change-Id: Ia761952761c1d299b41fbc72022b44b8b6e3bedf
This repo contains tools used in Fuchsia build and development.
Go packages from here are automatically built and uploaded to CIPD and Google Storage by bots using the tools recipe. To add a tool to the build:
builder_mixins
section with name: "tools"
.properties_j
to add a string to the packages
list:"fuchsia.googlesource.com/tools/cmd/your-new-tool"