From 53ec56cbae80c6001df62958802809466de115e5 Mon Sep 17 00:00:00 2001 From: Vadim Petrochenkov Date: Tue, 17 May 2022 14:51:58 +0300 Subject: [PATCH] reference: Update syntax supported by `rustc-link-lib` --- src/doc/src/reference/build-scripts.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/doc/src/reference/build-scripts.md b/src/doc/src/reference/build-scripts.md index 8c7729d52..e49c00af3 100644 --- a/src/doc/src/reference/build-scripts.md +++ b/src/doc/src/reference/build-scripts.md @@ -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. @@ -153,12 +153,16 @@ to set a linker script or other linker options. -#### `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 -- 2.39.5