tag | a3b6946b7ef9ccaaea6a590c93ff029ac17cc051 | |
---|---|---|
tagger | David Tolnay <dtolnay@gmail.com> | Wed Oct 07 17:58:56 2020 |
object | adf048bcec5ad2cb6ac8a6eb5ed214b5adc1e7b2 |
Release 1.0.4
commit | adf048bcec5ad2cb6ac8a6eb5ed214b5adc1e7b2 | [log] [tgz] |
---|---|---|
author | David Tolnay <dtolnay@gmail.com> | Wed Oct 07 17:58:56 2020 |
committer | David Tolnay <dtolnay@gmail.com> | Wed Oct 07 17:58:56 2020 |
tree | 3d0b8efd69700550cb9513a2fed987a9656cae70 | |
parent | 39117c6eb5405d8dd8bd2961345fd8e631852221 [diff] |
Release 1.0.4
-lstdc++
or -lc++
This crate exists for the purpose of passing -lstdc++
or -lc++
to the linker, while making it possible for an application to make that choice on behalf of its library dependencies.
Without this crate, a library would need to:
neither of which are good experiences.
An application or library that is fine with either of libstdc++ or libc++ being linked, whichever is the platform's default, should use:
[dependencies] link-cplusplus = "1.0"
An application that wants a particular one or the other linked should use:
[dependencies] link-cplusplus = { version = "1.0", features = ["libstdc++"] } # or link-cplusplus = { version = "1.0", features = ["libc++"] }
An application that wants to handle its own more complicated logic for link flags from its build script can make this crate do nothing by using:
[dependencies] link-cplusplus = { version = "1.0", features = ["nothing"] }