aboutsummaryrefslogtreecommitdiff
path: root/helix-term
diff options
context:
space:
mode:
Diffstat (limited to 'helix-term')
-rw-r--r--helix-term/Cargo.toml7
-rw-r--r--helix-term/build.rs8
2 files changed, 11 insertions, 4 deletions
diff --git a/helix-term/Cargo.toml b/helix-term/Cargo.toml
index 86d72561..48365743 100644
--- a/helix-term/Cargo.toml
+++ b/helix-term/Cargo.toml
@@ -67,9 +67,8 @@ grep-searcher = "0.1.8"
# Remove once retain_mut lands in stable rust
retain_mut = "0.1.7"
-# compiling grammars
-cc = { version = "1" }
-threadpool = { version = "1.0" }
-
[target.'cfg(not(windows))'.dependencies] # https://github.com/vorner/signal-hook/issues/100
signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"] }
+
+[build-dependencies]
+helix-loader = { version = "0.6", path = "../helix-loader" }
diff --git a/helix-term/build.rs b/helix-term/build.rs
index b5d62b28..526cdc41 100644
--- a/helix-term/build.rs
+++ b/helix-term/build.rs
@@ -1,3 +1,4 @@
+use helix_loader::grammar::{build_grammars, fetch_grammars};
use std::borrow::Cow;
use std::process::Command;
@@ -14,5 +15,12 @@ fn main() {
None => env!("CARGO_PKG_VERSION").into(),
};
+ if std::env::var("HELIX_DISABLE_AUTO_GRAMMAR_BUILD").is_err() {
+ fetch_grammars().expect("Failed to fetch tree-sitter grammars");
+ build_grammars().expect("Failed to compile tree-sitter grammars");
+ }
+
+ println!("cargo:rerun-if-changed=../runtime/grammars/");
+
println!("cargo:rustc-env=VERSION_AND_GIT_HASH={}", version);
}