diff options
author | 2008-08-05 08:08:10 +0000 | |
---|---|---|
committer | 2008-08-05 08:08:10 +0000 | |
commit | bd61a534f68b6afa7fa8026fb7a6f050daa30193 (patch) | |
tree | a3ae3f6c57ed8edb1d5e1220c9078802302bcb01 /dev-util/eclipse-sdk/files | |
parent | Eclipse-3.4 version bump (#229609) (diff) | |
download | historical-bd61a534f68b6afa7fa8026fb7a6f050daa30193.tar.gz historical-bd61a534f68b6afa7fa8026fb7a6f050daa30193.tar.bz2 historical-bd61a534f68b6afa7fa8026fb7a6f050daa30193.zip |
Eclipse-3.4 version bump (#229609)
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'dev-util/eclipse-sdk/files')
8 files changed, 467 insertions, 0 deletions
diff --git a/dev-util/eclipse-sdk/files/3.4/ant-osgi-manifest.mf b/dev-util/eclipse-sdk/files/3.4/ant-osgi-manifest.mf new file mode 100644 index 000000000000..deb8a6aa87a8 --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/ant-osgi-manifest.mf @@ -0,0 +1,30 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Apache Ant +Bundle-Vendor: Gentoo +Bundle-SymbolicName: org.apache.ant +Bundle-Version: 1.7.0 +Bundle-ClassPath: lib/ant.jar,lib/ant-launcher.jar,lib/ant-nodeps.jar +Export-Package: images,org.apache.tools.ant,org.apache.tools.ant.dispatch,org.apache.tools.ant.filters,org.apache.tools.ant.filters.util, + org.apache.tools.ant.helper,org.apache.tools.ant.input,org.apache.tools.ant.listener,org.apache.tools.ant.loader, + org.apache.tools.ant.taskdefs,org.apache.tools.ant.taskdefs.compilers,org.apache.tools.ant.taskdefs.condition, + org.apache.tools.ant.taskdefs.cvslib,org.apache.tools.ant.taskdefs.email,org.apache.tools.ant.taskdefs.optional, + org.apache.tools.ant.taskdefs.optional.ccm,org.apache.tools.ant.taskdefs.optional.clearcase,org.apache.tools.ant.taskdefs.optional.depend, + org.apache.tools.ant.taskdefs.optional.depend.constantpool,org.apache.tools.ant.taskdefs.optional.dotnet, + org.apache.tools.ant.taskdefs.optional.ejb,org.apache.tools.ant.taskdefs.optional.extension,org.apache.tools.ant.launch, + org.apache.tools.ant.taskdefs.optional.extension.resolvers,org.apache.tools.ant.taskdefs.optional.i18n, + org.apache.tools.ant.taskdefs.optional.image,org.apache.tools.ant.taskdefs.optional.j2ee,org.apache.tools.ant.taskdefs.optional.javacc, + org.apache.tools.ant.taskdefs.optional.javah,org.apache.tools.ant.taskdefs.optional.jdepend,org.apache.tools.ant.taskdefs.optional.jlink, + org.apache.tools.ant.taskdefs.optional.jsp,org.apache.tools.ant.taskdefs.optional.jsp.compilers,org.apache.tools.ant.taskdefs.optional.junit, + org.apache.tools.ant.taskdefs.optional.junit.xsl,org.apache.tools.ant.taskdefs.optional.native2ascii,org.apache.tools.ant.taskdefs.optional.net, + org.apache.tools.ant.taskdefs.optional.perforce,org.apache.tools.ant.taskdefs.optional.pvcs,org.apache.tools.ant.taskdefs.optional.scm, + org.apache.tools.ant.taskdefs.optional.script,org.apache.tools.ant.taskdefs.optional.sos,org.apache.tools.ant.taskdefs.optional.sound, + org.apache.tools.ant.taskdefs.optional.splash,org.apache.tools.ant.taskdefs.optional.ssh,org.apache.tools.ant.taskdefs.optional.starteam, + org.apache.tools.ant.taskdefs.optional.unix,org.apache.tools.ant.taskdefs.optional.vss,org.apache.tools.ant.taskdefs.optional.windows, + org.apache.tools.ant.taskdefs.rmic,org.apache.tools.ant.types,org.apache.tools.ant.types.conditions,org.apache.tools.ant.types.mappers, + org.apache.tools.ant.types.optional,org.apache.tools.ant.types.optional.depend,org.apache.tools.ant.types.optional.image, + org.apache.tools.ant.types.resolver,org.apache.tools.ant.types.resources,org.apache.tools.ant.types.resources.comparators, + org.apache.tools.ant.types.resources.selectors,org.apache.tools.ant.types.selectors,org.apache.tools.ant.types.selectors.modifiedselector, + org.apache.tools.ant.types.spi,org.apache.tools.ant.util,org.apache.tools.ant.util.depend,org.apache.tools.ant.util.depend.bcel, + org.apache.tools.ant.util.facade,org.apache.tools.ant.util.java15,org.apache.tools.ant.util.optional,org.apache.tools.ant.util.regexp, + org.apache.tools.bzip2,org.apache.tools.mail,org.apache.tools.tar,org.apache.tools.zip
\ No newline at end of file diff --git a/dev-util/eclipse-sdk/files/3.4/eclipse-3.4 b/dev-util/eclipse-sdk/files/3.4/eclipse-3.4 new file mode 100644 index 000000000000..30beb7736ecc --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/eclipse-3.4 @@ -0,0 +1,40 @@ +#! /bin/sh +# +# Tiny startup wrapper for Eclipse +# +# Copyright (c) 2004, Karl Trygve Kalleberg <karltk@gentoo.org> +# Copyright (c) 2007-2008, Jean-Noël Rivasseau <elvanor@gentoo.org> +# Copyright (c) 2004-2008, Gentoo Foundation +# +# Licensed under the GNU General Public License, version 2 +# + +SLOT="3.4" + +[ -f "/etc/eclipserc" ] && source "/etc/eclipserc" +[ -f "$HOME/.gentoo/.eclipserc" ] && source "$HOME/.gentoo/.eclipserc" + +ECLIPSE_HOME=${ECLIPSE_HOME:="/usr/lib/eclipse-${SLOT}"} +ECLIPSE_BIN="${ECLIPSE_HOME}/eclipse" + +if [ ! -x ${ECLIPSE_BIN} ] ; then + echo "Failed to find executable '${ECLIPSE_BIN}'" > /dev/stderr + exit -1 +fi + +if [ $(id -u) -eq 0 ] ; then + echo "Do not run eclipse as root user! Exiting ..." + exit -1 +fi + +[[ "$(java-config -f)" =~ "gcj" ]] \ + && export JAVA_PKG_CLASSMAP="${ECLIPSE_HOME}/eclipse.gcjdb" + +eval $(gjl --package "swt-${SLOT}" --get-args) + +[ -n "${ECLIPSE_XMS}" ] && VM_ARGS="${VM_ARGS} -Xms${ECLIPSE_XMS}" +[ -n "${ECLIPSE_XMX}" ] && VM_ARGS="${VM_ARGS} -Xmx${ECLIPSE_XMX}" +[ -n "${ECLIPSE_PERMSIZE}" ] && VM_ARGS="${VM_ARGS} -XX:PermSize=${ECLIPSE_PERMSIZE}" +[ -n "${ECLIPSE_MAX_PERMSIZE}" ] && VM_ARGS="${VM_ARGS} -XX:MaxPermSize=${ECLIPSE_MAX_PERMSIZE}" + +exec ${ECLIPSE_BIN} -vm $(java-config --java) "$@" "${ECLIPSE_USER_ARGS}" -vmargs ${VM_ARGS}
\ No newline at end of file diff --git a/dev-util/eclipse-sdk/files/3.4/eclipse_String.compareTo.diff b/dev-util/eclipse-sdk/files/3.4/eclipse_String.compareTo.diff new file mode 100644 index 000000000000..a39c23618d3c --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/eclipse_String.compareTo.diff @@ -0,0 +1,33 @@ +--- plugins/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/ApiProfileWizardPage.java.orig 2008-04-01 11:24:25.000000000 +0200 ++++ plugins/org.eclipse.pde.api.tools.ui/src/org/eclipse/pde/api/tools/ui/internal/wizards/ApiProfileWizardPage.java 2008-04-01 11:25:43.000000000 +0200 +@@ -282,7 +282,7 @@ + } + Collections.sort(items, new Comparator() { + public int compare(Object o1, Object o2) { +- return ((String)o1).compareTo(o2); ++ return ((String)o1).compareTo((String)o2); + } + }); + +--- plugins/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/DeltaReportConversionTask.java.orig 2008-05-05 21:35:49.000000000 +0200 ++++ plugins/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/DeltaReportConversionTask.java 2008-05-05 21:36:16.000000000 +0200 +@@ -243,7 +243,7 @@ + public int compare(Object o1, Object o2) { + Map.Entry entry1 = (Map.Entry) o1; + Map.Entry entry2 = (Map.Entry) o2; +- return ((String) entry1.getKey()).compareTo(entry2.getKey()); ++ return ((String)entry1.getKey()).compareTo((String)entry2.getKey()); + } + }); + for (Iterator iterator = allEntries.iterator(); iterator.hasNext(); ) { +--- plugins/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsVerificationTask.java.orig 2008-06-11 17:16:18.000000000 +0200 ++++ plugins/org.eclipse.pde.api.tools/src_ant/org/eclipse/pde/api/tools/internal/tasks/APIToolsVerificationTask.java 2008-06-11 17:16:39.000000000 +0200 +@@ -656,7 +656,7 @@ + public int compare(Object o1, Object o2) { + Map.Entry entry1 = (Map.Entry) o1; + Map.Entry entry2 = (Map.Entry) o2; +- return ((String) entry1.getKey()).compareTo(entry2.getKey()); ++ return ((String)entry1.getKey()).compareTo((String)entry2.getKey()); + } + }); + Summary[] summaries = new Summary[size]; diff --git a/dev-util/eclipse-sdk/files/3.4/eclipse_build-libs.diff b/dev-util/eclipse-sdk/files/3.4/eclipse_build-libs.diff new file mode 100644 index 000000000000..0f77f3634b72 --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/eclipse_build-libs.diff @@ -0,0 +1,45 @@ +--- build.xml 2008-06-11 17:43:11.000000000 +0200 ++++ build.xml 2008-05-02 07:33:57.000000000 +0200 +@@ -1,7 +1,7 @@ + <project name="Eclipse SDK Source Build" default="run" basedir="."> + + <!-- default target that runs complete build --> +- <target name="run" depends="fetch,insertBuildId,compile,install" /> ++ <target name="run" depends="fetch,insertBuildId,compile,compilelibs,install" /> + + <!-- all features required to build eclipse sdk and javadoc --> + <target name="allElements"> +@@ -71,6 +71,33 @@ + <record name="compilelog.txt" action="stop" /> + </target> + ++ <target name="compilelibs" depends="init,clean,compile" if="libsconfig"> ++ <property name="launcherlibs" value="${buildDirectory}/features/org.eclipse.equinox.executable" /> ++ <exec dir="${launcherlibs}/library/${installWs}/" executable="sh" failonerror="true"> ++ <arg line="build.sh -java ${java5.home}" /> ++ </exec> ++ <copy file="${launcherlibs}/library/${installWs}/eclipse" todir="${buildDirectory}/eclipse/" /> ++ ++ <property name="launcherfragment" value="org.eclipse.equinox.launcher.${installWs}.${installOs}.${installArch}" /> ++ ++ <copy file="${launcherlibs}/library/${installWs}/eclipse" todir="features/org.eclipse.equinox.executable/contributed/${installWs}/${installOs}/${installArch}/" /> ++ <copy todir="${buildDirectory}/plugins/${launcherfragment}"> ++ <fileset dir="${launcherlibs}/library/${installWs}"> ++ <include name="**/*.so" /> ++ </fileset> ++ </copy> ++ ++ <!-- build liblocalfile --> ++ <exec dir="plugins/org.eclipse.core.filesystem/natives/unix/linux" executable="make" failonerror="true" /> ++ <move file="plugins/org.eclipse.core.filesystem/natives/unix/linux/liblocalfile_1_0_0.so" todir="plugins/org.eclipse.core.filesystem.linux.${installArch}/os/linux/${installArch}"> ++ </move> ++ <!-- build libupdate --> ++ <ant dir="plugins/org.eclipse.update.core.linux/src" antfile="build.xml" /> ++ ++ </target> ++ ++ ++ + <!--create an installable eclipse runtime--> + <target name="install" depends="init"> + <echo message="Assembling..." /> diff --git a/dev-util/eclipse-sdk/files/3.4/eclipse_buildfix-pde.diff b/dev-util/eclipse-sdk/files/3.4/eclipse_buildfix-pde.diff new file mode 100644 index 000000000000..129658735945 --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/eclipse_buildfix-pde.diff @@ -0,0 +1,11 @@ +--- features/org.eclipse.pde/build.xml.orig 2008-05-05 21:45:14.000000000 +0200 ++++ features/org.eclipse.pde/build.xml 2008-05-05 21:45:31.000000000 +0200 +@@ -69,7 +69,7 @@ + <target name="update.feature" depends="init"> + </target> + +- <target name="all.children" depends="init,all.features,all.plugins,update.feature"> ++ <target name="all.children" depends="init,all.plugins,all.features,update.feature"> + </target> + + <target name="children" if="include.children"> diff --git a/dev-util/eclipse-sdk/files/3.4/eclipserc b/dev-util/eclipse-sdk/files/3.4/eclipserc new file mode 100644 index 000000000000..3e97c2b25b36 --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/eclipserc @@ -0,0 +1,25 @@ +# This file specifies some initial Eclipse settings, like memory allowed to Eclipse. +# These settings only affect Eclipse startup and overall configuration. +# Main Eclipse configuration should be done within Eclipse (with the GUI). + +# Following variables controls the minimal and maximum amounts of memory +# allocated to Eclipse (respectively). +# Increase those numbers if you get OutOfMemory errors or if you have lots of memory to +# throw at Eclipse. + +ECLIPSE_XMS=128m +ECLIPSE_XMX=256m + +# Following variables controls the minimal and maximum amounts of memory +# allocated to the permanent generation space. +# This space contains data related to all classes. +# The default values should be enough for most people, but you can increase those amounts +# if you get crashes related to OutOfMemory in PermGen exceptions. +# If you lack memory, you can also try decrease those amounts. + +ECLIPSE_PERMSIZE=128m +ECLIPSE_MAX_PERMSIZE=256m + +# Additional needed properties (see bug #219413) + +#ECLIPSE_USER_ARGS=""
\ No newline at end of file diff --git a/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-libupdatebuild2.patch b/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-libupdatebuild2.patch new file mode 100644 index 000000000000..263adbbc516c --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-libupdatebuild2.patch @@ -0,0 +1,10 @@ +--- plugins/org.eclipse.update.core.linux/src/build.xml.orig 2008-06-11 17:29:43.000000000 +0200 ++++ plugins/org.eclipse.update.core.linux/src/build.xml 2008-06-11 17:30:03.000000000 +0200 +@@ -5,7 +5,6 @@ + <!-- Set a meaningful default value for when it is not. --> + <property name="eclipse-home" value="${basedir}/../.."/> + <property name="jdk-path" value="${java.home}"/> +- <property name="installArch" value="x86" /> + <property name="destination" value="${eclipse-home}/org.eclipse.update.core.linux/os/linux/${installArch}/"/> + <property name="obj-path" value="${eclipse-home}/org.eclipse.update.core.linux/src/"/> + <property name="src-path" value="${eclipse-home}/org.eclipse.update.core.linux/src/"/> diff --git a/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-pde.build-add-package-build.patch b/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-pde.build-add-package-build.patch new file mode 100644 index 000000000000..77f347d6a73a --- /dev/null +++ b/dev-util/eclipse-sdk/files/3.4/fedora/eclipse-pde.build-add-package-build.patch @@ -0,0 +1,273 @@ +Index: templates/package-build/build.properties +=================================================================== +RCS file: templates/package-build/build.properties +diff -N templates/package-build/build.properties +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ templates/package-build/build.properties 1 Jan 1970 00:00:00 -0000 +@@ -0,0 +1,12 @@ ++buildDirectory=${sourceDirectory}/build ++buildLabel=rpmBuild ++archivePrefix=eclipse ++skipFetch=true ++javacFailOnError=true ++collectingFolder=eclipse ++archivesFormat=*,*,*-zip ++zipargs=-y ++javacDebugInfo=true ++archiveName=${id}.zip ++runPackager=false ++baseLocation=/usr/share/eclipse +Index: templates/package-build/customTargets-assemble-target.xml +=================================================================== +RCS file: templates/package-build/customTargets-assemble-target.xml +diff -N templates/package-build/customTargets-assemble-target.xml +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ templates/package-build/customTargets-assemble-target.xml 1 Jan 1970 00:00:00 -0000 +@@ -0,0 +1,12 @@ ++<project> ++ <!-- ===================================================================== --> ++ <!-- Targets to assemble the built elements for particular configurations --> ++ <!-- These generally call the generated assemble scripts (named in --> ++ <!-- ${assembleScriptName}) but may also add pre and post processing --> ++ <!-- Add one target for each root element and each configuration --> ++ <!-- ===================================================================== --> ++ ++ <target name="assemble.@id@"> ++ <ant antfile="${assembleScriptName}" dir="${buildDirectory}"/> ++ </target> ++</project> +Index: templates/package-build/customTargets.xml +=================================================================== +RCS file: templates/package-build/customTargets.xml +diff -N templates/package-build/customTargets.xml +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ templates/package-build/customTargets.xml 1 Jan 1970 00:00:00 -0000 +@@ -0,0 +1,144 @@ ++<project name="Build specific targets and properties" default="noDefault"> ++ ++ <fail unless="type" message="Please set the ${type} property to 'feature', 'plugin' or 'fragment'." /> ++ <fail unless="id" message="Please set the ${id} property to the feature, plugin or fragment id of the plugin you are building." /> ++ <fail unless="sourceDirectory" message="Please set the ${sourceDirectory} property to the directory that has the source plugins." /> ++ ++ <!-- we need to do this because you can't expand variables in target names --> ++ <copy file="${builder}/customTargets-assemble-target.xml" tofile="${buildDirectory}/customTargets-${id}-assemble-target.xml" /> ++ <replace file="${buildDirectory}/customTargets-${id}-assemble-target.xml" token="@id@" value="${id}" /> ++ <import file="${buildDirectory}/customTargets-${id}-assemble-target.xml" /> ++ ++ <!-- ===================================================================== --> ++ <!-- Run a given ${target} on all elements being built --> ++ <!-- Add on <ant> task for each top level element being built. --> ++ <!-- ===================================================================== --> ++ <target name="allElements"> ++ <ant antfile="${genericTargets}" target="${target}"> ++ <property name="type" value="${type}" /> ++ <property name="id" value="${id}" /> ++ </ant> ++ </target> ++ ++ ++ <!-- ===================================================================== --> ++ <!-- Check out map files from correct repository --> ++ <!-- ===================================================================== --> ++ <target name="getMapFiles"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ ++ <target name="clean" unless="noclean"> ++ <antcall target="allElements"> ++ <param name="target" value="cleanElement" /> ++ </antcall> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before setup --> ++ <!-- ===================================================================== --> ++ <target name="preSetup"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after setup but before starting the build proper --> ++ <!-- ===================================================================== --> ++ <target name="postSetup"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before fetching the build elements --> ++ <!-- ===================================================================== --> ++ <target name="preFetch"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after fetching the build elements --> ++ <!-- ===================================================================== --> ++ <target name="postFetch"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before generating the build scripts. --> ++ <!-- ===================================================================== --> ++ <target name="preGenerate"> ++ <!-- Eclipse expects the feature projects to be in the 'features' directory and ++ plugin projects to be in the 'plugins' directory. The build infrastructure ++ normally arranges the projects during the fetch stage. Since we aren't doing ++ the fetch stage, we have to manually arrange the files --> ++ <exec dir="${builder}" executable="/bin/sh"> ++ <arg line="prepare-build-dir.sh ${sourceDirectory} ${buildDirectory}" /> ++ </exec> ++ ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after generating the build scripts. --> ++ <!-- ===================================================================== --> ++ <target name="postGenerate"> ++ <antcall target="clean" /> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before running the build.xmls for the elements being built. --> ++ <!-- ===================================================================== --> ++ <target name="preProcess"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after running the build.xmls for the elements being built. --> ++ <!-- ===================================================================== --> ++ <target name="postProcess"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before running assemble. --> ++ <!-- ===================================================================== --> ++ <target name="preAssemble"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after running assemble. --> ++ <!-- ===================================================================== --> ++ <target name="postAssemble"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do before running package. --> ++ <!-- ===================================================================== --> ++ <target name="prePackage"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after running package. --> ++ <!-- ===================================================================== --> ++ <target name="postPackage"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do after the build is done. --> ++ <!-- ===================================================================== --> ++ <target name="postBuild"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do to test the build results --> ++ <!-- ===================================================================== --> ++ <target name="test"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Steps to do to publish the build results --> ++ <!-- ===================================================================== --> ++ <target name="publish"> ++ </target> ++ ++ <!-- ===================================================================== --> ++ <!-- Default target --> ++ <!-- ===================================================================== --> ++ <target name="noDefault"> ++ <echo message="You must specify a target when invoking this file" /> ++ </target> ++ ++</project> +Index: templates/package-build/prepare-build-dir.sh +=================================================================== +RCS file: templates/package-build/prepare-build-dir.sh +diff -N templates/package-build/prepare-build-dir.sh +--- /dev/null 1 Jan 1970 00:00:00 -0000 ++++ templates/package-build/prepare-build-dir.sh 1 Jan 1970 00:00:00 -0000 +@@ -0,0 +1,77 @@ ++#!/bin/sh ++ ++if [ $# -ne 2 ]; then ++ echo "usage: $0 <path to source dir> <path to build dir>" ++ exit 1 ++fi ++ ++if [ ! -d $1 ]; then ++ echo "usage: $0 <path to source dir> <path to build dir>" ++ exit 1 ++fi ++ ++SOURCEDIR=$1 ++BUILDDIR=$2 ++ ++echo "preparing files in $1 for buildfile generation ..." ++mkdir -p $BUILDDIR ++ ++# make some ant build files to extract the id from the feature.xml, plugin.xml or the fragment.xml ++mkdir -p $BUILDDIR/tmp ++BUILDFILE=$BUILDDIR/tmp/build.xml ++ ++echo "<project default=\"main\"> ++ <target name=\"main\"> ++ <xmlproperty file=\"@type@.xml\" collapseAttributes=\"true\"/> ++ <fail unless=\"@type@.id\" message=\"feature.id not set\"/> ++ <echo message=\"\${@type@.id}\" /> ++ </target> ++</project>" > $BUILDFILE ++ ++for type in feature plugin fragment; do ++ CURBUILDFILE=$BUILDDIR/tmp/$type-build.xml ++ cat $BUILDFILE | sed "s|@type@|$type|" > $CURBUILDFILE ++done ++ ++# make the directories eclipse is expecting ++echo " making the 'features' and 'plugins' directories" ++mkdir -p $BUILDDIR/features $BUILDDIR/plugins ++ ++# make symlinks for the features ++FEATURES=$(find $SOURCEDIR -name feature.xml) ++for f in $FEATURES; do ++ PROJECTDIR=$(dirname $f) ++ PROJECTNAME=$(ant -Dbasedir=$PROJECTDIR -f $BUILDDIR/tmp/feature-build.xml 2>&1 | grep echo | cut --delimiter=' ' -f 7) ++ if [ -z $PROJECTNAME ]; then ++ echo "ERROR: could not determine the feature id for $PROJECTDIR" ++ exit 1 ++ fi ++ ++ echo " making symlink: $BUILDDIR/features/$PROJECTNAME -> $PROJECTDIR" ++ ln -sf $PROJECTDIR $BUILDDIR/features/$PROJECTNAME ++done ++ ++# make symlinks for plugins and fragments ++PLUGINDIRS=$(find $SOURCEDIR -name plugin.xml -o -name fragment.xml -o -name MANIFEST.MF | sed "s/plugin.xml//g" | sed "s/fragment.xml//g" | sed "s/META-INF\/MANIFEST.MF//" | sort | uniq) ++for dir in $PLUGINDIRS; do ++ PROJECTNAME="" ++ if [ -e $dir/META-INF/MANIFEST.MF ]; then ++ PROJECTNAME=$(grep Bundle-SymbolicName $dir/META-INF/MANIFEST.MF | cut --delimiter=';' -f 1 | cut --delimiter=' ' -f 2) ++ elif [ -e $dir/plugin.xml ]; then ++ PROJECTNAME=$(ant -Dbasedir=$dir -f $BUILDDIR/tmp/plugin-build.xml 2>&1 | grep echo | cut --delimiter=' ' -f 7) ++ elif [ -e $dir/fragment.xml ]; then ++ PROJECTNAME=$(ant -Dbasedir=$dir -f $BUILDDIR/tmp/fragment-build.xml 2>&1 | grep echo | cut --delimiter=' ' -f 7) ++ fi ++ ++ if [ -z $PROJECTNAME ]; then ++ echo "ERROR: could not determine the plugin or fragment id for $dir" ++ exit 1 ++ fi ++ ++ echo " making symlink: $BUILDDIR/plugins/$PROJECTNAME -> $dir" ++ ln -sf $dir $BUILDDIR/plugins/$PROJECTNAME ++ ++done ++ ++rm -rf $BUILDDIR/tmp ++echo done |