Skip to content

Commit

Permalink
reference: Update syntax supported by rustc-link-lib
Browse files Browse the repository at this point in the history
  • Loading branch information
petrochenkov committed May 17, 2022
1 parent 6d6dd9d commit 53ec56c
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions src/doc/src/reference/build-scripts.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ one detailed below.
flags to a linker for examples.
* [`cargo:rustc-link-arg-benches=FLAG`](#rustc-link-arg-benches) – Passes custom
flags to a linker for benchmarks.
* [`cargo:rustc-link-lib=[KIND=]NAME`](#rustc-link-lib) — Adds a library to
* [`cargo:rustc-link-lib=LIB`](#rustc-link-lib) — Adds a library to
link.
* [`cargo:rustc-link-search=[KIND=]PATH`](#rustc-link-search) — Adds to the
library search path.
Expand Down Expand Up @@ -153,12 +153,16 @@ to set a linker script or other linker options.


<a id="rustc-link-lib"></a>
#### `cargo:rustc-link-lib=[KIND=]NAME`
#### `cargo:rustc-link-lib=LIB`

The `rustc-link-lib` instruction tells Cargo to link the given library using
the compiler's [`-l` flag][option-link]. This is typically used to link a
native library using [FFI].

The `LIB` string is passed directly to rustc, so it supports any syntax that
`-l` does. \
Currently the full supported syntax for `LIB` is `[KIND[:MODIFIERS]=]NAME[:RENAME]`.

The `-l` flag is only passed to the library target of the package, unless
there is no library target, in which case it is passed to all targets. This is
done because all other targets have an implicit dependency on the library
Expand Down

0 comments on commit 53ec56c

Please sign in to comment.