Cleanups based on review feedback.

Review by: scottb


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@575 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/jni/linux/JsRootedValue.h b/jni/linux/JsRootedValue.h
index 663200e..7aaf9bb 100644
--- a/jni/linux/JsRootedValue.h
+++ b/jni/linux/JsRootedValue.h
@@ -195,7 +195,8 @@
    */
   double getDouble() const {
     jsdouble return_value=0.0;
-    void(JS_ValueToNumber(context_, value_, &return_value)); 
+    // ignore return value -- if it failes, value will remain 0.0
+    JS_ValueToNumber(context_, value_, &return_value); 
     return double(return_value);
   }
   /*
diff --git a/jni/linux/LowLevelMoz.cpp b/jni/linux/LowLevelMoz.cpp
index 424218b..676e4ca 100644
--- a/jni/linux/LowLevelMoz.cpp
+++ b/jni/linux/LowLevelMoz.cpp
@@ -340,7 +340,7 @@
  */
 extern "C" JNIEXPORT jboolean JNICALL
 Java_com_google_gwt_dev_shell_moz_LowLevelMoz__1invoke
-    (JNIEnv* env, jclass, int scriptObjInt, jstring methodName, jint jsThisInt,
+    (JNIEnv* env, jclass, jint scriptObjInt, jstring methodName, jint jsThisInt,
      jintArray jsArgsInt, jint jsRetValInt)
 {
   Tracer tracer("LowLevelMoz._invoke");
diff --git a/jni/linux/Makefile b/jni/linux/Makefile
index cfde4f6..8c42ae3 100644
--- a/jni/linux/Makefile
+++ b/jni/linux/Makefile
@@ -15,21 +15,23 @@
 ##
 # Target settings
 ##
-MOZ_SRC=/usr/local/google/home/jat/src/mozilla
-JAVA_HOME=/usr/lib/j2sdk1.5-sun
-GWT_TOOLS=../../../gwt-tools
+#JAVA_HOME
+#JAVA_HOME=/usr/lib/j2sdk1.5-sun
+
+# set GWT_TOOLS only if it is not already defined
+GWT_TOOLS ?= ../../../tools
 
 GWT_ROOT = ../../
 OBJDIR  := $(GWT_ROOT)build/out/jni/linux/
 OUTDIR  := $(GWT_ROOT)build/jni/linux/
-STAGING := $(GWT_ROOT)build/staging/gwt-linux-0.0.0/
 OUT     := $(OUTDIR)libgwt-ll.so
 
 ##
 # The location to get .class files from for javah
 ##
 CLASSDIR := $(GWT_ROOT)build/out/dev/linux/bin
-# use this if you want to use eclipse to build the class files during
+
+# use this instead if you want to use eclipse to build the class files during
 # development
 #CLASSDIR := $(GWT_ROOT)eclipse/dev/linux/bin
 
@@ -40,7 +42,7 @@
 AR       := ar
 STRIP    := strip
 LD       := $(CXX)
-JAVAH    := javah
+JAVAH    := $(JAVA_HOME)/bin/javah
 
 ##
 # List of source, object, and dependency paths plus the path to them
@@ -85,9 +87,8 @@
 # default rule
 ##
 all: $(OUT)
-	@[ -d $(STAGING) ] || mkdir -p $(STAGING)
-	cp $(OUT) $(STAGING)
 
+# install into prebuilt directory
 install: $(OUT)
 	cp $(OUT) prebuilt/
 
@@ -109,8 +110,8 @@
 # Dependency rules for generated headers
 # TODO(jat): autogenerate these and others
 ##
-$(OBJDIR)LowLevelMoz.o: $(OBJDIR)LowLevelMoz.h
-$(OBJDIR)JsValueMoz.o: $(OBJDIR)JsValueMoz.h
+$(OBJDIR)LowLevelMoz.o: $(OBJDIR)LowLevelMoz.h $(JAVA_HOME)/include/jni.h
+$(OBJDIR)JsValueMoz.o: $(OBJDIR)JsValueMoz.h $(JAVA_HOME)/include/jni.h
 
 ##
 # Compilation rule for cpp files
@@ -119,6 +120,7 @@
 	@[ -d $(OBJDIR) ] || mkdir -p $(OBJDIR)
 	$(CXX) -c $(CFLAGS) $(INCS) -o $@ $<
 
+# generate preprocessed output files upon request for debugging
 %.i : $(SRCDIR)%.cpp
 	$(CXX) -E $(CFLAGS) $(INCS) -o $@ $<
 
@@ -128,10 +130,10 @@
 ##
 # Actual output file
 ##
-$(OUT): $(OBJS)
+$(OUT): $(OBJS) $(GWT_TOOLS)/sdk/mozilla-1.7.12/lib/libxpcomglue_s.a
 	@[ -d $(OUTDIR) ] || mkdir -p $(OUTDIR)
 	$(LD) -shared $(LDFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
-#	$(STRIP) --strip-unneeded $@
+	$(STRIP) --strip-unneeded $@
 
 ##
 # Clean rule
diff --git a/jni/mac/gwt-webkit.cpp b/jni/mac/gwt-webkit.cpp
index 86b61d4..08d854b 100644
--- a/jni/mac/gwt-webkit.cpp
+++ b/jni/mac/gwt-webkit.cpp
@@ -255,9 +255,11 @@
 JNIEXPORT jboolean JNICALL Java_com_google_gwt_dev_shell_mac_LowLevelSaf__1convertDouble
   (JNIEnv *env, jclass, jdouble jval, jintArray rval) {
     TRACE("ENTER LowLevelSaf__1convertDouble");
+#ifdef ENABLE_TRACING
   char buf[256];
   snprintf(buf, sizeof(buf), " val=%lf", jval);
   TRACE(buf);
+#endif
 
   JSValue *jsval = jsNumber(jval);
   if (!jsval)
@@ -283,9 +285,11 @@
   JStringWrap jstr(env, jval);
   if (!jstr.jstr())
     return JNI_FALSE;
+#ifdef ENABLE_TRACING
   char buf[256];
   snprintf(buf, sizeof(buf), " val=%s", jstr.str());
   TRACE(buf);
+#endif
   
   JSValue *jsval = jsString(UString((const UChar*)jstr.jstr(), jstr.length()));
   /*
@@ -298,8 +302,10 @@
   if (!jsval)
     return JNI_FALSE;
 
+#ifdef ENABLE_TRACING
   snprintf(buf, sizeof(buf), " return={%08x} ", unsigned(jsval));
   PrintJSValue(jsval, buf);
+#endif
   
   env->SetIntArrayRegion(rval,0,1,(const jint*)&jsval);
   if (env->ExceptionCheck())
@@ -323,9 +329,11 @@
   JStringWrap jcode(env, code);
   if (!jcode.jstr())
     return JNI_FALSE;
+#ifdef ENABLE_TRACING
   char buf[1024];
   snprintf(buf, sizeof(buf), " code=%s", jcode.str());
   TRACE(buf);
+#endif
     
   Interpreter* interp = ((ExecState*)execState)->dynamicInterpreter();
   if (!interp)
@@ -354,10 +362,12 @@
   JStringWrap jfile(env, file);
   if (!jcode.jstr())
     return JNI_FALSE;
-  
+
+#ifdef ENABLE_TRACING
   char buf[1024];
   snprintf(buf, sizeof(buf), " code=%s, file=%s, line=%d", jcode.str(), jfile.str(), line);
   TRACE(buf);
+#endif
   
   Interpreter* interp = ((ExecState*)execState)->dynamicInterpreter();
   if (!interp)
@@ -463,11 +473,13 @@
   if (!jsexecState || !jsScriptObject || !method || !rval)
     return JNI_FALSE;
   JStringWrap jmethod(env, method);
+#ifdef ENABLE_TRACING
   char buf[256];
   snprintf(buf, sizeof(buf), "sciptObject=%08x, method=%s, argc=%d",
       jsScriptObject, jmethod.str(), argc);
   TRACE(buf);
   PrintJSValue((JSValue*)jsthis, " jsthis=");
+#endif
   ExecState* execState = (ExecState*)jsexecState;
 
   JSObject* scriptObj = (JSObject*)jsScriptObject;
@@ -498,9 +510,11 @@
     env->GetIntArrayRegion(argv, i, 1, &argi);
     if (env->ExceptionCheck())
       return JNI_FALSE;
+#ifdef ENABLE_TRACING
     snprintf(buf, sizeof(buf), " arg[%d]={%08x} ", i, argi);
     TRACE(buf);
     PrintJSValue((JSValue*)argi, buf);
+#endif
     if (argi) {
       args.append((JSValue*)argi);
     } else {
@@ -510,7 +524,9 @@
 
   JSValue* result = func->call(execState, thisObj, args);
   gcProtectNullTolerant(result);
+#ifdef ENABLE_TRACING
   PrintJSValue(result, " return=");
+#endif
   env->SetIntArrayRegion(rval, 0, 1, (jint*)&result);
   if (env->ExceptionCheck())
     return JNI_FALSE;
@@ -685,9 +701,11 @@
    * out in favor of better memory mgmt scheme.
    */
   gcProtectNullTolerant(wrapper);
+#ifdef ENABLE_TRACING
   char buf[256];
   snprintf(buf, sizeof(buf), " return={%08x} ", unsigned(wrapper));
   PrintJSValue((JSValue*)wrapper, buf);
+#endif
 
     env->SetIntArrayRegion(rval, 0, 1, (jint*)&wrapper);
     if (env->ExceptionCheck())
@@ -722,9 +740,11 @@
    * out in favor of better memory mgmt scheme.
    */
   gcProtectNullTolerant(wrapper);
+#ifdef ENABLE_TRACING
   char buf[256];
   snprintf(buf, sizeof(buf), " return={%08x} ", unsigned(wrapper));
   PrintJSValue((JSValue*)wrapper, buf);
+#endif
     env->SetIntArrayRegion(rval, 0, 1, (jint*)&wrapper);
     if (env->ExceptionCheck())
         return JNI_FALSE;
diff --git a/jni/mac/gwt-webkit.h b/jni/mac/gwt-webkit.h
index 1cf9cb8..d235e06 100644
--- a/jni/mac/gwt-webkit.h
+++ b/jni/mac/gwt-webkit.h
@@ -31,6 +31,10 @@
 //#define FILETRACE
 //#define JAVATRACE
 
+#if define(FILETRACE) || defined(JAVATRACE)
+#define ENABLE_TRACING
+#endif
+
 #if defined(FILETRACE) && defined(JAVATRACE)
 #define TRACE(s) filetrace(s),javatrace(s)
 #elif defined(FILETRACE)