summaryrefslogtreecommitdiff
path: root/CC
AgeCommit message (Collapse)Author
2022-09-13Rules: Extend configure rule by 'compiler_family'Oliver Reiche
2022-08-16rules/CC: fix duplicated staging for libraryAlberto Sartori
2022-07-25CC rules: keep dependencies last in linkingKlaus Aehlig
... as the external link dependency is still associated with this library. In this way, importing preinstalled libraries can happen in a sound way, even though the actual library is just an external link dependency; still dependencies among external libraries are honored.
2022-07-25Rules: Enforce non-empty library and binary namesOliver Reiche
2022-06-30Rules: Split library result and library artifact expressionOliver Reiche
2022-06-02Add rule defaultsOliver Reiche
2022-05-04rules/CC: for compiler invocation, pass on ENVKlaus Aehlig
... as some compiler need access to the environemnt in order to find their utility programs (like cc1).
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-28rules: Add "link-args-deps" expressionOliver Reiche
... for collecting link-args from dependencies. By consistently using this expression, we fix an issue with C++ binary and test, which both did not collect the linker arguments from their proto-deps.
2022-04-28rules: Honor transition variable in *-deps 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-04-26rules: More flexible compile-deps and link-depsOliver Reiche
... which can now be parameterized which target_fields to query the dependencies from.
2022-04-26Improve documenatation of our internal rulesKlaus Aehlig
In particular, document the result for the most important rules.
2022-04-22rules: move compiler/flags computation into expressionsKlaus Aehlig
On the one hand, this keeps the rules files more readable. On the other hand, we can even deduplicate code, as those expressions are used twice.
2022-04-22rule ["CC", "header directory"]: drop ill-advised "public stage"Klaus Aehlig
The idea, as documented, of a header directory is to have a directory, closed as a tree, owned by the respective library and internally handled in an efficient way (as a single tree). If we open up that directory, we just have staged data, and therefore should treat it as such.
2022-03-31rules ["CC", "libray"]: fix doc stringsKlaus Aehlig
... to have consistent punctuation. Also make clear, that the configuration does not have to specify "CC", etc, as usually they are taken from the default target.
2022-03-23Create IDE rule for CC targetsOliver Reiche
2022-03-18Add documentation for the "proto" fields in the CC rulesKlaus Aehlig
2022-03-16Format: Apply compact JSON formattingOliver Reiche
2022-03-14rule CC/test: Introduce TEST_ENV for test runnersOliver Reiche
2022-03-03CC rules: Disable warnings for protobufOliver Reiche
2022-03-03CC rules: Add support for local cflagsOliver Reiche
2022-03-01CC test: Add optional test launcher `CC_TEST_LAUNCHER`Oliver 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>