ghcroot = /usr/local/brian/ghc
pwd = $(shell pwd)
-ghc = $(ghcroot)/compiler/ghc-inplace -fallow-undecidable-instances -fallow-overlapping-instances
+ghc = $(ghcroot)/compiler/ghc-inplace -fallow-undecidable-instances -fallow-overlapping-instances -java
+#ghc = ghc -fallow-undecidable-instances -fallow-overlapping-instances -package javavm
ghc += -fglasgow-exts -cpp -hidir $(pwd)/build/hi -i$(pwd)/build/hi -odir $(pwd)/build/class/
ghclibs = $(ghcroot)/rts/HSrts.jar:$(ghcroot)/libraries/base/HSbase.jar:$(ghcroot)/libraries/stm/HSstm.jar
-java = java -Xmx800m
-java += $(profile) -cp src:$(ghclibs):$(sbp)/edu.berkeley.sbp.jar:build/class
+jvmargs = -Xmx800m -XX:ThreadStackSize=160000
-$(sbp):
- darcs get --partial --repo-name=$@ http://research.cs.berkeley.edu/project/sbp/edu.berkeley.sbp
+java = java $(jvmargs) $(profile) -cp src:$(ghclibs):$(sbp)/edu.berkeley.sbp.jar:build/class
-$(sbp)/edu.berkeley.sbp.jar: $(sbp)
- cd $(sbp); make edu.berkeley.sbp.jar
+scala = JAVA_OPTS="$(jvmargs)" scala
-run: build/class/Main.class build/class/Tib.class
- $(java) HaskellHelper xt html
+wix = $(java) HaskellHelper
+args =
-install: build/class/Main.class build/class/Tib.class
- $(java) HaskellHelper xt/ ~/www/
+install: wix.jar
+ aklog research.cs.berkeley.edu || true
+ $(scala) -cp wix.jar:lib/edu.berkeley.sbp.jar Main $(args) ~/docs/wix/src/ ~/docs/wix/dest/
+# --delete disabled until I can keep it from clobbering GArrow.v
+ rsync -arL --rsync-path=/usr/sww/bin/rsync \
+ --progress --verbose \
+ ~/docs/wix/dest/cs.berkeley.edu/ \
+ login.eecs.berkeley.edu:public_html/
-install2: build/class/Main.class build/class/Tib.class
-# $(java) HaskellHelper xt/slipway/ ~/www/slipway/
- $(java) HaskellHelper xt/research/ ~/www/research/
-# $(java) HaskellHelper xt/research.cs.berkeley.edu/ ~/www/research.cs.berkeley.edu/
-# $(java) HaskellHelper xt/random/ ~/www/random/
-# $(java) HaskellHelper xt/otherpeople/ ~/www/otherpeople/
-# $(java) HaskellHelper xt/sbp ~/www/sbp
-# $(java) HaskellHelper xt/software/wix ~/www/software/wix
-# $(java) HaskellHelper xt/thoughts ~/www/thoughts
-# $(java) HaskellHelper xt2 ~/
+force:; make install args='-f'
docs:
- $(java) HaskellHelper xt2/docs/ ~/docs/
+ $(wix) xt2/docs/ ~/docs/
+
+$(sbp):
+ darcs get --partial --repo-name=$@ http://research.cs.berkeley.edu/project/sbp/edu.berkeley.sbp
-debug: build/class/Main.class build/class/Tib.class
- $(java) -Dsbp.verbose=true HaskellHelper xt html
+$(sbp)/edu.berkeley.sbp.jar: $(sbp)
+ cd $(sbp); make edu.berkeley.sbp.jar
-wix.jar: build/class/Main.class build/class/Tib.class $(sbp)/edu.berkeley.sbp.jar
- rm -rf tmp
- mkdir tmp
- cd build/class; for A in $(lambdavm_jars) $(sbp)/edu.berkeley.sbp.jar; \
- do jar xvf $$A; done
- echo 'Main-Class: HaskellHelper' > build/manifest
- cp src/*.g build/class/
- cd build/class; jar cvmf ../manifest ../../wix.jar .
+wix.jar: $(shell find src -name \*.java -or -name \*.scala)
+ rm -rf build
+ mkdir build
+ javac -cp lib/edu.berkeley.sbp.jar -d build `find src -name \*.java`
+ scalac -deprecation -cp lib/edu.berkeley.sbp.jar -sourcepath src -d build `find src -name \*.scala`
+ echo 'Main-Class: Main' > build/manifest
+ cp src/*.g build/
+ cd build; jar cvmf manifest ../wix.jar .
-build/class/Tib.class: $(shell find src -name \*.java) $(sbp)/edu.berkeley.sbp.jar
- javac -d build/class -cp $(sbp)/edu.berkeley.sbp.jar $(shell find src -name \*.java)
+build/class/Tib.class: $(shell find src -name \*.java) lib/edu.berkeley.sbp.jar
+ javac -d build/class -cp lib/edu.berkeley.sbp.jar $(shell find src -name \*.java)
-build/class/Main.class: $(shell find src -name \*.lhs) $(sbp)/edu.berkeley.sbp.jar
+build/class/Main.class: $(shell find src -name \*.lhs) lib/edu.berkeley.sbp.jar
mkdir -p build/class/Text/PrettyPrint
mkdir -p build/class/edu/berkeley/sbp/haskell/
mkdir -p build/hi
- cd src; $(ghc) -c -java Util.lhs
- cd src; $(ghc) -c -java Text/PrettyPrint/Leijen.hs
- cd src; $(ghc) -c -java $(sbp)/src/edu/berkeley/sbp/haskell/SBP.lhs
- cd src; $(ghc) -c -java FromTree.lhs
- cd src; $(ghc) -c -java Doc.lhs
- cd src; $(ghc) -c -java Html.lhs
- cd src; $(ghc) -c -java Wix.lhs
- cd src; $(ghc) -c -java Main.lhs
+ cd src; $(ghc) -c Util.lhs
+ cd src; $(ghc) -c Text/PrettyPrint/Leijen.hs
+ cd src; $(ghc) -c $(sbp)/src/edu/berkeley/sbp/haskell/SBP.lhs
+ cd src; $(ghc) -c FromTree.lhs
+ cd src; $(ghc) -c Doc.lhs
+ cd src; $(ghc) -c Html.lhs
+ cd src; $(ghc) -c Wix.lhs
+ cd src; $(ghc) -c Main.lhs
+
+echojava:; echo $(java)
clean:; rm -rf build
\ No newline at end of file