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=@eclipse_base@ 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,83 @@ +#!/bin/sh + + +make_links() +{ + TYPE=$1 + TYPEDIR=$2 + shift; shift; + XMLFILES=$@ + + CURBUILDFILE=$BUILDDIR/tmp/$TYPE-build.xml + cat $BUILDFILE | sed "s|@type@|$TYPE|" > $CURBUILDFILE + + for f in $XMLFILES; do + PROJECTDIR=$(dirname $f) + PROJECTNAME=$(ant -Dbasedir=$PROJECTDIR -f $CURBUILDFILE 2>&1 | grep echo | cut --delimiter=' ' -f 7) + if [ -z $PROJECTNAME ]; then + if [ ! -e $PROJECTDIR/META-INF/MANIFEST.MF ]; then + echo "ERROR: could not determine the feature id for $PROJECTDIR" + exit 1 + fi + PROJECTNAME=$(grep Bundle-SymbolicName $PROJECTDIR/META-INF/MANIFEST.MF | cut --delimiter=';' -f 1 | cut --delimiter=' ' -f 2) + if [ -z $PROJECTNAME ]; then + echo "ERROR: could not determine the feature id for $PROJECTDIR" + exit 1 + fi + fi + + echo " making symlink: $BUILDDIR/$TYPEDIR/$PROJECTNAME -> $PROJECTDIR" + ln -sf $PROJECTDIR $BUILDDIR/$TYPEDIR/$PROJECTNAME + + done +} + + +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 + +# find the feature.xml, plugin.xml and fragment.xml files +FEATURES=$(find $SOURCEDIR -name feature.xml) +PLUGINS=$(find $SOURCEDIR -name plugin.xml) +FRAGMENTS=$(find $SOURCEDIR -name fragment.xml) + +# make the directories eclipse is expecting +echo " making the 'features' and 'plugins' directories" +mkdir -p $BUILDDIR/features $BUILDDIR/plugins + +# make symlinks for the features +make_links feature features $FEATURES + +# make the symlinks for plugins +make_links plugin plugins $PLUGINS + +# make the symlinks for fragments - they go in the plugins directory as well +make_links fragment plugins $FRAGMENTS + +rm -rf $BUILDDIR/tmp +echo done