-@HAVE_JAVA_TRUE@ $(JAVAC) -sourcepath java -d .classes $(JMSG_JAVA_SRC)
-@HAVE_JAVA_TRUE@ $(JAR) cvf simgrid.jar -C .classes . ./surf/surfxml.dtd;
+@HAVE_JAVA_TRUE@ $(JAVAC) -d .classes $(foreach file,$(JMSG_JAVA_SRC),$(srcdir)/$(file))
+@HAVE_JAVA_TRUE@ [ -e .classes/surf ] || mkdir .classes/surf
+@HAVE_JAVA_TRUE@ cp $(srcdir)/surf/surfxml.dtd .classes
+@HAVE_JAVA_TRUE@ $(JAR) cvf simgrid.jar -C .classes .