summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-11-11Merge branch 'just-rules' into rulesKlaus Aehlig
2024-11-11["lint", "targets"]: support reporting the name of the linting performedKlaus Aehlig
2024-11-06Merge branch 'just-rules' into rulesKlaus Aehlig
2024-11-06Use "cwd" property of actionsKlaus Aehlig
... instead of composing a shell command doing a cd first.
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-11-06Use quote and quasi-quote to simplify some expressionsKlaus 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-10-31Merge branch 'just-rules' into rulesKlaus Aehlig
2024-10-31["lint", "targets"]: support TMPDIRKlaus Aehlig
2024-10-25lint information for direct dependencies: honor componentsKlaus Aehlig
... by honoring "modified-transitions" when determining the headers of the direct dependencies.
2024-10-25Merge branch 'just-rules' into rulesKlaus Aehlig
2024-10-25["lint", "targets"]: Also have a metadata fileKlaus Aehlig
... containing the names of artifacts (files or directories) that are from the target itself of the runfiles of direct dependencies. This allows tools to check some form of strict dependency structure.
2024-10-25lint information: also provide the direct-deps artifacts separatelyKlaus Aehlig
2024-10-23Merge branch 'just-rules' into rulesKlaus Aehlig
2024-10-23pkgconfig rules: fix usage of "join_cmd"Klaus Aehlig
2024-10-21Merge branch 'just-rules' into rulesKlaus Aehlig
2024-10-21shell defaults: properly deduplicate "bin dirs" to the leftKlaus Aehlig
2024-09-27Do not expand variables in PATHKlaus Aehlig
... as otherwise we will use the same string in two ways: literal and as a value to the expanded, making proper quoting impossible. Moreover, it is not necessary to expand TOOLCHAIN: pointers into the toolchain can be passed through the "bin dirs" part of the toolchain.
2024-09-13Rules CC: Deduplicate args returned by expressions collecting args from ↵Sascha Roloff
dependencies
2024-09-13Merge branch 'just-rules' into rulesSascha Roloff
2024-09-12Rules CC: Deduplicate args returned by expressions collecting args from ↵Sascha Roloff
dependencies
2024-09-11Merge branch 'just-rules' into rulesKlaus Aehlig
2024-09-11["lint", "targets"]: improve documentation stringsKlaus Aehlig
2024-09-10Fix CC rules to not add run-libs-args from deps when building a shared librarySascha Roloff
When a shared library is built that depends on other shared libraries, it instructs its consumers via the "run-link-args" to link only against this library and not also against its dependencies.
2024-09-10Fix CC rules to consume static libraries when building a shared librarySascha Roloff
When a shared library has static-library dependencies, it is linked against these static libraries including all their link arguments. Thus, the "link-deps" as well as the "link-args" provider of the shared library should be empty.
2024-08-30Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-30Drop expressions for first/last element of a list entirelyKlaus Aehlig
... as using the built-in "[]" directly is cleaner and equally readable.
2024-08-29["CC", "library"]: document additional providersKlaus Aehlig
2024-08-23rules: add and forward lint information in all casesKlaus Aehlig
... provided the configuration variable "LINT" is set.
2024-08-22Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-22Add ["lint", "defaults"] to provide paths for lint actionsKlaus Aehlig
... and honor those in ["lint", "targets"].
2024-08-21Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-21["test", "suite"]: document fieldsKlaus Aehlig
2024-08-20Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-20Add ["test", "suite"]Klaus Aehlig
... collecting test results similar to the way "install" rules are typically used; however in such a way that the provider "lint" is forwarded.
2024-08-20["shell/test", "script"] forward lint information of depsKlaus Aehlig
2024-08-20["CC", "test"]: support providing lint informationKlaus Aehlig
While there, also properly transition "srcs" and "private-hdrs" to the host version.
2024-08-20["lint", "targets"]: deduplicate tasksKlaus Aehlig
In case many "targets" are given, the field "lint" will contain all the concatenation of the provider "lint" of the given targets. There is, however, not need to lint the same file in the same context twice, so deduplicate the targets first. While this does not change the amount of lint actions carried out (as equal actions are handled only once anyway), it keeps the summary clean by not having dulicate entries.
2024-08-14Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-14new rule ["lint", "targets"]Klaus Aehlig
2024-08-14Make CC binary and library support providing information for lintingKlaus Aehlig
If the configuration variable "LINT" is set, also provide information on compile actions and header files (with preprocessing as described command, in particular also providing the correct flags) in correct dependency context. In this way, lint rules can request the needed information for performing their checks.
2024-08-09object artifacts: honor modified transitionKlaus Aehlig
... for certain fields, in particular, the "components".
2024-08-09compile-deps: include provided deps of componentsKlaus Aehlig
... however not their runfiles, as those become the runfiles of the resulting library.
2024-08-07Merge branch 'just-rules' into rulesKlaus Aehlig
2024-08-07Add field to ["CC", "defaults"] to specify arguments for arKlaus Aehlig
... instead of hard-coding ["cqs"].
2024-08-05Merge commit 'd1a594af5bfb190fe625c400e700cc6096f7787b' into HEADPaul Cristian Sarbu
2024-08-05rules shell/test: Add 'keep-dirs' fieldPaul Cristian Sarbu
The existing rules allow a shell test script to explicitly 'keep' created files in the resulting output directory, to be accessible to any dependent target, thus allowing a chaining of data across test scripts. This field however excludes directories, whose content would need to be added one file at a time to the 'keep' field. Add instead also a 'keep-dirs' field to ["shell/test", "script"] rule which allows the explicit staging of given directory paths the test is expected to generate.
2024-07-29Merge branch 'just-rules' into rulesKlaus Aehlig
2024-07-29["CC", "binary"] stage link actionKlaus Aehlig
... to avoid staging conflicts with the toolchain
2024-07-29["CC", "libary"] properly stage ar actionKlaus Aehlig
In this action we support a user provided toolchain, hence all the components of the library need to go into a subdirectory to avoid staiging conflicts.