0.3.1-0-pre.2.fix.2

This commit is contained in:
2026-09-20 21:49:23 +02:00
parent bded27c944
commit 1835464bb3
13 changed files with 168 additions and 357 deletions

View File

@@ -1,42 +1,9 @@
// file: crates/apps/game-snake-poc-tauri/build.rs
// version: 2
// version: 3
//! Build-time integration for the Snake Tauri host.
const GENERATED_ANDROID_TAURI_BUILD_GRADLE: &str = "gen/android/app/tauri.build.gradle.kts";
const GRADLE_8_IMPLEMENTATION_DECLARATION: &str = "val implementation by configurations";
const GRADLE_9_IMPLEMENTATION_DECLARATION: &str = "val implementation = configurations.getByName(\"implementation\")";
fn patch_generated_android_gradle() {
let manifest_dir = match std::env::var_os("CARGO_MANIFEST_DIR") {
Some(value) => std::path::PathBuf::from(value),
None => return,
};
let path = manifest_dir.join(GENERATED_ANDROID_TAURI_BUILD_GRADLE);
let content = match std::fs::read_to_string(&path) {
std::result::Result::Ok(value) => value,
std::result::Result::Err(error) if error.kind() == std::io::ErrorKind::NotFound => return,
std::result::Result::Err(error) => {
println!("cargo:warning=failed to inspect {}: {error}", path.display());
return;
},
};
if content.contains(GRADLE_9_IMPLEMENTATION_DECLARATION) {
return;
}
if !content.contains(GRADLE_8_IMPLEMENTATION_DECLARATION) {
println!("cargo:warning={} does not match the expected Tauri 2.11.x Gradle bridge", path.display());
return;
}
let patched = content.replace(GRADLE_8_IMPLEMENTATION_DECLARATION, GRADLE_9_IMPLEMENTATION_DECLARATION);
if let std::result::Result::Err(error) = std::fs::write(&path, patched) {
println!("cargo:warning=failed to prepare {} for Gradle 9: {error}", path.display());
}
return;
}
fn main() {
tauri_build::build();
patch_generated_android_gradle();
return;
}