Revision: 6144 Author: [email protected] Date: Tue Sep 15 11:32:56 2009 Log: Adds checking for 32-bit/64-bit instead of specific JRE versions. This change makes it possible for Snow Leopard users to use hosted mode using the 32-bit 1.6 JRE.
Review by: jat http://code.google.com/p/google-web-toolkit/source/detail?r=6144 Modified: /releases/1.7/dev/core/src/com/google/gwt/dev/HostedModeBase.java /releases/1.7/dev/core/src-dummy/com/google/gwt/dev/BootStrapPlatform.java /releases/1.7/dev/linux/src/com/google/gwt/dev/BootStrapPlatform.java /releases/1.7/dev/mac/src/com/google/gwt/dev/BootStrapPlatform.java /releases/1.7/dev/windows/src/com/google/gwt/dev/BootStrapPlatform.java ======================================= --- /releases/1.7/dev/core/src/com/google/gwt/dev/HostedModeBase.java Thu Mar 19 14:39:00 2009 +++ /releases/1.7/dev/core/src/com/google/gwt/dev/HostedModeBase.java Tue Sep 15 11:32:56 2009 @@ -342,6 +342,13 @@ return "http://" + host + "/" + unknownUrlText; } } + + /** + * Determine if we're using a 32 bit runtime. + */ + private static boolean is32BitJvm() { + return "32".equals(System.getProperty("sun.arch.data.model")); + } protected final HostedModeBaseOptions options; @@ -359,7 +366,7 @@ public HostedModeBase() { // Set any platform specific system properties. - BootStrapPlatform.initHostedMode(); + BootStrapPlatform.initHostedMode(is32BitJvm()); BootStrapPlatform.applyPlatformHacks(); options = createOptions(); } @@ -473,11 +480,10 @@ // Initialize the logger. // initializeLogger(); - + // Check for updates final TreeLogger logger = getTopLogger(); - final CheckForUpdates updateChecker - = PlatformSpecific.createUpdateChecker(logger); + final CheckForUpdates updateChecker = PlatformSpecific.createUpdateChecker(logger); if (updateChecker != null) { Thread checkerThread = new Thread("GWT Update Checker") { @Override ======================================= --- /releases/1.7/dev/core/src-dummy/com/google/gwt/dev/BootStrapPlatform.java Wed Jan 14 17:08:20 2009 +++ /releases/1.7/dev/core/src-dummy/com/google/gwt/dev/BootStrapPlatform.java Tue Sep 15 11:32:56 2009 @@ -29,7 +29,7 @@ // nothing to do } - public static void initHostedMode() { + public static void initHostedMode(boolean is32Bit) { // nothing to do. } } ======================================= --- /releases/1.7/dev/linux/src/com/google/gwt/dev/BootStrapPlatform.java Wed Jan 14 17:08:20 2009 +++ /releases/1.7/dev/linux/src/com/google/gwt/dev/BootStrapPlatform.java Tue Sep 15 11:32:56 2009 @@ -36,7 +36,12 @@ * it. If successful, store the loaded path in the property swt.mozilla.path * so SWT's Browser object can use it. */ - public static void initHostedMode() { + public static void initHostedMode(boolean is32Bit) { + if (!is32Bit) { + System.err.println("You must use a 32-bit runtime to run GWT Hosted Mode."); + System.exit(1); + } + String home = System.getenv("HOME"); if (home == null || home.length() == 0) { System.err.println("The HOME environment variable must be defined."); ======================================= --- /releases/1.7/dev/mac/src/com/google/gwt/dev/BootStrapPlatform.java Wed Jan 14 17:08:20 2009 +++ /releases/1.7/dev/mac/src/com/google/gwt/dev/BootStrapPlatform.java Tue Sep 15 11:32:56 2009 @@ -64,13 +64,15 @@ Toolkit.getDefaultToolkit(); } - public static void initHostedMode() { + public static void initHostedMode(boolean is32Bit) { /* * The following check must be made before attempting to initialize Safari, * or we'll fail with an less-than-helpful UnsatisfiedLinkError. */ - if (!isJava5()) { - System.err.println("You must use a Java 1.5 runtime to use GWT Hosted Mode on Mac OS X."); + if (!is32Bit) { + System.err.println("You must use a 32-bit runtime to run GWT Hosted Mode."); + System.err.println(" Leopard: Use the Java 1.5 runtime."); + System.err.println(" Snow Leopard: Use the Java 1.6 runtime and add -d32"); System.exit(-1); } @@ -109,14 +111,6 @@ } return false; } - - /** - * Determine if we're using the Java 1.5 runtime, since the 1.6 runtime is - * 64-bit. - */ - private static boolean isJava5() { - return System.getProperty("java.version").startsWith("1.5"); - } /** * Sets platform specific system properties. Currently, this disables ======================================= --- /releases/1.7/dev/windows/src/com/google/gwt/dev/BootStrapPlatform.java Wed Jan 14 17:08:20 2009 +++ /releases/1.7/dev/windows/src/com/google/gwt/dev/BootStrapPlatform.java Tue Sep 15 11:32:56 2009 @@ -28,7 +28,10 @@ // nothing to do } - public static void initHostedMode() { - // nothing to do + public static void initHostedMode(boolean is32Bit) { + if (!is32Bit) { + System.err.println("You must use a 32-bit runtime to run GWT Hosted Mode."); + System.exit(1); + } } } --~--~---------~--~----~------------~-------~--~----~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~----------~----~----~----~------~----~------~--~---
