Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37559684
en ru br
ALT Linux repos
5.0: 5.0.1-alt1_1jpp6
4.1: 4.0.1-alt1_1jpp5.0
4.0: 4.0.1-alt1_1jpp5.0
3.0: 2.1.0-alt1

Group :: Development/Java
RPM: eclipse-cdt

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

#!/bin/sh

function usage {
cat << _EOF_
usage: $0 [<options>]

Use PDE Build to build Eclipse features

Optional arguments:
-h Show this help message
-e Eclipse SDK location
-g Don't run the tests headless
-d Allow remote connection to test runs' JVM
_EOF_
}

debugTests=0
headless=1
while getopts “hgdbe:” OPTION
do
case $OPTION in
d)
debugTests=1
;;
e)
eclipseHome=$OPTARG
;;
g)
headless=0
;;
h)
usage
exit
;;
?)
usage
exit
;;
esac
done

testSuite=org.eclipse.cdt.testing

if [ -z $eclipseHome ]; then
eclipseHome=$(rpm --eval "%{_libdir}")/eclipse
fi

cdtTestPluginVersion=$(ls $eclipseHome/dropins/cdt-tests/plugins | \
grep ${testSuite}_ | sed "s/${testSuite}_//")
testDriver=$eclipseHome/dropins/cdt-tests/plugins/${testSuite}_${cdtTestPluginVersion}/test.xml
properties=$(pwd)/cdt-tests.properties

libraryXml=$eclipseHome/dropins/sdk/plugins/org.eclipse.test/library.xml
results=$(pwd)/results-`date "+%Y%m%d%H%M%S"`
workspace=$(pwd)/workspace
datadir=$(pwd)/testDataDir
homedir=$(pwd)/home
testhome=$(pwd)/testhome
tmpresults=$(pwd)/tmpresults

os=linux
ws=gtk

if uname -m > /dev/null 2>&1; then
arch=`uname -m`
else
arch=`uname -p`
fi
# Massage arch for Eclipse-uname differences
case $arch in
i[0-9]*86)
arch=x86 ;;
ia64)
arch=ia64 ;;
ppc)
arch=ppc ;;
x86_64)
arch=x86_64 ;;
*)
echo "Unrecognized architecture: $arch" 1>&2
exit 1 ;;
esac
echo >&2 "Architecture not specified. Assuming host architecture: $arch"

setXvnc() {
echo localhost > Xvnc.cfg
# Pick a high display number.
port=`expr '(' $RANDOM '*' 9 / 32767 ')' + 58`
$xvnc :$port -screen 1 1024x768x32 -auth Xvnc.cfg -localhost &
Xvncpid=$!
DISPLAY=`$HOST`:$port
}

rm $properties
rm -rf $workspace $datadir $homedir $tmpresults $testhome
mkdir -p $workspace $results $datadir $homedir $tmpresults $testhome

echo "data-dir=$datadir" >> $properties
echo "useEclipseExe=true" >> $properties
echo "junit-report-output=$results" >> $properties
echo "results=$results" >> $properties
echo "tmpresults=$tmpresults" >> $properties
echo "testhome=$testhome" >> $properties

echo "cdt-folder=$(pwd)/cdt_folder" >> $properties
echo "cdt-core-loc=$(pwd)/cdt_core_folder" >> $properties
echo "cdt-ui-loc=$(pwd)/cdt_ui_folder" >> $properties
echo "cdt-debug-ui-loc=$(pwd)/cdt_debug_ui_folder" >> $properties
echo "cdt-mbs-core-loc=$(pwd)/cdt_mbs_core_folder" >> $properties
echo "cdt-mbs-ui-loc=$(pwd)/cdt_mbs_ui_folder" >> $properties
if [ $debugTests -eq 1 ]; then
echo "extraVMargs=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=40000" >> $properties
fi

if [ $headless -eq 1 ]; then
# Try to find Xvnc
xvnc=
if [ -a /usr/bin/Xvnc ]
then
xvnc=/usr/bin/Xvnc
setXvnc
else
if [ -a /usr/X11/bin/Xvnc ]
then
xvnc=/usr/X11/bin/Xvnc
setXvnc
else
DISPLAY=`$HOST`:0.0
fi
fi

export DISPLAY
fi

$eclipseHome/eclipse \
-Duser.home=$homedir \
-data $workspace \
-application org.eclipse.ant.core.antRunner \
-file $testDriver \
-Declipse-home=$eclipseHome \
-Dlibrary-file=$libraryXml \
-Darch=$arch \
-Dos=$os \
-Dws=$ws \
-propertyfile $properties \
-logger org.apache.tools.ant.DefaultLogger \
-vmargs \
-Duser.home=$homedir

# Clean up if we used Xvnc
if [ -e Xvnc.cfg ]
then
kill $Xvncpid
rm Xvnc.cfg
fi
 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin