Age | Commit message (Collapse) | Author |
|
... as they will be used in newer versions of rules-cc to set the
path for the test-summary action.
|
|
This showcases that also generated proto headers will be staged for
debugging.
|
|
|
|
This is good practice and it makes it easier to later demonstrate
debugging, as the flag value is honored.
Also renames the final repos.json example, in order to ensure that
any chapters depending on the output of this chapter receives the
correct repository description.
|
|
|
|
...to version fully supporting debugging.
|
|
... so that the tutorial also works with the latest version of our rules.
|
|
Also updates the tests and all relevant documentation accordingly.
|
|
|
|
When tutorial docs were changed to showcase running commands with
just-mr instead of just, the outputs were not changed. This is now
fixed to showcase the results run with current master just-mr (and
just), together with other small improvements and fixes.
|
|
|
|
|
|
When explaining CC tests, the option --request-action-input is used
to get hold of the actual test binary. This is the first time in
the tutorial where the action graph is larger than the part that
that is traversed during the build. Use this oportunity to explain
the difference between those concpets as, reportedly, some users
got confused about this.
|
|
... and point to the repository with machine-readable instructions
on how to properly build them.
|
|
|
|
|
|
|
|
While there,
- remove the outdated claim that in package build of just the prebuilt
library aproach of a header-only library with link dependencies
is chosen, and
- remove a wrong footnote separator.
|
|
... while providing a native descirption still is the cleaner approach.
Nevertheless, hinting on this fact early avoids scaring off novice
users having a lot of dependencies.
|
|
... as a way to find out more about the defining rule of a target.
While there, also be a bit more explicit about target naming and the
fact that the default target is a target of the rules repository.
|
|
... emphasizing that source files are just targets and that we
could as well use a defined target there.
|
|
|
|
|
|
|
|
... so that users who want use just as an execution service for
other build tools are aware and don't run into errors due to
incompatible hashes.
|
|
|
|
|
|
|
|
|
|
... also for CC tests, as this contains the shared tools, e.g.,
for flakyness handling.
|
|
I know "boost rap" is a popular music genre among C++ programmers today,
but nevertheless this is a typo.
|
|
|
|
Co-authored-by: Sascha Roloff <sascha.roloff@huawei.com>
|
|
|
|
... by using the fully declared rules-cc repository and
feeding ed from stdin.
|
|
... by explicitly specifying the protobuf repository and
using just-import-git to import the rules-cc repository.
Furthermore, protobuf's subdir "examples" is used directly
and all targets are created in the top-level module.
|
|
... by adding some remarks and creating all tests in module
"tests".
|
|
|
|
|
|
|
|
... given that binaries now only have "private-proto" (as there
are no public dependencies of a binary anyway). While there, also
hint on the script for git imports, to simplify the setup of
the example.
|
|
... on parts a first-time reader might (and actually did) stumble upon.
|
|
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
|
|
... in favor of the "tree" built-in rule.
|
|
|
|
|
|
... when introducing export targets. In this way, the user
has a way to take a meaningful decission on which variables
to export.
|
|
While building from source as certain advantages, there are also
good reasons to use pre-installed dependencies. Document this in the
tutorial to avoid wrong impressions readers might have otherwise.
|
|
Staging is quite a fundamental concept of just. Therefore, introduce
it early in the tutorial. In this way, it also becomes obvious, why
only targets are requested and files are not installed by default.
|
|
... as an way of directly obtaining an artifact without
an additional detour through the file system.
|