diff options
Diffstat (limited to 'bundles')
7 files changed, 148 insertions, 8 deletions
diff --git a/bundles/org.eclipse.equinox.executable/feature.xml b/bundles/org.eclipse.equinox.executable/feature.xml index 801453900..b8b7ea351 100644 --- a/bundles/org.eclipse.equinox.executable/feature.xml +++ b/bundles/org.eclipse.equinox.executable/feature.xml @@ -2,7 +2,7 @@ <feature id="org.eclipse.equinox.executable" label="%featureName" - version="3.4.1.qualifier"> + version="3.4.2.qualifier"> <description> %description @@ -139,6 +139,16 @@ fragment="true"/> <plugin + id="org.eclipse.equinox.launcher.gtk.aix.ppc64" + os="aix" + ws="gtk" + arch="ppc64" + download-size="0" + install-size="0" + version="0.0.0" + fragment="true"/> + + <plugin id="org.eclipse.equinox.launcher.motif.hpux.ia64_32" os="hpux" ws="motif" diff --git a/bundles/org.eclipse.equinox.executable/library/gtk/build.sh b/bundles/org.eclipse.equinox.executable/library/gtk/build.sh index 30606e252..f8217938a 100644 --- a/bundles/org.eclipse.equinox.executable/library/gtk/build.sh +++ b/bundles/org.eclipse.equinox.executable/library/gtk/build.sh @@ -94,6 +94,12 @@ case $OS in ;; esac ;; + "AIX") + makefile="make_aix.mak" + defaultOS="aix" + defaultOSArch="ppc64" + javaHome="/bluebird/teamswt/swt-builddir/JDKs/AIX/PPC64/j564/sdk" + ;; "SunOS") makefile="make_solaris.mak" defaultOS="solaris" @@ -161,7 +167,11 @@ if [ -n $javaHome ]; then fi if [ "$defaultOSArch" = "ppc64" ]; then - M_ARCH=-m64 + if [ "$defaultOS" = "aix" ]; then + M_ARCH=-maix64 + else + M_ARCH=-m64 + fi export M_ARCH elif [ "$defaultOSArch" = "s390" ]; then M_ARCH=-m31 diff --git a/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c b/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c index c6f888cd1..995c7cf8f 100644 --- a/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c +++ b/bundles/org.eclipse.equinox.executable/library/gtk/eclipseGtkInit.c @@ -94,11 +94,17 @@ static int loadGtkSymbols( void * library, FN_TABLE * table) { } int loadGtk() { - void * objLib = dlopen(GOBJ_LIB, RTLD_LAZY); - void * gdkLib = dlopen(GDK_LIB, RTLD_LAZY); - void * pixLib = dlopen(PIXBUF_LIB, RTLD_LAZY); - void * gtkLib = dlopen(GTK_LIB, RTLD_LAZY); - void * x11Lib = dlopen(X11_LIB, RTLD_LAZY); +#ifdef AIX +#define FLAGS RTLD_LAZY | RTLD_MEMBER +#else +#define FLAGS RTLD_LAZY +#endif + + void * objLib = dlopen(GOBJ_LIB, FLAGS); + void * gdkLib = dlopen(GDK_LIB, FLAGS); + void * pixLib = dlopen(PIXBUF_LIB, FLAGS); + void * gtkLib = dlopen(GTK_LIB, FLAGS); + void * x11Lib = dlopen(X11_LIB, FLAGS); /* initialize ptr struct to 0's */ memset(>k, 0, sizeof(struct GTK_PTRS)); diff --git a/bundles/org.eclipse.equinox.executable/library/gtk/make_aix.mak b/bundles/org.eclipse.equinox.executable/library/gtk/make_aix.mak new file mode 100644 index 000000000..05b8acd25 --- /dev/null +++ b/bundles/org.eclipse.equinox.executable/library/gtk/make_aix.mak @@ -0,0 +1,104 @@ +#******************************************************************************* +# Copyright (c) 2010 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 +# Kevin Cornell (Rational Software Corporation) +# Tom Tromey (Red Hat, Inc.) +#******************************************************************************* +include ../make_version.mak +# Makefile for creating the GTK eclipse launcher program. +# +# This makefile expects the utility "pkg-config" to be in the PATH. + +# This makefile expects the following environment variables set: +# +# PROGRAM_OUTPUT - the filename of the output executable +# DEFAULT_OS - the default value of the "-os" switch +# DEFAULT_OS_ARCH - the default value of the "-arch" switch +# DEFAULT_WS - the default value of the "-ws" switch +# JAVA_HOME - JAVA_HOME for jni headers +#default value for PROGRAM_OUTPUT + +PROGRAM_OUTPUT=eclipse +PROGRAM_LIBRARY=$(PROGRAM_OUTPUT)_$(LIB_VERSION).so + + +# Define the object modules to be compiled and flags. +CC=gcc +MAIN_OBJS = eclipseMain.o +COMMON_OBJS = eclipseConfig.o eclipseCommon.o eclipseGtkCommon.o eclipseGtkInit.o +DLL_OBJS = eclipse.o eclipseGtk.o eclipseUtil.o eclipseJNI.o eclipseMozilla.o eclipseShm.o eclipseNix.o + +EXEC = $(PROGRAM_OUTPUT) +DLL = $(PROGRAM_LIBRARY) +#LIBS = `pkg-config --libs-only-L gtk+-2.0` -lgtk-x11-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lgdk-x11-2.0 -lpthread -ldl -lX11 +LIBS = -lpthread -ldl +GTK_LIBS = -DGTK_LIB="\"libgtk-x11-2.0.a(libgtk-x11-2.0.so.0)\"" -DGDK_LIB="\"libgdk-x11-2.0.a(libgdk-x11-2.0.so.0)\"" -DPIXBUF_LIB="\"libgdk_pixbuf-2.0.a(libgdk_pixbuf-2.0.so.0)\"" -DGOBJ_LIB="\"libgobject-2.0.a(libgobject-2.0.so.0)\"" -DX11_LIB="\"libX11.a(shr_64.o)\"" +LFLAGS = ${M_ARCH} -shared +CFLAGS = ${M_ARCH} -g -s -Wall\ + -fpic \ + -DAIX \ + -DMOZILLA_FIX \ + -DDEFAULT_OS="\"$(DEFAULT_OS)\"" \ + -DDEFAULT_OS_ARCH="\"$(DEFAULT_OS_ARCH)\"" \ + -DDEFAULT_WS="\"$(DEFAULT_WS)\"" \ + -D$(DEFAULT_JAVA) \ + $(GTK_LIBS) \ + -I. \ + -I.. \ + -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/linux \ + `pkg-config --cflags gtk+-2.0` + +all: $(EXEC) $(DLL) + +eclipse.o: ../eclipse.c ../eclipseOS.h ../eclipseCommon.h ../eclipseJNI.h + $(CC) $(CFLAGS) -c ../eclipse.c -o eclipse.o + +eclipseMain.o: ../eclipseUnicode.h ../eclipseCommon.h ../eclipseMain.c + $(CC) $(CFLAGS) -c ../eclipseMain.c -o eclipseMain.o + +eclipseCommon.o: ../eclipseCommon.h ../eclipseUnicode.h ../eclipseCommon.c + $(CC) $(CFLAGS) -c ../eclipseCommon.c + +eclipseGtkCommon.o: ../eclipseCommon.h ../eclipseOS.h eclipseGtk.h eclipseGtkCommon.c + $(CC) $(CFLAGS) -c eclipseGtkCommon.c -o eclipseGtkCommon.o + +eclipseGtkInit.o: ../eclipseCommon.h eclipseGtk.h eclipseGtkInit.c + $(CC) $(CFLAGS) -c eclipseGtkInit.c -o eclipseGtkInit.o + +eclipseUtil.o: ../eclipseUtil.c ../eclipseUtil.h ../eclipseOS.h + $(CC) $(CFLAGS) -c ../eclipseUtil.c -o eclipseUtil.o + +eclipseJNI.o: ../eclipseJNI.c ../eclipseCommon.h ../eclipseOS.h ../eclipseJNI.h + $(CC) $(CFLAGS) -c ../eclipseJNI.c -o eclipseJNI.o + +eclipseConfig.o: ../eclipseConfig.c ../eclipseConfig.h ../eclipseOS.h + $(CC) $(CFLAGS) -c ../eclipseConfig.c -o eclipseConfig.o + +eclipseMozilla.o: ../eclipseMozilla.c ../eclipseMozilla.h ../eclipseOS.h + $(CC) $(CFLAGS) -c ../eclipseMozilla.c -o eclipseMozilla.o + +eclipseShm.o: ../eclipseShm.h ../eclipseUnicode.h ../eclipseShm.c + $(CC) $(CFLAGS) -c ../eclipseShm.c -o eclipseShm.o + +eclipseNix.o: ../eclipseNix.c + $(CC) $(CFLAGS) -c ../eclipseNix.c -o eclipseNix.o + +$(EXEC): $(MAIN_OBJS) $(COMMON_OBJS) + $(CC) ${M_ARCH} -o $(EXEC) $(MAIN_OBJS) $(COMMON_OBJS) $(LIBS) + +$(DLL): $(DLL_OBJS) $(COMMON_OBJS) + $(CC) $(LFLAGS) -o $(DLL) $(DLL_OBJS) $(COMMON_OBJS) $(LIBS) + +install: all + cp $(EXEC) $(OUTPUT_DIR) + cp $(DLL) $(LIBRARY_DIR) + rm -f $(EXEC) $(DLL) $(MAIN_OBJS) $(COMMON_OBJS) $(DLL_OBJS) + +clean: + rm -f $(EXEC) $(DLL) $(MAIN_OBJS) $(COMMON_OBJS) $(DLL_OBJS) diff --git a/bundles/org.eclipse.equinox.executable/library/make_version.mak b/bundles/org.eclipse.equinox.executable/library/make_version.mak index 0f5422390..e139932aa 100644 --- a/bundles/org.eclipse.equinox.executable/library/make_version.mak +++ b/bundles/org.eclipse.equinox.executable/library/make_version.mak @@ -10,5 +10,5 @@ #******************************************************************************* maj_ver=1 -min_ver=310 +min_ver=311 LIB_VERSION = $(maj_ver)$(min_ver) diff --git a/bundles/org.eclipse.equinox.executable/target.build.properties b/bundles/org.eclipse.equinox.executable/target.build.properties index 8f0e2541a..b3817cd42 100644 --- a/bundles/org.eclipse.equinox.executable/target.build.properties +++ b/bundles/org.eclipse.equinox.executable/target.build.properties @@ -43,6 +43,7 @@ root.macosx.cocoa.x86_64=bin/cocoa/macosx/x86_64 root.macosx.cocoa.x86_64.permissions.755=${launcherName}.app/Contents/MacOS/${launcherName} root.aix.motif.ppc=bin/motif/aix/ppc +root.aix.gtk.ppc64=bin/gtk/aix/ppc64 root.hpux.motif.PA_RISC=bin/motif/hpux/PA_RISC root.hpux.motif.ia64_32=bin/motif/hpux/ia64_32 diff --git a/bundles/org.eclipse.equinox.executable/target.build.xml b/bundles/org.eclipse.equinox.executable/target.build.xml index 346a52c53..ed649f2b8 100644 --- a/bundles/org.eclipse.equinox.executable/target.build.xml +++ b/bundles/org.eclipse.equinox.executable/target.build.xml @@ -154,6 +154,14 @@ </copy> <chmod perm="755" dir="${feature.base}/linux.gtk.ppc64/${collectingFolder}" includes="launcher" /> </target> + <target name="rootFilesaix_gtk_ppc64"> + <mkdir dir="${feature.base}/aix.gtk.ppc64/${collectingFolder}"/> + <copy todir="${feature.base}/aix.gtk.ppc64/${collectingFolder}" failonerror="true" overwrite="true"> + <fileset dir="${basedir}/bin/gtk/aix/ppc64" includes="**" /> + <fileset dir="${basedir}/gtk_root" includes="**" /> + </copy> + <chmod perm="755" dir="${feature.base}/aix.gtk.ppc64/${collectingFolder}" includes="launcher" /> + </target> <target name="rootFileslinux_gtk_x86_64"> <mkdir dir="${feature.base}/linux.gtk.x86_64/${collectingFolder}"/> <copy todir="${feature.base}/linux.gtk.x86_64/${collectingFolder}" failonerror="true" overwrite="true"> @@ -269,6 +277,7 @@ <antcall target="rootFilessolaris_gtk_x86"/> <antcall target="rootFilessolaris_motif_sparc"/> <antcall target="rootFilesaix_motif_ppc"/> + <antcall target="rootFilesaix_gtk_ppc64"/> <antcall target="rootFileshpux_motif_PA_RISC"/> <antcall target="rootFileshpux_motif_ia64"/> <antcall target="rootFileshpux_motif_ia64_32"/> |