diff options
author | Michael Davis | 2022-02-21 12:39:23 +0000 |
---|---|---|
committer | Blaž Hrastnik | 2022-03-10 08:31:57 +0000 |
commit | b157c5a8a4472cff68de3a9be66e220dc4b80a9f (patch) | |
tree | c67cd0462e3cb3a6b7627ef000b12b0b001afcfa /helix-term/build.rs | |
parent | 6fcab90d16f9493c0c4738312061a26e473ab12a (diff) |
fetch and compile tree-sitter grammars in helix-term build
This restores much of the behavior that existed before this PR:
helix will build the grammars when compiling. The difference is that
now fetching is also done during the build phase and is done much
more quickly - both shallow and in parallel.
Diffstat (limited to 'helix-term/build.rs')
-rw-r--r-- | helix-term/build.rs | 8 |
1 files changed, 8 insertions, 0 deletions
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); } |