Bake - L'utilitaire de compilation minimaliste 🚀

Sommaire 📖

Introduction

Bake est un utilitaire de compilation inspiré de make, conçu pour gérer la génération et la mise à jour de fichiers en fonction de leurs dépendances. Contrairement à make, Bake utilise un fichier de configuration nommé Bakefile, avec une syntaxe simplifiée et sans certaines fonctionnalités avancées.

Installation

# Cloner le dépôt
git clone https://grond.iut-fbleau.fr/stiti/SAE32_2024/
cd SAE32_2024

# Compiler le projet et diffuser le .JAR dans tout les répertoires de tests
make

Structure du projet

SAE32_2024/
│── src/                 # Code source du projet
│   ├── fr/monlouyan/bakefile/
│       ├── BakeCLI.java
│       ├── BakeEngine.java
│       ├── BakefileParser.java
│       ├── Rule.java
│       ├── CommandExecutor.java
│       ├── DependencyResolver.java
│       ├── TimestampManager.java
│		├── Main.java
│── tests/               # Répertoires de tests 
│── documentation/       # Rapport, Diagrammes
│── Makefile             # Compilation et gestion du projet
│── README.md            

Utilisation

# Utilisation dans les répertoires de test `bake`
java -cp bakefile.jar fr.monlouyan.bakefile.Main

Tests

Le répertoire tests contient une liste de tests pour vérifier que Bake réagit comme Make.

Pour générer et visualiser la documentation JavaDoc :

# Générer uniquement la JavaDoc
make javadoc

# Générer et afficher la JavaDoc dans votre navigateur
make see-javadoc

Documentation

Le répertoire documentation contient un rapport et des diagrammes détaillant le fonctionnement de Bake.

Auteurs 👨‍💻

Remerciements

Un grand merci à Lenny FOULOU, Khalid Chenouna et Thomas Rognant qui ont accepté d'échanger des tests avec nous, nous permettant d'avoir une autre vision des problèmes.

Note

Nous avons obtenu une note de 16,50/20, qui est la meilleure note attribuée pour ce projet.

Image

Description
Utilitaire de compilation simpliste similaire à GNU Make
Readme 7.5 MiB
Languages
Java 48.5%
Shell 28.5%
Makefile 16%
C 7%