MakeJeu+CreationComplet

This commit is contained in:
Adrien DICK 2024-05-02 17:48:39 +02:00
parent b8267b23ae
commit 56b1837f4f
29 changed files with 48 additions and 40 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Grilles/GrilMakeTest Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,56 +1,64 @@
# Variables
# If the first argument is "jeu"...
ifeq (jeu,$(firstword $(MAKECMDGOALS)))
# use the rest as arguments for "jeu"
RUN_ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
# ...and turn them into do-nothing targets
$(eval $(RUN_ARGS):;@:)
endif
### VARIABLES ###
JC = javac
JCFLAGS = -encoding UTF-8 -implicit:none
JVM = java
SRCDIR = src
BINDIR = bin
MAINCLASS1 = MainJeu
MAINCLASS2 = MainCreation
JVMFLAGS =
SRCDIR = ./src
OUTDIR = ./out
DOCDIR = ./doc
### LISTE DES FICHIERS SOURCE ###
SRCFILES := $(wildcard $(SRCDIR)/*.java)
CLASSFILES := $(patsubst $(SRCDIR)/%.java,$(BINDIR)/%.class,$(SRCFILES))
# Règles de compilation pour les fichiers Java dans le répertoire src
$(BINDIR)/%.class: $(SRCDIR)/%.java | $(BINDIR)
$(JC) -d $(BINDIR) $<
### LISTE DES FICHIERS OBJET ###
# Crée le répertoire bin s'il n'existe pas
$(BINDIR):
mkdir -p $(BINDIR)
CLASSFILES := $(patsubst $(SRCDIR)/%.java,$(OUTDIR)/%.class,$(SRCFILES))
# Règle pour exécuter le premier programme
runJeu: $(CLASSFILES)
$(JVM) -cp $(BINDIR) $(MAINCLASS1)
### REGLES ESSENTIELLES ###
# Règle pour exécuter le deuxième programme
runCreation: $(CLASSFILES)
$(JVM) -cp $(BINDIR) $(MAINCLASS2)
# Compilation de tous les fichiers source
$(OUTDIR)/%.class : $(SRCDIR)/%.java | $(OUTDIR)
@mkdir -p $(OUTDIR)
$(JC) $(JCFLAGS) -cp $(SRCDIR) -d $(OUTDIR) $<
# Règle pour nettoyer les fichiers compilés
clean:
rm -rf $(BINDIR)/*
# Crée le répertoire de sortie s'il n'existe pas
$(OUTDIR):
mkdir -p $(OUTDIR)
# Règle pour créer la documentation
doc:
javadoc -d docs $(SRCDIR)/*.java
# La classe Main dépend de tous les fichiers compilés
$(OUTDIR)/MainJeu.class : $(CLASSFILES)
# Règle pour visualiser la documentation
seedoc:
firefox docs/index.html &
### REGLES OPTIONNELLES ###
# Définir les cibles factices
.PHONY: build runJeu runCreation clean doc seedoc
# Règle pour lancer le programme
jeu : $(OUTDIR)/MainJeu.class
$(JVM) $(JVMFLAGS) -cp $(OUTDIR) MainJeu $(RUN_ARGS)
# Règle par défaut
.DEFAULT_GOAL := build
# Nettoyage des fichiers générés
clean :
-rm -rf $(OUTDIR)
-rm -rf $(DOCDIR)
# Règle pour compiler AutomatiqueActionListener avec ses dépendances
$(BINDIR)/AutomatiqueActionListener.class: $(SRCDIR)/AutomatiqueActionListener.java $(BINDIR)/GenerateurSudoku.class $(BINDIR)/FenetrePrincipale.class $(BINDIR)/Resolveur.class
$(JC) -d $(BINDIR) $<
# Nettoyage et suppression des fichiers générés, y compris la classe Main
mrproper : clean
# Règle pour compiler FenetrePrincipale avec ses dépendances
$(BINDIR)/FenetrePrincipale.class: $(SRCDIR)/FenetrePrincipale.java $(BINDIR)/SaisieGrille.class $(BINDIR)/ReinitialiserActionListener.class
$(JC) -d $(BINDIR) $<
# Génération de la documentation
doc :
javadoc -d $(DOCDIR) $(SRCDIR)/*.java
# Règle pour compiler SaisieGrille avec ses dépendances
$(BINDIR)/SaisieGrille.class: $(SRCDIR)/SaisieGrille.java $(BINDIR)/CaseMouseListener.class $(BINDIR)/GrillePainter.class
$(JC) -d $(BINDIR) $<
### BUTS FACTICES ###
.PHONY : jeu clean mrproper doc
### FIN ###

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.