rpms/eclipse/devel eclipse-build.patch, 1.3, 1.4 eclipse-pde.build-add-package-build.patch, 1.1, 1.2 eclipse.spec, 1.383, 1.384 eclipse-16.gif, 1.1, NONE eclipse-48.png, 1.2, NONE eclipse-gnuformatterjdt.patch, 1.1, NONE eclipse-gnuformatterjdtui.patch, 1.2, NONE eclipse-libswt-enableallandO2.patch, 1.3, NONE
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Wed Dec 6 18:20:03 UTC 2006
Author: overholt
Update of /cvs/dist/rpms/eclipse/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv17408
Modified Files:
eclipse-build.patch eclipse-pde.build-add-package-build.patch
eclipse.spec
Removed Files:
eclipse-16.gif eclipse-48.png eclipse-gnuformatterjdt.patch
eclipse-gnuformatterjdtui.patch
eclipse-libswt-enableallandO2.patch
Log Message:
* Tue Dec 5 2006 Andrew Overholt <overholt at redhat.com> 3.2.1-24
- Specfile review with Ben Konrath.
- Lots of cleanups.
eclipse-build.patch:
build.xml | 16 ++++++++++++++--
eclipse/buildConfigs/sdk/srcBuild/build.xml | 0
2 files changed, 14 insertions(+), 2 deletions(-)
Index: eclipse-build.patch
===================================================================
RCS file: /cvs/dist/rpms/eclipse/devel/eclipse-build.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- eclipse-build.patch 2 Jun 2006 21:46:06 -0000 1.3
+++ eclipse-build.patch 6 Dec 2006 18:20:01 -0000 1.4
@@ -5,16 +5,13 @@
diff -u -r1.9 build.xml
--- build.xml 11 May 2006 20:51:39 -0000 1.9
+++ build.xml 26 May 2006 23:06:38 -0000
-@@ -95,6 +95,21 @@
+@@ -95,6 +95,18 @@
<arg line="build.sh" />
</exec>
<move file="${launcherlibs}/library/${installWs}/eclipse" todir="${launcherlibs}/" />
+
+ <delete dir="${launcherlibs}/library"/>
+
-+ <!-- Copy icon for un-supported platforms -->
-+ <copy file="features/org.eclipse.platform.launchers/bin/gtk/linux/x86/icon.xpm" todir="${launcherlibs}/"/>
-+
+ <!-- Build JNI libs -->
+ <!-- liblocalfile -->
+ <exec dir="plugins/org.eclipse.core.filesystem/natives/unix/linux" executable="make" failonerror="true"/>
@@ -27,7 +24,7 @@
</target>
-@@ -265,8 +280,8 @@
+@@ -265,8 +277,8 @@
<os family="mac" />
</condition>
<property name="bootclasspath" refid="default.bootclasspath" />
eclipse-pde.build-add-package-build.patch:
build.properties | 12 +++
customTargets-assemble-target.xml | 12 +++
customTargets.xml | 144 ++++++++++++++++++++++++++++++++++++++
prepare-build-dir.sh | 83 +++++++++++++++++++++
4 files changed, 251 insertions(+)
Index: eclipse-pde.build-add-package-build.patch
===================================================================
RCS file: /cvs/dist/rpms/eclipse/devel/eclipse-pde.build-add-package-build.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- eclipse-pde.build-add-package-build.patch 2 Jun 2006 21:46:07 -0000 1.1
+++ eclipse-pde.build-add-package-build.patch 6 Dec 2006 18:20:01 -0000 1.2
@@ -16,7 +16,7 @@
+javacDebugInfo=true
+archiveName=${id}.zip
+runPackager=false
-+baseLocation=@eclipse_base@
++baseLocation=/usr/share/eclipse
Index: templates/package-build/customTargets-assemble-target.xml
===================================================================
RCS file: templates/package-build/customTargets-assemble-target.xml
Index: eclipse.spec
===================================================================
RCS file: /cvs/dist/rpms/eclipse/devel/eclipse.spec,v
retrieving revision 1.383
retrieving revision 1.384
diff -u -r1.383 -r1.384
--- eclipse.spec 28 Nov 2006 22:47:46 -0000 1.383
+++ eclipse.spec 6 Dec 2006 18:20:01 -0000 1.384
@@ -1,22 +1,15 @@
-# TODO:
-# - migrate compare API patch (patch33) to 3.2 final
-# - migrate cairo patch (patch43) to 3.2 final
-# - migrate GNU formatter patches (patch20, patch21) to 3.2 final
-# - comment on this bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=126648
-
Epoch: 1
%define gcj_support 1
%define tomcatsharedir %{_datadir}/tomcat5
%define tomcatlibdir %{_var}/lib/tomcat5
-%define section free
%define eclipse_major 3
%define eclipse_minor 2
%define eclipse_majmin %{eclipse_major}.%{eclipse_minor}
%define eclipse_micro 1
%define libname libswt3
-# All arches line up except i386 -> x86
+# All arches line up between Eclipse and Linux kernel names except i386 -> x86
%ifarch %{ix86}
%define eclipse_arch x86
%else
@@ -26,108 +19,100 @@
Summary: An open, extensible IDE
Name: eclipse
Version: %{eclipse_majmin}.%{eclipse_micro}
-Release: 23%{?dist}
+Release: 24%{?dist}
License: EPL
Group: Text Editors/Integrated Development Environments (IDE)
URL: http://www.eclipse.org/
-Source0: http://download.eclipse.org/eclipse/downloads/drops/R-3.2.1-200609210945/eclipse-sourceBuild-srcIncluded-3.2.1.zip
+Source0: http://download.eclipse.org/eclipse/downloads/drops/R-3.2.1-200609210945/eclipse-sourceBuild-srcIncluded-3.2.1.zip
Source2: %{name}.desktop
-Source5: %{name}-48.png
-# FIXME: this should be in its own package
-Source7: ftp://ftp.software.ibm.com/software/globalization/icu/icu4j/3.4.5/icu4jsrc_3_4_5.jar
-Source11: %{name}-fedora-splash-3.2.1.png
+# The icu4j bits will be moved out into their own package for Fedora 7. See:
+# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=199504
+Source7: ftp://ftp.software.ibm.com/software/globalization/icu/icu4j/3.4.5/icu4jsrc_3_4_5.jar
+Source11: %{name}-fedora-splash-3.2.1.png
Source16: %{name}-copy-platform.sh
Source17: efj.sh.in
-Source18: ecj.sh.in
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535
+Source18: ecj.sh.in
+# This file contains the types of files we'd like to extract from the jars
+# when using the FileInitializer
Source19: %{name}-filenamepatterns.txt
# cvs -d :pserver:anonymous at dev.eclipse.org:/cvsroot/eclipse co equinox-incubator/org.eclipse.equinox.initializer
# tar cjf eclipse-fileinitializerapp.tar.bz2 equinox-incubator/
# (generated 2006-11-01 18:48 UTC)
Source20: %{name}-fileinitializerapp.tar.bz2
-
-# Build libswt-mozilla and libswt-cairo and use O2
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=71637
-Patch0: %{name}-libswt-enableallandO2.patch
-# Build JNI libs
-# FIXME: these should be built by upstream build method
-# http://www.bagu.org/eclipse/plugin-source-drops.html
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=71637
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=86848
-# GNU XML issue identified by Michael Koch
-Patch2: %{name}-build.patch
-Patch3: %{name}-icu4j-build-files.patch
-Patch4: %{name}-libupdatebuild.patch
-Patch5: %{name}-libupdatebuild2.patch
+# Build liblocalfile and libupdate JNI libs in the main SDK build.xml
+Patch0: %{name}-build.patch
+# We need this because icu4j's Eclipse bits are dependent upon Eclipse
+# but we don't want the icu4j RPM needing Eclipse to build
+Patch1: %{name}-icu4j-build-files.patch
+# These two patches need to go upstream
+Patch2: %{name}-libupdatebuild.patch
+Patch3: %{name}-libupdatebuild2.patch
# Build swttools.jar
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90364
-Patch18: %{name}-swttools.patch
-# GNU-style JDT formatter
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=91770
-#Patch20: %{name}-gnuformatterjdt.patch
-#Patch21: %{name}-gnuformatterjdtui.patch
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=114001
-Patch38: %{name}-helpindexbuilder.patch
-Patch40: %{name}-usebuiltlauncher.patch
-## Build cairo native libs
-#Patch43: %{name}-libswt-cairo1.0-3.patch
-Patch46: %{name}-libswt-xpcomgcc4.patch
-Patch47: %{name}-launcher-set-install-dir-and-shared-config.patch
+Patch4: %{name}-swttools.patch
+# This is fixed post-3.3M1
+Patch10: %{name}-helpindexbuilder.patch
+# This needs to go upstream
+Patch11: %{name}-usebuiltlauncher.patch
+# This does two things:
+# 1. allows the launcher to be in /usr/bin and
+# 2. ensures that the OSGi configuration directory
+# (which contains the JNI .sos) is in %{_libdir}
+# We should investigate whether or not this can go upstream
+Patch12: %{name}-launcher-set-install-dir-and-shared-config.patch
# Don't attempt to link to Sun's javadocs
-Patch48: %{name}-javadoclinks.patch
+# FIXME: could use sed instead
+Patch13: %{name}-javadoclinks.patch
# Always generate debug info when building RPMs (Andrew Haley)
-Patch49: %{name}-ecj-rpmdebuginfo.patch
+# This needs to be investigated for getEnv changes
+Patch14: %{name}-ecj-rpmdebuginfo.patch
# generic releng plugins that can be used to build plugins
-# see this thread for deails:
+# see this thread for details:
# https://www.redhat.com/archives/fedora-devel-java-list/2006-April/msg00048.html
-Patch53: %{name}-pde.build-add-package-build.patch
+# This needs to be submitted upstream
+Patch15: %{name}-pde.build-add-package-build.patch
# We need to disable junit4 and apt until GCJ can handle Java5 code
-Patch55: %{name}-disable-junit4-apt.patch
-
-# These patches need to go upstream
+Patch16: %{name}-disable-junit4-apt.patch
+# This tomcat stuff will change when they move to the equinox jetty provider
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=98371
-Patch28: %{name}-tomcat55.patch
-Patch29: %{name}-tomcat55-build.patch
-Patch31: %{name}-webapp-tomcat55.patch
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=98707
-# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=178726
-Patch33: %{name}-compare-create-api.patch
+Patch6: %{name}-tomcat55.patch
+Patch7: %{name}-tomcat55-build.patch
+Patch8: %{name}-webapp-tomcat55.patch
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90630
-Patch22: %{name}-updatehomedir.patch
+Patch5: %{name}-updatehomedir.patch
# JPackage []s in names of symlinks ...
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=162177
-Patch34: %{name}-ecj-square-bracket-classpath.patch
+Patch9: %{name}-ecj-square-bracket-classpath.patch
# Use ecj for gcj
-Patch57: %{name}-ecj-gcj.patch
+# The patch to Main.java can go away with 3.2.2.
+Patch17: %{name}-ecj-gcj.patch
# Build against firefox:
# - fix swt profile include path
# - don't compile the mozilla 1.7 / firefox profile library -- build it inline
# - don't use symbols not in our firefox builds
-# FIXME: add reference(s) to discussion(s) and bug(s)
+# https://bugs.eclipse.org/bugs/show_bug.cgi?id=161310
# Note: I made this patch from within Eclipse and then did the following to
# it due to spaces in the paths:
# sed --in-place "s/Eclipse\ SWT\ Mozilla/Eclipse_SWT_Mozilla/g" eclipse-swt-firefox.patch
# sed --in-place "s/Eclipse\ SWT\ PI/Eclipse_SWT_PI/g" eclipse-swt-firefox.patch
-Patch59: %{name}-swt-firefox.patch
-Patch60: %{name}-swt-firefox.2.patch
+Patch18: %{name}-swt-firefox.patch
+Patch19: %{name}-swt-firefox.2.patch
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=209393
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29853
-Patch61: %{name}-workaround-plugin.xml-parsing-bug-gcc-bz29853.patch
-Patch100: customBuildCallbacks.xml-add-pre.gather.bin.parts.patch
+Patch20: %{name}-workaround-plugin.xml-parsing-bug-gcc-bz29853.patch
+# This is already upstream in 3.3 builds. It *may* get into 3.2.2.
+Patch21: customBuildCallbacks.xml-add-pre.gather.bin.parts.patch
# Add ppc64 to the list of arches with gre64.conf
# part of https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=207016
-Patch101: %{name}-ppc64gre64.patch
-# This allows us to remove the configuration platform.xml in /usr/share/eclipse
-# yet still maintain user-installed plugins in ~/.eclipse
-Patch102: %{name}-launcher-addplatformtotildeeclipse.patch
-
+Patch22: %{name}-ppc64gre64.patch
+# This patch allowed us to remove
+# /usr/share/eclipse/configuration/org.eclipse.update/platform.xml -- which
+# fixed a number of update-related bugs -- in an FC6 update.
+# We can remove this patch for Fedora 8.
+Patch23: %{name}-launcher-addplatformtotildeeclipse.patch
-%if %{gcj_support}
-%else
-ExclusiveArch: %{ix86} x86_64 ppc ia64 sparc sparc64
-%endif
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: ant
BuildRequires: jpackage-utils >= 0:1.5, make, gcc
BuildRequires: gnome-vfs2-devel
@@ -153,10 +138,10 @@
BuildRequires: java-devel >= 1.4.2
%endif
-#BuildRequires: ant-antlr ant-apache-bcel ant-apache-bsf ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
-BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
+# Need to investigate why we don't build ant-apache-bsf or ant-commons-net in
+# Fedora. When that's done, add it here and symlink below.
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642
-#BuildRequires: ant-commons-net
+BuildRequires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
BuildRequires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch
BuildRequires: jsch >= 0:0.1.28-1jpp
BuildRequires: jakarta-commons-beanutils jakarta-commons-collections jakarta-commons-digester jakarta-commons-dbcp jakarta-commons-el jakarta-commons-fileupload jakarta-commons-launcher jakarta-commons-logging jakarta-commons-modeler jakarta-commons-pool
@@ -165,6 +150,7 @@
BuildRequires: tomcat5-jasper >= 5.5.17
BuildRequires: tomcat5-servlet-2.4-api >= 5.5.17
BuildRequires: lucene
+BuildRequires: lucene-devel
BuildRequires: regexp
BuildRequires: junit >= 3.8.1-3jpp
%if %{gcj_support}
@@ -193,23 +179,25 @@
Eclipse compiler for Java.
%package -n %{libname}-gtk2
-Summary: SWT Library for GTK2
+Summary: SWT Library for GTK+-2.0
Group: Text Editors/Integrated Development Environments (IDE)
%if %{gcj_support}
Requires: libgcj >= 4.0.2
Requires(post,postun): java-gcj-compat >= 1.0.64
%endif
+Requires: gtk2
Requires: firefox
Conflicts: mozilla
%description -n %{libname}-gtk2
-SWT Library for GTK2.
+SWT Library for GTK+-2.0.
%package rcp
Summary: Eclipse Rich Client Platform
Group: Development/Languages
Requires: %{libname}-gtk2 = %{epoch}:%{version}-%{release}
-Requires: %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_3.2.1.v3235.jar
+# This file-level requirement is for the bi-arch multilib case
+Requires: %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_3.2.1.v3235.jar
Requires(post,postun): %{libname}-gtk2 = %{epoch}:%{version}-%{release}
%if %{gcj_support}
Requires: libgcj >= 4.0.2
@@ -222,102 +210,83 @@
Eclipse Rich Client Platform
%package rcp-sdk
-Summary: Eclipse RCP Source
+Summary: Eclipse Rich Client Platform SDK
Group: Text Editors/Integrated Development Environments (IDE)
-# FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy
-Provides: %{name}-rcp-devel
-Obsoletes: %{name}-rcp-devel
Requires: %{name}-rcp = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-rcp = %{epoch}:%{version}-%{release}
-#FIXME: fix description to include docs
%description rcp-sdk
-Source for RCP for use within Eclipse.
-
+Source for Eclipse Rich Client Platform for use within Eclipse.
%package platform
Summary: Eclipse platform common files
Group: Text Editors/Integrated Development Environments (IDE)
%if %{gcj_support}
-Requires: libgcj >= 4.0.2
-Requires: java-gcj-compat >= 1.0.64
Requires(post,postun): java-gcj-compat >= 1.0.64
-%else
-Requires: java >= 1.4.2
%endif
-Requires: %{name}-rcp = %{epoch}:%{version}-%{release}
+Requires: %{name}-rcp = %{epoch}:%{version}-%{release}
+# This file-level requirement is for the bi-arch multilib case
Requires: %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_3.2.1.v3235.jar
Requires(post,postun): %{name}-rcp = %{epoch}:%{version}-%{release}
-BuildRequires: gtk2 >= 2.6
-Requires: gtk2 >= 2.6
-Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
-#Requires: ant-antlr ant-apache-bcel ant-apache-bsf ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
+# Need to investigate why we don't build ant-apache-bsf or ant-commons-net in
+# Fedora. When that's done, add it here and symlink below.
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642
-#Requires: ant-commons-net
+#Requires: ant-apache-bsf ant-commons-net
+Requires: ant-antlr ant-apache-bcel ant-apache-log4j ant-apache-oro ant-apache-regexp ant-apache-resolver ant-commons-logging
Requires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch
Requires: jakarta-commons-beanutils jakarta-commons-collections jakarta-commons-digester jakarta-commons-dbcp jakarta-commons-el jakarta-commons-fileupload jakarta-commons-launcher jakarta-commons-logging jakarta-commons-modeler jakarta-commons-pool
Requires: mx4j >= 2.1
Requires: tomcat5 >= 5.5.17
Requires: tomcat5-jasper >= 5.5.17
Requires: tomcat5-servlet-2.4-api >= 5.5.17
-Requires: lucene
+Requires: lucene, lucene-devel
Requires: regexp
%description platform
-Eclipse platform common files. This package now contains the GTK2 UI (the
-former eclipse-gtk2 package).
+The Eclipse Platform is the base of all IDE plugins. This does not include the
+Java Development Tools or the Plugin Development Environment.
%package platform-sdk
-Summary: Eclipse platform Source
+Summary: Eclipse Platform SDK
Group: Text Editors/Integrated Development Environments (IDE)
-# FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy
-Provides: %{name}-platform-devel
-Obsoletes: %{name}-platform-devel
Requires: %{name}-platform = %{epoch}:%{version}-%{release}
Requires: %{name}-rcp-sdk = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-rcp-sdk = %{epoch}:%{version}-%{release}
-Requires: java-javadoc
-#FIXME: fix description to include docs
%description platform-sdk
-Source for Eclipse platform for use within Eclipse.
+Source and docs for Eclipse Platform for use within Eclipse.
%package jdt
-Summary: Eclipse Java development tools
+Summary: Eclipse Java Development Tools
Group: Text Editors/Integrated Development Environments (IDE)
Requires: %{name}-platform = %{epoch}:%{version}-%{release}
Requires: %{name}-ecj = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-ecj = %{epoch}:%{version}-%{release}
Requires: junit >= 3.8.1-3jpp
+Requires: java-javadoc
%if %{gcj_support}
-Requires: libgcj >= 4.0.2
Requires(post,postun): java-gcj-compat >= 1.0.64
%endif
%description jdt
-Eclipse Java developments tools.
+Eclipse Java Development Tools. This package is required to use Eclipse for
+developing software written in the Java programming language.
%package jdt-sdk
-Summary: Eclipse JDT Source
+Summary: Eclipse Java Development Tools SDK
Group: Text Editors/Integrated Development Environments (IDE)
-# FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy
-Provides: %{name}-jdt-devel
-Obsoletes: %{name}-jdt-devel
Requires: %{name}-jdt = %{epoch}:%{version}-%{release}
Requires: %{name}-platform-sdk = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-jdt = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-platform-sdk = %{epoch}:%{version}-%{release}
-Requires: java-javadoc
-
-#FIXME: fix description to include docs
%description jdt-sdk
-Source for JDT for use within Eclipse.
+Source and docs for Eclipse Java Development Tools for use within Eclipse.
%package pde
-Summary: Eclipse PDE
+Summary: Eclipse Plugin Development Environment
Group: Text Editors/Integrated Development Environments (IDE)
Requires: %{name}-jdt = %{epoch}:%{version}-%{release}
Requires: %{name}-pde-runtime = %{epoch}:%{version}-%{release}
@@ -326,44 +295,39 @@
Requires(post,postun): %{name}-pde-runtime = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-platform-sdk = %{epoch}:%{version}-%{release}
%if %{gcj_support}
-Requires: libgcj >= 4.0.2
Requires(post,postun): java-gcj-compat >= 1.0.64
%endif
%description pde
-Eclipse Plug-in Development Environment.
+Eclipse Plugin Development Environment. This package is required for
+developing Eclipse plugins.
%package pde-runtime
-Summary: Eclipse PDE runtime plugin.
+Summary: Eclipse Plugin Development Environment runtime plugin.
Group: Text Editors/Integrated Development Environments (IDE)
Requires: %{name}-platform = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-platform = %{epoch}:%{version}-%{release}
%if %{gcj_support}
-Requires: libgcj >= 4.0.2
-Requires(post): java-gcj-compat >= 1.0.64
-Requires(postun): java-gcj-compat >= 1.0.64
+Requires(post,postun): java-gcj-compat >= 1.0.64
%endif
%description pde-runtime
-Eclipse Plug-in Development Environment runtime plugin (org.eclipse.pde.runtime).
+Eclipse Plugin Development Environment runtime plugin (org.eclipse.pde.runtime).
%package pde-sdk
-Summary: Eclipse PDE Source
+Summary: Eclipse Plugin Development Environment SDK
Group: Text Editors/Integrated Development Environments (IDE)
Requires: %{name}-pde = %{epoch}:%{version}-%{release}
Requires: %{name}-jdt-sdk = %{epoch}:%{version}-%{release}
Requires(post,postun): %{name}-pde = %{epoch}:%{version}-%{release}
-#FIXME: fix description to include docs
%description pde-sdk
-Source for Eclipse Plug-in Development Environment for use within Eclipse.
+Source and docs for Eclipse Plugin Development Environment for use within
+Eclipse.
%package sdk
-Summary: Eclipse PDE Source
+Summary: Eclipse SDK
Group: Text Editors/Integrated Development Environments (IDE)
-# FIXME: these Provides and Obsoletes can be removed when FC-5 goes into legacy
-Provides: %{name}-pde-devel
-Obsoletes: %{name}-pde-devel
Requires: %{name}-platform-sdk = %{epoch}:%{version}-%{release}
Requires: %{name}-jdt-sdk = %{epoch}:%{version}-%{release}
Requires: %{name}-pde-sdk = %{epoch}:%{version}-%{release}
@@ -373,135 +337,131 @@
# This file requirement is to deal with the biarch installation case
Requires(post,postun): %{_libdir}/%{name}/configuration/config.ini
%if %{gcj_support}
-Requires: libgcj >= 4.0.2
Requires(post,postun): java-gcj-compat >= 1.0.64
%endif
-#FIXME: fix description to be better
%description sdk
-The Eclipse Plug-in Development Environment SDK. This package allows you
-to create an IDE based on Eclipse.
-
+The Eclipse SDK. This package is similar to a meta-package which brings in
+the Eclipse Platform SDK, the Eclipse Java Development Tools SDK, and the
+Eclipse Plugin Development Environment SDK. It also contains the
+org.eclipse.sdk plugin and feature. This package is only needed if you intend
+to create Eclipse applications.
%prep
%setup -q -c
-# I hate spaces in paths with patch!
-pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library
%patch0 -p0
-popd
-
%patch2 -p0
-%patch4 -p0
-%patch5 -p0
+%patch3 -p0
+# FIXME: investigate why we are pushd'ing here
+# Build swttools.jar
pushd plugins/org.eclipse.swt.gtk.linux.x86_64
-%patch18 -p0
+%patch4 -p0
popd
-%patch22 -p0
+%patch5 -p0
# tomcat patches
pushd plugins/org.eclipse.tomcat
-%patch28 -p0
-%patch29 -p0
+%patch6 -p0
+%patch7 -p0
popd
sed --in-place "s/4.1.130/5.5.17/" \
features/org.eclipse.platform/build.xml \
plugins/org.eclipse.tomcat/build.xml \
assemble.*.xml
pushd plugins/org.eclipse.help.webapp
-%patch31 -p0
-popd
-pushd plugins/org.eclipse.compare
-#%patch33 -p0
+%patch8 -p0
popd
+
pushd plugins/org.eclipse.jdt.core
-%patch34 -p0
-%patch57 -p0
-popd
-%patch38 -p0
-%patch40 -p0
-#%patch43
-pushd plugins/org.eclipse.swt/Eclipse\ SWT\ Mozilla/common/library
-%patch46
+%patch9 -p0
+%patch17 -p0
popd
+%patch10 -p0
+%patch11 -p0
# Because the launcher source is zipped up, we need to unzip, patch, and re-pack
# FIXME: figure out why we need to patch and sed twice and fix upstream
mkdir launchertmp
unzip -qq -d launchertmp plugins/org.eclipse.platform/launchersrc.zip
pushd launchertmp
-%patch47 -p0
-%patch101 -p0
-%patch102 -p0
-# put the configuration directory in an arch specific location
+%patch12 -p0
+%patch22 -p0
+%patch23 -p0
+# put the configuration directory in an arch-specific location
sed --in-place "s:/usr/lib/eclipse/configuration:%{_libdir}/%{name}/configuration:" library/eclipse.c
-# make the eclipse install relocatable
+# make the eclipse binary relocatable
sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" library/eclipse.c
zip -q -9 -r ../launchersrc.zip *
popd
mv launchersrc.zip plugins/org.eclipse.platform
rm -rf launchertmp
pushd features/org.eclipse.platform.launchers
-%patch47 -p0
-%patch101 -p0
-%patch102 -p0
-# put the configuration directory in an arch specific location
+%patch12 -p0
+%patch22 -p0
+%patch23 -p0
+
+# put the configuration directory in an arch-specific location
sed --in-place "s:/usr/lib/eclipse:%{_libdir}/%{name}:" library/eclipse.c
-# make the eclipse install relocatable
+# make the eclipse binary relocatable
sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" library/eclipse.c
popd
# Link against our system-installed javadocs
-%patch48 -p0
+%patch13 -p0
sed --in-place "s:/usr/share/:%{_datadir}/:g" \
plugins/org.eclipse.jdt.doc.isv/jdtOptions.txt \
plugins/org.eclipse.pde.doc.user/pdeOptions.txt \
plugins/org.eclipse.pde.doc.user/pdeOptions \
plugins/org.eclipse.platform.doc.isv/platformOptions.txt
-%patch49 -p0
+%patch14 -p0
pwd
pushd plugins/org.eclipse.pde.build
-%patch53
-sed --in-place "s:@eclipse_base@:%{_datadir}/%{name}:" templates/package-build/build.properties
+%patch15
+sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" templates/package-build/build.properties
popd
-%patch55 -p0
+# Remove apt and junit4 until we have 1.5
+%patch16 -p0
rm plugins/org.junit4/junit-4.1.jar
-# I love directories with spaces in their names
+# Build against our firefox packages
pushd plugins/org.eclipse.swt
mv "Eclipse SWT Mozilla" Eclipse_SWT_Mozilla
mv "Eclipse SWT PI" Eclipse_SWT_PI
-%patch59
+%patch18
mv Eclipse_SWT_Mozilla "Eclipse SWT Mozilla"
mv Eclipse_SWT_PI "Eclipse SWT PI"
popd
pushd plugins/org.eclipse.swt.tools
mv "JNI Generation" JNI_Generation
-%patch60
+%patch19
mv JNI_Generation "JNI Generation"
popd
-# workaround for http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29853
+# workaround for GNU XML bug when parsing plugin.xml
+# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29853
pushd plugins/org.eclipse.pde.core
-%patch61
+%patch20
popd
-# FIXME check if this has been applied upstream
+# customcallbacks fixes. They are upstream already.
pushd plugins/org.eclipse.platform.doc.isv
-%patch100 -p0
+%patch21 -p0
popd
pushd plugins/org.eclipse.platform.doc.user
-%patch100 -p0
+%patch21 -p0
popd
+# Splashscreen
pushd plugins/org.eclipse.platform
cp %{SOURCE11} splash.bmp
popd
# FIXME this should be patched upstream with a flag to turn on and off
# all output should be directed to stdout
+# https://bugs.eclipse.org/bugs/show_bug.cgi?id=144942
find -type f -name \*.xml -exec sed --in-place -r "s/output=\".*(txt|log).*\"//g" "{}" \;
# Remove existing .sos
@@ -566,7 +526,7 @@
rm plugins/org.apache.ant/lib/ant-xalan1src.zip
rm plugins/org.apache.ant/lib/ant-xslp.jar
rm plugins/org.apache.ant/lib/ant-xslpsrc.zip
-# FIXME use build-jar-repository
+# FIXME: use build-jar-repository
ln -s %{_javadir}/ant/ant-antlr.jar plugins/org.apache.ant/lib/ant-antlr.jar
ln -s %{_javadir}/ant/ant-apache-bcel.jar plugins/org.apache.ant/lib/ant-apache-bcel.jar
#ln -s %{_javadir}/ant/ant-apache-bsf.jar plugins/org.apache.ant/lib/ant-apache-bsf.jar
@@ -576,7 +536,7 @@
ln -s %{_javadir}/ant/ant-apache-resolver.jar plugins/org.apache.ant/lib/ant-apache-resolver.jar
ln -s %{_javadir}/ant/ant-commons-logging.jar plugins/org.apache.ant/lib/ant-commons-logging.jar
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642
-# the symlinks that are commented out are not currently shipped on Fedora
+# the symlinks that are commented-out are not currently shipped on Fedora
#ln -s %{_javadir}/ant/ant-commons-net.jar plugins/org.apache.ant/lib/ant-commons-net.jar
#ln -s %{_javadir}/ant/ant-icontract.jar plugins/org.apache.ant/lib/ant-icontract.jar
#ln -s %{_javadir}/ant/ant-jai.jar plugins/org.apache.ant/lib/ant-jai.jar
@@ -598,15 +558,14 @@
#ln -s %{_javadir}/ant/ant-xalan1.jar plugins/org.apache.ant/lib/ant-xalan1.jar
#ln -s %{_javadir}/ant/ant-xslp.jar plugins/org.apache.ant/lib/ant-xslp.jar
## END ANT ##
+
# BEGIN LUCENE ##
rm plugins/org.apache.lucene/lucene-1.4.3.jar
-# FIXME: Remove this zip until we have a lucene-devel package containing it.
-# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=170343
rm plugins/org.apache.lucene/lucene-1.4.3-src.zip
+ln -s %{_usr}/src/lucene/lucene-1.4.3.jar plugins/org.apache.lucene/lucene-1.4.3-src.zip
ln -s %{_javadir}/lucene.jar plugins/org.apache.lucene/lucene-1.4.3.jar
# END LUCENE ##
-
## BEGIN TOMCAT ##
rm plugins/org.eclipse.tomcat/commons-beanutils.jar
rm plugins/org.eclipse.tomcat/commons-collections.jar
@@ -670,11 +629,10 @@
sed --in-place "s:-L\$(AWT_LIB_PATH):-L%{_jvmdir}/java/jre/lib/%{_arch}:" make_linux.mak
popd
-# FIXME: figure out what's going on with build.index
+# FIXME: figure out what's going on with build.index. This is a gjdoc problem.
find plugins -type f -name \*.xml -exec sed --in-place "s/\(<antcall target=\"build.index\".*\/>\)/<\!-- \1 -->/" "{}" \;
# the swt version is set to HEAD on ia64 but shouldn't be
-# FIXME: file a bug about this
# get swt version
SWT_MAJ_VER=$(grep maj_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =)
SWT_MIN_VER=$(grep min_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =)
@@ -685,15 +643,15 @@
assemble.org.eclipse.sdk.linux.gtk.ia64.xml \
features/org.eclipse.rcp/build.xml
-# nasty hack to get suppport for ppc64, s390(x) and sparc(64)
-# move all of the ia64 directories to ppc64 or s390(x) or sparc(64) dirs and replace
+# Nasty hack to get suppport for ppc64, s390{,x} and sparc{,64}
+# Move all of the ia64 directories to ppc64 or s390{,x} or sparc{,64} dirs and replace
# the ia64 strings with ppc64 or s390(x)
%ifarch ppc64 s390 s390x sparc sparc64
# there is only partial support for ppc64 in 3.2 so we have to remove this
# partial support to get the replacemnt hack to work
find -name \*ppc64\* | xargs rm -r
- # remove remove ppc64 support from features/org.eclipse.platform.source/feature.xml
+ # remove ppc64 support from features/org.eclipse.platform.source/feature.xml
# replace ppc64 with a fake arch (ppc128) so we don't have duplicate ant targets
find -type f -name \*.xml -exec sed --in-place "s/\(rootFileslinux_gtk_\)ppc64/\1ppc128/g" "{}" \;
# remove org.eclipse.platform.source.linux.gtk.ppc64,3.2.0.v20060602-0010-gszCh-8eOaU1uKq
@@ -701,11 +659,11 @@
# replace final occurances with an existing arch
sed --in-place "s/ppc64/x86_64/g" features/org.eclipse.platform.source/build.xml
- # remove remove ppc64 support from features/org.eclipse.platform.source/feature.xml
+ # remove ppc64 support from features/org.eclipse.platform.source/feature.xml
mv features/org.eclipse.platform.source/feature.xml features/org.eclipse.platform.source/feature.xml.orig
grep -v ppc64 features/org.eclipse.platform.source/feature.xml.orig > features/org.eclipse.platform.source/feature.xml
- # finally the replacement hack
+ # finally, the replacement hack
for f in $(find -name \*ia64\* | grep -v motif | grep -v ia64_32); do
mv $f $(echo $f | sed "s/ia64/%{_arch}/")
done
@@ -722,16 +680,7 @@
done
popd
-# setup the jsch plugin build
-rm plugins/org.eclipse.team.cvs.ssh2/com.jcraft.jsch_*.jar
-# FIXME remove version number, file a bug about this
-pushd baseLocation/plugins
-# get the Manifest file
-unzip -qq -o -d com.jcraft.jsch_0.1.28.jar-build com.jcraft.jsch_*.jar -x com\*
-rm com.jcraft.jsch_*.jar
-popd
-
-# setup with the icu4j plugins for building
+# set the icu4j plugins for building
pushd baseLocation/plugins
rm com.ibm.icu.base_3.4.5.jar \
com.ibm.icu_3.4.5.jar \
@@ -742,7 +691,7 @@
pushd icu4j-build-temp
unzip -qq %{SOURCE7}
sed --in-place "s/ .*bootclasspath=.*//g" build.xml
-ant -d eclipseProjects
+ant eclipseProjects
popd
mkdir -p icu4j-build
@@ -752,7 +701,7 @@
# add build.xml patches
pushd icu4j-build
-%patch3 -p1
+%patch1 -p1
popd
popd
@@ -762,7 +711,8 @@
rm plugins/org.eclipse.swt.win32.win32.x86/swt.jar \
plugins/org.eclipse.swt/extra_jars/exceptions.jar \
plugins/org.eclipse.swt.tools/swttools.jar \
- features/org.eclipse.platform.launchers/bin/startup.jar
+ features/org.eclipse.platform.launchers/bin/startup.jar \
+ plugins/org.eclipse.team.cvs.ssh2/com.jcraft.jsch_*.jar
# make sure there are no jars left
JARS=""
@@ -772,7 +722,7 @@
fi
done
if [ ! -z "$JARS" ]; then
- echo "These jar should be deleted and symlinked to system jars: $JARS"
+ echo "These jars should be deleted and symlinked to system jars: $JARS"
#FIXME: enable exit 1
fi
@@ -782,24 +732,28 @@
env
ORIGCLASSPATH=$CLASSPATH
-# finish the jsch plugin build
-# FIXME remove version numbers
+# Build jsch
+pushd baseLocation/plugins
+# extract the Manifest file
+unzip -qq -o -d com.jcraft.jsch_0.1.28.jar-build com.jcraft.jsch_*.jar -x com\*
+rm com.jcraft.jsch_*.jar
+popd
# FIXME jar -V does not work for proprietary VMs
pushd baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build
unzip -qq %{_javadir}/jsch.jar -x META-INF\*
sed --in-place "s/$(grep Created-By: META-INF/MANIFEST.MF)/Created-By: $(jar -V | head -1)/" META-INF/MANIFEST.MF
jar -Mcf ../com.jcraft.jsch_0.1.28.jar *
popd
-# FXIME don't delete this, do what icu4j does
+# FIXME don't delete this, do what icu4j does
rm -r baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build
-# finish the icu4j build
+# Finish the icu4j build
pushd baseLocation/plugins
-# build the icu.base plugin
+# Build the icu.base plugin
zipfile=$PWD/com.ibm.icu.base.source_3.4.5/src/com.ibm.icu.base_3.4.5/src.zip
pushd icu4j-build/com.ibm.icu.base/src
-find -name \*.java | xargs touch --date=1/1/1970
+find -name \*.java | xargs touch --date=1/1/1980
zip -X -9 -r $zipfile . -i \*.java
popd
pushd icu4j-build/com.ibm.icu.base
@@ -807,10 +761,10 @@
popd
mv icu4j-build/com.ibm.icu.base/com.ibm.icu.base_3.4.5.jar .
-# build the icu plugin
+# Build the icu plugin
zipfile=$PWD/com.ibm.icu.source_3.4.5/src/com.ibm.icu_3.4.5/src.zip
pushd icu4j-build/com.ibm.icu/src
-find -name \*.java | xargs touch --date=1/1/1970
+find -name \*.java | xargs touch --date=1/1/1980
zip -X -9 -r $zipfile . -i \*.java
popd
pushd icu4j-build/com.ibm.icu
@@ -896,27 +850,6 @@
-DinstallOs=linux -DinstallWs=gtk -DinstallArch=%{eclipse_arch} \
-Dlibsconfig=true
-# Hack to get the -debuginfo source code references
-# to be pointing to the right place:
-# Hardlink all the org.* source we can find
-# Presumably, all the zipped source gets unzipped before compilation?
-#src_root=$PWD/plugins
-#pushd result
-#mkdir -p eclipse/org
-#collected_src_dir=$PWD/eclipse
-#cat >copyallsrc <<-EOF
-# #! /bin/bash -peu
-# cd "\$1"
-# echo "Copying all .java source files from \$1 to $collected_src_dir..."
-# find . -type f -name '*.java' -print0 \
-# | xargs -0 -r cp -l --parents --target-directory=$collected_src_dir/org
-#EOF
-#chmod u+x copyallsrc
-## Special case logic for SWT - only copy linux-gtk source
-#find $src_root -type d -a \( -name org.eclipse.swt -prune -o -name org -print0 \) | xargs -l -0 ./copyallsrc
-#./copyallsrc $src_root/org.eclipse.swt/Eclipse\ SWT/gtk/org
-#popd
-
# Build the FileInitializer application
SDK=$(cd eclipse && pwd)
PDEPLUGINVERSION=$(ls $SDK/plugins | grep pde.build | sed 's/org.eclipse.pde.build_//')
@@ -925,6 +858,7 @@
mkdir -p home
homedir=$(cd home && pwd)
+# This can go away when package build handles plugins (not just features)
echo "<project default=\"main\"><target name=\"main\"></target></project>" > build/assemble.org.eclipse.equinox.initializer.all.xml
echo "<project default=\"main\"><target name=\"main\"></target></project>" > build/package.org.eclipse.equinox.initializer.all.xml
@@ -952,52 +886,62 @@
%install
rm -rf $RPM_BUILD_ROOT
-# get swt version
+# Get swt version
SWT_MAJ_VER=$(grep maj_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =)
SWT_MIN_VER=$(grep min_ver plugins/org.eclipse.swt/Eclipse\ SWT/common/library/make_common.mak | cut -f 2 -d =)
SWT_VERSION=$SWT_MAJ_VER$SWT_MIN_VER
+# Some directories we need
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/links
+install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}
+install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/features
+
+# Explode the resulting SDK tarball
tar -C $RPM_BUILD_ROOT%{_datadir} -zxf result/linux-gtk-%{eclipse_arch}-sdk.tar.gz
+# The FileInitializer app isn't part of the SDK (yet?) but we want it to be
+# around for other RPMs
cp equinox-incubator/org.eclipse.equinox.initializer/org.eclipse.equinox.initializer_*.jar \
$RPM_BUILD_ROOT%{_datadir}/%{name}/plugins
-install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}
-
-# Install the platform specific fragments in an arch specific dir
-install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/links
+# Set up an extension location and a link file for the arch-specific dir
echo "path:$RPM_BUILD_ROOT%{_libdir}" > $RPM_BUILD_ROOT%{_datadir}/%{name}/links/fragments.link
echo "name=Eclipse Platform" > $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension
echo "id=org.eclipse.platform" >> $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension
echo "version=%{eclipse_majmin}.%{eclipse_micro}" >> $RPM_BUILD_ROOT%{_libdir}/%{name}/.eclipseextension
-install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
-install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/features
-# Install the platform specific fragments in an arch specific dir
-install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+# Install the platform-specific fragments in an arch-specific dir
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/*%{eclipse_arch}* $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
-# platform.source has the launcher src zip which is platform specific
+
+# platform.source has the launcher src zip which is platform-specific
PLATFORMSOURCEVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep platform.source_ | sed 's/org.eclipse.platform.source_//')
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform.source_$PLATFORMSOURCEVERSION \
$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+
# help.webapp generates web.xml with Apache Jakarta Tomcat JspC. This file is
# generated differently for different arches. FIXME investigate this.
HELPWEBAPPVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep help.webapp_ | sed 's/org.eclipse.help.webapp_//')
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.help.webapp_$HELPWEBAPPVERSION \
$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+
# update.core.linux is a fragment
# FIXME: make a patch for upstream to change to swt fragment notation
UPDATECORELINUXVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep update.core.linux_ | sed 's/org.eclipse.update.core.linux_//')
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.update.core.linux_$UPDATECORELINUXVERSION \
$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+
# FIXME: icu4j generates res_index.txt differently on different arches - possible libgcj bug.
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/com.ibm.icu_3.4.5.jar $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/com.ibm.icu.source_3.4.5 $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
-# FIXME: there is a problem with gjdoc with this plugin
+
+# FIXME: there is a problem with gjdoc generating different HTML on different
+# architectures. This happens with this plugin.
PLATFORMDOCISVVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep platform.doc.isv_ | sed 's/org.eclipse.platform.doc.isv_//')
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform.doc.isv_$PLATFORMDOCISVVERSION \
$RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+
# To ensure that the product is org.eclipse.sdk.ide when eclipse-sdk is
# installed, we must check for its presence at %%post{,un} time. This does not
# work in the biarch case, though, if it is not in an arch-specific location.
@@ -1005,14 +949,17 @@
# better than always appearing in the about dialog as the Eclipse Platform with
# the platform plugin version number instead of the actual SDK version number.
# -- overholt, 2006-11-03
-mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.sdk_* $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
-mv $RPM_BUILD_ROOT%{_datadir}/%{name}/features/org.eclipse.sdk_* $RPM_BUILD_ROOT%{_libdir}/%{name}/features
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.sdk_* \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins
+mv $RPM_BUILD_ROOT%{_datadir}/%{name}/features/org.eclipse.sdk_* \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/features
-mkdir -p home
-homedir=$(cd home && pwd)
# FIXME: investigate why it doesn't work to set this -- configuration data is
-# always written to /usr/share/eclipse/configuration
-# -Dosgi.sharedConfiguration.area=$RPM_BUILD_ROOT%{_libdir}/%{name}/configuration \
+# always written to /usr/share/eclipse/configuration, even with
+# -Dosgi.sharedConfiguration.area=$RPM_BUILD_ROOT%{_libdir}/%{name}/configuration
+# Note (2006-12-05): upon looking at this again, we (bkonrath, overholt) don't
+# know what we're doing with $libdir_path :) It requires some investigation.
+#
# Extract .so files
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535
pushd $RPM_BUILD_ROOT
@@ -1035,8 +982,6 @@
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/configuration $RPM_BUILD_ROOT%{_libdir}/%{name}
rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/org.eclipse.update
rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/org.eclipse.core.runtime
-# Where did these go?
-#rm -r $RPM_BUILD_ROOT%{_libdir}/%{name}/configuration/*.log
# Set config.ini for the platform; no benefit to having it be sdk
sed --in-place "s/eclipse.product=org.eclipse.sdk.ide/eclipse.product=org.eclipse.platform.ide/" \
@@ -1071,9 +1016,9 @@
popd
# Install the SWT symlinks in libdir
-swtjarversion=$(grep v$SWT_VERSION plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}/build.xml | sed "s:.*<.*\"\(.*\)\"/>:\1:")
+SWTJARVERSION=$(grep v$SWT_VERSION plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}/build.xml | sed "s:.*<.*\"\(.*\)\"/>:\1:")
pushd $RPM_BUILD_ROOT%{_libdir}/%{name}
-ln -s %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_$swtjarversion.jar swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar
+ln -s %{_libdir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_$SWTJARVERSION.jar swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar
ln -s swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar swt-gtk-%{eclipse_majmin}.jar
popd
@@ -1090,22 +1035,28 @@
ln -s org.eclipse.pde.build_* org.eclipse.pde.build
popd
-# rh/freedesktop.org icons
-install -p -D -m0644 %{SOURCE5} \
+# Icons
+PLATFORMSUFFIX=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep eclipse.platform_ | sed "s/org.eclipse.platform_//")
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
+ln -s %{_datadir}/%{name}/plugins/org.eclipse.platform_$PLATFORMSUFFIX/eclipse48.png \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
-install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/pixmaps
-ln -s ../icons/hicolor/48x48/apps/%{name}.png \
- $RPM_BUILD_ROOT%{_datadir}/pixmaps
-install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
-ln -s ../../../../%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.%{eclipse_micro}/eclipse32.gif \
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
+ln -s %{_datadir}/%{name}/plugins/org.eclipse.platform_$PLATFORMSUFFIX/eclipse32.png \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
-install -d -m0755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps
-ln -s ../../../../%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.%{eclipse_micro}/eclipse.gif \
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps
+ln -s ../../../../%{name}/plugins/org.eclipse.platform_$PLATFORMSUFFIX/eclipse.png \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
+install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/pixmaps
+ln -s %{_datadir}/icons/hicolor/48x48/apps/%{name}.png \
+ $RPM_BUILD_ROOT%{_datadir}/pixmaps
+%ifarch %{ix86} x86_64
# Remove unused icon.xpm
+# This should be fixed in 3.3.
+# see https://bugs.eclipse.org/bugs/show_bug.cgi?id=86848
rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/icon.xpm
+%endif
-# install the efj wrapper script
+# Install the efj wrapper script
install -p -D -m0755 %{SOURCE17} $RPM_BUILD_ROOT%{_bindir}/efj
sed --in-place "s:startup.jar:%{_datadir}/%{name}/startup.jar:" \
$RPM_BUILD_ROOT%{_bindir}/efj
@@ -1118,18 +1069,20 @@
desktop-file-validate %{SOURCE2}
# freedesktop.org menu entry
-install -p -D -m0644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
+install -p -D -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
+SDKPLUGINVERSION=$(ls $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins | grep eclipse.sdk_ | sed "s/org.eclipse.sdk_//")
# Put Fedora Core version into about.mappings of org.eclipse.sdk and
# org.eclipse.platform to show it in # Eclipse about dialog. (courtesy Debian
# Eclipse packagers)
# FIXME use the third id
-pushd $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/org.eclipse.sdk_%{eclipse_majmin}.*
-OS_VERSION=`cat /etc/*-release | head -n 1`
+pushd $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/org.eclipse.sdk_$SDKPLUGINVERSION
+OS_VERSION=$(cat /etc/*-release | head -n 1)
sed -e "s/\(0=.*\)/\1 ($OS_VERSION)/" < about.mappings > about.mappings.tmp
mv about.mappings.tmp about.mappings
popd
-pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.*
+PLATFORMPLUGINVERSION=$(ls $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins | grep eclipse.platform_ | sed "s/org.eclipse.platform_//")
+pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform_$PLATFORMPLUGINVERSION
sed -e "s/\(0=.*\)/\1 ($OS_VERSION)/" < about.mappings > about.mappings.tmp
mv about.mappings.tmp about.mappings
popd
@@ -1209,14 +1162,20 @@
#ln -s %{_javadir}/ant/ant-xalan1.jar plugins/org.apache.ant_1.6.5/lib/ant-xalan1.jar
#ln -s %{_javadir}/ant/ant-xslp.jar plugins/org.apache.ant_1.6.5/lib/ant-xslp.jar
## END ANT ##
+
# BEGIN LUCENE ##
-# FIXME: rm -f in ln
-#rm plugins/org.apache.lucene_*/lucene-1.4.3.jar
-ln -sf %{_javadir}/lucene.jar plugins/org.apache.lucene_*/lucene-1.4.3.jar
+LUCENEPLUGINVERSION=$(ls plugins | grep lucene | sed 's/org.apache.lucene_//')
+rm plugins/org.apache.lucene_$LUCENEPLUGINVERSION/lucene-1.4.3.jar
+ln -s %{_javadir}/lucene.jar \
+ plugins/org.apache.lucene_$LUCENEPLUGINVERSION/lucene-1.4.3.jar
+# org.eclipse.platform.source is in the arch-specific location
+pushd $RPM_BUILD_ROOT%{_libdir}/%{name}
+PLATFORMSOURCEVERSION=$(ls plugins | grep platform.source_ | sed 's/org.eclipse.platform.source_//')
+rm plugins/org.eclipse.platform.source_$PLATFORMSOURCEVERSION/src/org.apache.lucene_$LUCENEPLUGINVERSION/lucene-1.4.3-src.zip
+ln -s %{_usr}/src/lucene/lucene-1.4.3.jar \
+ plugins/org.eclipse.platform.source_$PLATFORMSOURCEVERSION/src/org.apache.lucene_$LUCENEPLUGINVERSION/lucene-1.4.3-src.zip
+popd
# END LUCENE ##
-# FIXME
-#rm plugins/org.eclipse.team.cvs.ssh2_*/jsch-0.1.18.jar
-#ln -s %{_javadir}/jsch.jar plugins/org.eclipse.team.cvs.ssh2_*/jsch-0.1.18.jar
## BEGIN TOMCAT ##
TOMCATPLUGINVERSION=$(ls plugins | grep tomcat | sed 's/org.eclipse.tomcat_//')
@@ -1254,19 +1213,6 @@
build-jar-repository -s -p plugins/org.junit_* junit
-# FIXME: due to aot-compile-rpm smarts, the required resource bundles aren't
-# being compiled so this truly native ecj binary isn't possible
-#%if %{gcj_support}
-# # Build and install ecj binary
-# pushd $RPM_BUILD_ROOT%{_libdir}/gcj/%{name}
-# gcj -g -O2 --main=org.eclipse.jdt.internal.compiler.batch.Main \
-# -Wl,-R,%{_libdir}/gcj/%{name} \
-# org.eclipse.jdt.core_3.1.2.jar.so -o \
-# $RPM_BUILD_ROOT%{_bindir}/ecj
-# popd
-# chmod a+x $RPM_BUILD_ROOT%{_bindir}/ecj
-#%else
-
# Ensure that the zip files are the same across all builds.
# This is needed to make these package multilib compatible.
# FIXME: this needs to be re-written as a separate program
@@ -1363,7 +1309,10 @@
%post platform
%if %{gcj_support}
-%{_bindir}/rebuild-gcj-db
+if [ -x %{_bindir}/rebuild-gcj-db ]
+then
+ %{_bindir}/rebuild-gcj-db
+fi
%endif
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
@@ -1372,7 +1321,10 @@
%postun platform
%if %{gcj_support}
-%{_bindir}/rebuild-gcj-db
+if [ -x %{_bindir}/rebuild-gcj-db ]
+then
+ %{_bindir}/rebuild-gcj-db
+fi
%endif
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
@@ -1381,7 +1333,10 @@
%post sdk
%if %{gcj_support}
-%{_bindir}/rebuild-gcj-db
+if [ -x %{_bindir}/rebuild-gcj-db ]
+then
+ %{_bindir}/rebuild-gcj-db
+fi
%endif
if [ -f %{_libdir}/%{name}/configuration/config.ini ]; then
sed --in-place "s/[#]*eclipse.product=.*/eclipse.product=org.eclipse.sdk.ide/" \
@@ -1390,7 +1345,10 @@
%postun sdk
%if %{gcj_support}
-%{_bindir}/rebuild-gcj-db
+if [ -x %{_bindir}/rebuild-gcj-db ]
+then
+ %{_bindir}/rebuild-gcj-db
+fi
%endif
# Only set the product back to platform.ide if the sdk is actually removed for
# this arch. This SDKDIR check is to deal with the ordering of new %%post
@@ -1424,14 +1382,6 @@
%postun pde-sdk -p %{_bindir}/rebuild-gcj-db
%endif
-# This is to deal with my stupidity that manifested itself as
-# rebuild-sdk-features -- overholt
-%triggerpostun rcp -- eclipse-rcp < 1:3.2.1, eclipse-rcp-devel < 1:3.2.1, eclipse-pde < 1:3.2.1, eclipse-pde-devel < 1:3.2.1, eclipse-jdt < 1:3.2.1, eclipse-jdt-devel < 1:3.2.1, eclipse-platform < 1:3.2.1, eclipse-platform-devel < 1:3.2.1
-# Remove crap from rebuild-sdk-features
-rm -rf %{_datadir}/%{name}/features/org.eclipse.sdk_3.1.2
-# Remove pre-configured, unnecessary platform.xml created by rebuild-sdk-features
-rm -f %{_datadir}/%{name}/configuration/org.eclipse.update/platform.xml*
-
%files ecj
%defattr(-,root,root)
%dir %{_datadir}/%{name}
@@ -1748,6 +1698,10 @@
%{_libdir}/%{name}/plugins/org.eclipse.sdk_*
%changelog
+* Tue Dec 5 2006 Andrew Overholt <overholt at redhat.com> 3.2.1-24
+- Specfile review with Ben Konrath.
+- Lots of cleanups.
+
* Tue Nov 28 2006 Andrew Overholt <overholt at redhat.com> 3.2.1-23
- Move back to ~/.eclipse for update site pending upstream comments.
- Add patch to add platform to ~/.eclipse's platform.xml. This maintains
--- eclipse-gnuformatterjdt.patch DELETED ---
--- eclipse-gnuformatterjdtui.patch DELETED ---
--- eclipse-libswt-enableallandO2.patch DELETED ---
More information about the fedora-cvs-commits
mailing list