Correction de bug + Modification du readme.md + Ajout d'un test d'un autre groupe

This commit is contained in:
Moncef STITI 2025-03-16 13:46:59 +01:00
parent 03ab0ab04f
commit 072e5205e7
4 changed files with 64 additions and 1 deletions
README.md
src/fr/monlouyan/bakefile
tests/tests-autres-groupes/lenny-khalid-thomas/test-9-Saut-De-Ligne

@ -8,6 +8,7 @@
- [Tests](#tests)
- [Documentation](#documentation)
- [Auteurs](#auteurs-%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB)
- [Remerciements](#remerciements)
## 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.
@ -74,4 +75,8 @@ Le répertoire **documentation** contient un rapport et des diagrammes détailla
- Louay DARDOURI - [@dardouri](https://grond.iut-fbleau.fr/dardouri)
- Yanis HAMOUDI - [@hamoudi](https://grond.iut-fbleau.fr/hamoudi)
## 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.
![Image](https://dwarves.iut-fbleau.fr/~stiti/SUIVI-PROJET/DEV3.2/image.php)

@ -199,8 +199,10 @@ public class BakefileParser {
if (depStr == null || depStr.trim().isEmpty()) {
return new ArrayList<>();
}
String cleanedStr = depStr.replaceAll("\\\\\\s*", " ");
String resolvedStr = replaceVariables(depStr.trim());
String resolvedStr = replaceVariables(cleanedStr.trim());
return Arrays.stream(resolvedStr.split("\\s+"))
.map(String::trim)
.filter(s -> !s.isEmpty())

@ -0,0 +1,28 @@
# Définition d'une variable avec un saut de ligne
MESSAGE=Compilation\
en cours...
# Règle principale
all: fichier1 fichier2
echo "$(MESSAGE)"
echo "Création de tous les fichiers terminée."
# Règle pour fichier1
fichier1:
echo "Génération de fichier1"
# Règle pour fichier2 avec saut de ligne dans la dépendance
fichier2: fichier1\
fichier3
echo "Génération de fichier2"
# Règle pour fichier3
fichier3:
echo "Génération de fichier3"
# Règle spéciale
.PHONY: clean
# Nettoyage
clean:
echo "Suppression des fichiers générés"

@ -0,0 +1,28 @@
# Définition d'une variable avec un saut de ligne
MESSAGE=Compilation\
en cours...
# Règle principale
all: fichier1 fichier2
echo "$(MESSAGE)"
echo "Création de tous les fichiers terminée."
# Règle pour fichier1
fichier1:
echo "Génération de fichier1"
# Règle pour fichier2 avec saut de ligne dans la dépendance
fichier2: fichier1\
fichier3
echo "Génération de fichier2"
# Règle pour fichier3
fichier3:
echo "Génération de fichier3"
# Règle spéciale
.PHONY: clean
# Nettoyage
clean:
echo "Suppression des fichiers générés"