summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-25don't check bounds twiceAlberto Sartori
2022-03-24Document our cache-pragmas for actionsKlaus Aehlig
... that allow us to treat builds and tests in a uniform way, basically by building a test report.
2022-03-24doc/concepts/anonymous-targets.org: fix org markup typoKlaus Aehlig
2022-03-23Apply changes suggested by clang-tidy 11Oliver Reiche
2022-03-23Apply changes suggested by clang-format 11Oliver Reiche
2022-03-23repos.json: add pragma "to_git" for roots used by external projectsKlaus Aehlig
... so that they become fully content-fixed and we can benefit from target caching, once implemented.
2022-03-23multi-repo setup tool: add pragma to transfrom file roots to gitKlaus Aehlig
... and in this way enable them to present themselves to our tool als fully specified content (which will be useful once we add target caching). If that file root is under git anyway (like the rules or external target files in this repository) computing that git root is also a relatively cheap operation.
2022-03-23remove obsolete targetsAlberto Sartori
By having a proper rule for CC/IDE, these targets are no longer needed
2022-03-23add just-ext-hdrs target to stage external headers is a given folderAlberto Sartori
This is useful when e.g. using an IDE to get access to the definition/ declaration of the symbols of external dependencies
2022-03-23Create IDE rule for CC targetsOliver Reiche
2022-03-22BazelApi: Fix retrieving artifacts to filesystem pathOliver Reiche
... which was accessing the wrong artifacts in the list if the artifact list contains a mixture of files and trees.
2022-03-22Add basic documentation for anonymous targetsKlaus Aehlig
2022-03-22Add documentation for the basic concepts of multi-repo buildsKlaus Aehlig
2022-03-22Document the way we use our documentation stringsKlaus Aehlig
2022-03-21Drop unnecessary declaration of indirect dependenciesKlaus Aehlig
If we do not use a target directly, we also should not include it. It's be build tool's job to track indirect dependencies.
2022-03-21["", "exported-just"] make "CC" flexibleKlaus Aehlig
While our own tool is entirely written in C++, we link against libraries written in C which, in the default multi-repo setup we build from source. Therefore, the target also depends on the C compiler, not only the C++ one. Hence also allow the user to user a different compiler here as well, in the same way as they can override the C++ compiler.
2022-03-18When representing a directory as json, terminate with new-line characterKlaus Aehlig
I this way, also resulting trees can cleanly be printed on the command line via the -P option.
2022-03-18Add documentation for the "proto" fields in the CC rulesKlaus Aehlig
2022-03-16Format: Apply compact JSON formattingOliver Reiche
2022-03-14External libgit2: Inline filegroups used only onceOliver Reiche
2022-03-14External libgit2: Remove duplicate defineOliver Reiche
2022-03-14just describe: Also describe config fieldsOliver Reiche
2022-03-14ExecutionApi: Add test for creating outdirs before executionOliver Reiche
2022-03-14LocalExecution: Create output dirs prior to executionOliver Reiche
... to be consistent with the remote execution protocol.
2022-03-14ExecutionAPI: Add test for retrieving trees to pathOliver Reiche
2022-03-14BazelApi: Fix missing entries in cached trees from tree mapOliver Reiche
... as wrongfully only sub-tree entries were added to locally cached trees, although they should also store entries for files and executables.
2022-03-14LocalApi: Fix missing entries in cached trees from tree mapOliver Reiche
... as wrongfully only sub-tree entries were added to locally cached trees, although they should also store entries for files and executables.
2022-03-14rule CC/test: Introduce TEST_ENV for test runnersOliver Reiche
2022-03-14ExecutionAPI: Add common tests for local and remote apiOliver Reiche
2022-03-09LocalCAS: Set epoch time for every entryOliver Reiche
... and refactor static constant to proper format `kFdLess`.
2022-03-09FileSystemManager: Support set epoch time on file creationOliver Reiche
2022-03-09FileStorage: Avoid rename for owned filesOliver Reiche
... and therefore split the common `AtomicAdd()` into two functions for adding from bytes or file path. The procedure for adding from bytes remains the same. For adding from file path, we can link the file directly and skip the rename, if the file did not exist and we have ownership.
2022-03-09Add a test demonstrating nested treesKlaus Aehlig
2022-03-08LocalCAS: Prefer hard link over copy for owned filesOliver Reiche
2022-03-08FileSystemManager: Implement hard link creation with permsOliver Reiche
2022-03-08LocalCAS: Avoid writable fds when adding executables to CASOliver Reiche
2022-03-08FileSystemManager: Implement fd-less write to fileOliver Reiche
2022-03-08FileSystemManager: Implement fd-less file copyOliver Reiche
2022-03-08SystemCommand: Exit without cleanup on error and avoid loggerOliver Reiche
2022-03-08SystemCommand: Move to new module "src/buildtool/system"Oliver Reiche
2022-03-04Patch away unused imports in bytestream.protoKlaus Aehlig
2022-03-04Add rule ["patch", "file"]Klaus Aehlig
... to patch a single file, logically in place.
2022-03-04executor: fix json reporting of commandsKlaus Aehlig
When reporting a command that failed, or produced some output, report it as a list of strings, not as a singleton-list consisting of a list of strings. While there, improve wording of message; in particular, avoid confussion between a command that errored and one that produced outout on stderr.
2022-03-04rule_map: improve error message by proper quotingKlaus Aehlig
Our rule names can be arbitrary strings, so improve readability of error message by properly quoting the rule name; while there, also properly quote the module name, resulting in better readability if the module is "".
2022-03-03Externals: Set `-O2` and C standard `gnu17`Oliver Reiche
2022-03-03External gRPC: Disable warningsOliver Reiche
2022-03-03External libgit2: Disable warningsOliver Reiche
2022-03-03External re2: Disable warningsOliver Reiche
2022-03-03External absl: Disable warningsOliver Reiche
2022-03-03CC rules: Disable warnings for protobufOliver Reiche