2024-12-10 19:06:03 +01:00
|
|
|
# Définition des variables
|
|
|
|
JC = javac
|
|
|
|
JVM = java
|
|
|
|
JCFLAGS = -d build -classpath "libs/mariadb-client.jar" -sourcepath src -encoding UTF-8
|
|
|
|
JVMFLAGS = -classpath ".:libs/mariadb-client.jar:build"
|
2024-12-02 20:51:28 +01:00
|
|
|
JARNAME = dorfromantik.jar
|
2024-12-10 19:06:03 +01:00
|
|
|
ENTRY = fr.monkhanny.dorfromantik.Main
|
|
|
|
PACKAGE = build/fr/monkhanny/dorfromantik
|
|
|
|
SRC = src/fr/monkhanny/dorfromantik
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
# Compilation des fichiers .java
|
|
|
|
${PACKAGE}/Main.class: ${SRC}/Main.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/Main.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
${PACKAGE}/Options.class: ${SRC}/Options.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/Options.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
# Compilation des composants
|
|
|
|
${PACKAGE}/components/Button.class: ${SRC}/components/Button.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/components/Button.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
${PACKAGE}/components/Title.class: ${SRC}/components/Title.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/components/Title.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
# Compilation des contrôleurs
|
|
|
|
${PACKAGE}/controller/ButtonHoverAnimationListener.class: ${SRC}/controller/ButtonHoverAnimationListener.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/controller/ButtonHoverAnimationListener.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
${PACKAGE}/controller/GameModeController.class: ${SRC}/controller/GameModeController.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/controller/GameModeController.java
|
|
|
|
|
|
|
|
# Compilation des énumérations
|
|
|
|
${PACKAGE}/enums/Biome.class: ${SRC}/enums/Biome.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/enums/Biome.java
|
|
|
|
|
|
|
|
${PACKAGE}/enums/Fonts.class: ${SRC}/enums/Fonts.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/enums/Fonts.java
|
|
|
|
|
|
|
|
# Compilation des classes liées au jeu
|
|
|
|
${PACKAGE}/game/BarChartPanel.class: ${SRC}/game/BarChartPanel.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/game/BarChartPanel.java
|
|
|
|
|
|
|
|
${PACKAGE}/game/Board.class: ${SRC}/game/Board.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/game/Board.java
|
|
|
|
|
|
|
|
${PACKAGE}/game/Game.class: ${SRC}/game/Game.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/game/Game.java
|
|
|
|
|
|
|
|
# Compilation des interfaces graphiques
|
|
|
|
${PACKAGE}/gui/ButtonPanel.class: ${SRC}/gui/ButtonPanel.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/gui/ButtonPanel.java
|
|
|
|
|
|
|
|
${PACKAGE}/gui/Leaderboard.class: ${SRC}/gui/Leaderboard.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/gui/Leaderboard.java
|
|
|
|
|
|
|
|
# Compilation des listeners
|
|
|
|
${PACKAGE}/listeners/CloseButtonListener.class: ${SRC}/listeners/CloseButtonListener.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/listeners/CloseButtonListener.java
|
2024-12-02 20:51:28 +01:00
|
|
|
|
2024-12-10 19:06:03 +01:00
|
|
|
${PACKAGE}/listeners/GameArrowKeyListener.class: ${SRC}/listeners/GameArrowKeyListener.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/listeners/GameArrowKeyListener.java
|
|
|
|
|
|
|
|
# Compilation des utils
|
|
|
|
${PACKAGE}/utils/Database.class: ${SRC}/utils/Database.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/utils/Database.java
|
|
|
|
|
|
|
|
${PACKAGE}/utils/FontLoader.class: ${SRC}/utils/FontLoader.java
|
|
|
|
${JC} ${JCFLAGS} ${SRC}/utils/FontLoader.java
|
|
|
|
|
|
|
|
# Cibles supplémentaires
|
|
|
|
run:
|
|
|
|
${JVM} ${JVMFLAGS} ${ENTRY}
|
|
|
|
|
|
|
|
clean:
|
|
|
|
@echo "Nettoyage de build et doc"
|
|
|
|
rm -rf build
|
|
|
|
rm -rf doc
|
|
|
|
|
|
|
|
# Génération du fichier .jar
|
2024-12-02 20:51:28 +01:00
|
|
|
jar:
|
2024-12-10 19:06:03 +01:00
|
|
|
@echo "Création du fichier .jar"
|
|
|
|
jar cvfm ${JARNAME} Manifest.MF -C build/ . -C libs/ .
|
|
|
|
|
|
|
|
# Extraction des fichiers MariaDB
|
|
|
|
extract-mariadb:
|
|
|
|
rm -rf build/org
|
|
|
|
unzip -qo libs/mariadb-client.jar -d build
|
|
|
|
rm -rf build/Version.java.template
|
|
|
|
rm -rf build/META-INF
|
|
|
|
|
|
|
|
# Documentation JavaDoc
|
|
|
|
javadoc:
|
|
|
|
@echo "Génération de la documentation JavaDoc"
|
|
|
|
javadoc -d doc -sourcepath src -subpackages fr.monkhanny.dorfromantik -classpath libs/mariadb-client.jar
|