diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/.classpath_gtk eclipse.platform.swt/bundles/org.eclipse.swt/.classpath_gtk --- eclipse.platform.swt/bundles/org.eclipse.swt/.classpath_gtk 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/.classpath_gtk 0000-00-00 00:00:00.000000000 +0000 @@ -9,7 +9,7 @@ - + diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/layout/FillLayout.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/layout/FillLayout.java --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/layout/FillLayout.java 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/common/org/eclipse/swt/layout/FillLayout.java 0000-00-00 00:00:00.000000000 +0000 @@ -10,7 +10,6 @@ * * Contributors: * IBM Corporation - initial API and implementation - * Christoph Läubrich - Bug 513185 *******************************************************************************/ package org.eclipse.swt.layout; diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Widget.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Widget.java --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Widget.java 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/win32/org/eclipse/swt/widgets/Widget.java 0000-00-00 00:00:00.000000000 +0000 @@ -10,7 +10,7 @@ * * Contributors: * IBM Corporation - initial API and implementation - * Pierre-Yves B., pyvesdev@gmail.com - Bug 219750: [styled text] Typing ~~ inserts é~~ + * Pierre-Yves B., pyvesdev@gmail.com - Bug 219750 *******************************************************************************/ package org.eclipse.swt.widgets; diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/common/org/eclipse/swt/internal/Library.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/common/org/eclipse/swt/internal/Library.java --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/common/org/eclipse/swt/internal/Library.java 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/common/org/eclipse/swt/internal/Library.java 0000-00-00 00:00:00.000000000 +0000 @@ -63,12 +63,12 @@ static String arch() { String osArch = System.getProperty("os.arch"); //$NON-NLS-1$ - if (osArch.equals ("amd64")) return "x86_64"; //$NON-NLS-1$ $NON-NLS-2$ return osArch; } static String os() { String osName = System.getProperty("os.name"); //$NON-NLS-1$ + if (osName.equals ("FreeBSD")) return "freebsd"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("Linux")) return "linux"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("Mac OS X")) return "macosx"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.startsWith ("Win")) return "win32"; //$NON-NLS-1$ $NON-NLS-2$ diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh 0000-00-00 00:00:00.000000000 +0000 @@ -72,9 +72,9 @@ cd `dirname $0` -MAKE_TYPE=make +MAKE_TYPE=gmake -export CFLAGS='-O -Wall -fPIC' +export CFLAGS="${CFLAGS--O -Wall} -fPIC" # Determine which OS we are on if [ "${OS}" = "" ]; then @@ -86,27 +86,30 @@ MAKEFILE=make_win32.mak ;; *) - SWT_OS=`uname -s | tr -s '[:upper:]' '[:lower:]'` + SWT_OS=`uname -s | tr '[:upper:]' '[:lower:]'` MAKEFILE=make_linux.mak ;; esac # Determine which CPU type we are building for if [ "${MODEL}" = "" ]; then - if uname -i > /dev/null 2>&1; then - MODEL=`uname -i` - if [ ${MODEL} = 'unknown' ]; then - MODEL=`uname -m` - fi - else MODEL=`uname -m` - fi fi case $MODEL in "x86_64") SWT_ARCH=x86_64 AWT_ARCH=amd64 ;; + "powerpc" | "powerpc64") + SWT_ARCH=ppc64 + AWT_ARCH=ppc64 + MODEL=`uname -p` + ;; + "powerpc64le") + SWT_ARCH=ppc64le + AWT_ARCH=ppc64le + MODEL=`uname -p` + ;; *) SWT_ARCH=$MODEL AWT_ARCH=$MODEL @@ -114,6 +117,13 @@ esac case $SWT_OS.$SWT_ARCH in + "freebsd.ppc64") + if [ "${JAVA_HOME}" = "" ]; then + DYNAMIC_JAVA_HOME=`readlink -f /usr/local/bin/java | sed "s:jre/::" | sed "s:bin/java::"` + JAVA_HOME = $DYNAMIC_JAVA_HOME + export JAVA_HOME + fi + ;; "linux.x86_64") if [ "${CC}" = "" ]; then export CC=gcc @@ -159,7 +169,7 @@ # For 64-bit CPUs, we have a switch -if [ ${MODEL} = 'x86_64' -o ${MODEL} = 'ppc64le' -o ${MODEL} = 'aarch64' -o ${MODEL} = 'loongarch64' ]; then +if [ ${MODEL} = 'amd64' -o ${MODEL} = 'powerpc64' -o ${MODEL} = 'powerpc64le' -o ${MODEL} = 'aarch64' -o ${MODEL} = 'loongarch64' ]; then SWT_PTR_CFLAGS=-DJNI64 if [ -d /lib64 ]; then XLIB64=-L/usr/X11R6/lib64 @@ -170,6 +180,11 @@ XLIB64="${XLIB64} -L/usr/lib64" SWT_LFLAGS=-m64 export SWT_LFLAGS + fi + if [ ${SWT_OS} = "freebsd" ] + then + SWT_PTR_CFLAGS="${SWT_PTR_CFLAGS} -m64" + export SWT_LFLAGS=-m64 fi export SWT_PTR_CFLAGS fi diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_linux.mak eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_linux.mak --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_linux.mak 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/make_linux.mak 0000-00-00 00:00:00.000000000 +0000 @@ -98,16 +98,18 @@ WEBKIT_OBJECTS = swt.o webkitgtk.o webkitgtk_structs.o webkitgtk_stats.o webkitgtk_custom.o GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o +port_prefix=`pkg-config --variable=prefix gtk+-3.0` CFLAGS := $(CFLAGS) \ -DSWT_VERSION=$(SWT_VERSION) \ $(NATIVE_STATS) \ $(SWT_DEBUG) \ $(SWT_WEBKIT_DEBUG) \ - -DLINUX -DGTK \ + -DFREEBSD -DGTK \ + -I$(port_prefix)/include \ -I$(JAVA_HOME)/include \ - -I$(JAVA_HOME)/include/linux \ + -I$(JAVA_HOME)/include/freebsd \ ${SWT_PTR_CFLAGS} -LFLAGS = -shared -fPIC ${SWT_LFLAGS} +LFLAGS = -shared -fPIC ${SWT_LFLAGS} -L$(port_prefix)/lib # Treat all warnings as errors. If your new code produces a warning, please # take time to properly understand and fix/silence it as necessary. diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java 0000-00-00 00:00:00.000000000 +0000 @@ -65,8 +65,8 @@ /* Initialize the OS flags and locale constants */ String osName = System.getProperty ("os.name"); - boolean isLinux = false, isWin32 = false; - if (osName.equals ("Linux")) isLinux = true; + boolean isLinux = osName.equals ("Linux") || osName.equals ("FreeBSD"); + boolean isWin32 = false; if (osName.startsWith("Windows")) isWin32 = true; IsLinux = isLinux; IsWin32 = isWin32; diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java --- eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT WebKit/gtk/org/eclipse/swt/browser/WebKit.java 0000-00-00 00:00:00.000000000 +0000 @@ -114,7 +114,7 @@ * https://www.nczonline.net/blog/2009/01/05/what-determines-that-a-script-is-long-running/ * https://stackoverflow.com/questions/3030024/maximum-execution-time-for-javascript */ - static final int ASYNC_EXEC_TIMEOUT_MS = 10000; + static final int ASYNC_EXEC_TIMEOUT_MS = 100; // Dirty hack for webkit issues on FreeBSD /** Workaround for bug 522733 */ static boolean bug522733FirstInstanceCreated = false; diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf --- eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/META-INF/p2.inf 0000-00-00 00:00:00.000000000 +0000 @@ -16,19 +16,19 @@ requires.3.filter = (&(osgi.os=macosx)(osgi.ws=cocoa)(osgi.arch=x86_64)(!(org.eclipse.swt.buildtime=true))) requires.4.namespace = org.eclipse.equinox.p2.iu -requires.4.name = org.eclipse.swt.gtk.linux.x86_64 +requires.4.name = org.eclipse.swt.gtk.freebsd.amd64 requires.4.range = [$version$,$version$] -requires.4.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=x86_64)(!(org.eclipse.swt.buildtime=true))) +requires.4.filter = (&(osgi.os=freebsd)(osgi.ws=gtk)(osgi.arch=amd64)(!(org.eclipse.swt.buildtime=true))) requires.5.namespace = org.eclipse.equinox.p2.iu -requires.5.name = org.eclipse.swt.gtk.linux.ppc64le +requires.5.name = org.eclipse.swt.gtk.freebsd.powerpc64 requires.5.range = [$version$,$version$] -requires.5.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=ppc64le)(!(org.eclipse.swt.buildtime=true))) +requires.5.filter = (&(osgi.os=freebsd)(osgi.ws=gtk)(osgi.arch=powerpc64)(!(org.eclipse.swt.buildtime=true))) requires.6.namespace = org.eclipse.equinox.p2.iu -requires.6.name = org.eclipse.swt.gtk.linux.aarch64 +requires.6.name = org.eclipse.swt.gtk.freebsd.powerpc64le requires.6.range = [$version$,$version$] -requires.6.filter = (&(osgi.os=linux)(osgi.ws=gtk)(osgi.arch=aarch64)(!(org.eclipse.swt.buildtime=true))) +requires.6.filter = (&(osgi.os=freebsd)(osgi.ws=gtk)(osgi.arch=powerpc64le)(!(org.eclipse.swt.buildtime=true))) requires.7.namespace = org.eclipse.equinox.p2.iu requires.7.name = org.eclipse.swt.cocoa.macosx.aarch64 diff -ru eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml --- eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt/buildSWT.xml 0000-00-00 00:00:00.000000000 +0000 @@ -67,17 +67,21 @@ - + - + - + + + + + @@ -88,13 +92,13 @@ - + Matched files ${toString:match} - + diff -ru eclipse.platform.swt/bundles/org.eclipse.swt.tools/Oomph/platformSwt.setup eclipse.platform.swt/bundles/org.eclipse.swt.tools/Oomph/platformSwt.setup --- eclipse.platform.swt/bundles/org.eclipse.swt.tools/Oomph/platformSwt.setup 0000-00-00 00:00:00.000000000 +0000 +++ eclipse.platform.swt/bundles/org.eclipse.swt.tools/Oomph/platformSwt.setup 0000-00-00 00:00:00.000000000 +0000 @@ -91,7 +91,7 @@ xsi:type="predicates:NotPredicate"> + pattern=".*(cocoa|gtk|win32)(\.(freebsd|macosx|aix|hpux|linux|solaris|win32)(\.(amd64|x86_64|powerpc64|ia64|aarch64|arm|ppc64|powerpc64le|s390|s390x|x86|sparcv9))?)?"/> unix - Linux + @@ -122,17 +123,22 @@ ${tycho.version} - - linux - gtk - x86_64 - - - linux - gtk - ppc64le - - + + freebsd + gtk + amd64 + + + freebsd + gtk + powerpc64 + + + freebsd + gtk + powerpc64le + +