changelog shortlog graph tags branches changeset files file revisions raw help

Mercurial > demo / annotate build.rs

changeset 1: e4f8df713d55
parent: eb8ed24e8a76
child: 315fedf35bc7
author: ellis <ellis@rwest.io>
date: Sun, 30 Apr 2023 22:24:18 -0400
permissions: -rw-r--r--
description: scaffolding from lives past
0
ellis <ellis@rwest.io>
parents:
diff changeset
1
 use std::env;
ellis <ellis@rwest.io>
parents:
diff changeset
2
 use std::fs::create_dir;
ellis <ellis@rwest.io>
parents:
diff changeset
3
 use std::path::PathBuf;
ellis <ellis@rwest.io>
parents:
diff changeset
4
 fn main() {
ellis <ellis@rwest.io>
parents:
diff changeset
5
   let crate_dir: PathBuf = env::var("CARGO_MANIFEST_DIR")
ellis <ellis@rwest.io>
parents:
diff changeset
6
     .expect("CARGO_MANIFEST_DIR env var is not defined")
ellis <ellis@rwest.io>
parents:
diff changeset
7
     .into();
1
e4f8df713d55 scaffolding from lives past
ellis <ellis@rwest.io>
parents: 0
diff changeset
8
   // let mpk_py = "build.py";
0
ellis <ellis@rwest.io>
parents:
diff changeset
9
   let config = cbindgen::Config::from_file("cbindgen.toml")
ellis <ellis@rwest.io>
parents:
diff changeset
10
     .expect("Unable to find cbindgen.toml configuration file");
1
e4f8df713d55 scaffolding from lives past
ellis <ellis@rwest.io>
parents: 0
diff changeset
11
   let build_dir = crate_dir.join("ffi/");
0
ellis <ellis@rwest.io>
parents:
diff changeset
12
   if !build_dir.exists() {
ellis <ellis@rwest.io>
parents:
diff changeset
13
     create_dir(&build_dir).unwrap();
ellis <ellis@rwest.io>
parents:
diff changeset
14
   }
ellis <ellis@rwest.io>
parents:
diff changeset
15
   cbindgen::generate_with_config(&crate_dir, config)
ellis <ellis@rwest.io>
parents:
diff changeset
16
     .unwrap()
ellis <ellis@rwest.io>
parents:
diff changeset
17
     .write_to_file(build_dir.join("mpk_ffi.h"));
ellis <ellis@rwest.io>
parents:
diff changeset
18
 }