add Fleet.getDefaultImpl() and use it in Makefile
[fleet.git] / Makefile
index b2b1bd9..586f284 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,17 @@
 
 ## Fleeterpreter ##############################################################################
 
-cp                = -cp fleet.jar:lib/RXTXcomm.jar
+ifeq ($(impl),ml509)
+java              = java -Xmx500m -Dfleet.impl=edu.berkeley.fleet.fpga.Fpga
+else
+ifeq ($(impl),java)
+java              = java -Xmx500m -Dfleet.impl=edu.berkeley.fleet.interpreter.Interpreter
+else
 java              = java -Xmx500m
+endif
+endif
+
+cp                = -cp fleet.jar:lib/RXTXcomm.jar
 
 run: fleet.jar; $(java) $(cp) $(interpreter_class)
 
@@ -21,7 +30,7 @@ fleet.jar: $(java_files) $(ship_files) src/edu/berkeley/fleet/assembler/fleet.g
        cd build/class/; jar xf ../../lib/edu.berkeley.sbp.jar
        cd build/class/; jar xf ../../lib/ibex.jar
        for A in `find ships -name \*.ship`;\
-         do java -cp fleet.jar:build/class edu.berkeley.fleet.Main expand $$A;\
+         do $(java) -cp fleet.jar:build/class edu.berkeley.fleet.Main expand $$A;\
          done
        javac -classpath lib/com.sun.async.test.jar:lib/ibex.jar:lib/RXTXcomm.jar:build/class${ps}lib/edu.berkeley.sbp.jar -d build/class/ `find build/java -name \*.java`
        echo 'Main-Class: edu.berkeley.fleet.Main' > build/class/manifest
@@ -97,7 +106,7 @@ build/fpga/main.bit: $(java_files) $(ship_files)
        $(java) $(cp) edu.berkeley.fleet.fpga.Fpga build/fpga/
        cp src/edu/berkeley/fleet/fpga/* build/fpga || true
        for A in `find ships -name \*.ship`;\
-         do java -cp build/class edu.berkeley.fleet.Main target=fpga expand $$A;\
+         do $(java) -cp build/class edu.berkeley.fleet.Main target=fpga expand $$A;\
          done
        ssh ${host} 'mkdir -p ${remote_dir}'
        ${rsync} --delete ./ ${host}:${remote_dir}
@@ -224,14 +233,11 @@ synth:
 
 
 runserver: fleet.jar
-       java -Djava.library.path=lib -cp fleet.jar:lib/RXTXcomm.jar edu.berkeley.fleet.fpga.Server
+       $(java) -Djava.library.path=lib -cp fleet.jar:lib/RXTXcomm.jar edu.berkeley.fleet.fpga.Server
 
 test:     fleet.jar
        $(java) -jar fleet.jar             test ships/*.ship tests
-       java -cp fleet.jar edu.berkeley.fleet.dataflow.MergeSort interpreter Memory 0 256
-testfpga: fleet.jar
-       $(java) -jar fleet.jar target=fpga test ships/*.ship tests
-       java -cp fleet.jar edu.berkeley.fleet.dataflow.MergeSort fpga Memory 0 256
+       $(java) -cp fleet.jar edu.berkeley.fleet.dataflow.MergeSort Memory 0 256
 
 ## Manual ####################################################################################
 
@@ -381,6 +387,7 @@ testlocal: fleet.jar
          export PATH=/proj/async/cad/linux/bin/:$$PATH; \
          /proj/async/cad/linux/lib/jdk1.5.0_05-linux-i586/bin/java \
          -cp `pwd`/../../../lib/com.sun.async.test.jar:`pwd`/../../../fleet.jar \
+         -Dfleet.impl=com.sun.vlsi.chips.marina.test.Marina \
          com.sun.vlsi.chips.marina.test.MarinaTest \
          -hsim \
          -testNum ${testnum} || tail -n 20 marina.spi.run
@@ -391,6 +398,7 @@ siliconlocal: fleet.jar
          /proj/async/cad/linux/lib/jdk1.5.0_05-linux-i586/bin/java \
          -cp `pwd`/../../../lib/com.sun.async.test.jar:`pwd`/../../../fleet.jar \
          -Djava.library.path=/proj/async/cad/test/ \
+         -Dfleet.impl=com.sun.vlsi.chips.marina.test.Marina \
          com.sun.vlsi.chips.marina.test.MarinaTest \
          -silicon \
          -testNum ${testnum}
@@ -409,9 +417,6 @@ chips/marina/testCode/marina.schematic-parasitics.spi: ${all_electric_files}
 electric:
        ${electric} chips/marina/electric/aMarinaM.jelib
 
-chaing:
-       java -cp lib/com.sun.async.test.jar com.sun.async.test.ChainG chips/marina/testCode/marina.xml
-
 sync:
        ${rsync} ${sun_server}:fleet/chips/marina/testCode/marina\*.dump ~/ || true
        ${rsync} ${sun_server}:fleet/chips/marina/testCode/marina.spi.out ~/${modname}.out || true