blob: f3313c46bb387c35dfcc0f5de3eb9c4deb04e868 [file] [log] [blame]
/*
* Copyright 2007 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.gwt.dev;
import com.google.gwt.dev.shell.moz.MozillaInstall;
/**
* Initializes low-level libraries for linux.
*/
public class BootStrapPlatform {
public static void applyPlatformHacks() {
// nothing to do
}
public static void initGui() {
// nothing to do
}
/**
* Find a usable Mozilla installation and load it. Fail immediately, logging
* to stderr and exiting with a failure code, if we are unable to find or load
* 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() {
String home = System.getenv("HOME");
if (home == null || home.length() == 0) {
System.err.println("The HOME environment variable must be defined.");
System.exit(1);
}
MozillaInstall mozInstall = MozillaInstall.find();
if (mozInstall == null) {
System.err.println("** Unable to find a usable Mozilla install **");
System.err.println("You may specify one in mozilla-hosted-browser.conf, "
+ "see comments in the file for details.");
System.exit(1);
}
try {
mozInstall.load();
} catch (UnsatisfiedLinkError e) {
System.err.println("** Unable to load Mozilla for hosted mode **");
e.printStackTrace();
System.exit(1);
}
String mozillaPath = mozInstall.getPath();
System.setProperty("swt.mozilla.path", mozillaPath);
}
}