Files
SAE31_2025/Makefile
T

62 lines
1.6 KiB
Makefile
Raw Normal View History

2025-10-26 03:30:51 +01:00
# === Configuration ===
SRC_DIR := src/fr/iutfbleau/papillon
BUILD_DIR := build
DOC_DIR := doc
LIB_DIR := lib
LIB := $(LIB_DIR)/mariadb
MAIN_CLASS := fr.iutfbleau.papillon.Start
JAR_NAME := papillon.jar
2025-10-20 20:53:22 +02:00
2025-10-26 03:30:51 +01:00
# === Commandes principales ===
2025-10-20 20:53:22 +02:00
2025-10-26 03:30:51 +01:00
# Compilation du projet
compile:
@echo === Compilation du projet ===
javac -encoding UTF-8 -cp "$(LIB)" -d $(BUILD_DIR) $(SRC_DIR)/*.java
@echo Compilation terminee !
2025-10-24 00:54:17 +02:00
2025-10-26 03:30:51 +01:00
# Exécution du programme
2025-10-24 00:54:17 +02:00
run: compile
2025-10-26 03:30:51 +01:00
@echo === Execution du programme ===
java -cp "$(BUILD_DIR);$(LIB)" $(MAIN_CLASS)
2025-10-24 00:54:17 +02:00
2025-10-26 03:30:51 +01:00
# Génération de la documentation Javadoc
2025-10-24 00:54:17 +02:00
doc:
2025-10-26 03:30:51 +01:00
@echo === Generation de la documentation Javadoc ===
javadoc -d $(DOC_DIR) -encoding UTF-8 -cp "$(LIB)" $(SRC_DIR)/*.java
@echo Documentation generee dans le dossier $(DOC_DIR)
# === Création du JAR ===
jar: compile
@echo === Creation du JAR autonome ===
2025-10-26 03:30:51 +01:00
echo Main-Class: $(MAIN_CLASS) > manifest.txt
jar cfm $(JAR_NAME) manifest.txt -C $(BUILD_DIR) . -C $(LIB_DIR) .
2025-10-26 03:30:51 +01:00
@del manifest.txt 2>nul || true
@echo JAR cree avec succes : $(JAR_NAME)
2025-10-26 03:30:51 +01:00
# === Exécution du JAR ===
run-jar:
@echo === Exécution du JAR ===
java -cp "papillon.jar;lib/mariadb;lib/mariadb/org/mariadb/jdbc" fr.iutfbleau.papillon.Start
2025-10-26 03:30:51 +01:00
# Nettoyage du dossier build
clean:
@echo === Nettoyage des fichiers compiles ===
@rmdir /s /q $(BUILD_DIR) 2>nul || true
@mkdir $(BUILD_DIR)
@echo Build nettoye.
# Nettoyage complet (build + doc)
reset: clean
@echo === Suppression de la documentation ===
@rmdir /s /q $(DOC_DIR) 2>nul || true
@mkdir $(DOC_DIR)
@echo Tout a ete nettoye.
# Compilation + exécution directe
all: compile run