summaryrefslogtreecommitdiff
path: root/etc
AgeCommit message (Collapse)Author
2023-05-15Add pkg-config target for re2Klaus Aehlig
Justbuild does not directly depend on re2, hence the indirect dependency on re2 is taken care of by pkg-config. Nevertheless, it is useful to have such a file for packaging that takes most of the dependencies from the system, but uses some of the dependencies bundled; a particular such use case is taking the bundled versions of proto, grpc, and absl, as those might be packaged in an incompatible version.
2023-05-15Third-party descriptions: be flexible on PKG_CONFIG_PATHKlaus Aehlig
Using only our third-party descriptions, the build is independent of PKG_CONFIG_PATH. However, when combinging our third-party descriptions with dependencies taken from the system via pkg-config there is a dependency of PKG_CONFIG_PATH due to those indirect dependencies. Therefore, allow flexible PKG_CONFIG_PATH to support such a mixed bootstrapping.
2023-05-12external: silence additional warnings from dependencies...Paul Cristian Sarbu
...missed so far. These are not actionable from our side.
2023-05-12Clean up export structure of remaining just dependenciesSascha Roloff
2023-05-12Clean up export structure of libabslSascha Roloff
2023-05-04external: cleanup warnings from our dependenciesPaul Cristian Sarbu
2023-05-03grpc: fix build fail with protobuf in debug modePaul Cristian Sarbu
2023-05-03protobuf: silence invalid-noreturn warningPaul Cristian Sarbu
2023-05-03grpc: fix google_apis proto targets dependenciesPaul Cristian Sarbu
2023-04-28external: Update protobuf to version 3.21.12Sascha Roloff
2023-04-28external: Update zlib to version 1.2.13Sascha Roloff
2023-04-28external: Update c-ares to version 1.17.2Paul Cristian Sarbu
2023-04-28external: Update ssl to version 6195bf8Paul Cristian Sarbu
2023-04-28external: Update re2 to version 2022-04-01Paul Cristian Sarbu
2023-04-28external: Update grpc to v1.53.0Sascha Roloff
This update also removes upb as external dependency. Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2023-04-28external: Update google_apis to 2f9af29...Paul Cristian Sarbu
...as required by grpc v1.53.0
2023-04-28Update absl to LTS 20230125.0Sascha Roloff
Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2023-04-27imports: Support pkg-config for curl/archive/ares/zlibOliver Reiche
... and align lib names to commonly used pkg names.
2023-04-27imports: Simplify pkg-config bootstrap definitionsOliver Reiche
2023-04-27Remove unused dependency to bzip2Oliver Reiche
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-26grpc: Fix non-deterministic lib combineOliver Reiche
2023-04-18bootstrap: Replace prebuilt imports by pkgconfigOliver Reiche
2023-04-18defaults: Use self-compiled protoc/grpc toolchainOliver 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-18dev: Replace CC/IDE headers target by install-with-depsOliver 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-30libgit2: Remove fix-fake-repo patchPaul Cristian Sarbu
2023-03-24external: Update libcurl to v8.0.1Paul Cristian Sarbu
Major version release, with important fixes for our use-case.
2023-03-24libgit2: Remove use of deprecated functions...Paul Cristian Sarbu
...and enforce this through the build description.
2023-03-24external: update libgit2 to v1.5.2Paul Cristian Sarbu
This is the last (and recommended) revision of minor v1.5.
2023-03-21just-distfiles: remove bzip2 from listPaul Cristian Sarbu
The distdir should only contain the direct dependencies of just. Co-authored-by: Klaus Aehlig <klaus.aehlig@huawei.com>
2023-03-15Update gsl-lite to 0.40.0Klaus Aehlig
2023-03-15catch2: bump to version 3.3.2Alberto Sartori
tests have been updated accordingly
2023-03-15grpc: bugfix: add missing dependency to grpc service libraryAlberto Sartori
2023-03-15add missing ldflags -pthread and use -pthread consistentlyAlberto Sartori
2023-03-15rules: CC/auto: add "config_file" rule to generate a c/c++ header...Alberto Sartori
...starting from a template (aka configuration file), and using the variables defined via a ["CC/auto", "config"] target. For example, to use a CMake configuration file, the targets could be defined as follows ... , "foo-header-blueprint": { "type": ["@", "rules", "CC/auto", "config_file"] , "input": ["config.hpp.in"] , "output": ["config.hpp"] , "stage": ["foo"] , "magic_string": ["cmakedefine"] , "@only": ["true"] } , "foo-header": { "type": "configure" , "target": "foo-header-blueprint" , "config": { "type": "let*" , "bindings": [ [ "defines" , [ ["var", "\"string value\""] , ["FOO_MAJOR_VERSION", "3"] , ["use_this_feature", true] ] ] ] , "body": {"type": "env", "vars": ["defines"]} } } ... The file config.hpp.in may look as follows #ifndef config_cmake #define config_cmake #cmakedefine var #cmakedefine use_this_feature #cmakedefine01 use_this_feature #cmakedefine unused #define FOO_VERSION @FOO_MAJOR_VERSION@ #define DONT_TOUCH_THIS ${FOO_MAJOR_VERSION} #endif and the generated configuration file foo/config.hpp is #ifndef config_cmake #define config_cmake #define var "string value" #define use_this_feature #define use_this_feature 1 /* #undef unused */ #define FOO_VERSION 3 #define DONT_TOUCH_THIS ${FOO_MAJOR_VERSION} #endif
2023-03-13Update CLI11 to 2.3.2Klaus Aehlig
2023-03-10Update nlohmann::json to 3.11.2Klaus Aehlig
2023-03-10tests: get rid of credentials repo since tests now use just execute as a ↵Alberto Sartori
remote endpoint
2023-03-10execution service: implement WaitExecution and ↵Alberto Sartori
google::longrunning::Operations::GetOperation For each action that is executed, an entry is added to a shared thread safe cache. Once the number of operations stored exceeds twice 2^n, where n is given by the option --log-operations-threshold, at most 2^n operations will be removed, in a FIFO scheme.
2023-02-28Various typo fixesPaul Cristian Sarbu
Co-authored-by: Sascha Roloff <sascha.roloff@huawei.com>
2023-02-27libcurl: Update to latest v7.88.1Paul Cristian Sarbu
Main updates to build description: - remove unused defines of type "HAVE_<lib>_H" - add new variables that allow users to set explicitly the presence of some lib symbols - replace most defines of type "HAVE_<lib>" with "USE_<lib>" (to match the flag names) - added GLOBs (where it made sense) for increased maintainability
2023-02-24libarchive: Update to latest v3.6.2Paul Cristian Sarbu
Changes in build description: - fix capitalization of ENABLE_LIBGCC flag. - add new HIDE_SYMBOLS flag to allow hiding of export symbols; used similar logic as for libcurl to circumvent the original CHECK_C_SOURCE_COMPILES macro use.
2023-02-24libgit2: Update to v1.5.0Paul Cristian Sarbu
Changes to build description: - new USE_SHA256 flag - removed "Generic" option for USE_SHA1 - updated to the new source code structure (split "src/git2" into "src/libgit2" and "src/util")
2023-02-17bugfix: export CXX related config_vars on pure C libs that depend onAlberto Sartori
CXX libs
2023-02-14Package bootstrapping: support copying the needed partsKlaus Aehlig
... while following symbolic links. In this way, bootstrapping is possible against preinstalled dependencies that symbolic links or special files in their directories.
2023-02-14Targets: Make ares library an export target...Paul Cristian Sarbu
...as it is consumed by both grpc and libcurl. This makes sure that both those libraries see the same ares target.
2023-02-10Simplify target for prebuilt CLI11Klaus Aehlig
... by using an explicit tree reference.