-
Notifications
You must be signed in to change notification settings - Fork 28
/
Copy pathCargo.toml
67 lines (55 loc) · 2.45 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
[package]
name = "qirlib"
version = "0.10.1"
edition = "2021"
license = "MIT"
description = "Base Profile QIR library"
build = "build.rs"
readme = "README.md"
homepage = "https://github.com/qir-alliance/pyqir"
repository = "https://github.com/qir-alliance/pyqir"
rust-version = "1.64"
[dependencies]
bitvec = "1.0"
const-str = "0.5"
lazy_static = "1.4"
llvm-sys-110 = { package = "llvm-sys", version = "110.0", optional = true }
llvm-sys-120 = { package = "llvm-sys", version = "120.3", optional = true }
llvm-sys-130 = { package = "llvm-sys", version = "130.1", optional = true }
llvm-sys-140 = { package = "llvm-sys", version = "140.1", optional = true }
log = "0.4"
mut_static = "5.0"
[dev-dependencies]
normalize-line-endings = "0.3"
[build-dependencies]
cmake = "0.1"
cc = "1.0"
lazy_static = "1.4"
[lib]
name = "qirlib"
[features]
llvm11-0 = ["llvm-sys-110"]
llvm12-0 = ["llvm-sys-120"]
llvm13-0 = ["llvm-sys-130"]
llvm14-0 = ["llvm-sys-140"]
# default to use llvm-sys for llvm linking
default = ["external-llvm-linking"]
external-llvm-linking = []
# disable linking for local installation or packaging
# no-llvm-linking is marker used in the cfg checks
llvm11-0-no-llvm-linking = ["llvm11-0", "no-llvm-linking", "llvm-sys-110/disable-alltargets-init", "llvm-sys-110/no-llvm-linking"]
llvm12-0-no-llvm-linking = ["llvm12-0", "no-llvm-linking", "llvm-sys-120/disable-alltargets-init", "llvm-sys-120/no-llvm-linking"]
llvm13-0-no-llvm-linking = ["llvm13-0", "no-llvm-linking", "llvm-sys-130/disable-alltargets-init", "llvm-sys-130/no-llvm-linking"]
llvm14-0-no-llvm-linking = ["llvm14-0", "no-llvm-linking", "llvm-sys-140/disable-alltargets-init", "llvm-sys-140/no-llvm-linking"]
no-llvm-linking = []
# let qirlib do the llvm linking
# qirlib-llvm-linking is marker used in the cfg checks
llvm11-0-qirlib-llvm-linking = ["llvm11-0", "qirlib-llvm-linking", "llvm-sys-110/disable-alltargets-init", "llvm-sys-110/no-llvm-linking"]
llvm12-0-qirlib-llvm-linking = ["llvm12-0", "qirlib-llvm-linking", "llvm-sys-120/disable-alltargets-init", "llvm-sys-120/no-llvm-linking"]
llvm13-0-qirlib-llvm-linking = ["llvm13-0", "qirlib-llvm-linking", "llvm-sys-130/disable-alltargets-init", "llvm-sys-130/no-llvm-linking"]
llvm14-0-qirlib-llvm-linking = ["llvm14-0", "qirlib-llvm-linking", "llvm-sys-140/disable-alltargets-init", "llvm-sys-140/no-llvm-linking"]
qirlib-llvm-linking = []
download-llvm = []
build-llvm = []
# Dev use only for packaging LLVM builds
package-llvm = ["build-llvm", "no-llvm-linking"]