Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-02-15 | Merge branch 'just-rules' into rules | Klaus Aehlig | |
2024-02-15 | Remove unnecessarily quadratic expressions | Klaus Aehlig | |
... not that everyone has updated to 1.2 or later we can use the built-in expressions "reverse" and "set". | |||
2023-11-20 | rules: Fix flag inheritance | Oliver 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-20 | defaults: Fix flag inheritance | Oliver 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-26 | Merge branch 'just-rules' into rules | Klaus Aehlig | |
2023-09-26 | pkg-config files: properly terminate last line | Klaus Aehlig | |
2023-08-16 | rules: Propagate PATH list from defaults | Oliver 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-16 | Merge branch 'rules/oss' into rules/rules-cc-rules | Oliver Reiche | |
2023-08-16 | rules: Propagate PATH list from defaults | Oliver 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-16 | rules: Expression to get base providers as list | Oliver Reiche | |
2023-08-16 | rules: Remove pointless defaults | Oliver Reiche | |
2023-05-31 | Update cmake rules to honor dependencies | Sascha Roloff | |
2023-05-30 | Merge branch 'just-rules' into rules | Oliver Reiche | |
2023-05-30 | rules-cc: Support for external toolchains | Oliver Reiche | |
2023-05-30 | rules-cc: Use field_map_provider for default-ENV | Oliver Reiche | |
2023-05-30 | rules-cc: Put global LDFLAGS last | Oliver Reiche | |
2023-05-30 | rules: Support for external toolchains | Oliver Reiche | |
2023-05-30 | rules: Use field_map_provider for default-ENV | Oliver Reiche | |
2023-04-18 | Merge commit '48f4317' | Klaus Aehlig | |
2023-04-18 | Merge commit '0db46fe' | Klaus Aehlig | |
2023-04-18 | Merge commit '9e061c2' | Klaus Aehlig | |
2023-04-18 | rules: Support protoc/grpc_cpp_plugin from defaults | Oliver Reiche | |
2023-04-18 | rules: Support hdrs-only for install-with-deps rule | Oliver Reiche | |
2023-04-18 | rules: Move install-with-deps to EXPRESSIONS | Oliver Reiche | |
2023-04-18 | rules: Support install-with-deps rule | Oliver Reiche | |
Backport of commits a382b308b9011606e7d07376808812d51631d558 and 5ae5134804b6edaaffec593868f133dd840ef7df from the rules-cc repository. | |||
2023-04-18 | rules: Support reading flags from files for existing rules | Oliver Reiche | |
Backport of commit 4a8579a2a4ef252644df0c29893e70ad8438ae82 from the rules-cc repository. | |||
2023-01-20 | Support flag-files for existing rules and expressions | Oliver Reiche | |
2023-01-20 | Add expression for reading artifacts from provider "package" | Oliver Reiche | |
2023-01-20 | Refactor flag substitution for "pkg-config" | Oliver Reiche | |
2023-01-20 | Fix shared lib pkg-version | Oliver Reiche | |
... which should be only set if SOVERSION is set. | |||
2023-01-10 | rules: Add support for pkg-config | Oliver Reiche | |
2023-01-10 | rules: Add rule "install-with-deps" | Oliver Reiche | |
2022-12-16 | rules: Implement ldflags for (shared) libraries | Oliver Reiche | |
2022-12-16 | rules: Add support for shared libraries | Oliver Reiche | |
2022-12-16 | rules: Add support for "LDFLAGS" and "ADD_LDFLAGS" | Oliver Reiche | |
2022-12-09 | rules: ldflags have precedence over transitive link args | Oliver Reiche | |
2022-12-09 | rules: Create library in stage directory | Oliver Reiche | |
2022-12-09 | rules: Refactoring and minor improvements | Oliver 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-21 | support the concept of private deps | Klaus 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-21 | rules/CC/EXPRESSIONS: drop unused local define | Klaus Aehlig | |
2022-11-02 | rules: don't always use the default archiver | Alberto Sartori | |
2022-10-10 | rules: Use new 'env' expression | Oliver Reiche | |
2022-10-10 | rules: Remove CC/configure rule | Oliver Reiche | |
2022-09-14 | rules: Fix ar binary not taken from defaults | Oliver Reiche | |
2022-09-13 | Rules: Implement setting ADD_{C,CXX}FLAGS via variables | Oliver Reiche | |
2022-09-13 | Rules: Implement hierarchical defaults | Oliver Reiche | |
2022-09-13 | Rules: Extend configure rule by 'compiler_family' | Oliver Reiche | |
2022-08-16 | rules/CC: fix duplicated staging for library | Alberto Sartori | |
2022-07-25 | CC rules: keep dependencies last in linking | Klaus 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-25 | Rules: Enforce non-empty library and binary names | Oliver Reiche | |