all: Java2 Linux Win32 Darwin Solaris
-clean: ; rm -rf build; rm build/class/org/ibex/util/Preprocessor.class
+clean: ; rm -rf build
dist-clean:
rm -rf .configure* .install* build .compile .build*
find upstream -name config.cache -exec rm -f {} \;
plat_classes_Darwin := org.ibex.plat.Darwin org.ibex.plat.OpenGL $(plat_classes_POSIX)
plat_java_src_sources := $(patsubst %,build/java/%.java,$(subst .,/,$(plat_classes_$(platform))))
-java_src_sources := $(shell find src -name '*.java' | grep -v Preprocessor | grep -v /plat/)
+java_src_sources := $(shell find src -name '*.java' | grep -v NanoGoat | grep -v Preprocessor | grep -v /plat/)
java_src_sources += $(plat_java_src_sources)
java_sources := $(patsubst src/%.java, build/java/%.java, $(java_src_sources))
-java_sources += build/java/org/xwt/mips/util/SeekableByteArray.java
-java_sources += build/java/org/xwt/mips/util/SeekableData.java
-java_sources += build/java/org/xwt/mips/util/SeekableFile.java
-java_sources += build/java/org/xwt/mips/util/SeekableInputStream.java
-java_sources += build/java/org/xwt/mips/Registers.java
-java_sources += build/java/org/xwt/mips/Runtime.java
-java_sources += build/java/org/xwt/mips/UsermodeConstants.java
+java_sources += build/java/org/ibex/nestedvm/util/Seekable.java
+java_sources += build/java/org/ibex/nestedvm/util/Platform.java
+java_sources += build/java/org/ibex/nestedvm/Registers.java
+java_sources += build/java/org/ibex/nestedvm/Runtime.java
+java_sources += build/java/org/ibex/nestedvm/UsermodeConstants.java
java_sources += build/java/org/ibex/crypto/DER.java
java_sources += build/java/org/ibex/crypto/Digest.java
mkdir -p $$(@D); ln -fs `echo $$(@D)/ | sed 's_[^/]*//*_../_g'`/$$< $$@
build/cc/%.cc: src/%.c ; @echo linking $@; mkdir -p $(@D); ln -fs `echo $(@D)/ | sed 's_[^/]*//*_../_g'`/$< $@
build/res/%: src/% ; @echo linking $@; mkdir -p $(@D); ln -fs `echo $(@D)/ | sed 's_[^/]*//*_../_g'`/$< $@
-$(call link_upstream,org/xwt/mips/%.java,upstream/org.ibex.nestedvm/src,.download_org.ibex.nestedvm)
+$(call link_upstream,org/ibex/nestedvm/%.java,upstream/org.ibex.nestedvm/src,.download_org.ibex.nestedvm)
$(call link_upstream,org/ibex/crypto/%.java,upstream/org.ibex.crypto/src,.download_org.ibex.crypto)
$(call link_upstream,org/ibex/net/ssl/%.java,upstream/org.ibex.crypto/src,.download_org.ibex.crypto)
$(call link_upstream,org/ibex/net/SSL.java,upstream/org.ibex.crypto/src,.download_org.ibex.crypto)
$(call link_upstream,gnu/regexp/%.java,upstream/gnu.regexp-1.1.4/src/src)
-build/java/org/ibex/%.java: src/org/ibex/%.java build/class/org/ibex/util/Preprocessor.class
+build/java/org/ibex/%.java: src/org/ibex/%.java .download_gnu.regexp-1.1.4 build/class/org/ibex/util/Preprocessor.class
@echo -e "\033[1mpreprocessing .java -> .java: $<\033[0m"
mkdir -p `dirname $@`; java -cp build/class:upstream/gnu.regexp-1.1.4/src/src org.ibex.util.Preprocessor < $< > $@
$(call link_upstream,%.java,src)
build/class/org/ibex/util/MIPSApps.class: build/mips/mipsapps.mips .install_org.ibex.nestedvm
@mkdir -p build/java/org/ibex/util
@echo -e "\n\033[1mtranslating .mips -> .class: $<\033[0m"
- java -cp upstream/org.ibex.nestedvm/build:upstream/org.ibex.nestedvm/upstream/build/bcel-5.1/bcel-5.1.jar \
- org.xwt.mips.Compiler org.ibex.util.MIPSApps $< -outfile $@
+ java -cp upstream/org.ibex.nestedvm/build:upstream/org.ibex.nestedvm/upstream/build/classgen/build \
+ org.ibex.nestedvm.Compiler org.ibex.util.MIPSApps $< -outfile $@
build/Java2/ibex.jar: compile build/res/builtin.jar build/class/org/ibex/util/MIPSApps.class
@echo -e "\n\033[1marchiving .class -> .jar: build/Java2/ibex.jar\033[0m"
($(nm) $(nat_libjava_files) build/$(platform)/org/ibex/plat/$(platform).cc.o; echo org.ibex.plat.$(platform).main) |\
grep _ZN | c++filt --format java | grep " U " | sed 's_ * U __' | sed 's_(.*__' \
| java -cp $(bcel_jar):build/class org.ibex.util.NanoGoat build/$(platform)/ibex.jar | tee nanogoat.log
- mkdir tmp; cd tmp; fastjar xvf ../build/$(platform)/ibex.jar.pruned; rm gnu/gcj/runtime/FirstThread*; cp ../build/class/org/ibex/plat/GCJ* org/ibex/plat/; cp -r ../build/class/org/xwt/mips/* org/xwt/mips/; mkdir -p $(shell pwd)/build/$(platform)/java/lang; mv java/lang/Class.class $(shell pwd)/build/$(platform)/java/lang; fastjar cvf ../build/$(platform)/ibex.jar.pruned .; cd ..; rm -rf tmp
+ mkdir tmp; cd tmp; fastjar xvf ../build/$(platform)/ibex.jar.pruned; rm gnu/gcj/runtime/FirstThread*; cp ../build/class/org/ibex/plat/GCJ* org/ibex/plat/; cp -r ../build/class/org/ibex/nestedvm/* org/ibex/nestedvm/; mkdir -p $(shell pwd)/build/$(platform)/java/lang; mv java/lang/Class.class $(shell pwd)/build/$(platform)/java/lang; fastjar cvf ../build/$(platform)/ibex.jar.pruned .; cd ..; rm -rf tmp
mv build/$(platform)/ibex.jar.pruned $@
endif
ifeq ($(platform),Darwin)
upstream/install/bin/mips-unknown-elf-gcc \
--static \
-march=mips1 \
- -T upstream/org.ibex.nestedvm/src/org/xwt/mips/linker.ld \
- -L upstream/org.ibex.nestedvm/build/org/xwt/mips/ \
+ -T upstream/org.ibex.nestedvm/src/org/ibex/nestedvm/linker.ld \
+ -L upstream/org.ibex.nestedvm/build/org/ibex/nestedvm/ \
-L upstream/freetype-2.1.4/src/objs \
-L upstream/libmspack-20030726/build-mips-unknown-elf/ \
-o $@ \
commit: propose-patch
darcs push xwt@xwt.org:/var/www/org/ibex/core/
-doc/%.pdf: build/class/org/ibex/util/XML.class build/class/org/ibex/util/Doc.class doc/%.xml
- cd $(@D); java -cp ../../build/class org.ibex.util.Doc slides < `basename $*`.xml > `basename $*`.tex
- cd $(@D); pdflatex `basename $*`.tex
- open doc/$*.pdf
-
+upstream/org.ibex.doc/src/org/ibex/doc/Doc.java: .download_org.ibex.doc
+build/class/org/ibex/doc/Doc.class: upstream/org.ibex.doc/src/org/ibex/doc/Doc.java
+ $(javac) upstream/org.ibex.doc/src/org/ibex/doc/Doc.java
+doc/%.pdf: build/class/org/ibex/util/XML.class build/class/org/ibex/doc/Doc.class
+ cd doc/$*; java -cp ../../build/class org.ibex.doc.Doc < $*.xml > $*.tex
+ cd doc/$*; pdflatex $*.tex
+ mv doc/$*/$*.pdf doc/$*.pdf
+ test `uname` == Darwin && open doc/$*.pdf
+reference: ; rm -f doc/reference.pdf; make doc/reference.pdf
\ No newline at end of file