summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-04-27imports: Simplify pkg-config bootstrap definitionsOliver Reiche
2023-04-27Remove unused dependency to bzip2Oliver Reiche
2023-04-27just-mr: Fix config always being requiredPaul Cristian Sarbu
In just-mr the config file should only be needed if: 1. We call just with a subcommand requiring a config file, or 2. We use one of just-mr's own commands (except version).
2023-04-26imports: Switch to Microsoft GSL implementationOliver Reiche
... with two minor code base changes compared to previous use of gsl-lite: - dag.hpp: ActionNode::Ptr and ArtifactNode::Ptr are not wrapped in gsl::not_null<> anymore, due to lack of support for wrapping std::unique_ptr<>. More specifically, the move constructor is missing, rendering it impossible to use std::vector<>::emplace_back(). - utils/cpp/gsl.hpp: New header file added to implement the macros ExpectsAudit() and EnsureAudit(), asserts running only in debug builds, which were available in gsl-lite but are missing in MS GSL.
2023-04-26just-mr: Fix warning about unused lambda captureOliver Reiche
2023-04-26Tutorial: take latest commit of rules-ccKlaus Aehlig
2023-04-26rules: Support mixing system/toolchain for protoc/grpcOliver Reiche
2023-04-26rules: Fix propagation of PATH for protocOliver Reiche
2023-04-26bazel_network: grpc++ is not a direct dependencyOliver Reiche
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