mirror of
https://github.com/hannobraun/Fornjot
synced 2025-02-27 09:35:52 +00:00
Merge pull request #373 from hannobraun/run
Make `cargo run` work again
This commit is contained in:
commit
4aeaa386b8
@ -11,3 +11,4 @@ members = [
|
|||||||
|
|
||||||
"release-operator",
|
"release-operator",
|
||||||
]
|
]
|
||||||
|
default-members = ["fj-app"]
|
||||||
|
@ -11,6 +11,7 @@ use serde::Deserialize;
|
|||||||
pub struct Config {
|
pub struct Config {
|
||||||
pub default_path: Option<PathBuf>,
|
pub default_path: Option<PathBuf>,
|
||||||
pub default_model: Option<PathBuf>,
|
pub default_model: Option<PathBuf>,
|
||||||
|
pub target_dir: Option<PathBuf>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Config {
|
impl Config {
|
||||||
|
@ -68,7 +68,7 @@ fn main() -> anyhow::Result<()> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let model = Model::from_path(path)?;
|
let model = Model::from_path(path, config.target_dir)?;
|
||||||
|
|
||||||
let mut parameters = HashMap::new();
|
let mut parameters = HashMap::new();
|
||||||
for parameter in args.parameters {
|
for parameter in args.parameters {
|
||||||
|
@ -9,7 +9,10 @@ pub struct Model {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Model {
|
impl Model {
|
||||||
pub fn from_path(path: PathBuf) -> io::Result<Self> {
|
pub fn from_path(
|
||||||
|
path: PathBuf,
|
||||||
|
target_dir: Option<PathBuf>,
|
||||||
|
) -> io::Result<Self> {
|
||||||
let name = {
|
let name = {
|
||||||
// Can't panic. It only would, if the path ends with "..", and we
|
// Can't panic. It only would, if the path ends with "..", and we
|
||||||
// are canonicalizing it here to prevent that.
|
// are canonicalizing it here to prevent that.
|
||||||
@ -31,7 +34,8 @@ impl Model {
|
|||||||
format!("lib{}.so", name)
|
format!("lib{}.so", name)
|
||||||
};
|
};
|
||||||
|
|
||||||
path.join("target/debug").join(file)
|
let target_dir = target_dir.unwrap_or_else(|| path.join("target"));
|
||||||
|
target_dir.join("debug").join(file)
|
||||||
};
|
};
|
||||||
|
|
||||||
let manifest_path = path.join("Cargo.toml");
|
let manifest_path = path.join("Cargo.toml");
|
||||||
|
4
fj.toml
4
fj.toml
@ -5,3 +5,7 @@ default_path = "models"
|
|||||||
# The default models that is loaded, if none is specified. If this is a relative
|
# The default models that is loaded, if none is specified. If this is a relative
|
||||||
# path, it should be relative to `default_path`.
|
# path, it should be relative to `default_path`.
|
||||||
default_model = "star"
|
default_model = "star"
|
||||||
|
|
||||||
|
# The `target/` directory, where compiled model libraries are located. By
|
||||||
|
# default, this is expected to be in the model directory.
|
||||||
|
target_dir = "target"
|
||||||
|
Loading…
Reference in New Issue
Block a user