[eclipse/cbi] successful build!
Krzysztof Daniel
kdaniel at fedoraproject.org
Tue Aug 7 11:43:46 UTC 2012
commit 48b3c878942646628cc13c49c67627edb7d9ff9d
Author: Krzysztof Daniel <kdaniel at redhat.com>
Date: Tue Aug 7 13:29:19 2012 +0200
successful build!
eclipse-copy-platform.sh | 104 +++++++++++++++
eclipse-pdebuild.sh | 314 ++++++++++++++++++++++++++++++++++++++++++++++
eclipse.spec | 189 ++++++++++++----------------
3 files changed, 497 insertions(+), 110 deletions(-)
---
diff --git a/eclipse-copy-platform.sh b/eclipse-copy-platform.sh
new file mode 100755
index 0000000..60c8b45
--- /dev/null
+++ b/eclipse-copy-platform.sh
@@ -0,0 +1,104 @@
+#! /bin/sh
+
+# We need to make our own copy of the eclipse platform in order to
+# build against it. We do this since the build root might already
+# contain a copy of the plugin we are building -- and the eclipse
+# releng scripts fail in this situation. We put this script in the
+# eclipse core so that it is easy to use from other spec files.
+
+# Arguments are:
+# * directory where results should end up (script will make it)
+# * base location of eclipse platform install
+# * an optional string that is used to select non-platform
+# plugins and features. At present if a plugin or feature has
+# this as a substring, it will be included. You need only run
+# this script once, it will link both the platform and the other
+# optionally-selected parts in a single invocation.
+
+# Test to see if the minimum arguments
+# are specified
+
+if [ $# -lt 2 ]; then
+ echo "Usage: copy-platform where eclipse_base optional_directories"
+ echo "For example: copy-plaform ~/SDK /usr/lib/eclipse cdt pydev jdt"
+ exit 1
+fi
+
+where=$1; shift
+eclipse=$1; shift
+
+datadir=/usr/share/eclipse
+
+mkdir -p $where/plugins $where/features
+cd $where
+
+# Are there any optional arguments left?
+if [ $# -gt 0 ]; then
+ for optional in "$@"; do
+ (cd $eclipse;
+ ls -d plugins/*"$optional"* features/*"$optional"* 2>/dev/null) |
+ while read f; do
+ [ ! -e $f ] && ln -s $eclipse/$f $f
+ done
+ (cd $eclipse/dropins; ls -d "$optional" 2>/dev/null) |
+ while read f; do
+ if [ -e $eclipse/dropins/$f/eclipse ]; then
+ (cd $eclipse/dropins/$f/eclipse;
+ ls -d plugins/* features/* 2>/dev/null) |
+ while read g; do
+ [ ! -e $g ] && \
+ ln -s $eclipse/dropins/$f/eclipse/$g $g
+ done
+ else
+ (cd $eclipse/dropins/$f;
+ ls -d plugins/* features/* 2>/dev/null) |
+ while read g; do
+ [ ! -e $g ] && \
+ ln -s $eclipse/dropins/$f/$g $g
+ done
+ fi
+ done
+ (cd $datadir/dropins; ls -d "$optional" 2>/dev/null) |
+ while read f; do
+ if [ -e $datadir/dropins/$f/eclipse ]; then
+ (cd $datadir/dropins/$f/eclipse;
+ ls -d plugins/* features/* 2>/dev/null) |
+ while read g; do
+ [ ! -e $g ] && \
+ ln -s $datadir/dropins/$f/eclipse/$g $g
+ done
+ else
+ (cd $datadir/dropins/$f;
+ ls -d plugins/* features/* 2>/dev/null) |
+ while read g; do
+ [ ! -e $g ] && \
+ ln -s $datadir/dropins/$g $g
+ done
+ fi
+ done
+ done
+fi
+for p in $(ls -d $eclipse/dropins/jdt/plugins/*); do
+ plugin=$(basename $p)
+ [ ! -e plugins/$plugin ] && ln -s $eclipse/dropins/jdt/plugins/$plugin plugins/$plugin
+done
+for f in $(ls -d $eclipse/dropins/jdt/features/*); do
+ feature=$(basename $f)
+ [ ! -e features/$feature ] && ln -s $eclipse/dropins/jdt/features/$feature features/$feature
+done
+for p in $(ls -d $eclipse/dropins/sdk/plugins/*); do
+ plugin=$(basename $p)
+ [ ! -e plugins/$plugin ] && ln -s $eclipse/dropins/sdk/plugins/$plugin plugins/$plugin
+done
+for f in $(ls -d $eclipse/dropins/sdk/features/*); do
+ feature=$(basename $f)
+ [ ! -e features/$feature ] && ln -s $eclipse/dropins/sdk/features/$feature features/$feature
+done
+for p in $(ls -d $eclipse/plugins/*); do
+ plugin=$(basename $p)
+ [ ! -e plugins/$plugin ] && ln -s $eclipse/plugins/$plugin plugins/$plugin
+done
+for f in $(ls -d $eclipse/features/*); do
+ feature=$(basename $f)
+ [ ! -e features/$feature ] && ln -s $eclipse/features/$feature features/$feature
+done
diff --git a/eclipse-pdebuild.sh b/eclipse-pdebuild.sh
new file mode 100755
index 0000000..ea14c58
--- /dev/null
+++ b/eclipse-pdebuild.sh
@@ -0,0 +1,314 @@
+#!/bin/bash
+
+# args: [-f <feature>] [-d <dependencies (outside SDK)>] [-a <additional build args>] [-j <JVM args>] [-v] [-D] [-o <Orbit dependencies>]
+
+function usage {
+cat << _EOF_
+usage: $0 [<options>]
+
+Use PDE Build to build Eclipse features
+
+Optional arguments:
+ -h Show this help message
+ -f Feature ID to build
+ -d Plugin dependencies in addition to Eclipse SDK
+ (space-separated, names on which to glob features and plugins)
+ -a Additional build arguments (ex. -DjavacSource=1.5)
+ -j VM arguments (ex. -DJ2SE-1.5=%{_jvmdir}/java/jre/lib/rt.jar)
+ -v Be verbose
+ -D Debug platform itself (passes -consolelog -debug to Eclipse)
+ -o Directory containing Orbit-style dependencies
+ -z Comma-delimited list of dependency zips (not for use during RPM build)
+_EOF_
+}
+
+function copyPlatform {
+ # This seems silly but I was running into issues with empty strings
+ # counting as arguments to copy-platform -- overholt, 2008-03
+ if [ -z "$dependencies" ]; then
+ if [ $verbose -eq 1 ]; then
+ echo "/bin/sh -x $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse"
+ /bin/sh -x $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse
+ else
+ echo "/bin/sh $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse"
+ /bin/sh $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse
+ fi
+ else
+ if [ $verbose -eq 1 ]; then
+ echo "/bin/sh -x $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse $dependencies"
+ /bin/sh -x $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse $dependencies
+ else
+ echo "/bin/sh $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse $dependencies"
+ /bin/sh $datadir/eclipse/buildscripts/copy-platform $SDK $datadir/eclipse $dependencies
+ fi
+ fi
+}
+
+function findFeatureId {
+ # We can determine the feature ID if we have only one
+ numFeatures=$(find $sourceDir -name feature.xml | wc -l)
+ if [ $numFeatures -ne 1 ]; then
+ #echo "# features found = $numFeatures"
+ echo "Cannot determine feature ID. Please specify with -f."
+ usage
+ exit 1
+ fi
+
+ featureXml=$(find $sourceDir -name feature.xml)
+
+ # Taken from Ben Konrath's package-build
+ # make an ant build files to extract the id from the feature.xml
+ buildFile=$buildDir/findFeatureForRPM-tmp-build.xml
+
+ echo "<project default=\"main\">
+ <target name=\"main\">
+ <xmlproperty file=\"$featureXml\" collapseAttributes=\"true\"/>
+ <fail unless=\"feature.id\" message=\"feature.id not set\"/>
+ <echo message=\"\${feature.id}\" />
+ </target>
+ </project>" > $buildFile
+
+ featureId=$(ant -Dbasedir=$sourceDir -f $buildFile 2>&1 | grep echo | cut --delimiter=' ' -f 7)
+ rm $buildFile
+}
+
+function findFeatureNameAndVersion {
+ featureXml=$(find $sourceDir -name feature.xml | while read f; do grep -l id=\"$featureId\" $f; done)
+
+ buildFile=$buildDir/findFeatureForRPM-tmp-build.xml
+
+ echo "<project default=\"main\">
+ <target name=\"main\">
+ <xmlproperty file=\"$featureXml\" collapseAttributes=\"true\"/>
+ <fail unless=\"feature.id\" message=\"feature.id not set\"/>
+ <echo message=\"\${feature.label}\" />
+ </target>
+ </project>" > $buildFile
+
+ featureName=$(ant -Dbasedir=$sourceDir -f $buildFile 2>&1 | grep echo | sed "s/.*\[echo\]\ //")
+ rm $buildFile
+
+ echo "<project default=\"main\">
+ <target name=\"main\">
+ <xmlproperty file=\"$featureXml\" collapseAttributes=\"true\"/>
+ <fail unless=\"feature.id\" message=\"feature.id not set\"/>
+ <echo message=\"\${feature.version}\" />
+ </target>
+ </project>" > $buildFile
+
+ featureVersion=$(ant -Dbasedir=$sourceDir -f $buildFile 2>&1 | grep echo | sed "s/.*\[echo\]\ //")
+ rm $buildFile
+}
+
+function findMaxBREE {
+ manifests=$(find $sourceDir -name MANIFEST.MF)
+ maxBree=1.4
+ for i in $manifests; do
+ breeLine=$(cat $i|grep RequiredExecutionEnvironment|cut -c37-|sed 's/^ *\(.*\) *$/\1/')
+ case $breeLine in
+ "J2SE-1.5")
+ bree=1.5
+ ;;
+ "JavaSE-1.6")
+ bree=1.6
+ ;;
+ esac
+ if [ "$bree" \> "$maxBree" ]; then
+ maxBree=$bree
+ fi
+ done
+}
+
+sourceDir=$PWD
+buildDir=$PWD/build
+SDK=$buildDir/SDK
+homeDir=$buildDir/home
+workspaceDir=$homeDir/workspace
+datadir=`rpm --eval "%{_libdir}"`
+pdeBuildDir=$datadir/eclipse/dropins/sdk/plugins/org.eclipse.pde.build_ at PDEBUILDVERSION@
+
+featureId=
+dependencies=
+additionalArgs=
+vmArgs=
+verbose=0
+dryRun=0
+debugPlatform=0
+orbitDepsDir=
+p2Generate=
+testing=false
+zipDeps=
+
+# See above. r = dry run (used for testing)
+while getopts “hf:d:z:a:j:tvrDo:” OPTION
+do
+ case $OPTION in
+ h)
+ usage
+ exit
+ ;;
+ f)
+ featureId=$OPTARG
+ ;;
+ d)
+ dependencies=$OPTARG
+ ;;
+ a)
+ additionalArgs=$OPTARG
+ ;;
+ j)
+ vmArgs=$OPTARG
+ ;;
+ t)
+ testing=true
+ ;;
+ v)
+ verbose=1
+ ;;
+ r)
+ dryRun=1
+ ;;
+ D)
+ debugPlatform=1
+ ;;
+ o)
+ orbitDepsDir=$OPTARG
+ ;;
+ z)
+ zipDeps=$OPTARG
+ ;;
+ ?)
+ usage
+ exit 1
+ ;;
+ esac
+done
+
+echo "mkdir -p $buildDir"
+if [ $dryRun -ne 1 ]; then
+ mkdir -p $buildDir
+fi
+
+# Eclipse may try to write to the building user's home directory so we create a
+# temporary one for use by the build.
+echo "mkdir -p $homeDir"
+if [ $dryRun -ne 1 ]; then
+ mkdir -p $homeDir
+fi
+
+echo "mkdir -p $workspaceDir"
+if [ $dryRun -ne 1 ]; then
+ mkdir -p $workspaceDir
+fi
+
+if [ -z $featureId ]; then
+ findFeatureId
+fi
+
+if [ -z $featureId ]; then
+ echo "Cannot determine feature ID. Please specify with -f."
+ usage
+ exit 1
+fi
+
+findFeatureNameAndVersion
+
+echo "Building feature = $featureId."
+
+if [ -z "$dependencies" ]; then
+ if [ $verbose -eq 1 ]; then
+ echo "Assuming no dependencies except Eclipse SDK."
+ fi
+fi
+
+# Symlink the SDK and dependencies for build
+if [ -z "$dependencies" ]; then
+ echo "Symlinking SDK into $SDK directory."
+else
+ echo "Symlinking SDK and \"$dependencies\" into $SDK directory."
+fi
+if [ $dryRun -ne 1 ]; then
+ copyPlatform
+fi
+
+if [ $debugPlatform -eq 1 ]; then
+ debugPlatformArgs="-debug -consolelog"
+fi
+
+if [ "x$orbitDepsDir" != "x" ]; then
+ orbitDeps="-DorbitDepsDir=$orbitDepsDir"
+fi
+
+if [ "x$zipDeps" != "x" ]; then
+ OLD_IFS="$IFS"
+ IFS=","
+ zipDepsArray=($zipDeps)
+ IFS="$OLD_IFS"
+ numZips=${#zipDepsArray[@]}
+ for (( i=0; i< $numZips; i++ )); do
+ thisZip=${zipDepsArray[$i]}
+ thisFile=$(basename $thisZip)
+ thisURL=$(echo $thisZip | sed s/$thisFile//)
+ if [ ! -e $thisFile ]; then
+ wget -q $thisZip
+ fi
+ mkdir -p tmp
+ unzip -q -o $thisFile -d tmp
+ cp -raf tmp/eclipse/features/* $SDK/features
+ cp -raf tmp/eclipse/plugins/* $SDK/plugins
+ rm -rf tmp
+ thisZip=
+ thisFile=
+ thisURL=
+ done
+fi
+if [ -z "$additionalArgs" ]; then
+ findMaxBREE
+ additionalArgs="-DjavacSource=$maxBree -DjavacTarget=$maxBree"
+fi
+
+echo "Starting build:"
+
+launcherJar=$(ls $SDK/plugins | grep "org.eclipse.equinox.launcher_")
+
+if [ $testing != true ]; then
+ java -cp $SDK/plugins/${launcherJar} \
+ -Duser.home=$homeDir \
+ $vmArgs \
+ org.eclipse.core.launcher.Main \
+ -data $workspaceDir \
+ -application org.eclipse.ant.core.antRunner \
+ $debugPlatformArgs \
+ -Dtype=feature \
+ -Did=$featureId \
+ -DbaseLocation=$SDK \
+ -DsourceDirectory=$sourceDir \
+ -DbuildDirectory=$buildDir \
+ -Dbuilder=$datadir/eclipse/dropins/sdk/plugins/org.eclipse.pde.build_ at PDEBUILDVERSION@/templates/package-build \
+ $orbitDeps \
+ -Dtesting="$testing" \
+ $additionalArgs \
+ -f $pdeBuildDir/scripts/build.xml
+else
+ echo "\
+ java -cp $SDK/plugins/${launcherJar} \
+ -Duser.home=$homeDir \
+ $vmArgs \
+ org.eclipse.core.launcher.Main \
+ -data $workspaceDir \
+ -application org.eclipse.ant.core.antRunner \
+ $debugPlatformArgs \
+ -Dtype=feature \
+ -Did=$featureId \
+ -DbaseLocation=$SDK \
+ -DsourceDirectory=$sourceDir \
+ -DbuildDirectory=$buildDir \
+ -Dbuilder=$datadir/eclipse/dropins/sdk/plugins/org.eclipse.pde.build_ at PDEBUILDVERSION@/templates/package-build \
+ $orbitDeps \
+ -Dtesting=\"$testing\" \
+ $additionalArgs \
+ -f $pdeBuildDir/scripts/build.xml
+ "
+fi
+
+exit $?
diff --git a/eclipse.spec b/eclipse.spec
index 3b6b1fd..fbe04ed 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -28,19 +28,21 @@ Source0: eclipse-source.tar.bz2
Source1: eclipse-jdtpdeupdatesite.tar.bz2
Source2: eclipse.desktop
Source3: efj.sh
-#Source4: macros.%{name}
-#Source5: http://repo1.maven.org/maven2/org/eclipse/osgi/org.eclipse.osgi/3.6.0.v20100517/org.eclipse.osgi-3.6.0.v20100517.pom
+Source4: macros.%{name}
+Source5: http://repo1.maven.org/maven2/org/eclipse/osgi/org.eclipse.osgi/3.6.0.v20100517/org.eclipse.osgi-3.6.0.v20100517.pom
# Fetched from http://repo1.maven.org/maven2/org/eclipse/osgi/org.eclipse.osgi.services/3.2.100.v20100503/org.eclipse.osgi.services-3.2.100.v20100503.pom
# Patched to remove fake parent
-#Source6: org.eclipse.osgi.services-3.2.100.v20100503.pom
-#Source7: http://repo1.maven.org/maven2/org/eclipse/equinox/http/servlet/1.0.0-v20070606/servlet-1.0.0-v20070606.pom
-#Source8: org.eclipse.jdt.core-3.8.0.v_C03.pom
+Source6: org.eclipse.osgi.services-3.2.100.v20100503.pom
+Source7: http://repo1.maven.org/maven2/org/eclipse/equinox/http/servlet/1.0.0-v20070606/servlet-1.0.0-v20070606.pom
+Source8: org.eclipse.jdt.core-3.8.0.v_C03.pom
Source20: rt.incubator.pom.xml
Source21: initializer.pom.xml
Source30: extract_patterns.txt
+Source31: eclipse-copy-platform.sh
+Source32: eclipse-pdebuild.sh
#Patch0: lucene-3.6-compile.patch
@@ -172,18 +174,6 @@ Requires: jpackage-utils
%description equinox-osgi
Eclipse OSGi - Equinox
-#%package emf-core
-#Version: %{emf_version}
-#Summary: Eclipse Modeling Framework Core
-#Group: Development/Languages
-#Requires: java >= 1:1.7.0
-#Requires: %{name}-equinox-osgi = %{epoch}:%{eclipse_version}-%{release}
-#Conflicts: eclipse-emf < 2.8.0-0.5
-
-#%description emf-core
-#Eclipse Modeling Framework Core
-
-
%package rcp
Version: %{eclipse_version}
Summary: Eclipse Rich Client Platform
@@ -224,6 +214,7 @@ Requires: atinject >= 1-6
Requires: geronimo-annotation >= 1.0-7
Provides: eclipse-cvs-client = 1:%{eclipse_version}-%{release}
Obsoletes: eclipse-cvs-client < 1:3.3.2-20
+Provides: eclipse-rcp = 1:%{eclipse_version}-%{release}
%description platform
The Eclipse Platform is the base of all IDE plugins. This does not include the
@@ -361,7 +352,7 @@ sed -i -e "s/3.6.0,4.0.0/3.0.0,4.0.0/" eclipse.platform.ua/org.eclipse.ui.intro/
sed -i -e "s/org.eclipse.sdk.epp/org.fedoraproject.eclipse.platform/" TMP/org.eclipse.sdk.epp/org.eclipse.sdk.epp.product
sed -i -e "s/<id>org.eclipse.sdk.epp<\/id>/<id>org.fedoraproject.eclipse.platform<\/id>/" TMP/org.eclipse.sdk.epp/pom.xml
-sed -i -e "s/\"org.eclipse.sdk\"/\"org.eclipse.platform\"/" TMP/org.eclipse.sdk.epp/org.eclipse.sdk.epp.product
+sed -i -e "s/<feature id=\"org.eclipse.sdk\"\/>/<feature id=\"org.eclipse.platform\"\/><feature id=\"org.eclipse.cvs\"\/>/" TMP/org.eclipse.sdk.epp/org.eclipse.sdk.epp.product
sed -i -e "s/\"org.eclipse.sdk.ide\"/\"org.eclipse.platform.ide\"/" TMP/org.eclipse.sdk.epp/org.eclipse.sdk.epp.product
sed -i -e "s/<module>TMP\/org.eclipse.sdk.epp<\/module>/<module>TMP\/org.eclipse.sdk.epp<\/module><module>TMP\/jdtpde<\/module>/" pom.xml
@@ -439,23 +430,23 @@ pushd eclipse-backup-with-jdt-pde
-installIU org.eclipse.pde.feature.group
popd
-mkdir -p pde/plugins pde/features
+mkdir -p sdk/plugins sdk/features
#get the difference and copy all files into pde folder
for i in `ls eclipse-backup-with-jdt-pde/features` ; do \
if [ ! -e eclipse-backup-with-jdt/features/$i ]; \
- then cp -r eclipse-backup-with-jdt-pde/features/$i pde/features ; \
+ then cp -r eclipse-backup-with-jdt-pde/features/$i sdk/features ; \
fi \
done
for i in `ls eclipse-backup-with-jdt-pde/plugins` ; do \
if [ ! -e eclipse-backup-with-jdt/plugins/$i ]; \
- then cp -r eclipse-backup-with-jdt-pde/plugins/$i pde/plugins ; \
+ then cp -r eclipse-backup-with-jdt-pde/plugins/$i sdk/plugins ; \
fi \
done
-cp -r jdt pde eclipse/dropins
+cp -r jdt sdk eclipse/dropins
cd eclipse
rm -rf configuration/org.eclipse.core.runtime
@@ -484,7 +475,7 @@ install -D eclipse.platform/platform/org.eclipse.platform/eclipse48.png \
install -D eclipse.platform/platform/org.eclipse.platform/eclipse256.png \
$RPM_BUILD_ROOT/usr/share/icons/hicolor/256x256/apps/eclipse.png
mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps/
-ln -s $RPM_BUILD_ROOT/usr/share/icons/hicolor/256x256/apps/eclipse.png \
+ln -s /usr/share/icons/hicolor/256x256/apps/eclipse.png \
$RPM_BUILD_ROOT/usr/share/pixmaps/eclipse.png
# Some directories we need
@@ -506,16 +497,20 @@ install -D %{SOURCE2} $RPM_BUILD_ROOT/usr/share/applications/eclipse.desktop
#eclipse compiler
chmod ugo+rx %{SOURCE3}
-install -D %{SOURCE3} $RPM_BUILD_ROOT/bin/efj
+mkdir -p $RPM_BUILD_ROOT/usr/bin
+install %{SOURCE3} $RPM_BUILD_ROOT/usr/bin/efj
TARGET_LAUNCHER=%{installation_loc}\/plugins/`ls TMP/org.eclipse.sdk.epp/target/products/org.fedoraproject.eclipse.platform/linux/gtk/x86_64/eclipse/plugins | grep launcher_[0-9]*`
-sed -i -e "s, at LAUNCHER@,${TARGET_LAUNCHER}," $RPM_BUILD_ROOT/bin/efj
+sed -i -e "s, at LAUNCHER@,${TARGET_LAUNCHER}," $RPM_BUILD_ROOT/usr/bin/efj
#eclipse binary
-ln -s $RPM_BUILD_ROOT/%{_libdir}/%{name}/eclipse $RPM_BUILD_ROOT/bin/eclipse
+mkdir -p $RPM_BUILD_ROOT/usr/bin/
+pushd $RPM_BUILD_ROOT/usr/bin/
+ ln -s %{_libdir}/%{name}/eclipse
+popd
pushd $RPM_BUILD_ROOT/%{_libdir}/%{name}
- ln -s $RPM_BUILD_ROOT/%{_libdir}/%{name}plugins/org.eclipse.swt.gtk.linux_* swt.jar
- ln -s $RPM_BUILD_ROOT/%{_libdir}/%{name}plugins/org.eclipse.swt.gtk.linux_* swt-gtk.jar
+ ln -s %{_libdir}/%{name}plugins/org.eclipse.swt.gtk.linux_* swt.jar
+ ln -s %{_libdir}/%{name}plugins/org.eclipse.swt.gtk.linux_* swt-gtk.jar
popd
#config ini
@@ -526,17 +521,20 @@ ln -s $RPM_BUILD_ROOT/%{_libdir}/%{name}/configuration/config.ini $RPM_BUILD_ROO
#################################
-#pushd $RPM_BUILD_ROOT%{_libdir}/%{name}
+pushd $RPM_BUILD_ROOT%{_libdir}/%{name}
+
+rm icon.xpm
+
# Create file listings for the extracted shared libraries
-#echo -n "" > %{_builddir}/%{buildsubdir}/%{name}-platform.install;
-#for id in `ls configuration/org.eclipse.osgi/bundles`; do
- #if [ "Xconfiguration" = $(echo X`find configuration/org.eclipse.osgi/bundles/$id -name libswt\*.so` | sed "s:/.*::") ]; then
-# echo "%verify(not mtime) %{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" > %{_builddir}/%{buildsubdir}/%{name}-swt.install;
-# else
-# echo "%verify(not mtime) %{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
-# fi
-#done
-#popd
+echo -n "" > %{_builddir}/%{buildsubdir}/%{name}-platform.install;
+for id in `ls configuration/org.eclipse.osgi/bundles`; do
+ if [ "Xconfiguration" = $(echo X`find configuration/org.eclipse.osgi/bundles/$id -name libswt\*.so` | sed "s:/.*::") ]; then
+ echo "%verify(not mtime) %{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" > %{_builddir}/%{buildsubdir}/%{name}-swt.install;
+ else
+ echo "%verify(not mtime) %{_libdir}/%{name}/configuration/org.eclipse.osgi/bundles/$id" >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
+ fi
+done
+popd
# Remove state files
pushd $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/org.eclipse.osgi/
@@ -611,16 +609,16 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
# Create a script that can be used to make a symlink tree of the
# eclipse platform.
-cp -p pdebuild/eclipse-copy-platform.sh copy-platform
+cp -p %{SOURCE31} copy-platform
mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}/buildscripts
mv copy-platform $RPM_BUILD_ROOT%{_libdir}/%{name}/buildscripts
copyPlatform=$RPM_BUILD_ROOT%{_libdir}/%{name}/buildscripts/copy-platform
# Install the PDE Build wrapper script.
-install -p -D -m0755 pdebuild/eclipse-pdebuild.sh \
+install -p -D -m0755 %{SOURCE32} \
$RPM_BUILD_ROOT%{_bindir}/%{name}-pdebuild
-PDEBUILDVERSION=$(ls $RPM_BUILD_ROOT%{_libdir}/%{name}/dropins/sdk/plugins \
+PDEBUILDVERSION=$(ls $RPM_BUILD_ROOT%{_libdir}/%{name}/dropins/pde/plugins \
| grep org.eclipse.pde.build_ | \
sed 's/org.eclipse.pde.build_//')
sed -i "s/@PDEBUILDVERSION@/$PDEBUILDVERSION/g" \
@@ -630,9 +628,6 @@ sed -i "s/@PDEBUILDVERSION@/$PDEBUILDVERSION/g" \
mkdir $RPM_BUILD_ROOT%{_sysconfdir}/rpm/
install -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/
-# Remove the junit library duplicated by pdebuild.
-rm $RPM_BUILD_ROOT%{_libdir}/%{name}/dropins/jdt/plugins/org.junit_4.10.0.v4_10_0_v20120426-0900.jar
-
%post platform
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
@@ -672,70 +667,6 @@ rm -rf %{_bindir}/efj/
%{_libdir}/%{name}/swt.jar
%{_libdir}/java/swt.jar
-%files rcp
-%dir %{_libdir}/%{name}/features
-%dir %{_datadir}/%{name}
-%dir %{_libdir}/%{name}/configuration
-%{_libdir}/%{name}/configuration/config.ini
-%{_libdir}/%{name}/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info
-%dir %{_libdir}/%{name}/configuration/org.eclipse.equinox.simpleconfigurator
-%{_libdir}/%{name}/readme
-%{_libdir}/%{name}/features/org.eclipse.rcp_*
-%{_libdir}/%{name}/features/org.eclipse.e4.rcp_*
-%{_libdir}/%{name}/plugins/com.ibm.icu_*
-%{_libdir}/%{name}/plugins/javax.inject_1.0.0.v20091030.jar
-%{_libdir}/%{name}/plugins/javax.xml_1.3.4.v200806030440.jar
-%{_libdir}/%{name}/plugins/org.apache.batik.css_*
-%{_libdir}/%{name}/plugins/org.apache.batik.util.gui_*
-%{_libdir}/%{name}/plugins/org.apache.batik.util_*
-%{_libdir}/%{name}/plugins/org.apache.geronimo.specs.geronimo-annotation_1.1_spec_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.commands_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.contenttype_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.databinding_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.beans_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.observable_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.property_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.expressions_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.jobs_*
-%{_libdir}/%{name}/plugins/org.eclipse.core.runtime_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.app_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.bidi_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.console_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.common_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.launcher_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.launcher.gtk.linux.*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.preferences_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.registry_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.util_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.core.commands_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.core.contexts_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.core.di.extensions_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.core.di_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.core.services_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.bindings_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.css.core_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.css.swt.theme_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.css.swt_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.di_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.model.workbench_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.services_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.widgets_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.workbench.addons.swt_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.workbench.renderers.swt_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.workbench.swt_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.workbench3_*
-%{_libdir}/%{name}/plugins/org.eclipse.e4.ui.workbench_*
-%{_libdir}/%{name}/plugins/org.eclipse.help_*
-%{_libdir}/%{name}/plugins/org.eclipse.jface_*
-%{_libdir}/%{name}/plugins/org.eclipse.jface.databinding_*
-%{_libdir}/%{name}/plugins/org.eclipse.rcp_*
-%{_libdir}/%{name}/plugins/org.eclipse.ui_*
-%{_libdir}/%{name}/plugins/org.eclipse.ui.views_*
-%{_libdir}/%{name}/plugins/org.eclipse.ui.workbench_*
-%{_libdir}/%{name}/plugins/org.eclipse.update.configurator_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.simpleconfigurator_*
-%{_libdir}/%{name}/plugins/org.w3c.css.sac_*
-%{_libdir}/%{name}/plugins/org.w3c.dom.svg_*
%if %{initialize}
%files platform -f %{name}-platform.install
@@ -753,15 +684,22 @@ rm -rf %{_bindir}/efj/
%{_libdir}/%{name}/eclipse
%dir %{_libdir}/%{name}/dropins
%dir %{_datadir}/%{name}/dropins
+%{_libdir}/%{name}/configuration/config.ini
+%{_libdir}/%{name}/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info
%{_libdir}/%{name}/features/org.eclipse.platform_*
%{_libdir}/%{name}/features/org.eclipse.e4.rcp_*
+%{_libdir}/%{name}/features/org.eclipse.rcp_*
+%{_libdir}/%{name}/features/org.eclipse.emf.common_*
+%{_libdir}/%{name}/features/org.eclipse.emf.ecore_*
+%{_libdir}/%{name}/plugins/com.ibm.icu_*
+%{_libdir}/%{name}/plugins/org.apache.jasper.glassfish_*
%{_libdir}/%{name}/plugins/com.jcraft.jsch_*
%{_libdir}/%{name}/plugins/org.eclipse.jdt.core_*
%{_libdir}/%{name}/plugins/javax.servlet_*
%{_libdir}/%{name}/plugins/javax.servlet.jsp_*
%{_libdir}/%{name}/plugins/javax.el_*
%{_libdir}/%{name}/plugins/javax.inject_1.0.0.v20091030.jar
-%{_libdir}/%{name}/plugins/javax.xml_1.3.4.v200806030440.jar
+%{_libdir}/%{name}/plugins/javax.xml_1.3.4.*.jar
%{_libdir}/%{name}/plugins/org.apache.tomcat_*
%{_libdir}/%{name}/plugins/org.apache.juli_*
%{_libdir}/%{name}/plugins/org.apache.el_*
@@ -794,6 +732,10 @@ rm -rf %{_bindir}/efj/
%{_libdir}/%{name}/plugins/org.eclipse.core.variables_*
%{_libdir}/%{name}/plugins/org.eclipse.debug.core_*
%{_libdir}/%{name}/plugins/org.eclipse.debug.ui_*
+%{_libdir}/%{name}/plugins/org.eclipse.emf.common_*
+%{_libdir}/%{name}/plugins/org.eclipse.emf.ecore.change_*
+%{_libdir}/%{name}/plugins/org.eclipse.emf.ecore.xmi_*
+%{_libdir}/%{name}/plugins/org.eclipse.emf.ecore_*
%{_libdir}/%{name}/plugins/org.eclipse.equinox.ds_*
%{_libdir}/%{name}/plugins/org.eclipse.equinox.event_*
%{_libdir}/%{name}/plugins/org.eclipse.equinox.http.jetty_*
@@ -858,7 +800,6 @@ rm -rf %{_bindir}/efj/
%{_libdir}/%{name}/plugins/org.eclipse.jetty.io_*
%{_libdir}/%{name}/plugins/org.eclipse.jetty.security_*
%{_libdir}/%{name}/plugins/org.eclipse.jetty.servlet_*
-%{_libdir}/%{name}/plugins/org.eclipse.equinox.initializer_*
%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.core_*
%{_libdir}/%{name}/plugins/org.eclipse.cvs_*
%{_libdir}/%{name}/plugins/org.eclipse.team.cvs.ssh2_*
@@ -915,6 +856,34 @@ rm -rf %{_bindir}/efj/
%{_libdir}/%{name}/plugins/org.sat4j.pb_*
%{_libdir}/%{name}/plugins/org.w3c.css.sac_*
%{_libdir}/%{name}/plugins/org.w3c.dom.svg_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.commands_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.contenttype_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.beans_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.observable_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.databinding.property_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.databinding_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.expressions_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.jobs_*
+%{_libdir}/%{name}/plugins/org.eclipse.core.runtime_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.app_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.bidi_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.common_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.concurrent_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.console_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.launcher.gtk.linux.%{_arch}_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.launcher_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.preferences_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.registry_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.simpleconfigurator_*
+%{_libdir}/%{name}/plugins/org.eclipse.equinox.util_*
+%{_libdir}/%{name}/plugins/org.eclipse.help_*
+%{_libdir}/%{name}/plugins/org.eclipse.jface.databinding_*
+%{_libdir}/%{name}/plugins/org.eclipse.jface_*
+%{_libdir}/%{name}/plugins/org.eclipse.rcp_*
+%{_libdir}/%{name}/plugins/org.eclipse.ui.workbench_*
+%{_libdir}/%{name}/plugins/org.eclipse.ui_*
+%{_libdir}/%{name}/plugins/org.eclipse.update.configurator_*
+%{_libdir}/%{name}/readme/readme_eclipse.html
# Put this in -platform since we're putting the p2 stuff here
%{_libdir}/%{name}/artifacts.xml
# FIXME: should we ship content.xml for the platform?
More information about the scm-commits
mailing list