# Fichier JAR contenant le nécessaire pour faire fonctionner un
# programme produit par le compilateur Scala.

SCALA_JAR = /home/iclamp/soft/lib/scala.jar
#SCALA_JAR = /home/linuxsoft/apps/scala/lib/scala.jar

# Fichiers Scala à compiler
SCALA_SOURCES += Frame.scala
SCALA_SOURCES += Graphics.scala
SCALA_SOURCES += Painter.scala
SCALA_SOURCES += PostScript.scala
SCALA_SOURCES += Screen.scala
SCALA_SOURCES += Vector.scala

# Fichiers Java à compiler
JAVA_SOURCES += Display.java

ALL_SOURCES = $(SCALA_SOURCES) $(JAVA_SOURCES)

# Répertoire dans lequel placer les fichiers .class
CLASS_DIR += classes

# Commandes diverses
JAVA = java
JAVAC = javac
SOCOS = socos
MKDIR = mkdir
TOUCH = touch

LATEST_COMPILE = .latest-compilation

all: $(LATEST_COMPILE)

$(LATEST_COMPILE): $(ALL_SOURCES)
	$(MKDIR) -p $(CLASS_DIR)
	$(JAVAC) -d $(CLASS_DIR) $(JAVA_SOURCES)
	$(SOCOS) -classpath $(CLASS_DIR):$(CLASSPATH) -d $(CLASS_DIR) $(SCALA_SOURCES)
	$(TOUCH) $@

run: $(LATEST_COMPILE)
	$(JAVA) -cp $(SCALA_JAR):$(CLASS_DIR):$(CLASSPATH) Painter
