--- org/eclipse/swt/browser/Mozilla.java.orig 2016-11-24 13:21:30 UTC +++ org/eclipse/swt/browser/Mozilla.java @@ -536,6 +536,8 @@ static String Arch () { static String OS() { String osName = System.getProperty("os.name"); //$NON-NLS-1$ if (osName.equals ("Linux")) return "linux"; //$NON-NLS-1$ $NON-NLS-2$ + if (osName.equals ("FreeBSD")) return "freebsd"; //$NON-NLS-1$ $NON-NLS-2$ + if (osName.equals ("BSDSUniX")) return "bsdsunix"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("AIX")) return "aix"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("Solaris") || osName.equals ("SunOS")) return "solaris"; //$NON-NLS-1$ $NON-NLS-2$ $NON-NLS-3$ if (osName.equals ("HP-UX")) return "hpux"; //$NON-NLS-1$ $NON-NLS-2$ --- org/eclipse/swt/internal/Library.java.orig 2016-11-24 13:21:30 UTC +++ org/eclipse/swt/internal/Library.java @@ -66,6 +66,8 @@ static String arch() { static String os() { String osName = System.getProperty("os.name"); //$NON-NLS-1$ if (osName.equals ("Linux")) return "linux"; //$NON-NLS-1$ $NON-NLS-2$ + if (osName.equals ("FreeBSD")) return "freebsd"; //$NON-NLS-1$ $NON-NLS-2$ + if (osName.equals ("BSDSUniX")) return "bsdsunix"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("AIX")) return "aix"; //$NON-NLS-1$ $NON-NLS-2$ if (osName.equals ("Solaris") || osName.equals ("SunOS")) return "solaris"; //$NON-NLS-1$ $NON-NLS-2$ $NON-NLS-3$ if (osName.equals ("HP-UX")) return "hpux"; //$NON-NLS-1$ $NON-NLS-2$ --- make_bsdsunix.mak.orig 2020-07-05 01:35:50.737847000 +0200 +++ make_bsdsunix.mak 2020-07-05 01:40:20.375747000 +0200 @@ -0,0 +1,263 @@ +#******************************************************************************* +# Copyright (c) 2000, 2016 IBM Corporation and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# IBM Corporation - initial API and implementation +#******************************************************************************* + +# Makefile for creating SWT libraries for BSDSUniX GTK + +include make_common.mak + +SWT_VERSION=$(maj_ver)$(min_ver) +GTK_VERSION?=2.0 + +# Define the various shared libraries to be build. +WS_PREFIX = gtk +SWT_PREFIX = swt +AWT_PREFIX = swt-awt +SWTPI_PREFIX = swt-pi +CAIRO_PREFIX = swt-cairo +ATK_PREFIX = swt-atk +MOZILLA_PREFIX = swt-mozilla$(GCC_VERSION) +XULRUNNER_PREFIX = swt-xulrunner +XPCOMINIT_PREFIX = swt-xpcominit +GLX_PREFIX = swt-glx + +SWT_LIB = lib$(SWT_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so +AWT_LIB = lib$(AWT_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so +SWTPI_LIB = lib$(SWTPI_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so +CAIRO_LIB = lib$(CAIRO_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so +ATK_LIB = lib$(ATK_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 +GLX_LIB = lib$(GLX_PREFIX)-$(WS_PREFIX)-$(SWT_VERSION).so + +CAIROCFLAGS = `pkg-config --cflags cairo` +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 gtk+-unix-print-$(GTK_VERSION)` +GTKLIBS = `pkg-config --libs-only-L gtk+-2.0 gthread-2.0` -lgtk-x11-2.0 -lgthread-2.0 -L$(LOCALBASE)/lib $(XLIB64) -lXtst + +AWT_LFLAGS = -shared +AWT_LIBS = -L$(AWT_LIB_PATH) -ljawt + +ATKCFLAGS = `pkg-config --cflags atk gtk+-2.0 gtk+-unix-print-$(GTK_VERSION)` +ATKLIBS = `pkg-config --libs-only-L atk gtk+-2.0` -latk-1.0 -lgtk-x11-2.0 + +GLXCFLAGS = -I$(LOCALBASE)/include +GLXLIBS = -L$(LOCALBASE)/lib -lGL -lGLU -lm + +# Uncomment for Native Stats tool +#NATIVE_STATS = -DNATIVE_STATS + +MOZILLACFLAGS = -O \ + -DSWT_VERSION=$(SWT_VERSION) \ + $(NATIVE_STATS) \ + -DMOZILLA_STRICT_API=1 \ + -fno-rtti \ + -fno-exceptions \ + -Wall \ + -Wno-non-virtual-dtor \ + -fPIC \ + -I. \ + -I$(JAVA_HOME)/include \ + -I$(JAVA_HOME)/include/bsdsunix \ + ${SWT_PTR_CFLAGS} +MOZILLALFLAGS = -shared -Wl,--version-script=mozilla_exports -Bsymbolic +MOZILLAEXCLUDES = -DNO__1XPCOMGlueShutdown \ + -DNO__1XPCOMGlueStartup \ + -DNO__1XPCOMGlueLoadXULFunctions \ + -DNO_memmove__ILorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2I \ + -DNO_memmove__JLorg_eclipse_swt_internal_mozilla_nsDynamicFunctionLoad_2J \ + -DNO_nsDynamicFunctionLoad_1sizeof \ + -DNO__1Call__IIIIII \ + -DNO__1Call__JJJJJI \ + -DNO_nsDynamicFunctionLoad +XULRUNNEREXCLUDES = -DNO__1NS_1InitXPCOM2 + +SWT_OBJECTS = swt.o c.o c_stats.o callback.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 +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 +XPCOMINIT_OBJECTS = swt.o xpcominit.o xpcominit_structs.o xpcominit_stats.o +GLX_OBJECTS = swt.o glx.o glx_structs.o glx_stats.o + +CFLAGS = -O -Wall \ + -DSWT_VERSION=$(SWT_VERSION) \ + $(NATIVE_STATS) \ + -DBSDSUNIX -DGTK \ + -I$(LOCALBASE)/include \ + -I$(JAVA_HOME)/include \ + -I$(JAVA_HOME)/include/bsdsunix \ + -fPIC \ + ${SWT_PTR_CFLAGS} +LFLAGS = -shared -fPIC + +.ifndef NO_STRIP +AWT_LFLAGS := $(AWT_LFLAGS) -s +MOZILLALFLAGS := $(MOZILLALFLAGS) -s +LFLAGS := $(LFLAGS) -s +.endif + +all: make_swt make_atk make_glx + +# +# SWT libs +# +make_swt: $(SWT_LIB) $(SWTPI_LIB) + +$(SWT_LIB): $(SWT_OBJECTS) + $(CC) $(LFLAGS) -o $(SWT_LIB) $(SWT_OBJECTS) + +callback.o: callback.c callback.h + $(CC) $(CFLAGS) -DUSE_ASSEMBLER -c callback.c + +$(SWTPI_LIB): $(SWTPI_OBJECTS) + $(CC) $(LFLAGS) -o $(SWTPI_LIB) $(SWTPI_OBJECTS) $(GTKLIBS) + +swt.o: swt.c swt.h + $(CC) $(CFLAGS) -c swt.c +os.o: os.c os.h swt.h os_custom.h + $(CC) $(CFLAGS) $(GTKCFLAGS) -c os.c +os_structs.o: os_structs.c os_structs.h os.h swt.h + $(CC) $(CFLAGS) $(GTKCFLAGS) -c os_structs.c +os_custom.o: os_custom.c os_structs.h os.h swt.h + $(CC) $(CFLAGS) $(GTKCFLAGS) -c os_custom.c +os_stats.o: os_stats.c os_structs.h os.h os_stats.h swt.h + $(CC) $(CFLAGS) $(GTKCFLAGS) -c os_stats.c + +# +# CAIRO libs +# +make_cairo: $(CAIRO_LIB) + +$(CAIRO_LIB): $(CAIRO_OBJECTS) + $(CC) $(LFLAGS) -o $(CAIRO_LIB) $(CAIRO_OBJECTS) $(CAIROLIBS) + +cairo.o: cairo.c cairo.h swt.h + $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo.c +cairo_structs.o: cairo_structs.c cairo_structs.h cairo.h swt.h + $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo_structs.c +cairo_stats.o: cairo_stats.c cairo_structs.h cairo.h cairo_stats.h swt.h + $(CC) $(CFLAGS) $(CAIROCFLAGS) -c cairo_stats.c + +# +# AWT lib +# +make_awt:$(AWT_LIB) + +$(AWT_LIB): $(AWT_OBJECTS) + $(CC) $(AWT_LFLAGS) -o $(AWT_LIB) $(AWT_OBJECTS) $(AWT_LIBS) + +# +# Atk lib +# +make_atk: $(ATK_LIB) + +$(ATK_LIB): $(ATK_OBJECTS) + $(CC) $(LFLAGS) -o $(ATK_LIB) $(ATK_OBJECTS) $(ATKLIBS) + +atk.o: atk.c atk.h + $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk.c +atk_structs.o: atk_structs.c atk_structs.h atk.h + $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk_structs.c +atk_custom.o: atk_custom.c atk_structs.h atk.h + $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk_custom.c +atk_stats.o: atk_stats.c atk_structs.h atk_stats.h atk.h + $(CC) $(CFLAGS) $(ATKCFLAGS) -c atk_stats.c + +# +# Mozilla lib +# +make_mozilla:$(MOZILLA_LIB) + +$(MOZILLA_LIB): $(MOZILLA_OBJECTS) + $(CXX) -o $(MOZILLA_LIB) $(MOZILLA_OBJECTS) $(MOZILLALFLAGS) ${MOZILLA_LIBS} + +xpcom.o: xpcom.cpp + $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom.cpp + +xpcom_structs.o: xpcom_structs.cpp + $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom_structs.cpp + +xpcom_custom.o: xpcom_custom.cpp + $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom_custom.cpp + +xpcom_stats.o: xpcom_stats.cpp + $(CXX) $(MOZILLACFLAGS) $(MOZILLAEXCLUDES) ${MOZILLA_INCLUDES} -c xpcom_stats.cpp + +# +# XULRunner lib +# +make_xulrunner:$(XULRUNNER_LIB) + +$(XULRUNNER_LIB): $(XULRUNNER_OBJECTS) + $(CXX) -o $(XULRUNNER_LIB) $(XULRUNNER_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS} + +xpcomxul.o: xpcom.cpp + $(CXX) -o xpcomxul.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom.cpp + +xpcomxul_structs.o: xpcom_structs.cpp + $(CXX) -o xpcomxul_structs.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom_structs.cpp + +xpcomxul_custom.o: xpcom_custom.cpp + $(CXX) -o xpcomxul_custom.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom_custom.cpp + +xpcomxul_stats.o: xpcom_stats.cpp + $(CXX) -o xpcomxul_stats.o $(MOZILLACFLAGS) $(XULRUNNEREXCLUDES) ${XULRUNNER_INCLUDES} -c xpcom_stats.cpp + +# +# XPCOMInit lib +# +make_xpcominit:$(XPCOMINIT_LIB) + +$(XPCOMINIT_LIB): $(XPCOMINIT_OBJECTS) + $(CXX) -o $(XPCOMINIT_LIB) $(XPCOMINIT_OBJECTS) $(MOZILLALFLAGS) ${XULRUNNER_LIBS} + +xpcominit.o: xpcominit.cpp + $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit.cpp + +xpcominit_structs.o: xpcominit_structs.cpp + $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit_structs.cpp + +xpcominit_stats.o: xpcominit_stats.cpp + $(CXX) $(MOZILLACFLAGS) ${XULRUNNER_INCLUDES} -c xpcominit_stats.cpp + +# +# GLX lib +# +make_glx: $(GLX_LIB) + +$(GLX_LIB): $(GLX_OBJECTS) + $(CC) $(LFLAGS) -o $(GLX_LIB) $(GLX_OBJECTS) $(GLXLIBS) + +glx.o: glx.c + $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx.c + +glx_structs.o: glx_structs.c + $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx_structs.c + +glx_stats.o: glx_stats.c glx_stats.h + $(CC) $(CFLAGS) $(GLXCFLAGS) -c glx_stats.c + +# +# Install +# +install: all + cp *.so $(OUTPUT_DIR) + +# +# Clean +# +clean: + rm -f *.o *.so