Age | Commit message (Collapse) | Author | Files | Lines |
|
Specifically, now, if a library is installed solely as a prerequisite of
an executable (potentially recursively), then only its runtime files are
installed omitting everything buildtime-related (static/import libraries,
non-versioned symlinks for shared libraries, pkg-config files, headers,
etc). If you are familiar with the runtime and -dev/-devel package splits
for libraries in Debian/Fedora, this is an analogous semantics.
|
|
This turned out not to be always correct since a static library can have
prerequisites that it requires at runtime (see the libca-certificates-curl for
an example). The new plan is to split static/shared library installation into
run-time and build-time parts using the new match options mechanism.
|
|
|
|
|
|
Specifically, the c module now provides the c.as-cpp submodules which can be
loaded in order to register the S{} target type and enable Assembler with C
Preprocessor compilation in the c compile rule. For details, refer to
"Assembler with C Preprocessor Compilation" in the manual.
|
|
|
|
|
|
|
|
In particular, we now have separate auxiliary data storage for inner
and outer operations.
|
|
|
|
A rule hint is a target attribute, for example:
[rule_hint=cxx] exe{hello}: c{hello}
Rule hints can be used to resolve ambiguity when multiple rules match the same
target as well as to override an unambiguous match.
|
|
|
|
|
|
It is also now possible to adjust this behavior with global
config.install.scope override. Valid values for this variable
are:
project -- only from project
strong -- from strong amalgamation
weak -- from weak amalgamation
global -- from all projects (default)
|
|
Failed that, they may pull headers via an ad hoc group.
|
|
|
|
|