# Cross-compilation configuration for Rustelo projects # This file configures cross-compilation for different target platforms [build] # Default build configuration default-target = "x86_64-unknown-linux-gnu" [build.env] # Global environment variables for all targets passthrough = [ "RUSTELO_MODE", "RUSTELO_TARGET", "RUSTELO_ASSETS_DIR", "NODE_ENV" ] # Linux x86_64 target configuration [target.x86_64-unknown-linux-gnu] # Use custom Docker image with Node.js and Rust toolchain image = "rustelo-cross:{{rust_version}}-node{{node_version}}" # Docker build arguments [target.x86_64-unknown-linux-gnu.env] volumes = [ "{{project_root}}/node_modules_linux:/workspace/node_modules:Z", "{{project_root}}/target-linux:/workspace/target:Z" ] # Linux ARM64 target configuration (for Apple Silicon compatibility) [target.aarch64-unknown-linux-gnu] image = "rustelo-cross:{{rust_version}}-node{{node_version}}-arm64" [target.aarch64-unknown-linux-gnu.env] volumes = [ "{{project_root}}/node_modules_linux:/workspace/node_modules:Z", "{{project_root}}/target-linux:/workspace/target:Z" ] # Windows x86_64 target (optional) [target.x86_64-pc-windows-gnu] image = "rustelo-cross:{{rust_version}}-windows" # macOS ARM64 (for CI/CD on different platforms) [target.aarch64-apple-darwin] # This typically runs natively, but can be configured for remote builds image = "rustelo-cross:{{rust_version}}-macos"