bundles/org.eclipse.core.filesystem
+ bundles/org.eclipse.core.filesystem.freebsd.%%ECLIPSE_ARCH%%
bundles/org.eclipse.core.filesystem.hpux.ia64
bundles/org.eclipse.core.filesystem.hpux.PA_RISC
bundles/org.eclipse.core.filesystem.linux.ppc
diff --git a/eclipse.platform.resources/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/filesystem/SymlinkTest.java b/eclipse.platform.resources/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/filesystem/SymlinkTest.java
index 7c8ad8c..b15bbf6 100644
--- a/eclipse.platform.resources/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/filesystem/SymlinkTest.java
+++ b/eclipse.platform.resources/tests/org.eclipse.core.tests.resources/src/org/eclipse/core/tests/filesystem/SymlinkTest.java
@@ -49,8 +49,8 @@ public class SymlinkTest extends FileSystemTest {
public static boolean isTestablePlatform() {
// A Platform is testable if it supports the "ln -s" command.
String os = Platform.getOS();
- //currently we only support linux, solaris and mac os
- if (os.equals(Platform.OS_LINUX) || os.equals(Platform.OS_SOLARIS) || os.equals(Platform.OS_MACOSX) || os.equals(Platform.OS_AIX)
+ //currently we only support freebsd, linux, solaris and mac os
+ if (os.equals(Platform.OS_FREEBSD) || os.equals(Platform.OS_LINUX) || os.equals(Platform.OS_SOLARIS) || os.equals(Platform.OS_MACOSX) || os.equals(Platform.OS_AIX)
// ||os.equals(Platform.OS_HPUX)
// || isWindowsVistaOrHigher()
) {
@@ -339,7 +339,7 @@ public class SymlinkTest extends FileSystemTest {
public void testSymlinkEnabled() {
String os = Platform.getOS();
String arch = Platform.getOSArch();
- if (Platform.OS_LINUX.equals(os) || (Platform.OS_SOLARIS.equals(os) && Platform.ARCH_SPARC.equals(arch)) || Platform.OS_MACOSX.equals(os) || Platform.OS_AIX.equals(os) || isWindowsVistaOrHigher()) {
+ if (Platform.OS_FREEBSD.equals(os) || Platform.OS_LINUX.equals(os) || (Platform.OS_SOLARIS.equals(os) && Platform.ARCH_SPARC.equals(arch)) || Platform.OS_MACOSX.equals(os) || Platform.OS_AIX.equals(os) || isWindowsVistaOrHigher()) {
assertTrue(haveSymlinks());
} else {
assertFalse(haveSymlinks());
diff --git a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility/src-boot/org/eclipse/core/boot/BootLoader.java b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility/src-boot/org/eclipse/core/boot/BootLoader.java
index 652119f..30482b0 100644
--- a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility/src-boot/org/eclipse/core/boot/BootLoader.java
+++ b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime.compatibility/src-boot/org/eclipse/core/boot/BootLoader.java
@@ -94,6 +94,16 @@ public final class BootLoader {
public static final String OS_HPUX = "hpux";//$NON-NLS-1$
/**
+ * Constant string (value "freebsd") indicating the platform is running on an
+ * FreeBSD-based operating system.
+ * Note: This constant is not officially supported by the eclipse project
+ * and is only available on eclipse versions built from the FreeBSD ports
+ * tree.
+ * @deprecated Replaced by {@link Platform#OS_FREEBSD.
+ */
+ public static final String OS_FREEBSD = "freebsd";//$NON-NLS-1$
+
+ /**
* Constant string (value "qnx") indicating the platform is running on a
* QNX-based operating system.
* @deprecated Replaced by {@link Platform#OS_QNX}.
diff --git a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/runtime/InternalPlatform.java b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/runtime/InternalPlatform.java
index 8ace8e8..21ba40f 100644
--- a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/runtime/InternalPlatform.java
+++ b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/internal/runtime/InternalPlatform.java
@@ -62,7 +62,7 @@ public final class InternalPlatform {
//XXX This is not synchronized
private static Map logs = new HashMap(5);
- private static final String[] OS_LIST = {Platform.OS_AIX, Platform.OS_HPUX, Platform.OS_LINUX, Platform.OS_MACOSX, Platform.OS_QNX, Platform.OS_SOLARIS, Platform.OS_WIN32};
+ private static final String[] OS_LIST = {Platform.OS_AIX, Platform.OS_FREEBSD, Platform.OS_HPUX, Platform.OS_LINUX, Platform.OS_MACOSX, Platform.OS_QNX, Platform.OS_SOLARIS, Platform.OS_WIN32};
private static String password = ""; //$NON-NLS-1$
private static final String PASSWORD = "-password"; //$NON-NLS-1$
diff --git a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
index 18b64e4..344be72 100644
--- a/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
+++ b/eclipse.platform.runtime/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
@@ -261,6 +261,17 @@ public final class Platform {
public static final String OS_MACOSX = "macosx";//$NON-NLS-1$
/**
+ * Constant string (value "freebsd") indicating the platform is running on a
+ * FreeBSD operating system.
+ *
+ * Note this constant is not officially supported by the eclipse project
+ * and is only available on eclipse versions built from the FreeBSD ports
+ * tree.
+ *
+ */
+ public static final String OS_FREEBSD = "freebsd";//$NON-NLS-1$
+
+ /**
* Constant string (value "unknown") indicating the platform is running on a
* machine running an unknown operating system.
*
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.cpp b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.cpp
index 7c713c7..f166708 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.cpp
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.cpp
@@ -180,7 +180,7 @@ JNIEXPORT jint JNICALL XPCOM_NATIVE(_1NS_1NewLocalFile)
jint rc = 0;
XPCOM_NATIVE_ENTER(env, that, _1NS_1NewLocalFile_FUNC);
if (arg2) if ((lparg2 = env->GetIntLongArrayElements(arg2, NULL)) == NULL) goto fail;
- rc = (jint)NS_NewLocalFile(*(nsAString *)arg0, arg1, (nsILocalFile**)lparg2);
+ rc = (jint)NS_NewLocalFile(*(nsAString *)arg0, arg1, (nsIFile**)lparg2);
fail:
if (arg2 && lparg2) env->ReleaseIntLongArrayElements(arg2, lparg2, 0);
XPCOM_NATIVE_EXIT(env, that, _1NS_1NewLocalFile_FUNC);
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.h b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.h
index afc18ec..3b6da84 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.h
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Mozilla/common/library/xpcom.h
@@ -32,6 +32,8 @@
#define XPCOM_LOAD_FUNCTION LOAD_FUNCTION
+#define nsStaticModuleInfo void
+
#ifdef _WIN32
#if !(defined(__i386__) || defined(_M_IX86) || defined(_X86_))
#define nsStaticModuleInfo void /* define on 64-bit win32 due to use of XULRunner 10 SDK */
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh
index 689616e..86afdfe 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh
@@ -12,12 +12,12 @@
# Tom Tromey (Red Hat, Inc.)
#*******************************************************************************
+COMPONENTS_DIR=`pwd`/../../components
cd `dirname $0`
MAKE_TYPE=make
# Check if we have to compile external.xpt from external.idl
-COMPONENTS_DIR=`pwd`/../../components
if test ! -f ${COMPONENTS_DIR}/external.xpt; then
if test ! -f ${COMPONENTS_DIR}/external.idl; then
echo "Can't find ${COMPONENTS_DIR}/external.idl"
@@ -64,6 +64,8 @@ case $OS in
"FreeBSD")
SWT_OS=freebsd
MAKEFILE=make_freebsd.mak
+ MAKE_TYPE=gmake
+ MODEL=`uname -m`
;;
*)
SWT_OS=`uname -s | tr -s '[:upper:]' '[:lower:]'`
@@ -407,6 +409,34 @@ case $SWT_OS.$SWT_ARCH in
export PKG_CONFIG_PATH="/opt/gtk_64bit/lib/hpux64/pkgconfig"
fi
;;
+ "freebsd.x86"|"freebsd.x86_64")
+# PATH="/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/bin:$PATH"
+ if [ "${CC}" = "" ]; then
+ CC="cc"
+ fi
+ if [ "${CXX}" = "" ]; then
+ CXX="c++"
+ fi
+ if [ "${CDE_HOME}" = "" ]; then
+ CDE_HOME="/usr/dt"
+ fi
+ if [ "${JAVA_HOME}" = "" ]; then
+ JAVA_HOME="/usr/local/openjdk7"
+ fi
+ if [ "${PKG_CONFIG_PATH}" = "" ]; then
+ PKG_CONFIG_PATH="/usr/local/libdata/pkgconfig/"
+ fi
+# if [ "${MOZILLA_SDK}" = "" ]; then
+# MOZILLA_SDK="/bluebird/teamswt/swt-builddir/geckoSDK/1.4/gecko-sdk"
+# fi
+# if [ "${MOZILLA_INCLUDES}" = "" ]; then
+# MOZILLA_INCLUDES="-I${MOZILLA_SDK} -I${MOZILLA_SDK}/xpcom/include -I${MOZILLA_SDK}/nspr/include -I${MOZILLA_SDK}/embed_base/include -I${MOZILLA_SDK}/embedstring/include -I${MOZILLA_SDK}/string/include"
+# fi
+# if [ "${MOZILLA_LIBS}" = "" ]; then
+# MOZILLA_LIBS="${MOZILLA_SDK}/embedstring/bin/libembedstring.a -L${MOZILLA_SDK}/xpcom/bin -L${MOZILLA_SDK}/nspr/bin -lxpcom -lnspr4 -lplds4 -lplc4"
+# fi
+ export PATH CC CXX CDE_HOME JAVA_HOME PKG_CONFIG_PATH MOZILLA_SDK MOZILLA_INCLUDES MOZILLA_LIBS;
+ ;;
esac
@@ -478,24 +508,35 @@ if [ -z "${MOZILLA_INCLUDES}" -a -z "${MOZILLA_LIBS}" -a ${MODEL} != 'sparc64' ]
export MOZILLA_INCLUDES
export MOZILLA_LIBS
MAKE_MOZILLA=make_mozilla
+ echo "Mozilla/XPCOM found, compiling Mozilla embedded browser support"
elif [ x`pkg-config --exists firefox-xpcom && echo YES` = "xYES" ]; then
MOZILLA_INCLUDES=`pkg-config --cflags firefox-xpcom`
MOZILLA_LIBS=`pkg-config --libs firefox-xpcom`
export MOZILLA_INCLUDES
export MOZILLA_LIBS
MAKE_MOZILLA=make_mozilla
- elif [ x`pkg-config --exists libxul && echo YES` = "xYES" ]; then
- XULRUNNER_INCLUDES=`pkg-config --cflags libxul`
- XULRUNNER_LIBS=`pkg-config --libs libxul`
+ echo "Firefox/XPCOM found, compiling Mozilla embedded browser support"
+ elif [ x`pkg-config --exists libxul libxul-embedding && echo YES` = "xNO" ]; then # don't bother, it doesn't work
+ XULRUNNER_INCLUDES="-include /usr/local/include/libxul/mozilla-config.h `pkg-config --cflags libxul libxul-embedding`"
+ XULRUNNER_LIBS=`pkg-config --libs libxul-embedding`
export XULRUNNER_INCLUDES
export XULRUNNER_LIBS
MAKE_MOZILLA=make_xulrunner
+ echo "XULRunner/XPCOM found, compiling Mozilla embedded browser support"
else
echo "None of the following libraries were found: Mozilla/XPCOM, Firefox/XPCOM, or XULRunner/XPCOM"
echo " *** Mozilla embedding support will not be compiled."
fi
fi
+if [ x`pkg-config --exists webkit-1.0 && echo YES` = "xYES" ]; then
+ echo "WebKit found, compiling webkit embedded browser support."
+ MAKE_WEBKIT=make_webkit
+else
+ echo "WebKit not found:"
+ echo " *** WebKit embedding support will not be compiled."
+fi
+
# Find AWT if available
if [ -z "${AWT_LIB_PATH}" ]; then
if [ -f ${JAVA_HOME}/jre/lib/${AWT_ARCH}/libjawt.* ]; then
@@ -524,5 +565,5 @@ fi
if [ "x${1}" = "xclean" ]; then
${MAKE_TYPE} -f $MAKEFILE clean
else
- ${MAKE_TYPE} -f $MAKEFILE all $MAKE_GNOME $MAKE_CAIRO $MAKE_AWT $MAKE_MOZILLA ${1} ${2} ${3} ${4} ${5} ${6} ${7} ${8} ${9}
+ ${MAKE_TYPE} -f $MAKEFILE all $MAKE_GNOME $MAKE_CAIRO $MAKE_AWT $MAKE_MOZILLA $MAKE_WEBKIT ${1} ${2} ${3} ${4} ${5} ${6} ${7} ${8} ${9}
fi
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_freebsd.mak b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_freebsd.mak
index 0bf9416..e955aa9 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_freebsd.mak
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_freebsd.mak
@@ -9,7 +9,7 @@
# IBM Corporation - initial API and implementation
#*******************************************************************************
-# Makefile for creating SWT libraries for Linux GTK
+# Makefile for creating SWT libraries for FreeBSD GTK
include make_common.mak
@@ -27,6 +27,7 @@ GNOME_PREFIX = swt-gnome
MOZILLA_PREFIX = swt-mozilla$(GCC_VERSION)
XULRUNNER_PREFIX = swt-xulrunner
XPCOMINIT_PREFIX = swt-xpcominit
+WEBKIT_PREFIX = swt-webkit
GLX_PREFIX = swt-glx
SWT_LIB = lib$(SWT_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
@@ -39,6 +40,7 @@ GNOME_LIB = lib$(GNOME_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
MOZILLA_LIB = lib$(MOZILLA_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
XULRUNNER_LIB = lib$(XULRUNNER_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
XPCOMINIT_LIB = lib$(XPCOMINIT_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
+WEBKIT_LIB = lib$(WEBKIT_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
GLX_LIB = lib$(GLX_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so
CAIROCFLAGS = `pkg-config --cflags cairo`
@@ -46,7 +48,7 @@ CAIROLIBS = `pkg-config --libs-only-L cairo` -lcairo
# Do not use pkg-config to get libs because it includes unnecessary dependencies (i.e. pangoxft-1.0)
GTKCFLAGS = `pkg-config --cflags gtk+-2.0`
-GTKLIBS = `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L/usr/X11R6/lib $(XLIB64) -lXtst
+GTKLIBS = `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L/usr/local/lib $(XLIB64) -lXtst
CDE_LIBS = -L$(CDE_HOME)/lib -R$(CDE_HOME)/lib -lXt -lX11 -lDtSvc
@@ -59,7 +61,8 @@ ATKLIBS = `pkg-config --libs-only-L atk gtk+-2.0` -latk-1.0 -lgtk-x11-2.0
GNOMECFLAGS = `pkg-config --cflags gnome-vfs-module-2.0 libgnome-2.0 libgnomeui-2.0`
GNOMELIBS = `pkg-config --libs-only-L gnome-vfs-module-2.0 libgnome-2.0 libgnomeui-2.0` -lgnomevfs-2 -lgnome-2 -lgnomeui-2
-GLXLIBS = -L/usr/X11R6/lib -lGL -lGLU -lm
+GLXCFLAGS = -I/usr/local/include
+GLXLIBS = -L/usr/local/lib -lGL -lGLU -lm
# Uncomment for Native Stats tool
#NATIVE_STATS = -DNATIVE_STATS
@@ -76,9 +79,22 @@ MOZILLACFLAGS = -O \
-I. \
-I$(JAVA_HOME)/include \
-I$(JAVA_HOME)/include/freebsd \
+ -std=c++11 \
${SWT_PTR_CFLAGS}
MOZILLALFLAGS = -shared -Wl,--version-script=mozilla_exports -Bsymbolic
+XULRUNNER_EXCLUDES =-DNO__1XPCOMGlueShutdown
+
+WEBKITCFLAGS = `pkg-config --cflags glib-2.0`
+
+SWT_OBJECTS = swt.o c.o c_stats.o callback.o
+CDE_OBJECTS = swt.o cde.o cde_structs.o cde_stats.o
+AWT_OBJECTS = swt_awt.o
+SWTPI_OBJECTS = swt.o os.o os_structs.o os_custom.o os_stats.o
+CAIRO_OBJECTS = swt.o cairo.o cairo_structs.o cairo_stats.o
+ATK_OBJECTS = swt.o atk.o atk_structs.o atk_custom.o atk_stats.o
+WEBKITCFLAGS = `pkg-config --cflags glib-2.0`
+
SWT_OBJECTS = swt.o c.o c_stats.o callback.o
CDE_OBJECTS = swt.o cde.o cde_structs.o cde_stats.o
AWT_OBJECTS = swt_awt.o
@@ -87,8 +103,9 @@ CAIRO_OBJECTS = swt.o cairo.o cairo_structs.o cairo_stats.o
ATK_OBJECTS = swt.o atk.o atk_structs.o atk_custom.o atk_stats.o
GNOME_OBJECTS = swt.o gnome.o gnome_structs.o gnome_stats.o
MOZILLA_OBJECTS = swt.o xpcom.o xpcom_custom.o xpcom_structs.o xpcom_stats.o
-XULRUNNER_OBJECTS = swt.o xpcomxul.o xpcomxul_custom.o xpcomxul_structs.o xpcomxul_stats.o xpcomxulglue.o xpcomxulglue_stats.o
+XULRUNNER_OBJECTS = swt.o xpcomxul.o xpcomxul_custom.o xpcomxul_structs.o xpcomxul_stats.o
XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o
+WEBKIT_OBJECTS = swt.o webkit.o webkit_structs.o webkit_stats.o
GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o
CFLAGS = -O -Wall \
@@ -101,13 +118,16 @@ CFLAGS = -O -Wall \
${SWT_PTR_CFLAGS}
LFLAGS = -shared -fPIC
+CFLAGS := $(CFLAGS) -I/usr/local/include
+LDFLAGS := $(LDFLAGS) -L/usr/local/lib
+
ifndef NO_STRIP
AWT_LFLAGS := $(AWT_LFLAGS) -s
MOZILLALFLAGS := $(MOZILLALFLAGS) -s
LFLAGS := $(LFLAGS) -s
endif
-all: make_swt make_atk make_gnome make_glx
+all: make_swt make_atk make_glx
#
# SWT libs
@@ -164,7 +184,7 @@ $(CDE_LIB): $(CDE_OBJECTS)
make_awt:$(AWT_LIB)
$(AWT_LIB): $(AWT_OBJECTS)
- $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
+ $(CC) $(CFLAGS) $(LDFLAGS) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS)
#
# Atk lib
@@ -203,22 +223,22 @@ gnome_stats.o: gnome_stats.c gnome_stats.h
#
# Mozilla lib
#
-make_mozilla:$(MOZILLA_LIB)
+##make_mozilla:$(MOZILLA_LIB)
-$(MOZILLA_LIB): $(MOZILLA_OBJECTS)
- $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
+##$(MOZILLA_LIB): $(MOZILLA_OBJECTS)
+## $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS}
-xpcom.o: xpcom.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom.cpp
+##xpcom.o: xpcom.cpp
+## $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom.cpp
-xpcom_structs.o: xpcom_structs.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_structs.cpp
+##xpcom_structs.o: xpcom_structs.cpp
+## $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_structs.cpp
-xpcom_custom.o: xpcom_custom.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_custom.cpp
+##xpcom_custom.o: xpcom_custom.cpp
+## $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_custom.cpp
-xpcom_stats.o: xpcom_stats.cpp
- $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_stats.cpp
+##xpcom_stats.o: xpcom_stats.cpp
+## $(CXX) $(MOZILLACFLAGS) ${MOZILLA_INCLUDES} -c xpcom_stats.cpp
#
# XULRunner lib
@@ -229,22 +249,22 @@ $(XULRUNNER_LIB): $(XULRUNNER_OBJECTS)
$(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS}
xpcomxul.o: xpcom.cpp
- $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom.cpp
+ $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcom.cpp
xpcomxul_structs.o: xpcom_structs.cpp
- $(CXX) -o xpcomxul_structs.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom_structs.cpp
+ $(CXX) -o xpcomxul_structs.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcom_structs.cpp
xpcomxul_custom.o: xpcom_custom.cpp
- $(CXX) -o xpcomxul_custom.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom_custom.cpp
+ $(CXX) -o xpcomxul_custom.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcom_custom.cpp
xpcomxul_stats.o: xpcom_stats.cpp
- $(CXX) -o xpcomxul_stats.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcom_stats.cpp
+ $(CXX) -o xpcomxul_stats.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcom_stats.cpp
xpcomxulglue.o: xpcomglue.cpp
- $(CXX) -o xpcomxulglue.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcomglue.cpp
+ $(CXX) -o xpcomxulglue.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcomglue.cpp
xpcomxulglue_stats.o: xpcomglue_stats.cpp
- $(CXX) -o xpcomxulglue_stats.o $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcomglue_stats.cpp
+ $(CXX) -o xpcomxulglue_stats.o $(MOZILLACFLAGS) ${XULRUNNER_EXCLUDES} ${XULRUNNER_INCLUDES} -c xpcomglue_stats.cpp
#
# XPCOMInit lib
@@ -264,6 +284,23 @@ xpcominit_stats.o: xpcominit_stats.cpp
$(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit_stats.cpp
#
+# WebKit lib
+#
+make_webkit: $(WEBKIT_LIB)
+
+$(WEBKIT_LIB): $(WEBKIT_OBJECTS)
+ $(CC) $(LFLAGS) -o $(WEBKIT_LIB) $(WEBKIT_OBJECTS)
+
+webkit.o: webkitgtk.c
+ $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk.c -o webkit.o
+
+webkit_structs.o: webkitgtk_structs.c
+ $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk_structs.c -o webkit_structs.o
+
+webkit_stats.o: webkitgtk_stats.c webkitgtk_stats.h
+ $(CC) $(CFLAGS) $(WEBKITCFLAGS) -c webkitgtk_stats.c -o webkit_stats.o
+
+#
# GLX lib
#
make_glx: $(GLX_LIB)
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
index 8392189..f02a5ef 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
@@ -4162,11 +4162,17 @@ JNIEXPORT void JNICALL OS_NATIVE(_1g_1thread_1init)
JNIEXPORT jboolean JNICALL OS_NATIVE(_1g_1thread_1supported)
(JNIEnv *env, jclass that)
{
+ return 1;
+ /*
+ g_thread_supported is non-existent in glib-2.36+,
+ but is still referenced.
+
jboolean rc = 0;
OS_NATIVE_ENTER(env, that, _1g_1thread_1supported_FUNC);
rc = (jboolean)g_thread_supported();
OS_NATIVE_EXIT(env, that, _1g_1thread_1supported_FUNC);
return rc;
+ */
}
#endif
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
index 7e282a9..59f36c5 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
@@ -33,18 +33,19 @@ public class OS extends C {
}
/** OS Constants */
- public static final boolean IsAIX, IsSunOS, IsLinux, IsHPUX, BIG_ENDIAN;
+ public static final boolean IsAIX, IsSunOS, IsLinux, IsHPUX, IsFreeBSD, BIG_ENDIAN;
static {
/* Initialize the OS flags and locale constants */
String osName = System.getProperty ("os.name");
- boolean isAIX = false, isSunOS = false, isLinux = false, isHPUX = false;
+ boolean isAIX = false, isSunOS = false, isLinux = false, isHPUX = false, isFreeBSD = false;
if (osName.equals ("Linux")) isLinux = true;
if (osName.equals ("AIX")) isAIX = true;
if (osName.equals ("Solaris")) isSunOS = true;
if (osName.equals ("SunOS")) isSunOS = true;
if (osName.equals ("HP-UX")) isHPUX = true;
- IsAIX = isAIX; IsSunOS = isSunOS; IsLinux = isLinux; IsHPUX = isHPUX;
+ if (osName.equals ("FreeBSD")) isFreeBSD = true;
+ IsAIX = isAIX; IsSunOS = isSunOS; IsLinux = isLinux; IsHPUX = isHPUX; IsFreeBSD = isFreeBSD;
byte[] buffer = new byte[4];
long /*int*/ ptr = OS.malloc(4);
diff --git a/eclipse.platform.swt.binaries/pom.xml b/eclipse.platform.swt.binaries/pom.xml
index 7dd0536..fc0d72c 100644
--- a/eclipse.platform.swt.binaries/pom.xml
+++ b/eclipse.platform.swt.binaries/pom.xml
@@ -55,6 +55,7 @@
bundles/org.eclipse.swt.gtk.linux.s390x
bundles/org.eclipse.swt.gtk.linux.x86
bundles/org.eclipse.swt.gtk.linux.x86_64
+ bundles/org.eclipse.swt.gtk.freebsd.%%ECLIPSE_ARCH%%
bundles/org.eclipse.swt.gtk.solaris.sparc
bundles/org.eclipse.swt.gtk.solaris.x86
bundles/org.eclipse.swt.win32.win32.x86
diff --git a/eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/gnomeproxy.c b/eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/gnomeproxy.c
index 2417b4e..c665afe 100644
--- a/eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/gnomeproxy.c
+++ b/eclipse.platform.team/bundles/org.eclipse.core.net/natives/unix/gnomeproxy.c
@@ -17,7 +17,7 @@
#include
#include
-#ifdef __linux__
+#ifdef __STDC__
#include
#else
#include
diff --git a/eclipse.platform.team/pom.xml b/eclipse.platform.team/pom.xml
index 8637ed3..7623ba6 100644
--- a/eclipse.platform.team/pom.xml
+++ b/eclipse.platform.team/pom.xml
@@ -63,6 +63,7 @@
features/org.eclipse.cvs-feature
+ bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.freebsd.%%ECLIPSE_ARCH%%
bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86
bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.linux.x86_64
bundles/org.eclipse.core.net/fragments/org.eclipse.core.net.win32.x86
diff --git a/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpBasePreferenceInitializer.java b/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpBasePreferenceInitializer.java
index 7482d60..c3150b7 100644
--- a/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpBasePreferenceInitializer.java
+++ b/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/base/HelpBasePreferenceInitializer.java
@@ -39,6 +39,9 @@ public class HelpBasePreferenceInitializer extends
} else if (os.indexOf("linux") != -1) { //$NON-NLS-1$
prefs.put("custom_browser_path", //$NON-NLS-1$
"konqueror %1"); //$NON-NLS-1$
+ } else if (os.indexOf("freebsd") != -1) { //$NON-NLS-1$
+ prefs.put("custom_browser_path", //$NON-NLS-1$
+ "firefox %1"); //$NON-NLS-1$
} else {
prefs.put("custom_browser_path", "mozilla %1"); //$NON-NLS-1$ //$NON-NLS-2$
}
diff --git a/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/browser/BrowserManager.java b/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/browser/BrowserManager.java
index 3fc1fd7..47ab00d 100644
--- a/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/browser/BrowserManager.java
+++ b/eclipse.platform.ua/org.eclipse.help.base/src/org/eclipse/help/internal/browser/BrowserManager.java
@@ -99,6 +99,7 @@ public class BrowserManager {
if (Constants.WS_WIN32.equalsIgnoreCase(os)) {
setDefaultBrowserID(BROWSER_ID_SYSTEM);
} else if (Constants.OS_AIX.equalsIgnoreCase(os)
+ || (Constants.OS_FREEBSD.equalsIgnoreCase(os))
|| (Constants.OS_HPUX.equalsIgnoreCase(os))
|| (Constants.OS_LINUX.equalsIgnoreCase(os))
|| (Constants.OS_SOLARIS.equalsIgnoreCase(os))) {
diff --git a/eclipse.platform.ua/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/browser/embedded/EmbeddedBrowserFactory.java b/eclipse.platform.ua/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/browser/embedded/EmbeddedBrowserFactory.java
index dec7f54..859167c 100644
--- a/eclipse.platform.ua/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/browser/embedded/EmbeddedBrowserFactory.java
+++ b/eclipse.platform.ua/org.eclipse.help.ui/src/org/eclipse/help/ui/internal/browser/embedded/EmbeddedBrowserFactory.java
@@ -64,7 +64,8 @@ public class EmbeddedBrowserFactory implements IBrowserFactory {
*/
private boolean test() {
if (!Constants.OS_WIN32.equalsIgnoreCase(Platform.getOS())
- && !Constants.OS_LINUX.equalsIgnoreCase(Platform.getOS())) {
+ && !Constants.OS_LINUX.equalsIgnoreCase(Platform.getOS())
+ && !Constants.OS_FREEBSD.equalsIgnoreCase(Platform.getOS())) {
return false;
}
if (!tested) {
diff --git a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
index 242e712..a6ade82 100644
--- a/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
+++ b/eclipse.platform.ui/features/org.eclipse.e4.rcp/feature.xml
@@ -459,6 +469,16 @@
fragment="true"/>
+
+
+
+
+
@@ -57,6 +59,8 @@
+
+
@@ -64,10 +68,13 @@
-
+
+
+
+
diff --git a/rt.equinox.bundles/features/org.eclipse.equinox.starterkit.product.feature/pom.xml b/rt.equinox.bundles/features/org.eclipse.equinox.starterkit.product.feature/pom.xml
index 661fd6c..2363b60 100644
--- a/rt.equinox.bundles/features/org.eclipse.equinox.starterkit.product.feature/pom.xml
+++ b/rt.equinox.bundles/features/org.eclipse.equinox.starterkit.product.feature/pom.xml
@@ -31,6 +31,12 @@
p2
+ freebsd
+ gtk
+ %%ECLIPSE_ARCH%%
+
+
diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml
index 659d332..e06e120 100644
--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml
+++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/pom.xml
@@ -21,4 +21,411 @@
org.eclipse.equinox.launcher
1.3.0-SNAPSHOT
eclipse-plugin
+
+
+
+ build-native-launchers-gtk.freebsd.%%ECLIPSE_ARCH%%
+
+
+ native
+ gtk.freebsd.%%ECLIPSE_ARCH%%
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ build-native-launchers-gtk.linux.x86_64
+
+
+ native
+ gtk.linux.x86_64
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ build-native-launchers-gtk.linux.x86
+
+
+ native
+ gtk.linux.x86
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ build-native-launchers-win32.win32.x86_64
+
+
+ native
+ win32.win32.x86_64
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ build-native-launchers-win32.win32.x86
+
+
+ native
+ win32.win32.x86
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ build-native-launchers-cocoa.macosx.x86_64
+
+
+ native
+ cocoa.macosx.x86_64
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ compile-executable-natives
+ generate-resources
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
+ assemble-launchers
+
+
+
+ !longnotexistingproperty
+
+
+
+
+
+ maven-antrun-plugin
+ 1.7
+
+
+ copy-executable-natives
+ process-resources
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ run
+
+
+
+
+
+ bsf
+ bsf
+ 2.4.0
+
+
+ rhino
+ js
+ 1.7R2
+
+
+ org.apache.ant
+ ant-apache-bsf
+ 1.8.3
+
+
+ org.apache.ant
+ ant-nodeps
+ 1.8.1
+
+
+
+
+
+
+
diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/internal/launcher/Constants.java b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/internal/launcher/Constants.java
index 6e83b71..db56cd5 100644
--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/internal/launcher/Constants.java
+++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/internal/launcher/Constants.java
@@ -26,6 +26,7 @@ public class Constants {
public static final String INTERNAL_OS_OS400 = "OS/400"; //$NON-NLS-1$
public static final String INTERNAL_OS_OS390 = "OS/390"; //$NON-NLS-1$
public static final String INTERNAL_OS_ZOS = "z/OS"; //$NON-NLS-1$
+ public static final String INTERNAL_OS_FREEBSD = "FreeBSD"; //$NON-NLS-1$
public static final String ARCH_X86 = "x86";//$NON-NLS-1$
public static final String ARCH_X86_64 = "x86_64";//$NON-NLS-1$
@@ -91,6 +92,17 @@ public class Constants {
public static final String OS_ZOS = "z/os"; //$NON-NLS-1$
/**
+ * Constant string (value "freebsd") indicating the platform is running on a
+ * FreeBSD operating system.
+ *
+ * Note this constant is not officially supported by the eclipse project
+ * and is only available on eclipse versions built from the FreeBSD ports
+ * tree.
+ *
+ */
+ public static final String OS_FREEBSD = "freebsd"; //$NON-NLS-1$
+
+ /**
* Constant string (value "unknown") indicating the platform is running on a
* machine running an unknown operating system.
*/
diff --git a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java
index 85417f6..5448261 100644
--- a/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java
+++ b/rt.equinox.framework/bundles/org.eclipse.equinox.launcher/src/org/eclipse/equinox/launcher/Main.java
@@ -336,6 +336,8 @@ public class Main {
return Constants.WS_GTK;
if (osName.equals(Constants.OS_QNX))
return Constants.WS_PHOTON;
+ if (osName.equals(Constants.OS_FREEBSD))
+ return Constants.WS_GTK;
return Constants.WS_UNKNOWN;
}
@@ -382,6 +384,8 @@ public class Main {
// os.name on Mac OS can be either Mac OS or Mac OS X
if (osName.regionMatches(true, 0, Constants.INTERNAL_OS_MACOSX, 0, Constants.INTERNAL_OS_MACOSX.length()))
return Constants.OS_MACOSX;
+ if (osName.equalsIgnoreCase(Constants.INTERNAL_OS_FREEBSD))
+ return Constants.OS_FREEBSD;
return Constants.OS_UNKNOWN;
}
diff --git a/rt.equinox.framework/bundles/org.eclipse.osgi/core/adaptor/org/eclipse/osgi/util/TextProcessor.java b/rt.equinox.framework/bundles/org.eclipse.osgi/core/adaptor/org/eclipse/osgi/util/TextProcessor.java
index 6f2b039..7feb9b6 100644
--- a/rt.equinox.framework/bundles/org.eclipse.osgi/core/adaptor/org/eclipse/osgi/util/TextProcessor.java
+++ b/rt.equinox.framework/bundles/org.eclipse.osgi/core/adaptor/org/eclipse/osgi/util/TextProcessor.java
@@ -77,7 +77,7 @@ public class TextProcessor {
if ("iw".equals(lang) || "he".equals(lang) || "ar".equals(lang) || "fa".equals(lang) || "ur".equals(lang)) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
String osName = System.getProperty("os.name").toLowerCase(); //$NON-NLS-1$
- if (osName.startsWith("windows") || osName.startsWith("linux") || osName.startsWith("mac")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ if (osName.startsWith("windows") || osName.startsWith("linux") || osName.startsWith("mac") || osName.startsWith("freebsd")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
IS_PROCESSING_NEEDED = true;
}
}
diff --git a/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/EclipseEnvironmentInfo.java b/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/EclipseEnvironmentInfo.java
index 0d091d7..5acffe0 100644
--- a/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/EclipseEnvironmentInfo.java
+++ b/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/EclipseEnvironmentInfo.java
@@ -40,6 +40,7 @@ public class EclipseEnvironmentInfo implements EnvironmentInfo {
private static final String INTERNAL_OS_OS400 = "OS/400"; //$NON-NLS-1$
private static final String INTERNAL_OS_OS390 = "OS/390"; //$NON-NLS-1$
private static final String INTERNAL_OS_ZOS = "z/OS"; //$NON-NLS-1$
+ private static final String INTERNAL_OS_FREEBSD = "FreeBSD"; //$NON-NLS-1$
// While we recognize the i386 architecture, we change
// this internally to be x86.
@@ -202,6 +203,8 @@ public class EclipseEnvironmentInfo implements EnvironmentInfo {
return Constants.WS_GTK;
if (osName.equals(Constants.OS_QNX))
return Constants.WS_PHOTON;
+ if (osName.equals(Constants.OS_FREEBSD))
+ return Constants.WS_GTK;
return Constants.WS_UNKNOWN;
}
@@ -230,6 +233,8 @@ public class EclipseEnvironmentInfo implements EnvironmentInfo {
// os.name on Mac OS can be either Mac OS or Mac OS X
if (osName.regionMatches(true, 0, INTERNAL_OS_MACOSX, 0, INTERNAL_OS_MACOSX.length()))
return Constants.OS_MACOSX;
+ if (osName.equalsIgnoreCase(INTERNAL_OS_FREEBSD))
+ return Constants.OS_FREEBSD;
return Constants.OS_UNKNOWN;
}
diff --git a/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/PluginConverterImpl.java b/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/PluginConverterImpl.java
index fe1447f..3160fd5 100644
--- a/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/PluginConverterImpl.java
+++ b/rt.equinox.framework/bundles/org.eclipse.osgi/eclipseAdaptor/src/org/eclipse/core/runtime/internal/adaptor/PluginConverterImpl.java
@@ -68,7 +68,7 @@ public class PluginConverterImpl implements PluginConverter {
static public final String FRAGMENT_MANIFEST = "fragment.xml"; //$NON-NLS-1$
static public final String GENERATED_FROM = "Generated-from"; //$NON-NLS-1$
static public final String MANIFEST_TYPE_ATTRIBUTE = "type"; //$NON-NLS-1$
- private static final String[] OS_LIST = {org.eclipse.osgi.service.environment.Constants.OS_AIX, org.eclipse.osgi.service.environment.Constants.OS_HPUX, org.eclipse.osgi.service.environment.Constants.OS_LINUX, org.eclipse.osgi.service.environment.Constants.OS_MACOSX, org.eclipse.osgi.service.environment.Constants.OS_QNX, org.eclipse.osgi.service.environment.Constants.OS_SOLARIS, org.eclipse.osgi.service.environment.Constants.OS_WIN32};
+ private static final String[] OS_LIST = {org.eclipse.osgi.service.environment.Constants.OS_AIX, org.eclipse.osgi.service.environment.Constants.OS_FREEBSD, org.eclipse.osgi.service.environment.Constants.OS_HPUX, org.eclipse.osgi.service.environment.Constants.OS_LINUX, org.eclipse.osgi.service.environment.Constants.OS_MACOSX, org.eclipse.osgi.service.environment.Constants.OS_QNX, org.eclipse.osgi.service.environment.Constants.OS_SOLARIS, org.eclipse.osgi.service.environment.Constants.OS_WIN32};
protected static final String PI_RUNTIME = "org.eclipse.core.runtime"; //$NON-NLS-1$
protected static final String PI_BOOT = "org.eclipse.core.boot"; //$NON-NLS-1$
protected static final String PI_RUNTIME_COMPATIBILITY = "org.eclipse.core.runtime.compatibility"; //$NON-NLS-1$
diff --git a/rt.equinox.framework/bundles/org.eclipse.osgi/supplement/src/org/eclipse/osgi/service/environment/Constants.java b/rt.equinox.framework/bundles/org.eclipse.osgi/supplement/src/org/eclipse/osgi/service/environment/Constants.java
index 4b017cd..013d6b1 100644
--- a/rt.equinox.framework/bundles/org.eclipse.osgi/supplement/src/org/eclipse/osgi/service/environment/Constants.java
+++ b/rt.equinox.framework/bundles/org.eclipse.osgi/supplement/src/org/eclipse/osgi/service/environment/Constants.java
@@ -93,6 +93,15 @@ public interface Constants {
public static final String OS_ZOS = "z/os"; //$NON-NLS-1$
/**
+ * Constant string (value "freebsd") indicating the platform is running on a
+ * FreeBSD operating system.
+ * Note this constant is not officially supported by the eclipse project
+ * and is only available on eclipse versions built from the FreeBSD ports
+ * tree.
+ */
+ public static final String OS_FREEBSD = "freebsd"; //$NON-NLS-1$
+
+ /**
* Constant string (value "unknown") indicating the platform is running on a
* machine running an unknown operating system.
*/
diff --git a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml
index 7b4a01b..fbbbe06 100644
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/feature.xml
@@ -92,6 +92,16 @@
fragment="true"/>
+
+ "
+ ;;
+ esac
+ ;;
"AIX" | "aix")
makefile="make_aix.mak"
defaultOS="aix"
@@ -220,13 +243,14 @@ export OUTPUT_DIR PROGRAM_OUTPUT DEFAULT_OS DEFAULT_OS_ARCH DEFAULT_WS DEFAULT_J
# If the OS is supported (a makefile exists)
if [ "$makefile" != "" ]; then
if [ "$extraArgs" != "" ]; then
- make -f $makefile $extraArgs
+ echo "Building $OS launcher with args $extraArgs. Defaults: -os $DEFAULT_OS -arch $DEFAULT_OS_ARCH -ws $DEFAULT_WS"
+ ${MAKE} -f $makefile $extraArgs
else
echo "Building $OS launcher. Defaults: -os $DEFAULT_OS -arch $DEFAULT_OS_ARCH -ws $DEFAULT_WS"
- make -f $makefile clean
+ ${MAKE} -f $makefile clean
case x$CC in
- x*gcc*) make -f $makefile all PICFLAG=-fpic ;;
- *) make -f $makefile all ;;
+ x*cc*) ${MAKE} -f $makefile all PICFLAG=-fpic ;;
+ *) ${MAKE} -f $makefile all ;;
esac
fi
else
diff --git a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml
index 939c8b5..c2491a5 100644
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/pom.xml
@@ -101,6 +101,7 @@
+
assemble-launchers
diff --git a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.properties b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.properties
index 0f30a87..36382de 100644
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.properties
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.properties
@@ -19,6 +19,11 @@ root.win32.win32.x86.permissions.755=launcher.exe
root.win32.win32.x86_64=file:bin/win32/win32/x86_64/launcher.exe
root.win32.win32.x86_64.permissions.755=launcher.exe
+root.freebsd.gtk.x86=bin/gtk/freebsd/x86,gtk_root
+root.freebsd.gtk.x86.permissions.755=launcher,libcairo-swt.so
+root.freebsd.gtk.x86_64=bin/gtk/freebsd/x86_64,gtk_root
+root.freebsd.gtk.x86_64.permissions.755=launcher,libcairo-swt.so
+
root.linux.gtk.x86=bin/gtk/linux/x86,gtk_root
root.linux.gtk.x86.permissions.755=launcher,libcairo-swt.so
diff --git a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.xml b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.xml
index cdded03..a2a0af3 100644
--- a/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.xml
+++ b/rt.equinox.framework/features/org.eclipse.equinox.executable.feature/resources/build.xml
@@ -128,6 +128,22 @@