- $(jikes) -sourcepath src/ -classpath lib/libgcj-minimal.jar $(jikes_java_sources) -d bin/
- echo "compiling .java -> .class: done"
+ $(shell cat .javac) -classpath lib/libgcj-minimal.jar $(java_sources) -d bin/ 2>&1 | \
+ grep -v ^\\[read | sed s_^\\[write\ bin/__ | sed s_.class\\]_.java_ | sed "s_^_compiling .java -> .class: src/_"
+
+# platforms
+all: Win32 Linux Java2 Darwin Carbon
+
+.javac:
+ if \
+ type jikes && (jikes --version | grep "Version 1.18"); \
+ then \
+ echo "public class GetBootClassPath { public static void main(String[] s) { " > GetBootClassPath.java; \
+ echo "System.out.println(System.getProperty(\"sun.boot.class.path\")); } }" >> GetBootClassPath.java; \
+ javac GetBootClassPath.java; \
+ java -cp . GetBootClassPath > .bootclasspath; \
+ rm GetBootClassPath.*; \
+ echo -n "jikes -nowarn -sourcepath src/ -bootclasspath " > .javac; \
+ cat .bootclasspath >> .javac; \
+ else \
+ echo "WARNING: You do not have jikes; falling back to javac. Compiles will be very slow."; \
+ echo javac > .javac; \
+ fi \
+
+jikes:
+ curl ftp://www-126.ibm.com/pub/jikes/1.18/jikes-1.18.tar.bz2 | tar xjvf -
+ cd jikes-1.18; ./configure --prefix=`pwd` && make && make install
+ ln -sf jikes-1.18/bin/jikes .jikes