144 lines
4.7 KiB
Makefile
144 lines
4.7 KiB
Makefile
# Outils
|
||
JAVAC = javac
|
||
JAVA = java
|
||
JAVADOC = javadoc
|
||
|
||
# Dossiers
|
||
SRC = src
|
||
BIN = build
|
||
DOC = docjava
|
||
LIB = lib/
|
||
|
||
# Package
|
||
PKG_PATH = fr/iutfbleau/sae
|
||
|
||
# Points d’entrée
|
||
MAIN_CONVERTER = fr.iutfbleau.sae.Convertisseur
|
||
MAIN_VIEWER = fr.iutfbleau.sae.Viewer
|
||
|
||
# Séparateur classpath
|
||
ifeq ($(OS),Windows_NT)
|
||
SEP = ;
|
||
else
|
||
SEP = :
|
||
endif
|
||
|
||
# Règle par défaut
|
||
all: \
|
||
$(BIN)/$(PKG_PATH)/Convertisseur.class \
|
||
$(BIN)/$(PKG_PATH)/Viewer.class
|
||
|
||
# Compilation des classes main
|
||
$(BIN)/$(PKG_PATH)/Convertisseur.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/vconverter/ConverterWindow.class \
|
||
$(BIN)/$(PKG_PATH)/ConverterController.class \
|
||
$(SRC)/$(PKG_PATH)/Convertisseur.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/Convertisseur.java
|
||
|
||
$(BIN)/$(PKG_PATH)/Viewer.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/Viewer.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/Viewer.java
|
||
|
||
# Dossiers
|
||
$(BIN):
|
||
mkdir -p $(BIN)
|
||
|
||
$(DOC):
|
||
mkdir -p $(DOC)
|
||
|
||
#Compilation des classe de mhuffman
|
||
$(BIN)/$(PKG_PATH)/mhuffman/CanonicalCode.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/mhuffman/CanonicalCode.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mhuffman/CanonicalCode.java
|
||
|
||
$(BIN)/$(PKG_PATH)/mhuffman/FrequencyTable.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/mimage/RGBImage.class \
|
||
$(SRC)/$(PKG_PATH)/mhuffman/FrequencyTable.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mhuffman/FrequencyTable.java
|
||
|
||
$(BIN)/$(PKG_PATH)/mhuffman/HuffmanTree.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/mhuffman/HuffmanNode.class \
|
||
$(BIN)/$(PKG_PATH)/mhuffman/HuffmanTree.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mhuffman/HuffmanTree.java
|
||
|
||
$(BIN)/$(PKG_PATH)/mhuffman/HuffmanNode.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/mhuffman/HuffmanNode.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mhuffman/HuffmanNode.java
|
||
|
||
|
||
# Compilation des classe mimages
|
||
$(BIN)/$(PKG_PATH)/mimage/RGBImage.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/mimage/Pixel.class \
|
||
$(SRC)/$(PKG_PATH)/mimage/RGBImage.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mimage/RGBImage.java
|
||
|
||
$(BIN)/$(PKG_PATH)/mimage/Pixel.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/mimage/Pixel.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/mimage/Pixel.java
|
||
|
||
#Compilation de l'interface graphique je compile converterWindow
|
||
$(BIN)/$(PKG_PATH)/vconverter/ConverterWindow.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/vconverter/ImagePreviewPanel.class \
|
||
$(BIN)/$(PKG_PATH)/vconverter/FrequencyTablePanel.class \
|
||
$(BIN)/$(PKG_PATH)/vconverter/CodeTablePanel.class \
|
||
$(BIN)/$(PKG_PATH)/util/Config.class \
|
||
$(SRC)/$(PKG_PATH)/vconverter/ConverterWindow.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/vconverter/ConverterWindow.java
|
||
|
||
# ConverterWindow dépend des autres classes je les compile aussi
|
||
$(BIN)/$(PKG_PATH)/vconverter/ImagePreviewPanel.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/vconverter/ImagePreviewPanel.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/vconverter/ImagePreviewPanel.java
|
||
$(BIN)/$(PKG_PATH)/vconverter/FrequencyTablePanel.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/vconverter/FrequencyTablePanel.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/vconverter/FrequencyTablePanel.java
|
||
$(BIN)/$(PKG_PATH)/vconverter/CodeTablePanel.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/vconverter/CodeTablePanel.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/vconverter/CodeTablePanel.java
|
||
|
||
|
||
# Compilation des classes mpif
|
||
|
||
|
||
# Compilation du controleur
|
||
$(BIN)/$(PKG_PATH)/ConverterController.class: $(BIN) \
|
||
$(BIN)/$(PKG_PATH)/mimage/Pixel.class \
|
||
$(BIN)/$(PKG_PATH)/mimage/RGBImage.class \
|
||
$(BIN)/$(PKG_PATH)/mhuffman/FrequencyTable.class \
|
||
$(BIN)/$(PKG_PATH)/mhuffman/CanonicalCode.class \
|
||
$(BIN)/$(PKG_PATH)/vconverter/ConverterWindow.class \
|
||
$(SRC)/$(PKG_PATH)/ConverterController.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/ConverterController.java
|
||
|
||
|
||
#Compilation des classes util
|
||
$(BIN)/$(PKG_PATH)/util/Config.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/util/Config.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/util/Config.java
|
||
$(BIN)/$(PKG_PATH)/util/ByteUtils.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/util/ByteUtils.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/util/ByteUtils.java
|
||
$(BIN)/$(PKG_PATH)/util/BitInputStream.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/util/BitInputStream.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/util/BitInputStream.java
|
||
$(BIN)/$(PKG_PATH)/util/BitOutputStream.class: $(BIN) \
|
||
$(SRC)/$(PKG_PATH)/util/BitOutputStream.java
|
||
$(JAVAC) -cp $(BIN) -d $(BIN) $(SRC)/$(PKG_PATH)/util/BitOutputStream.java
|
||
|
||
|
||
|
||
# Exécution
|
||
run-conv: all
|
||
$(JAVA) -cp $(BIN) $(MAIN_CONVERTER)
|
||
|
||
run-view: all
|
||
$(JAVA) -cp $(BIN) $(MAIN_VIEWER)
|
||
|
||
# Documentation
|
||
doc: $(DOC)
|
||
$(JAVADOC) -d $(DOC) $(SRC)/fr/iutfbleau/sae/**/*.java
|
||
|
||
# Nettoyage
|
||
clean:
|
||
rm -rf $(BIN) $(DOC)
|