summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-04-26evaluator: Improve evaluation error reportingOliver Reiche
2023-04-26grpc: Fix non-deterministic lib combineOliver Reiche
2023-04-26Test tutorial: defaults from shell/test need to be declaredKlaus Aehlig
... also for CC tests, as this contains the shared tools, e.g., for flakyness handling.
2023-04-24["CC/test", "test"]: Support RUNS_PER_TESTKlaus Aehlig
2023-04-24["CC/test", "test"]: factor out test-inputKlaus Aehlig
In this way, the test action gets canonical, so adding RUNS_PER_TEST support to this rule should be easily mergable into downstream rules.
2023-04-21["test/end-to-end", "with remote"]: allow for the usage of a given remote ↵Alberto Sartori
endpoint This can be useful, for example, to test if justbuild can successfully communicate with the specified remote execution service.
2023-04-20["CC/proto", "library"] proto deps are publicKlaus Aehlig
... also for non-service libraries; the generated .ph.h files may well refer, e.g., the well-known protos.
2023-04-19just-mr archive: subdir matters!Klaus Aehlig
When deciding if two archive-based repositories create the same root it is not enough to compare the contents of the archive; it also matters which subdirectory we will take as root. This is especially important, if we take the same archive on the one hand for the code and also the example subdir for testing. Additionally, we cannot ignore the archive type; there are tar archives that are also zip archives, but with different content. (Tar only cares about the initial segment till it finds the two empty blocks; zip has the index at the end and ignores any initial segment that might have been prepended to a valid zip archive.)
2023-04-19Install instruction: mention the preferred just-mrv1.1.0-alpha+20230419Klaus Aehlig
2023-04-19CC/proto toolchain staging: add missing elseKlaus Aehlig
If we have a provided toolchain, we stage it to the corresponding subdirectory. Otherwise, we still have to provide a value of the correct type (a map) rather than the default else (which is the empty list).
2023-04-18Fix typos "boostrap" -> "bootstrap".Niklas Hambüchen
I know "boost rap" is a popular music genre among C++ programmers today, but nevertheless this is a typo.
2023-04-18INSTALL.md: packaging builds now use pkg-configKlaus Aehlig
2023-04-18test: Use pkgconfig for prebuilt bootstrapOliver Reiche
2023-04-18bootstrap traverser: prefer hard over symlinksKlaus Aehlig
... as in this way, the setup is more close to the one used in our build tool. In particular, tools that search for auxilliary files relativ to their own location get confused less.
2023-04-18bootstrap-traverser: Support actions without inputsOliver Reiche
2023-04-18bootstrap: Replace prebuilt imports by pkgconfigOliver Reiche
2023-04-18bootstrap: Disable -Werror for package buildsOliver Reiche
2023-04-18bootstrap: Support PKG_CONFIG_PATH (and set from LOCALBASE)Oliver Reiche
2023-04-18bootstrap: Use generic toolchain and honor COMPILER_FAMILYOliver Reiche
2023-04-18defaults: Use self-compiled protoc/grpc toolchainOliver Reiche
2023-04-18rules: Support protoc/grpc_cpp_plugin from defaultsOliver Reiche
2023-04-18rules: Update dependency on protobuf and grpc targetsOliver Reiche
2023-04-18imports: Fix GRPC dependenciesOliver Reiche
... as the BUILD.bazel files that are the basis for the TARGETS files seen to declare the dependencies in an incomplete way. Target `grpc_base_c` needs `grpc_init()` and `grpc_shutdown()` from target `grpc` (source `init.cc`). Adding this target dependency results in a cycle. This commit solves the issue by producing fewer but larger libraries (as done in GRPC's CMakeLists.txt): - `libgpr.a`: all gpr code - `libgrpc.a`: all gprc code, depending on `libgpr.a` - `libgrpc++.a`: all grpc++ code, depending on `libgrpc.a`
2023-04-18imports: Match original export target namesOliver Reiche
2023-04-18rules: Support creating compile/link flags from pkg-configOliver Reiche
2023-04-18rules: Drop CC/IDE headers ruleOliver Reiche
2023-04-18dev: Replace CC/IDE headers target by install-with-depsOliver Reiche
2023-04-18rules: Support hdrs-only for install-with-deps ruleOliver Reiche
2023-04-18rules: Move install-with-deps to EXPRESSIONSOliver Reiche
2023-04-18rules: Support install-with-deps ruleOliver Reiche
Backport of commits a382b308b9011606e7d07376808812d51631d558 and 5ae5134804b6edaaffec593868f133dd840ef7df from the rules-cc repository.
2023-04-18rules: Support reading flags from files for existing rulesOliver Reiche
Backport of commit 4a8579a2a4ef252644df0c29893e70ad8438ae82 from the rules-cc repository.
2023-04-18rules: Fix missing CXXFLAGS propagation for proto libsOliver Reiche
2023-04-14just-mr support -D optionKlaus Aehlig
Make just-mr unconditionally support an option -D that collects a configuration overlay and forwards it to the invocation of a just subcommand that supports this option. This syntax-switching facility makes it easy to embedd dynamic parts of the configuration (like the head commit to be part of a version string) as those information can unconditionally be the first argument to just-mr.
2023-04-14just-mr man page: mention mrversion in the synopsisKlaus Aehlig
2023-04-04Add basic test that roots are available via install-casKlaus Aehlig
2023-04-04local API: fall back to git api, if availableKlaus Aehlig
2023-04-04just install-cas: use local git as git CASKlaus Aehlig
2023-04-04Add a git based read-only APIKlaus Aehlig
From a git CAS crate an execution API unable to execute actions or to store anything. This implementaiton of the common interface is still useful as the execution API is the interface used for tranfering artifacts.
2023-04-04Make git root part of the storage configKlaus Aehlig
In this way, we have the whole layout of the local build root consolidated in one place. Moreover, in this way, the location of the git root is also available to the build tool itself and can, e.g., be used as fallback CAS.
2023-04-04CAS: demote log messages of to debugKlaus Aehlig
As those functions indicate success, it is up to the caller to decide if the error was fatal or not. Reporting an error nevertheless might result in error messages on successful operaitons, which is confusing for the user.
2023-04-04disjoint_map_union: show conflicting values on errorKlaus Aehlig
2023-04-04command-line logging: change color schemeKlaus Aehlig
... to make it readable also on white background, where yellow is hardly readable.
2023-04-04clean up targets filesKlaus Aehlig
- deduplicate dependencies - remove unused dependency
2023-03-31git tree: degrade log level for missing entry in a git tree to debugKlaus Aehlig
... as this is only an internal functionality, and the caller will take care of a proper error message if the absence of that entry is not expected.
2023-03-31fix false positive warning with gcc12Oliver Reiche
2023-03-30libgit2: remove access to patchesKlaus Aehlig
... now that we're using the unpatched version (after adding a work around in our code base).
2023-03-30Improve error messages on reading invalid target filesKlaus Aehlig
... by including the details of the parse error.
2023-03-30test: Make GitCAS thread-safety tests more strictPaul Cristian Sarbu
Move the creation of a fake repository on top of an existing odb into the individual threads, to ensure the thread-safety of the operations on fake repositories is properly tested.
2023-03-30libgit2: Remove fix-fake-repo patchPaul Cristian Sarbu
2023-03-30GitRepo: Guard fake repository odb wrappingPaul Cristian Sarbu
In the current libgit2 implementation, a fake repository wrapped around an existing odb is being registered as owner the same way as a normal repository object. Therefore, one has to guard both the creation and destruction of the fake repository against all other git operations that might access the internal cache during this transfer of ownership.