forked from TheDan64/inkwell
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2 from rtfeldman/upgrade-inkwell-debug-info
Upgrade inkwell so we can use debug info
- Loading branch information
Showing
62 changed files
with
3,917 additions
and
1,271 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,6 +3,7 @@ name = "inkwell" | |
version = "0.1.0" | ||
authors = ["Daniel Kolsoi <[email protected]>"] | ||
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/TheDan64/inkwell" | ||
readme = "README.md" | ||
keywords = ["llvm", "safe", "wrapper"] | ||
|
@@ -13,20 +14,36 @@ edition = "2018" | |
[features] | ||
default = ["target-all", "llvm10-0"] | ||
# Please update internal_macros::FEATURE_VERSIONS when adding a new LLVM version | ||
llvm3-6 = [] | ||
llvm3-7 = [] | ||
llvm3-8 = [] | ||
llvm3-9 = [] | ||
llvm4-0 = [] | ||
llvm5-0 = [] | ||
llvm6-0 = [] | ||
llvm7-0 = [] | ||
llvm8-0 = [] | ||
llvm9-0 = [] | ||
llvm10-0 = [] | ||
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"] | ||
# Don't link aganist LLVM libraries. This is useful if another dependency is | ||
# installing LLVM. See llvm-sys for more details. | ||
no-llvm-linking = ["llvm-sys/no-llvm-linking"] | ||
# 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"] | ||
# 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 = [] | ||
|
@@ -42,6 +59,7 @@ target-sparc = [] | |
target-bpf = [] | ||
target-lanai = [] | ||
target-webassembly = [] | ||
target-riscv = [] | ||
target-all = [ | ||
"target-x86", | ||
"target-arm", | ||
|
@@ -57,17 +75,29 @@ target-all = [ | |
"target-sparc", | ||
"target-bpf", | ||
"target-lanai", | ||
"target-webassembly" | ||
"target-webassembly", | ||
"target-riscv" | ||
] | ||
experimental = ["static-alloc"] | ||
nightly = ["inkwell_internals/nightly"] | ||
|
||
[dependencies] | ||
either = "1.5" | ||
inkwell_internals = { path = "./internal_macros", version = "0.1.0" } | ||
inkwell_internals = { path = "./internal_macros", version = "0.2.0" } | ||
libc = "0.2" | ||
llvm-sys = "100.0.1" | ||
once_cell = "1.2" | ||
parking_lot = "0.10" | ||
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 } | ||
once_cell = "1.4.1" | ||
parking_lot = "0.11" | ||
regex = "1" | ||
static-alloc = { version = "0.2", optional = true } | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
fn main() { | ||
if cfg!(not(target_os = "windows")) { | ||
if cfg!(all(not(target_os = "windows"), not(feature = "no-libffi-linking"))) { | ||
println!("cargo:rustc-link-lib=dylib=ffi"); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
[package] | ||
name = "inkwell_internals" | ||
version = "0.1.0" | ||
version = "0.2.0" | ||
authors = ["Daniel Kolsoi <[email protected]>"] | ||
description = "Internal macro crate for inkwell" | ||
edition = "2018" | ||
|
@@ -9,9 +9,12 @@ readme = "README.md" | |
license = "Apache-2.0" | ||
|
||
[dependencies] | ||
quote = "0.6" | ||
syn = { version = "0.15", features = ["full", "fold"] } | ||
proc-macro2 = "0.4" | ||
quote = "1.0" | ||
syn = { version = "1.0", features = ["full", "fold"] } | ||
proc-macro2 = "1.0" | ||
|
||
[lib] | ||
proc-macro = true | ||
|
||
[features] | ||
nightly = [] |
Oops, something went wrong.