2003/08/20 10:19:09
authormegacz <megacz@xwt.org>
Fri, 30 Jan 2004 07:04:28 +0000 (07:04 +0000)
committermegacz <megacz@xwt.org>
Fri, 30 Jan 2004 07:04:28 +0000 (07:04 +0000)
darcs-hash:20040130070428-2ba56-33b2323e2b5294f5e9d8334d4083493f012ae707.gz

Makefile

index 7d051c0..c958d34 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -12,8 +12,9 @@ jpeg_c_sources += jquant1.c jquant2.c jerror.c jutils.c jmemnobs.c jmemmgr.c
 # inputs
 java_pp_sources        := $(shell find src -name \*.java.pp)
 java_pp_postproc       := $(java_pp_sources:src/%.java.pp=bin/%.java)
+java_generated_sources := $(java_pp_postproc) bin/org/xwt/imp/Freetype.java
 java_sources           := $(shell find src -name \*.java)
-java_headers           := $(java_sources:src/%.java=bin/%.h) $(java_pp_postproc:bin/%.java=bin/%.h)
+java_headers           := $(java_sources:src/%.java=bin/%.h) $(java_generated_sources:bin/%.java=bin/%.h)
 xwar_sources           := $(shell ls src/org/xwt/builtin/*.png src/org/xwt/builtin/*.xwt src/org/xwt/builtin/*.xwf)
 cc_sources             := src/org/xwt/plat/$(platform).cc
 c_sources              := $(jpeg_c_sources:%.c=src/org/ijg/%.c)
@@ -26,7 +27,7 @@ freetype_sources       += $(freetype_other_sources:%=gcc/src/freetype-2.1.4/src/
 
 # outputs
 java_objects           := $(filter-out bin-$(platform)/org/xwt/plat/%, $(java_sources:src/%.java=bin-$(platform)/%.java.o))
-java_objects           += $(filter-out bin-$(platform)/org/xwt/plat/%, $(java_pp_postproc:bin/%.java=bin-$(platform)/%.java.o))
+java_objects           += $(filter-out bin-$(platform)/org/xwt/plat/%, $(java_generated_sources:bin/%.java=bin-$(platform)/%.java.o))
 java_objects           += bin-$(platform)/org/xwt/plat/GCJ.java.o
 java_objects           += $(platform_java_sources:%=bin-$(platform)/org/xwt/plat/%.java.o)
 cc_objects             := $(cc_sources:src/%.cc=bin-$(platform)/%.cc.o)
@@ -65,20 +66,20 @@ ifneq ($(verbose),true)
 silent := --silent
 endif
 
-compile: .javac $(java_pp_postproc) bin/org/xwt/builtin.xwar
-       echo "compiling          .java -> .class:"
+compile: .javac $(java_generated_sources) bin/org/xwt/builtin.xwar
+       echo "compiling          .java -> .class: [all]"
        mkdir -p bin
-       $(shell cat .javac) -classpath lib/libgcj-minimal.jar $(java_sources) $(java_pp_postproc) -d bin/ 2>&1 | \
+       $(shell cat .javac) -classpath lib/libgcj-minimal.jar $(java_sources) $(java_generated_sources) -d bin/ 2>&1 | \
                grep -v ^\\[read | sed s_^\\[write\ bin/__ | sed s_.class\\]_.java_ | sed "s_^_compiling          .java -> .class: src/_"
 
-bin/org/xwt/util/Preprocessor.class: .javac
-       echo "compiling preprocessor"
-       mkdir -p bin
-       $(shell cat .javac) -classpath lib/libgcj-minimal.jar src/org/xwt/util/Preprocessor.java -d bin/ 2>&1 | \
+bin/%.class: src/%.java .javac
+       @echo "compiling          .java -> .class: $<"
+       @mkdir -p bin
+       @$(shell cat .javac) -classpath lib/libgcj-minimal.jar $< -d bin/ 2>&1 | \
                grep -v ^\\[read | sed s_^\\[write\ bin/__ | sed s_.class\\]_.java_ | sed "s_^_compiling          .java -> .class: src/_"
 
 $(java_pp_postproc): bin/%.java: src/%.java.pp bin/org/xwt/util/Preprocessor.class
-       @echo "preprocessing   .java.pp -> .java:     $<"
+       @echo "preprocessing   .java.pp -> .java:  $<"
        @mkdir -p `dirname $@`
        @java -cp bin org.xwt.util.Preprocessor < $< > $@
 
@@ -168,6 +169,7 @@ freetype.mips: gcc/src/.freetype
        $(gcc_path)/bin/mips-gcc \
                --static \
                -march=r3000 \
+               -msoft-float \
                -o freetype.mips \
                -I gcc/src/freetype-2.1.4/include \
                $(freetype_sources) \
@@ -176,6 +178,10 @@ freetype.mips: gcc/src/.freetype
                $(gcc_path)/mips/lib/libc.a \
                -Wl,-T,$(gcc_path)/mips/lib/nullmon.ld
 
+bin/org/xwt/imp/Freetype.java: freetype.mips bin/org/xwt/imp/MIPS.class
+       @echo "translating        .mips -> .java:  $<"
+       @java -cp bin org.xwt.imp.MIPS org.xwt.imp.Freetype < freetype.mips > bin/org/xwt/imp/Freetype.java
+
 # compile is here to force compilation of the .class files (they get used via -Ibin/) without
 # having the individual .o's depend on the .java's (otherwise every .o gets recompiled when one .java changes)
 gcj: $(gcc_path)/bin/$(target)-gcj compile $(target_bin)