plum
git clone https://git.pyrossh.dev/plum
A statically typed, imperative programming language inspired by rust, python
plum-tooling/tree-sitter-plum/bindings/rust/build.rs
| 0d8e2ab | 1 | fn main() { |
| 0d8e2ab | 2 | let src_dir = std::path::Path::new("src"); |
| 0d8e2ab | 3 | |
| 0d8e2ab | 4 | let mut c_config = cc::Build::new(); |
| 0d8e2ab | 5 | c_config.std("c11").include(src_dir); |
| 0d8e2ab | 6 | |
| 0d8e2ab | 7 | #[cfg(target_env = "msvc")] |
| 0d8e2ab | 8 | c_config.flag("-utf-8"); |
| 0d8e2ab | 9 | |
| 0d8e2ab | 10 | let parser_path = src_dir.join("parser.c"); |
| 0d8e2ab | 11 | c_config.file(&parser_path); |
| 0d8e2ab | 12 | println!("cargo:rerun-if-changed={}", parser_path.to_str().unwrap()); |
| 0d8e2ab | 13 | |
| 0d8e2ab | 14 | let scanner_path = src_dir.join("scanner.c"); |
| 0d8e2ab | 15 | c_config.file(&scanner_path); |
| 0d8e2ab | 16 | println!("cargo:rerun-if-changed={}", scanner_path.to_str().unwrap()); |
| 0d8e2ab | 17 | |
| 0d8e2ab | 18 | c_config.compile("tree-sitter-plum"); |
| 0d8e2ab | 19 | } |