[package] name = "wasmer_inkwell" version = "0.2.0-alpha.2" authors = ["Daniel Kolsoi ", "Wasmer Engineering Team "] description = "Inkwell aims to help you pen your own programming languages by safely wrapping llvm-sys." documentation = "https://thedan64.github.io/inkwell/" repository = "https://github.com/wasmer/inkwell" readme = "README.md" keywords = ["llvm", "safe", "wrapper"] license = "Apache-2.0" categories = ["development-tools::ffi"] edition = "2018" [features] default = ["target-all"] # Please update internal_macros::FEATURE_VERSIONS when adding a new LLVM version llvm3-6 = ["llvm-sys-36"] llvm3-7 = ["llvm-sys-37"] llvm3-8 = ["llvm-sys-38"] llvm3-9 = ["llvm-sys-39"] llvm4-0 = ["llvm-sys-40"] llvm5-0 = ["llvm-sys-50"] llvm6-0 = ["llvm-sys-60"] llvm7-0 = ["llvm-sys-70"] llvm8-0 = ["llvm-sys-80"] llvm9-0 = ["llvm-sys-90"] llvm10-0 = ["llvm-sys-100"] llvm11-0 = ["llvm-sys-110"] # 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 llvm3-6-no-llvm-linking = ["llvm3-6", "llvm-sys-36/no-llvm-linking"] llvm3-7-no-llvm-linking = ["llvm3-7", "llvm-sys-37/no-llvm-linking"] llvm3-8-no-llvm-linking = ["llvm3-8", "llvm-sys-38/no-llvm-linking"] llvm3-9-no-llvm-linking = ["llvm3-9", "llvm-sys-39/no-llvm-linking"] llvm4-0-no-llvm-linking = ["llvm4-0", "llvm-sys-40/no-llvm-linking"] llvm5-0-no-llvm-linking = ["llvm5-0", "llvm-sys-50/no-llvm-linking"] llvm6-0-no-llvm-linking = ["llvm6-0", "llvm-sys-60/no-llvm-linking"] llvm7-0-no-llvm-linking = ["llvm7-0", "llvm-sys-70/no-llvm-linking"] llvm8-0-no-llvm-linking = ["llvm8-0", "llvm-sys-80/no-llvm-linking"] llvm9-0-no-llvm-linking = ["llvm9-0", "llvm-sys-90/no-llvm-linking"] llvm10-0-no-llvm-linking = ["llvm10-0", "llvm-sys-100/no-llvm-linking"] llvm11-0-no-llvm-linking = ["llvm11-0", "llvm-sys-110/no-llvm-linking"] # Don't force linking to libffi on non-windows platforms. Without this feature # inkwell always links to libffi on non-windows platforms. no-libffi-linking = [] target-x86 = [] target-arm = [] target-mips = [] target-aarch64 = [] target-amdgpu = [] target-systemz = [] target-hexagon = [] target-nvptx = [] target-msp430 = [] target-xcore = [] target-powerpc = [] target-sparc = [] target-bpf = [] target-lanai = [] target-webassembly = [] target-riscv = [] target-all = [ "target-x86", "target-arm", "target-mips", "target-aarch64", "target-amdgpu", "target-systemz", "target-hexagon", "target-nvptx", "target-msp430", "target-xcore", "target-powerpc", "target-sparc", "target-bpf", "target-lanai", "target-webassembly", "target-riscv" ] experimental = ["static-alloc"] nightly = ["inkwell_internals/nightly"] [dependencies] either = "1.5" inkwell_internals = { path = "./internal_macros", version = "0.3.0" } libc = "0.2" llvm-sys-36 = { package = "llvm-sys", version = "36.3", optional = true } llvm-sys-37 = { package = "llvm-sys", version = "37.3", optional = true } llvm-sys-38 = { package = "llvm-sys", version = "38.3", optional = true } llvm-sys-39 = { package = "llvm-sys", version = "39.3", optional = true } llvm-sys-40 = { package = "llvm-sys", version = "40.4", optional = true } llvm-sys-50 = { package = "llvm-sys", version = "50.4", optional = true } llvm-sys-60 = { package = "llvm-sys", version = "60.6", optional = true } llvm-sys-70 = { package = "llvm-sys", version = "70.4", optional = true } llvm-sys-80 = { package = "llvm-sys", version = "80.3", optional = true } llvm-sys-90 = { package = "llvm-sys", version = "90.2", optional = true } llvm-sys-100 = { package = "llvm-sys", version = "100.2", optional = true } llvm-sys-110 = { package = "llvm-sys", version = "110.0", optional = true } once_cell = "1.4.1" parking_lot = "0.11" regex = "1" static-alloc = { version = "0.2", optional = true } [badges] travis-ci = { repository = "TheDan64/inkwell" } codecov = { repository = "TheDan64/inkwell" }