[package] name = "llvm-ir" version = "0.11.3" authors = ["Craig Disselkoen <craigdissel@gmail.com>"] edition = "2018" description = "LLVM IR in natural Rust data structures" documentation = "https://docs.rs/llvm-ir" repository = "https://github.com/cdisselkoen/llvm-ir" readme = "README.md" keywords = ["llvm", "ir"] license = "MIT" build = "build.rs" [dependencies] llvm-sys-90 = { package = "llvm-sys", version = "90.2.0", optional = true } llvm-sys-100 = { package = "llvm-sys", version = "100.2.0", optional = true } llvm-sys-110 = { package = "llvm-sys", version = "110.0.0", optional = true } llvm-sys-120 = { package = "llvm-sys", version = "120.2.0", optional = true } llvm-sys-130 = { package = "llvm-sys", version = "130.0.0", optional = true } llvm-sys-140 = { package = "llvm-sys", version = "140.0.0", optional = true } llvm-sys-150 = { package = "llvm-sys", version = "150.1.0", optional = true } llvm-sys-160 = { package = "llvm-sys", version = "160.1.2", optional = true } llvm-sys-170 = { package = "llvm-sys", version = "170.0.1", optional = true } llvm-sys-181 = { package = "llvm-sys", version = "181.0.0", optional = true } llvm-sys-191 = { package = "llvm-sys", version = "191.0.0", optional = true } either = "1.9" log = "0.4" ordered-float = "4.6.0" [dev-dependencies] env_logger = "0.10" itertools = "0.11" [features] # Select the LLVM version to be compatible with. # You _must_ enable exactly one of the following features. llvm-9 = ["llvm-sys-90", "llvm-9-or-lower", "llvm-9-or-greater"] llvm-10 = ["llvm-sys-100", "llvm-10-or-lower", "llvm-10-or-greater"] llvm-11 = ["llvm-sys-110", "llvm-11-or-lower", "llvm-11-or-greater"] llvm-12 = ["llvm-sys-120", "llvm-12-or-lower", "llvm-12-or-greater"] llvm-13 = ["llvm-sys-130", "llvm-13-or-lower", "llvm-13-or-greater"] llvm-14 = ["llvm-sys-140", "llvm-14-or-lower", "llvm-14-or-greater"] llvm-15 = ["llvm-sys-150", "llvm-15-or-lower", "llvm-15-or-greater"] llvm-16 = ["llvm-sys-160", "llvm-16-or-lower", "llvm-16-or-greater"] llvm-17 = ["llvm-sys-170", "llvm-17-or-lower", "llvm-17-or-greater"] llvm-18 = ["llvm-sys-181", "llvm-18-or-lower", "llvm-18-or-greater"] llvm-19 = ["llvm-sys-191", "llvm-19-or-lower", "llvm-19-or-greater"] ### # For convenience, these automatically-enabled features allow us to avoid # checking complex combinations of features all the time. They are not meant to # be manually enabled; use the above llvm-x features instead llvm-9-or-greater = [] llvm-10-or-greater = ["llvm-9-or-greater"] llvm-11-or-greater = ["llvm-10-or-greater"] llvm-12-or-greater = ["llvm-11-or-greater"] llvm-13-or-greater = ["llvm-12-or-greater"] llvm-14-or-greater = ["llvm-13-or-greater"] llvm-15-or-greater = ["llvm-14-or-greater"] llvm-16-or-greater = ["llvm-15-or-greater"] llvm-17-or-greater = ["llvm-16-or-greater"] llvm-18-or-greater = ["llvm-17-or-greater"] llvm-19-or-greater = ["llvm-18-or-greater"] llvm-9-or-lower = ["llvm-10-or-lower"] llvm-10-or-lower = ["llvm-11-or-lower"] llvm-11-or-lower = ["llvm-12-or-lower"] llvm-12-or-lower = ["llvm-13-or-lower"] llvm-13-or-lower = ["llvm-14-or-lower"] llvm-14-or-lower = ["llvm-15-or-lower"] llvm-15-or-lower = ["llvm-16-or-lower"] llvm-16-or-lower = ["llvm-17-or-lower"] llvm-17-or-lower = ["llvm-18-or-lower"] llvm-18-or-lower = ["llvm-19-or-lower"] llvm-19-or-lower = [] ### # The `strict-versioning` feature requires an exact match between the # system LLVM version and the version selected with the above features. # # The `?` in the below ensures that we only enable the feature if the dependency # is already present. # This avoids activating all the optional dependencies when `strict-versioning` # is activated. strict-versioning = [ "llvm-sys-90?/strict-versioning", "llvm-sys-100?/strict-versioning", "llvm-sys-110?/strict-versioning", "llvm-sys-120?/strict-versioning", "llvm-sys-130?/strict-versioning", "llvm-sys-140?/strict-versioning", "llvm-sys-150?/strict-versioning", "llvm-sys-160?/strict-versioning", "llvm-sys-170?/strict-versioning", "llvm-sys-181?/strict-versioning", "llvm-sys-191?/strict-versioning", ] # The `prefer-dynamic` feature is only available on llvm-sys versions >= 120. prefer-dynamic = [ "llvm-sys-120?/prefer-dynamic", "llvm-sys-130?/prefer-dynamic", "llvm-sys-140?/prefer-dynamic", "llvm-sys-150?/prefer-dynamic", "llvm-sys-160?/prefer-dynamic", "llvm-sys-170?/prefer-dynamic", "llvm-sys-181?/prefer-dynamic", "llvm-sys-191?/prefer-dynamic", ] [package.metadata.docs.rs] # Generate docs.rs documentation with the llvm-10 feature features = ["llvm-10"]