131 lines
3.5 KiB
Makefile
131 lines
3.5 KiB
Makefile
SHELL := /usr/bin/env bash
|
|
.SUFFIXES:
|
|
|
|
OUT := build
|
|
MAIN_CLASS := Main
|
|
|
|
MODELE_BASE = \
|
|
src/modele/Couleur.java \
|
|
src/modele/ModeDeJeu.java \
|
|
src/modele/Coup.java
|
|
|
|
MODELE_ECHIQUIER = \
|
|
src/modele/Case.java \
|
|
src/modele/Plateau.java \
|
|
src/modele/piece/Piece.java \
|
|
src/modele/piece/Pion.java \
|
|
src/modele/piece/Tour.java \
|
|
src/modele/piece/Cavalier.java \
|
|
src/modele/piece/Fou.java \
|
|
src/modele/piece/Reine.java \
|
|
src/modele/piece/Roi.java
|
|
|
|
RESEAU_TYPES = \
|
|
src/reseau/TypeMessage.java \
|
|
src/reseau/MessageJeu.java
|
|
|
|
VUE_BASE = \
|
|
src/vue/Vue.java \
|
|
src/vue/VueConsole.java
|
|
|
|
JOUEURS = \
|
|
src/modele/joueur/Joueur.java \
|
|
src/modele/joueur/IA.java \
|
|
src/modele/joueur/JoueurHumain.java \
|
|
src/modele/joueur/JoueurIA.java
|
|
|
|
PARTIE = \
|
|
src/modele/Partie.java
|
|
|
|
VUE_SWING = \
|
|
src/vue/CaseSwingUI.java \
|
|
src/vue/PlateauSwingUI.java \
|
|
src/vue/ButtonEnvoyerMessageListener.java \
|
|
src/vue/ToucheEntrerEnvoyerMessageListener.java \
|
|
src/vue/VueGraphiqueSwing.java
|
|
|
|
CONTROLEURS_RESEAU = \
|
|
src/controleur/ControleurReseau.java \
|
|
src/controleur/ControleurPartie.java \
|
|
src/reseau/Client.java \
|
|
src/reseau/Serveur.java
|
|
|
|
MAIN = \
|
|
src/Main.java
|
|
|
|
MODELE_BASE_OUT := $(OUT)/modele/Coup.class
|
|
MODELE_ECHIQUIER_OUT := $(OUT)/modele/piece/Roi.class
|
|
RESEAU_TYPES_OUT := $(OUT)/reseau/MessageJeu.class
|
|
VUE_BASE_OUT := $(OUT)/vue/VueConsole.class
|
|
JOUEURS_OUT := $(OUT)/modele/joueur/JoueurIA.class
|
|
PARTIE_OUT := $(OUT)/modele/Partie.class
|
|
VUE_SWING_OUT := $(OUT)/vue/VueGraphiqueSwing.class
|
|
CONTROLEURS_RESEAU_OUT := $(OUT)/controleur/ControleurPartie.class
|
|
MAIN_OUT := $(OUT)/Main.class
|
|
|
|
.PHONY: all modele reseau vue joueurs partie controleurs run clean rebuild count-files count-lines stats
|
|
|
|
all: $(MAIN_OUT)
|
|
|
|
modele: $(MODELE_ECHIQUIER_OUT)
|
|
|
|
reseau: $(RESEAU_TYPES_OUT)
|
|
|
|
vue: $(VUE_SWING_OUT)
|
|
|
|
joueurs: $(JOUEURS_OUT)
|
|
|
|
partie: $(PARTIE_OUT)
|
|
|
|
controleurs: $(CONTROLEURS_RESEAU_OUT)
|
|
|
|
$(OUT):
|
|
mkdir -p "$(OUT)"
|
|
|
|
$(MODELE_BASE_OUT): $(MODELE_BASE) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(MODELE_BASE)
|
|
|
|
$(MODELE_ECHIQUIER_OUT): $(MODELE_ECHIQUIER) $(MODELE_BASE_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(MODELE_ECHIQUIER)
|
|
|
|
$(RESEAU_TYPES_OUT): $(RESEAU_TYPES) $(MODELE_BASE_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(RESEAU_TYPES)
|
|
|
|
$(VUE_BASE_OUT): $(VUE_BASE) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(RESEAU_TYPES_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(VUE_BASE)
|
|
|
|
$(JOUEURS_OUT): $(JOUEURS) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(VUE_BASE_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(JOUEURS)
|
|
|
|
$(PARTIE_OUT): $(PARTIE) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(JOUEURS_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(PARTIE)
|
|
|
|
$(VUE_SWING_OUT): $(VUE_SWING) $(MODELE_BASE_OUT) $(MODELE_ECHIQUIER_OUT) $(RESEAU_TYPES_OUT) $(VUE_BASE_OUT) $(JOUEURS_OUT) $(PARTIE_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(VUE_SWING)
|
|
|
|
$(CONTROLEURS_RESEAU_OUT): $(CONTROLEURS_RESEAU) $(MODELE_BASE_OUT) $(RESEAU_TYPES_OUT) $(VUE_BASE_OUT) $(JOUEURS_OUT) $(PARTIE_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(CONTROLEURS_RESEAU)
|
|
|
|
$(MAIN_OUT): $(MAIN) $(VUE_SWING_OUT) $(CONTROLEURS_RESEAU_OUT) | $(OUT)
|
|
javac -cp "$(OUT)" -d "$(OUT)" $(MAIN)
|
|
|
|
run: $(MAIN_OUT)
|
|
java -cp "$(OUT)" $(MAIN_CLASS)
|
|
|
|
clean:
|
|
rm -rf "$(OUT)"
|
|
|
|
rebuild: clean all
|
|
|
|
count-files:
|
|
find src -type f -name '*.java' | wc -l
|
|
|
|
count-lines:
|
|
find src -type f -name '*.java' -exec cat {} + | wc -l
|
|
|
|
stats:
|
|
@printf "Fichiers Java: "
|
|
@find src -type f -name '*.java' | wc -l
|
|
@printf "Lignes Java: "
|
|
@find src -type f -name '*.java' -exec cat {} + | wc -l
|