summaryrefslogtreecommitdiff
path: root/CC/proto
AgeCommit message (Collapse)Author
2025-04-23Merge commit '20b7c7fa1b10a90e0e3aad46579ebe450d6720b9' into HEADPaul Cristian Sarbu
2025-04-23rules CC proto: Update docstring for DEBUG variablePaul Cristian Sarbu
...to reflect the value change from boolean to map. Behavior of the proto rules remains the same, as only the truth value of the variable is currently being taken into account.
2024-11-06Merge branch 'just-rules' into rulesKlaus Aehlig
2024-11-06Prefer built-in "nub_left"Klaus Aehlig
Now that justbuild 1.4 is available, the workaround of defining "nub_left" in terms of "reverse" and "nub_right" is no longer necessary.
2024-06-25Merge commit 'c301e85a61dc6e43b8cc6ce8f44a902c392163a2' into HEADPaul Cristian Sarbu
2024-06-25CC defaults: Provide the debug stage also for implicit depsPaul Cristian Sarbu
This ensures that one can inspect, e.g., generated protobuf source files (.pb.cc) or standard library headers while debugging proto libraries or general C++ libraries and binaries, respectively.
2024-06-24Merge commit 'cdd0b740cdaf6fd54d479766f8be45352f238bd4' into HEADPaul Cristian Sarbu
2024-06-24CC/proto: Libraries should be aware of DEBUG flagPaul Cristian Sarbu
2024-06-24CC: Fix some doc typosPaul Cristian Sarbu
2024-06-10Merge branch 'just-rules' into rulesOliver Reiche
2024-06-10Add support for protobuf compiler flagsOliver Reiche
2023-11-20rules: Fix flag inheritanceOliver Reiche
... which should accumulate values from all base targets unless the flag type (CFLAGS, CXXFLAGS, or LDFLAGS) is explicity overwritten by the inheritor.
2023-11-20defaults: Fix flag inheritanceOliver Reiche
... which should accumulate values from all base targets unless the flag type (CFLAGS, CXXFLAGS, or LDFLAGS) is explicity overwritten by the inheritor.
2023-09-26Merge branch 'just-rules' into rulesOliver Reiche
2023-09-25Fix pkg-config name for libprotobufOliver Reiche
2023-09-25Merge branch 'just-rules' into rulesOliver Reiche
2023-09-25Use pkgconfig for default proto libsOliver Reiche
2023-08-16Merge branch 'rules/oss' into rules/rules-cc-rulesOliver Reiche
2023-08-16rules: Propagate PATH list from defaultsOliver Reiche
... instead of creating an ENV from it and propagating this. The idea is to keep PATH entries separate and only join them with ":" when we need it. In this way, we can accumulate PATHs from multiple defaults later, and perform a deduplication ("nub_left") to shorten the final string length.
2023-08-16rules: Extend toolchains via defaults from baseOliver Reiche
2023-08-16rules: Remove pointless defaultsOliver Reiche
2023-05-30rules-cc: Support run-libs in CC/proto librariesOliver Reiche
2023-05-30rules-cc: Drop needless conditionalOliver Reiche
2023-05-30rules: Drop needless conditionalOliver Reiche
2023-04-26rules: Support mixing system/toolchain for protoc/grpcOliver Reiche
2023-04-26rules: Fix propagation of PATH for protocOliver Reiche
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-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-18rules: Support protoc/grpc_cpp_plugin from defaultsOliver Reiche
2023-04-18rules: Update dependency on protobuf and grpc targetsOliver Reiche
2023-04-18rules: Fix missing CXXFLAGS propagation for proto libsOliver Reiche
2023-03-15grpc: bugfix: add missing dependency to grpc service libraryAlberto Sartori
2022-12-09rules: Refactoring and minor improvementsOliver Reiche
Compared to the previous commit, the action graphs for just and its unit tests are unchanged. - Git hash of action graph for ["",""]: c6e75f17abd7ffaab6ff9bb725ad67ec0bf6c973 - Git hash of action graph for ["test/buildtool","TESTS"]: 8063dfb3dd7daa9ae01d95c177e14946f785c57e Refactor: - "local cflags" to "private-cflags" - "local defines" to "private-defines" - "link externals" to "private-ldflags" - "deps" to "private-deps" for (test) binaries - "proto" to "private-proto" for binaries Improvements: - consistent variable declaration order: OS, ARCH, HOST_ARCH, TARGET_ARCH, CC, CXX, CFLAGS, CXXFLAGS, ADD_CFLAGS, ADD_CXXFLAGS, AR, ENV, PATH - use fields close to their definition (in RULES) - use common expression for binaries and test binaries - split expression "flags" and "compiler" ... to separate ones for CC and CXX. - rename "transition" to "deps-transition" ... to avoid conflicts with other transitions. - support "defaults-transition" for CC expressions Implement: - "cflags" for libraries - "private-cflags" for (test) binaries - "private-defines" for test binaries - "private-ldflags" for test binaries - (public) "defines" for libraries
2022-11-21support the concept of private depsKlaus Aehlig
i.e., libraries that are used only in the implementation without use in the public header files. In this way, the set of headers exposed to dependencies can be reduced leading potentially to better incrementality.
2022-11-02proto: honor configured archiverAlberto Sartori
2022-10-26rules: Honor ENV variable for protobuf compilationOliver Reiche
2022-09-13Rules: Implement setting ADD_{C,CXX}FLAGS via variablesOliver Reiche
2022-09-13Rules: Implement hierarchical defaultsOliver Reiche
2022-04-29rules: Perform disjoint map union in field_* expressionsOliver Reiche
... and replace all instances where the field_*_list variant of those expressions is used solely for the purpose of performing the disjoint union manually.
2022-04-28rules: Consistently use new provider expressionsOliver Reiche
2022-04-26rules: Add field_artifacts_list and field_runfiles_listOliver Reiche
... which are more efficient if the caller wants to perform the union manually (because disjointness should be enforced or additional maps should be added to the union, etc.). As a positive side effect, code reuse is slightly increased by consistently calling these newly introduced expressions for obtaining the artifacts/runfiles from all targets of a target field.
2022-03-23Create IDE rule for CC targetsOliver Reiche
2022-03-03CC rules: Disable warnings for protobufOliver Reiche
2022-02-25rules: Add CC/proto/IDE headersOliver Reiche
... to manually request the generation of headers for CC proto bindings. This is useful for IDEs and needed as implicitly generating those bindings via the `proto` field of CC libraries does not expose the produced headers.
2022-02-22Initial self-hosting commitKlaus Aehlig
This is the initial version of our tool that is able to build itself. In can be bootstrapped by ./bin/bootstrap.py Co-authored-by: Oliver Reiche <oliver.reiche@huawei.com> Co-authored-by: Victor Moreno <victor.moreno1@huawei.com>