107 lines
4.5 KiB
Makefile
107 lines
4.5 KiB
Makefile
### VARIABLES ###
|
|
|
|
JC = javac
|
|
JCFLAGS = -encoding UTF-8 -implicit:none -cp classes -d classes
|
|
|
|
JVM = java
|
|
JVMFLAGS = -cp classes
|
|
|
|
### RÈGLES ESSENTIELLES ###
|
|
|
|
Main.class: Main.java java/controller/MenuController.class java/view/MenuView.class java/controller/GameController.class
|
|
$(JC) $(JCFLAGS) Main.java
|
|
|
|
# Compilation des contrôleurs
|
|
java/controller/MenuController.class: java/controller/MenuController.java java/model/MenuModel.class java/view/MenuView.class java/controller/NewListener.class java/controller/QuiListener.class java/controller/ResListener.class
|
|
$(JC) $(JCFLAGS) java/controller/MenuController.java
|
|
|
|
java/controller/NewListener.class: java/controller/NewListener.java
|
|
$(JC) $(JCFLAGS) java/controller/NewListener.java
|
|
|
|
java/controller/QuiListener.class: java/controller/QuiListener.java
|
|
$(JC) $(JCFLAGS) java/controller/QuiListener.java
|
|
|
|
java/controller/ResListener.class: java/controller/ResListener.java java/view/GameView.class java/view/App.class
|
|
$(JC) $(JCFLAGS) java/controller/ResListener.java
|
|
|
|
java/controller/GameController.class: java/controller/GameController.java java/controller/TilePlacer.class java/model/Tile.class java/controller/CameraController.class java/controller/HexagonMouseListener.class
|
|
$(JC) $(JCFLAGS) java/controller/GameController.java
|
|
|
|
java/controller/MouseWheelController.class: java/controller/MouseWheelController.java java/view/HexagonTile.class java/controller/GameController.class
|
|
$(JC) $(JCFLAGS) java/controller/MouseWheelController.java
|
|
|
|
java/controller/HexagonMouseListener.class: java/controller/HexagonMouseListener.java java/view/HexagonTile.class java/controller/TilePlacer.class
|
|
$(JC) $(JCFLAGS) java/controller/HexagonMouseListener.java
|
|
|
|
java/controller/CameraController.class: java/controller/CameraController.java java/controller/GameContext.class java/controller/MousePressHandler.class java/controller/MouseDragHandler.class
|
|
$(JC) $(JCFLAGS) java/controller/CameraController.java
|
|
|
|
java/controller/GameContext.class: java/controller/GameContext.java java/view/HexagonTile.class
|
|
$(JC) $(JCFLAGS) java/controller/GameContext.java
|
|
|
|
# Compilation des vues
|
|
java/view/GameView.class: java/view/GameView.java java/controller/MouseWheelController.class java/controller/GameController.class java/view/HexagonTile.class
|
|
$(JC) $(JCFLAGS) java/view/GameView.java
|
|
|
|
java/view/MenuView.class: java/view/MenuView.java java/view/BtnPerso.class java/view/ButtonHoverListener.class
|
|
$(JC) $(JCFLAGS) java/view/MenuView.java
|
|
|
|
java/view/HexagonTile.class: java/view/HexagonTile.java java/model/Tile.class java/model/TerrainType.class
|
|
$(JC) $(JCFLAGS) java/view/HexagonTile.java
|
|
|
|
# Compilation des modèles
|
|
java/model/MenuModel.class: java/model/MenuModel.java
|
|
$(JC) $(JCFLAGS) java/model/MenuModel.java
|
|
|
|
java/model/Tile.class: java/model/Tile.java java/model/TerrainType.class
|
|
$(JC) $(JCFLAGS) java/model/Tile.java
|
|
|
|
java/model/TerrainType.class: java/model/TerrainType.java
|
|
$(JC) $(JCFLAGS) java/model/TerrainType.java
|
|
|
|
# Compilation des composants individuels
|
|
java/view/BtnPerso.class: java/view/BtnPerso.java
|
|
$(JC) $(JCFLAGS) java/view/BtnPerso.java
|
|
|
|
java/view/ButtonHoverListener.class: java/view/ButtonHoverListener.java
|
|
$(JC) $(JCFLAGS) java/view/ButtonHoverListener.java
|
|
|
|
java/view/App.class: java/view/App.java
|
|
$(JC) $(JCFLAGS) java/view/App.java
|
|
|
|
# Compilation des handlers
|
|
java/controller/MousePressHandler.class: java/controller/MousePressHandler.java java/controller/CameraControllerListener.class
|
|
$(JC) $(JCFLAGS) java/controller/MousePressHandler.java
|
|
|
|
java/controller/MouseDragHandler.class: java/controller/MouseDragHandler.java java/controller/CameraControllerListener.class
|
|
$(JC) $(JCFLAGS) java/controller/MouseDragHandler.java
|
|
|
|
java/controller/CameraControllerListener.class: java/controller/CameraControllerListener.java
|
|
$(JC) $(JCFLAGS) java/controller/CameraControllerListener.java
|
|
|
|
java/controller/TilePlacer.class: java/controller/TilePlacer.java
|
|
$(JC) $(JCFLAGS) java/controller/TilePlacer.java
|
|
|
|
### RÈGLE POUR COPIER LES IMAGES ###
|
|
|
|
copy-images:
|
|
mkdir -p classes/java/view/img
|
|
if [ -d java/view/img ]; then cp -r java/view/img/* classes/java/view/img/; else echo "Le répertoire java/view/img n'existe pas."; fi
|
|
|
|
### RÈGLES OPTIONNELLES ###
|
|
|
|
run: Main.class copy-images
|
|
$(JVM) $(JVMFLAGS) main.Main
|
|
|
|
clean:
|
|
-rm -f classes/**/*.class
|
|
|
|
mrproper: clean
|
|
-rm -rf classes/java/view/img
|
|
|
|
### BUTS FACTICES ###
|
|
|
|
.PHONY: run clean mrproper copy-images
|
|
|
|
### FIN ###
|