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 @@ + + + + + + + + + + + + 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 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 " + exit 1 +fi + +if [ ! -d $1 ]; then + echo "usage: $0 " + 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 " + + + + + +" > $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