Cargo Features

[dependencies]
llvm-plugin-inkwell = { version = "0.3.0", default-features = false, features = ["llvm4-0", "llvm5-0", "llvm6-0", "llvm7-0", "llvm8-0", "llvm9-0", "llvm10-0", "llvm11-0", "llvm12-0", "llvm13-0", "llvm14-0", "llvm15-0", "llvm16-0", "llvm4-0-no-llvm-linking", "llvm5-0-no-llvm-linking", "llvm6-0-no-llvm-linking", "llvm7-0-no-llvm-linking", "llvm8-0-no-llvm-linking", "llvm9-0-no-llvm-linking", "llvm10-0-no-llvm-linking", "llvm11-0-no-llvm-linking", "llvm12-0-no-llvm-linking", "llvm13-0-no-llvm-linking", "llvm14-0-no-llvm-linking", "llvm15-0-no-llvm-linking", "llvm16-0-no-llvm-linking", "no-libffi-linking", "target-mips", "target-amdgpu", "target-hexagon", "target-xcore", "target-bpf", "target-webassembly", "target-riscv", "target-syncvm", "target-all", "experimental", "nightly"] }
default = target-all

The target-all feature is set by default whenever llvm-plugin-inkwell is added without default-features = false somewhere in the dependency tree.

llvm4-0 llvm4-0-no-llvm-linking? = llvm-sys-40

Please update internal_macros::FEATURE_VERSIONS when adding a new LLVM version

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm5-0 llvm5-0-no-llvm-linking? = llvm-sys-50

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm6-0 llvm6-0-no-llvm-linking? = llvm-sys-60

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm7-0 llvm7-0-no-llvm-linking? = llvm-sys-70

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm8-0 llvm8-0-no-llvm-linking? = llvm-sys-80

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm9-0 llvm9-0-no-llvm-linking? = llvm-sys-90

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm10-0 llvm10-0-no-llvm-linking? = llvm-sys-100

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm11-0 llvm11-0-no-llvm-linking? = llvm-sys-110

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm12-0 llvm12-0-no-llvm-linking? = llvm-sys-120
llvm13-0 llvm13-0-no-llvm-linking? = llvm-sys-130
llvm14-0 llvm14-0-no-llvm-linking? = llvm-sys-140
llvm15-0 llvm15-0-no-llvm-linking? = llvm-sys-150

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm16-0 llvm16-0-no-llvm-linking? = llvm-sys-160

Affects metadata_value::FIRST_CUSTOM_METADATA_KIND_ID

llvm4-0-no-llvm-linking = llvm4-0

Don't link aganist LLVM libraries. This is useful if another dependency is installing LLVM. See llvm-sys for more details. We can't enable a single no-llvm-linking feature across the board of llvm versions, as it'll cause cargo to try and download and compile them all. See https://github.com/rust-lang/cargo/issues/3494

Enables no-llvm-linking of llvm-sys ^40.4

llvm5-0-no-llvm-linking = llvm5-0

Enables no-llvm-linking of llvm-sys ^50.4

llvm-sys:

Do not attempt to link against LLVM libraries (useful if a different crate in your dependency tree provides them instead).

llvm6-0-no-llvm-linking = llvm6-0

Enables no-llvm-linking of llvm-sys ^60.6

llvm7-0-no-llvm-linking = llvm7-0

Enables no-llvm-linking of llvm-sys ^70.4

llvm8-0-no-llvm-linking = llvm8-0

Enables no-llvm-linking of llvm-sys ^80.3

llvm9-0-no-llvm-linking = llvm9-0

Enables no-llvm-linking of llvm-sys ^90.2.1

llvm10-0-no-llvm-linking = llvm10-0

Enables no-llvm-linking of llvm-sys ^100.2.3

llvm11-0-no-llvm-linking = llvm11-0

Enables no-llvm-linking of llvm-sys ^110.0.3

llvm12-0-no-llvm-linking = llvm12-0

Enables no-llvm-linking of llvm-sys ^120.2.4

llvm13-0-no-llvm-linking = llvm13-0

Enables no-llvm-linking of llvm-sys ^130.0.4

llvm14-0-no-llvm-linking = llvm14-0

Enables no-llvm-linking of llvm-sys ^140.0.2

llvm15-0-no-llvm-linking = llvm15-0

Enables no-llvm-linking of llvm-sys ^150.0.3

llvm16-0-no-llvm-linking = llvm16-0

Enables no-llvm-linking of llvm-sys ^160.0.2

no-libffi-linking

Don't force linking to libffi on non-windows platforms. Without this feature inkwell always links to libffi on non-windows platforms.

target-x86 target-arm target-mips target-all
target-aarch64 target-amdgpu target-all
target-systemz target-hexagon target-all
target-nvptx target-msp430 target-xcore target-all
target-powerpc target-sparc target-bpf target-all
target-lanai target-webassembly target-all
target-riscv target-all
target-syncvm
target-all default = target-aarch64, target-amdgpu, target-arm, target-bpf, target-hexagon, target-lanai, target-mips, target-msp430, target-nvptx, target-powerpc, target-riscv, target-sparc, target-systemz, target-webassembly, target-x86, target-xcore
experimental = static-alloc

Affects execution_engine::experimental

nightly

Enables nightly of llvm-plugin-inkwell-internals

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

llvm-sys-40 llvm4-0? llvm4-0-no-llvm-linking?

Enables llvm-sys ^40.4

llvm-sys-50 llvm5-0? llvm5-0-no-llvm-linking?

Enables llvm-sys ^50.4

llvm-sys-60 llvm6-0? llvm6-0-no-llvm-linking?

Enables llvm-sys ^60.6

llvm-sys-70 llvm7-0? llvm7-0-no-llvm-linking?

Enables llvm-sys ^70.4

llvm-sys-80 llvm8-0? llvm8-0-no-llvm-linking?

Enables llvm-sys ^80.3

llvm-sys-90 llvm9-0? llvm9-0-no-llvm-linking?

Enables llvm-sys ^90.2.1

llvm-sys-100 llvm10-0? llvm10-0-no-llvm-linking?

Enables llvm-sys ^100.2.3

llvm-sys-110 llvm11-0? llvm11-0-no-llvm-linking?

Enables llvm-sys ^110.0.3

llvm-sys-120 llvm12-0? llvm12-0-no-llvm-linking?

Enables llvm-sys ^120.2.4

llvm-sys-130 llvm13-0? llvm13-0-no-llvm-linking?

Enables llvm-sys ^130.0.4

llvm-sys-140 llvm14-0? llvm14-0-no-llvm-linking?

Enables llvm-sys ^140.0.2

llvm-sys-150 llvm15-0? llvm15-0-no-llvm-linking?

Enables llvm-sys ^150.0.3

llvm-sys-160 llvm16-0? llvm16-0-no-llvm-linking?

Enables llvm-sys ^160.0.2

static-alloc experimental?