vitte

Vitte — Build Guide

Introduction

Ce document décrit en détail le processus de build du projet Vitte.
Il couvre :


Prérequis

Outils de base

Dépendances spécifiques


Compilation locale

Cloner le dépôt

git clone https://github.com/vitte-lang/vitte.git
cd vitte

Build debug (rapide, non optimisé)

cargo build

Build release (optimisé)

cargo build --release

Exécuter tests unitaires

cargo test

Vérifier le formatage et lint

cargo fmt --all -- --check
cargo clippy --all-targets -- -D warnings

Structure du workspace

vitte/
├── modules/
│   ├── vitte-core/
│   ├── vitte-cli/
│   ├── vitte-vm/
│   ├── vitte-compiler/
│   ├── vitte-lsp/
│   └── vitte-fuzz/
├── docs/
├── scripts/
│   ├── build.sh
│   ├── bench.sh
│   ├── release.sh
│   └── fmt.sh
└── Cargo.toml

Cross-compilation

Linux → Windows

cargo build --release --target x86_64-pc-windows-gnu

Linux → macOS (via osxcross)

cargo build --release --target x86_64-apple-darwin

Linux → ARM (Raspberry Pi)

cargo build --release --target armv7-unknown-linux-gnueabihf

WebAssembly / WASI

cargo build --release --target wasm32-wasi

Artefacts produits


CI/CD

Exemple GitHub Actions

name: CI

on:
  push:
    branches: [ main ]
  pull_request:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo build --release
      - run: cargo test
      - run: cargo clippy --all-targets -- -D warnings

Exemple Release Pipeline

name: Release

on:
  push:
    tags:
      - "v*.*.*"

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo build --release --workspace
      - name: Upload artifacts
        uses: actions/upload-artifact@v4
        with:
          name: vitte-binaries
          path: target/release/*

Scripts associés

build.sh

#!/bin/bash
set -e
cargo build --release --workspace

release.sh

#!/bin/bash
set -e
cargo fmt --all
cargo clippy --all-targets -- -D warnings
cargo test --workspace
cargo build --release --workspace

bench.sh

#!/bin/bash
set -e
cargo bench --workspace

Roadmap Build System


Conclusion

Le système de build de Vitte est conçu pour être fiable, portable et extensible.
Il permet aux développeurs de compiler facilement sur toutes les plateformes, tout en s’intégrant aux pipelines CI/CD modernes.
L’objectif est de fournir une expérience fluide, de la compilation locale au packaging et à la distribution mondiale.