From 0bfd573dda872598d7b7ee2a8f83bd849aa8f425 Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Sat, 6 Jul 2024 22:00:18 +0200 Subject: [PATCH] Convert orbutils recipes from recipe.sh to recipe.toml --- recipes/gui/orbutils-background/recipe.sh | 4 ---- recipes/gui/orbutils-background/recipe.toml | 12 ++++++++++++ recipes/gui/orbutils-launcher/recipe.sh | 4 ---- recipes/gui/orbutils-launcher/recipe.toml | 11 +++++++++++ recipes/gui/orbutils-orblogin/recipe.sh | 4 ---- recipes/gui/orbutils-orblogin/recipe.toml | 12 ++++++++++++ src/bin/cook.rs | 14 ++++++++------ src/recipe.rs | 8 +++++++- 8 files changed, 50 insertions(+), 19 deletions(-) delete mode 100644 recipes/gui/orbutils-background/recipe.sh create mode 100644 recipes/gui/orbutils-background/recipe.toml delete mode 100644 recipes/gui/orbutils-launcher/recipe.sh create mode 100644 recipes/gui/orbutils-launcher/recipe.toml delete mode 100644 recipes/gui/orbutils-orblogin/recipe.sh create mode 100644 recipes/gui/orbutils-orblogin/recipe.toml diff --git a/recipes/gui/orbutils-background/recipe.sh b/recipes/gui/orbutils-background/recipe.sh deleted file mode 100644 index 237d8b020..000000000 --- a/recipes/gui/orbutils-background/recipe.sh +++ /dev/null @@ -1,4 +0,0 @@ -GIT=https://gitlab.redox-os.org/redox-os/orbutils.git -BINDIR=/usr/bin -CARGOFLAGS="--bin background -p orbutils" -DEPENDS="orbital" diff --git a/recipes/gui/orbutils-background/recipe.toml b/recipes/gui/orbutils-background/recipe.toml new file mode 100644 index 000000000..9b13e8168 --- /dev/null +++ b/recipes/gui/orbutils-background/recipe.toml @@ -0,0 +1,12 @@ +[source] +git = "https://gitlab.redox-os.org/redox-os/orbutils.git" + +[build] +template = "cargo" +package_path = "orbutils" +cargoflags = "--bin background" + +[package] +dependencies = [ + "orbital" +] diff --git a/recipes/gui/orbutils-launcher/recipe.sh b/recipes/gui/orbutils-launcher/recipe.sh deleted file mode 100644 index 4b4975b50..000000000 --- a/recipes/gui/orbutils-launcher/recipe.sh +++ /dev/null @@ -1,4 +0,0 @@ -GIT=https://gitlab.redox-os.org/redox-os/orbutils.git -BINDIR=/usr/bin -CARGOFLAGS="--bin launcher -p orbutils" -DEPENDS="orbital" diff --git a/recipes/gui/orbutils-launcher/recipe.toml b/recipes/gui/orbutils-launcher/recipe.toml new file mode 100644 index 000000000..78125ba93 --- /dev/null +++ b/recipes/gui/orbutils-launcher/recipe.toml @@ -0,0 +1,11 @@ +[source] +git = "https://gitlab.redox-os.org/redox-os/orbutils.git" + +[build] +template = "cargo" +package_path = "launcher" + +[package] +dependencies = [ + "orbital" +] diff --git a/recipes/gui/orbutils-orblogin/recipe.sh b/recipes/gui/orbutils-orblogin/recipe.sh deleted file mode 100644 index a7dd5f536..000000000 --- a/recipes/gui/orbutils-orblogin/recipe.sh +++ /dev/null @@ -1,4 +0,0 @@ -GIT=https://gitlab.redox-os.org/redox-os/orbutils.git -BINDIR=/usr/bin -CARGOFLAGS="--bin orblogin -p orbutils" -DEPENDS="orbital" diff --git a/recipes/gui/orbutils-orblogin/recipe.toml b/recipes/gui/orbutils-orblogin/recipe.toml new file mode 100644 index 000000000..6871a92e6 --- /dev/null +++ b/recipes/gui/orbutils-orblogin/recipe.toml @@ -0,0 +1,12 @@ +[source] +git = "https://gitlab.redox-os.org/redox-os/orbutils.git" + +[build] +template = "cargo" +package_path = "orbutils" +cargoflags = "--bin orblogin" + +[package] +dependencies = [ + "orbital" +] diff --git a/src/bin/cook.rs b/src/bin/cook.rs index 5767d7cac..d271117a0 100644 --- a/src/bin/cook.rs +++ b/src/bin/cook.rs @@ -466,7 +466,7 @@ fi COOKBOOK_CARGO="${COOKBOOK_REDOXER}" function cookbook_cargo { "${COOKBOOK_CARGO}" install \ - --path "${COOKBOOK_SOURCE}" \ + --path "${COOKBOOK_SOURCE}/${PACKAGE_PATH}" \ --root "${COOKBOOK_STAGE}/usr" \ --locked \ --no-track \ @@ -480,7 +480,7 @@ function cookbook_cargo_examples { for example in "$@" do "${COOKBOOK_CARGO}" build \ - --manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \ + --manifest-path "${COOKBOOK_SOURCE}/${PACKAGE_PATH}/Cargo.toml" \ --example "${example}" \ ${build_flags} mkdir -pv "${COOKBOOK_STAGE}/usr/bin" @@ -496,7 +496,7 @@ function cookbook_cargo_packages { for package in "$@" do "${COOKBOOK_CARGO}" build \ - --manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \ + --manifest-path "${COOKBOOK_SOURCE}/${PACKAGE_PATH}/Cargo.toml" \ --package "${package}" \ ${build_flags} mkdir -pv "${COOKBOOK_STAGE}/usr/bin" @@ -560,9 +560,11 @@ done //TODO: configurable target //TODO: Add more configurability, convert scripts to Rust? let script = match &build.kind { - BuildKind::Cargo => "cookbook_cargo", - BuildKind::Configure => "cookbook_configure", - BuildKind::Custom { script } => script + BuildKind::Cargo { package_path, cargoflags } => { + format!("PACKAGE_PATH={} cookbook_cargo {cargoflags}", package_path.as_deref().unwrap_or(".")) + } + BuildKind::Configure => "cookbook_configure".to_owned(), + BuildKind::Custom { script } => script.clone(), }; let command = { diff --git a/src/recipe.rs b/src/recipe.rs index 197396c75..ca74754f3 100644 --- a/src/recipe.rs +++ b/src/recipe.rs @@ -38,7 +38,13 @@ pub enum SourceRecipe { pub enum BuildKind { /// Will build and install using cargo #[serde(rename = "cargo")] - Cargo, + Cargo { + #[serde(default)] + package_path: Option<String>, + + #[serde(default)] + cargoflags: String, + }, /// Will build and install using configure and make #[serde(rename = "configure")] Configure, -- GitLab