Blob Blame History Raw
Epoch:	1

%define fedora		1
%define redhat		0
%if %{fedora}
%define gcj_support 	1
%else
%define gcj_support 	0
%endif
%define tomcatsharedir 	%{_datadir}/tomcat5
%define tomcatlibdir 	%{_var}/lib/tomcat5
%define pkg_summary     An open, extensible IDE
%define section         free
%define eclipse_major   3
%define eclipse_minor   2
%define eclipse_majmin  %{eclipse_major}.%{eclipse_minor}
%define eclipse_micro   0
%define libname         libswt3

# All arches line up except i386 -> x86
%ifarch %{ix86}
%define eclipse_arch    x86
%else
%define eclipse_arch   %{_arch}
%endif
%if %{gcj_support}
%ifarch %{ix86} x86_64 ppc
%define native_ecj   1
%else
%define native_ecj   0
%endif
%else
%define native_ecj   0
%endif

Summary:        %{pkg_summary}
Name:           eclipse
Version:        %{eclipse_majmin}.%{eclipse_micro}
Release:        0jpp_0fc.3.2RC7.3
License:        EPL
Group:          Text Editors/Integrated Development Environments (IDE)
URL:            http://www.eclipse.org/
Source0:	http://download.eclipse.org/eclipse/downloads/drops/S-3.2RC7-200606021317/eclipse-sourceBuild-srcIncluded-3.2RC7.zip
Source2:        %{name}.desktop
Source5:        %{name}-48.png
Source6:        %{name}.conf
%if %{fedora}
Source11:	%{name}-fedora-splash-3.2rc7.png
%endif
%if %{redhat}
Source11:	%{name}-redhat-splash.png
%endif
Source16:       %{name}-copy-platform.sh
Source17:       efj.sh.in
Source19:       %{name}-filenamepatterns.txt
Source20:	ecj.sh.in
Source21:	rebuild-sdk-features




# 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
Patch4:		%{name}-libupdatebuild.patch
Patch5:		%{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
Patch45:	%{name}-webapp-jasper-classpath.patch
Patch46:	%{name}-libswt-xpcomgcc4.patch
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=79592
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=168726
Patch47:	%{name}-launcher-link.patch
# Don't attempt to link to Sun's javadocs
Patch48:	%{name}-javadoclinks.patch
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=126648
Patch52:	%{name}-libswt-mozilla2.patch
# Always generate debug info when building RPMs (Andrew Haley)
Patch49:	%{name}-ecj-rpmdebuginfo.patch
# generic releng plugins that can be used to build plugins
# see this thread for deails: 
# https://www.redhat.com/archives/fedora-devel-java-list/2006-April/msg00048.html
Patch53:	%{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
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=98371
#Patch28: 	%{name}-tomcat5.patch
#Patch29: 	%{name}-tomcat5-build.patch
#Patch30: 	%{name}-tomcat5-build.2.patch
#Patch50:        %{name}-tomcat5-build.3.patch
#Patch31: 	%{name}-webapp-tomcat5.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
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535
Patch24: 	%{name}-fileinitializer.patch
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=191536
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=142861
Patch54:	%{name}-swt-rm-ON_TOP.patch
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90630
Patch22: 	%{name}-updatehomedir.patch
# JPackage []s in names of symlinks ...
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=162177
Patch34:	%{name}-bz162177.patch

# these patches should be in 3.2 final
Patch100:	customBuildCallbacks.xml-add-pre.gather.bin.parts.patch
Patch101:	org.eclipse.platform.doc.isv-rm-org.eclipse.ui.workbench-Eclipse-UI-Components.patch



%if %{gcj_support}
%else
ExclusiveArch: %{ix86} x86_64 ppc ia64
%endif
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:  ant
BuildRequires:  perl
BuildRequires:  jpackage-utils >= 0:1.5, make, gcc
BuildRequires:  gnome-vfs2-devel
BuildRequires:  gtk2-devel
BuildRequires:  glib2-devel
BuildRequires:  libgnome-devel
BuildRequires:  libgnomeui-devel
BuildRequires:  gcc-c++
BuildRequires:  mozilla = 37:1.7.13
BuildRequires:  mozilla-devel = 37:1.7.13
BuildRequires:  nspr-devel
BuildRequires:  libXtst-devel
BuildRequires:  mesa-libGL-devel
BuildRequires:  mesa-libGLU-devel
BuildRequires:  cairo >= 1.0
BuildRequires:  unzip
BuildRequires:  java-javadoc
%if %{gcj_support}
BuildRequires:	gcc-java >= 4.0.2
BuildRequires:	java-gcj-compat-devel >= 1.0.43
BuildRequires:  dos2unix
%else
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
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642
#BuildRequires: ant-commons-net
BuildRequires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch
BuildRequires: jsch >= 0:0.1.28-1jpp
#FIXME
%ifnarch ppc64 s390 s390x
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
BuildRequires: mx4j >= 2.1
BuildRequires: tomcat5 >= 5.5.15
BuildRequires: tomcat5-jasper >= 5.5.15
BuildRequires: tomcat5-servlet-2.4-api >= 5.5.15
%endif
BuildRequires: lucene
BuildRequires: regexp 
BuildRequires: junit >= 3.8.1-3jpp
%if %{gcj_support}
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%endif

%description
The Eclipse Platform is designed for building integrated development
environments (IDEs) that can be used to create applications as diverse
as web sites, embedded Java(tm) programs, C++ programs, and Enterprise
JavaBeans(tm).

%package        ecj
Summary:        Eclipse Compiler for Java
Group:          Development/Languages
Obsoletes:	ecj
Provides:	ecj
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):	java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%else
Requires:	java >= 1.4.2
%endif

%description    ecj
Eclipse compiler for Java.

%package        platform
Summary:        Eclipse platform common files
Group:          Text Editors/Integrated Development Environments (IDE)
Provides:       %{name} = %{epoch}:%{version}-%{release}
Obsoletes:	%{name}-sdk %{name}-ui %{name}-gtk2 %{name}-scripts eclipse
Provides:	%{name}-sdk = %{epoch}:%{version}-%{release}
Provides:       %{name}-ui = %{epoch}:%{version}-%{release}
Provides:       %{name}-scripts = %{epoch}:%{version}-%{release}
Provides:       %{name}-gtk2 = %{epoch}:%{version}-%{release}
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires:	java-gcj-compat >= 1.0.43
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%else
Requires:	java >= 1.4.2
%endif
Requires:       %{name}-rcp = %{epoch}:%{version}-%{release}
Requires:       %{libname}-gtk2 = %{epoch}:%{version}-%{release}
Requires:       /usr/bin/perl
Requires:       /usr/bin/mozilla

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
# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180642
#Requires: ant-commons-net
Requires: ant-javamail ant-jdepend ant-junit ant-nodeps ant-swing ant-trax ant-jsch
#FIXME
%ifnarch ppc64 s390 s390x
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.15
Requires: tomcat5-jasper >= 5.5.15
Requires: tomcat5-servlet-2.4-api >= 5.5.15
%endif
Requires: lucene 
Requires: regexp

%description    platform
Eclipse platform common files.  This package now contains the GTK2 UI (the
former eclipse-gtk2 package).

%package        platform-devel
Summary:        Eclipse platform Source
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-platform = %{epoch}:%{version}-%{release}
Requires:       %{name}-rcp-devel = %{epoch}:%{version}-%{release}
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
Requires:       java-javadoc

%description    platform-devel
Source for Eclipse platform for use within Eclipse.

%package        jdt
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:       junit >= 3.8.1-3jpp
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%endif

%description    jdt
Eclipse Java developments tools.

%package        jdt-devel
Summary:        Eclipse JDT Source
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-jdt = %{epoch}:%{version}-%{release}
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
Requires:       java-javadoc

%description    jdt-devel
Source for JDT for use within Eclipse.

%package        pde
Summary:        Eclipse PDE
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-jdt = %{epoch}:%{version}-%{release}
Requires:       %{name}-pde-runtime = %{epoch}:%{version}-%{release}
Requires:       %{name}-platform-devel = %{epoch}:%{version}-%{release}
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%endif

%description    pde
Eclipse Plug-in Development Environment.

%package        pde-runtime
Summary:        Eclipse PDE runtime plugin.
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-jdt = %{epoch}:%{version}-%{release}
Requires:       %{name}-platform-devel = %{epoch}:%{version}-%{release}
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%endif

%description    pde-runtime
Eclipse Plug-in Development Environment runtime plugin (org.eclipse.pde.runtime).

%package        pde-devel
Summary:        Eclipse PDE Source
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-pde = %{epoch}:%{version}-%{release}
Requires:       %{name}-jdt-devel = %{epoch}:%{version}-%{release}
Requires(post):   %{name}-platform = %{epoch}:%{version}-%{release}
Requires(postun): %{name}-platform = %{epoch}:%{version}-%{release}
Obsoletes:	%{name}-source
Provides:       %{name}-source = %{epoch}:%{version}-%{release}

%description    pde-devel
Source for Eclipse Plug-in Development Environment for use within Eclipse.

%package     -n %{libname}-gtk2
Summary:        SWT Library for GTK2
Group:          Text Editors/Integrated Development Environments (IDE)
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%endif

%description -n %{libname}-gtk2
SWT Library for GTK2.

%package        rcp
Summary:        Eclipse Rich Client Platform
Group:          Development/Languages
%if %{gcj_support}
Requires:	libgcj >= 4.0.2
Requires(post):   java-gcj-compat >= 1.0.43
Requires(postun): java-gcj-compat >= 1.0.43
%else
Requires:	java >= 1.4.2
%endif

%description    rcp
Eclipse Rich Client Platform

%package        rcp-devel
Summary:        Eclipse RCP Source
Group:          Text Editors/Integrated Development Environments (IDE)
Requires:       %{name}-rcp = %{epoch}:%{version}-%{release}
Requires:       %{name}-jdt-devel = %{epoch}:%{version}-%{release}

%description    rcp-devel
Source for RCP for use within Eclipse.

%prep
%setup -q -c

pushd plugins/org.eclipse.platform.doc.isv
%patch100 -p0
%patch101 -p0 
popd 
pushd plugins/org.eclipse.platform.doc.user
%patch100 -p0
popd

# I hate spaces in paths with patch!
pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library
%patch0 -p0
%patch52 -p0
popd
%patch2 -p0
%patch4 -p0
%patch5 -p0
pushd plugins/org.eclipse.swt.gtk.linux.x86_64
%patch18 -p0
popd
%patch22 -p0
pushd plugins/org.eclipse.core.runtime
%patch24 -p0
popd

# tomcat patches
pushd plugins/org.eclipse.tomcat
#%patch28 -p0
#%patch29 -p0
popd
#%patch30 -p0
#%patch50 -p1
#pushd plugins/org.eclipse.help.webapp
#%patch31 -p0
#popd
pushd plugins/org.eclipse.compare
#%patch33 -p0
popd
pushd plugins/org.eclipse.jdt.core
%patch34 -p0
popd
%patch38 -p0
%patch40 -p0
#%patch43
%patch45
pushd plugins/org.eclipse.swt/Eclipse\ SWT\ Mozilla/common/library
%patch46
popd

# Because the launcher source is zipped up, we need to unzip, patch, and re-pack
mkdir launchertmp
unzip -qq -d launchertmp plugins/org.eclipse.platform/launchersrc.zip
pushd launchertmp
%patch47 -p1
zip -q -9 -r ../launchersrc.zip *
popd
mv launchersrc.zip plugins/org.eclipse.platform
rm -rf launchertmp

pushd features/org.eclipse.platform.launchers
%patch47 -p1
popd
# Link against our system-installed javadocs
%patch48 -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
pwd

pushd plugins/org.eclipse.pde.build
%patch53
sed --in-place "s:@eclipse_base@:%{_datadir}/%{name}:" templates/package-build/build.properties
popd

pushd plugins/org.eclipse.swt/Eclipse\ SWT
%patch54 
popd

%patch55 -p1
rm plugins/org.junit4/junit-4.1.jar

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
find -type f -name \*.xml -exec sed --in-place -r "s/output=\".*(txt|log).*\"//g" "{}" \;

# Remove existing .sos
find -name \*.so | xargs rm

# Symlinks

## BEGIN ANT ##
rm plugins/org.apache.ant/lib/ant-antlr.jar
rm plugins/org.apache.ant/lib/ant-antlrsrc.zip
rm plugins/org.apache.ant/lib/ant-apache-bcel.jar
rm plugins/org.apache.ant/lib/ant-apache-bcelsrc.zip
#rm plugins/org.apache.ant/lib/ant-apache-bsf.jar
#rm plugins/org.apache.ant/lib/ant-apache-bsfsrc.zip
rm plugins/org.apache.ant/lib/ant-apache-log4j.jar
rm plugins/org.apache.ant/lib/ant-apache-log4jsrc.zip
rm plugins/org.apache.ant/lib/ant-apache-oro.jar
rm plugins/org.apache.ant/lib/ant-apache-orosrc.zip
rm plugins/org.apache.ant/lib/ant-apache-regexp.jar
rm plugins/org.apache.ant/lib/ant-apache-regexpsrc.zip
rm plugins/org.apache.ant/lib/ant-apache-resolver.jar
rm plugins/org.apache.ant/lib/ant-apache-resolversrc.zip
rm plugins/org.apache.ant/lib/ant-commons-logging.jar
rm plugins/org.apache.ant/lib/ant-commons-loggingsrc.zip
rm plugins/org.apache.ant/lib/ant-commons-net.jar
rm plugins/org.apache.ant/lib/ant-commons-netsrc.zip
rm plugins/org.apache.ant/lib/ant-icontract.jar
rm plugins/org.apache.ant/lib/ant-icontractsrc.zip
rm plugins/org.apache.ant/lib/ant-jai.jar
rm plugins/org.apache.ant/lib/ant-jaisrc.zip
rm plugins/org.apache.ant/lib/ant.jar
rm plugins/org.apache.ant/lib/antsrc.zip
rm plugins/org.apache.ant/lib/ant-javamail.jar
rm plugins/org.apache.ant/lib/ant-javamailsrc.zip
rm plugins/org.apache.ant/lib/ant-jdepend.jar
rm plugins/org.apache.ant/lib/ant-jdependsrc.zip
rm plugins/org.apache.ant/lib/ant-jmf.jar
rm plugins/org.apache.ant/lib/ant-jmfsrc.zip
rm plugins/org.apache.ant/lib/ant-jsch.jar
rm plugins/org.apache.ant/lib/ant-jschsrc.zip
rm plugins/org.apache.ant/lib/ant-junit.jar
rm plugins/org.apache.ant/lib/ant-junitsrc.zip
rm plugins/org.apache.ant/lib/ant-launcher.jar
rm plugins/org.apache.ant/lib/ant-launchersrc.zip
rm plugins/org.apache.ant/lib/ant-netrexx.jar
rm plugins/org.apache.ant/lib/ant-netrexxsrc.zip
rm plugins/org.apache.ant/lib/ant-nodeps.jar
rm plugins/org.apache.ant/lib/ant-nodepssrc.zip
rm plugins/org.apache.ant/lib/ant-starteam.jar
rm plugins/org.apache.ant/lib/ant-starteamsrc.zip
rm plugins/org.apache.ant/lib/ant-stylebook.jar
rm plugins/org.apache.ant/lib/ant-stylebooksrc.zip
rm plugins/org.apache.ant/lib/ant-swing.jar
rm plugins/org.apache.ant/lib/ant-swingsrc.zip
rm plugins/org.apache.ant/lib/ant-trax.jar
rm plugins/org.apache.ant/lib/ant-traxsrc.zip
rm plugins/org.apache.ant/lib/ant-vaj.jar
rm plugins/org.apache.ant/lib/ant-vajsrc.zip
rm plugins/org.apache.ant/lib/ant-weblogic.jar
rm plugins/org.apache.ant/lib/ant-weblogicsrc.zip
rm plugins/org.apache.ant/lib/ant-xalan1.jar
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
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
ln -s %{_javadir}/ant/ant-apache-log4j.jar plugins/org.apache.ant/lib/ant-apache-log4j.jar
ln -s %{_javadir}/ant/ant-apache-oro.jar plugins/org.apache.ant/lib/ant-apache-oro.jar
ln -s %{_javadir}/ant/ant-apache-regexp.jar plugins/org.apache.ant/lib/ant-apache-regexp.jar
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
#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
ln -s %{_javadir}/ant.jar plugins/org.apache.ant/lib/ant.jar
ln -s %{_javadir}/ant/ant-javamail.jar plugins/org.apache.ant/lib/ant-javamail.jar
ln -s %{_javadir}/ant/ant-jdepend.jar plugins/org.apache.ant/lib/ant-jdepend.jar
#ln -s %{_javadir}/ant/ant-jmf.jar plugins/org.apache.ant/lib/ant-jmf.jar
ln -s %{_javadir}/ant/ant-jsch.jar plugins/org.apache.ant/lib/ant-jsch.jar
ln -s %{_javadir}/ant/ant-junit.jar plugins/org.apache.ant/lib/ant-junit.jar
ln -s %{_javadir}/ant-launcher.jar plugins/org.apache.ant/lib/ant-launcher.jar
#ln -s %{_javadir}/ant/ant-netrexx.jar plugins/org.apache.ant/lib/ant-netrexx.jar
ln -s %{_javadir}/ant/ant-nodeps.jar plugins/org.apache.ant/lib/ant-nodeps.jar
#ln -s %{_javadir}/ant/ant-starteam.jar plugins/org.apache.ant/lib/ant-starteam.jar
#ln -s %{_javadir}/ant/ant-stylebook.jar plugins/org.apache.ant/lib/ant-stylebook.jar
ln -s %{_javadir}/ant/ant-swing.jar plugins/org.apache.ant/lib/ant-swing.jar
ln -s %{_javadir}/ant/ant-trax.jar plugins/org.apache.ant/lib/ant-trax.jar
#ln -s %{_javadir}/ant/ant-vaj.jar plugins/org.apache.ant/lib/ant-vaj.jar
#ln -s %{_javadir}/ant/ant-weblogic.jar plugins/org.apache.ant/lib/ant-weblogic.jar
#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 %{_javadir}/lucene.jar plugins/org.apache.lucene/lucene-1.4.3.jar
# END LUCENE ##

# setup the jsch plugin build
rm plugins/org.eclipse.team.cvs.ssh2/com.jcraft.jsch_*.jar
# FIXME remove version number
pushd baseLocation/plugins
unzip -qq -o -d com.jcraft.jsch_0.1.28.jar-build com.jcraft.jsch_*.jar -x com\*
rm com.jcraft.jsch_*.jar
popd

## BEGIN TOMCAT ##
#rm plugins/org.eclipse.tomcat/commons-beanutils.jar
#rm plugins/org.eclipse.tomcat/commons-collections.jar
#rm plugins/org.eclipse.tomcat/commons-digester.jar
#rm plugins/org.eclipse.tomcat/commons-logging-api.jar
#rm plugins/org.eclipse.tomcat/commons-modeler.jar
#rm plugins/org.eclipse.tomcat/jakarta-regexp-1.3.jar
#rm plugins/org.eclipse.tomcat/servlet.jar
#rm plugins/org.eclipse.tomcat/servlets-manager.jar
#rm plugins/org.eclipse.tomcat/naming-common.jar
#rm plugins/org.eclipse.tomcat/servlets-common.jar
#rm plugins/org.eclipse.tomcat/tomcat-http11.jar
#ln -s %{tomcatsharedir}/bin/bootstrap.jar plugins/org.eclipse.tomcat/bootstrap.jar
#ln -s %{tomcatlibdir}/server/lib/catalina.jar plugins/org.eclipse.tomcat/catalina.jar
#ln -s %{tomcatlibdir}/server/lib/catalina-optional.jar plugins/org.eclipse.tomcat/catalina-optional.jar
#ln -s %{_javadir}/jakarta-commons-beanutils.jar plugins/org.eclipse.tomcat/jakarta-commons-beanutils.jar
#ln -s %{_javadir}/jakarta-commons-collections.jar plugins/org.eclipse.tomcat/jakarta-commons-collections.jar
#ln -s %{_javadir}/jakarta-commons-dbcp.jar plugins/org.eclipse.tomcat/jakarta-commons-dbcp.jar
#ln -s %{_javadir}/jakarta-commons-digester.jar plugins/org.eclipse.tomcat/jakarta-commons-digester.jar
#ln -s %{_javadir}/jakarta-commons-digester-rss.jar plugins/org.eclipse.tomcat/jakarta-commons-digester-rss.jar
#ln -s %{_javadir}/jakarta-commons-el.jar plugins/org.eclipse.tomcat/jakarta-commons-el.jar
#ln -s %{_javadir}/jakarta-commons-fileupload.jar plugins/org.eclipse.tomcat/jakarta-commons-fileupload.jar
#ln -s %{_javadir}/jakarta-commons-launcher.jar plugins/org.eclipse.tomcat/jakarta-commons-launcher.jar
#ln -s %{_javadir}/jakarta-commons-logging.jar plugins/org.eclipse.tomcat/jakarta-commons-logging.jar
#ln -s %{_javadir}/jakarta-commons-modeler.jar plugins/org.eclipse.tomcat/jakarta-commons-modeler.jar
#ln -s %{_javadir}/jakarta-commons-pool.jar plugins/org.eclipse.tomcat/jakarta-commons-pool.jar
#ln -s %{_javadir}/jasper5-compiler.jar  plugins/org.eclipse.tomcat/jasper-compiler.jar
#ln -s %{_javadir}/jasper5-runtime.jar plugins/org.eclipse.tomcat/jasper-runtime.jar
#ln -s %{_javadir}/jspapi.jar plugins/org.eclipse.tomcat/jspapi.jar
#ln -s %{_javadir}/mx4j/mx4j.jar plugins/org.eclipse.tomcat/mx4j.jar
#ln -s %{_javadir}/mx4j/mx4j-impl.jar plugins/org.eclipse.tomcat/mx4j-impl.jar
#ln -s %{_javadir}/mx4j/mx4j-jmx.jar plugins/org.eclipse.tomcat/mx4j-jmx.jar
#ln -s %{tomcatlibdir}/common/lib/naming-common.jar plugins/org.eclipse.tomcat/naming-common.jar
#ln -s %{tomcatlibdir}/common/lib/naming-factory.jar plugins/org.eclipse.tomcat/naming-factory.jar
#ln -s %{tomcatlibdir}/common/lib/naming-resources.jar plugins/org.eclipse.tomcat/naming-resources.jar
#ln -s %{_javadir}/regexp.jar plugins/org.eclipse.tomcat/regexp.jar
#ln -s %{_javadir}/servletapi5.jar plugins/org.eclipse.tomcat/servletapi5.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-common.jar plugins/org.eclipse.tomcat/servlets-common.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-default.jar plugins/org.eclipse.tomcat/servlets-default.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-invoker.jar plugins/org.eclipse.tomcat/servlets-invoker.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-coyote.jar plugins/org.eclipse.tomcat/tomcat-coyote.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-http11.jar plugins/org.eclipse.tomcat/tomcat-http11.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-util.jar plugins/org.eclipse.tomcat/tomcat-util.jar
## END TOMCAT ##
rm plugins/org.junit/junit.jar
ln -s %{_javadir}/junit.jar plugins/org.junit/junit.jar

pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library
# /usr/lib -> /usr/lib64
sed --in-place "s:/usr/lib/:%{_libdir}/:g" build.sh
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 on ppc64 and s390x   
%ifarch ppc64 s390x
  find plugins -name \*.xml -exec sed --in-place "s/\(<antcall target=\"build.index\".*\/>\)/<\!-- \1 -->/" "{}" \;
%endif

# nasty hack to get suppport for pcc64 and s390(x)
# move all of the ia64 directories to ppc64 or s390(x) dirs and replace the ia64 # strings with ppc64 or s390(x)
%ifarch ppc64 s390 s390x
  # 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
  # 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
  sed --in-place "s/,.\{38\}ppc64.*macosx/,org.eclipse.platform.source.macosx/g" features/org.eclipse.platform.source/build.xml
  # 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
  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
  for f in $(find -name \*ia64\* | grep -v motif | grep -v ia64_32); do 
    mv $f $(echo $f | sed "s/ia64/%{_arch}/")
  done
  find -type f -exec sed --in-place "s/ia64_32/@eye-eh-64_32@/g" "{}" \;
  find -type f -exec sed --in-place "s/ia64/%{_arch}/g" "{}" \;
  find -type f -exec sed --in-place "s/@eye-eh-64_32@/ia64_32/g" "{}" \;
%endif 


# make sure there are no jars left
JARS=""
for j in $(find -name \*.jar); do
  if [ ! -L $j ]; then
    JARS="$JARS $j"
  fi
done
if [ ! -z "$JARS" ]; then
    echo "These jar should be deleted and syslinked to system jars: $JARS"
   #FIXME: enable  exit 1
fi

%build
env
ORIGCLASSPATH=$CLASSPATH

# finish the jsch plugin build
#FIXME remove version numbers
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 -cf ../com.jcraft.jsch_0.1.28.jar *
popd
rm -r baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build

# Bootstrapping is 3 parts:
# 1. Build ecj with gcj -C -- only necessary until gcjx/ecj lands in gcc
# 2. Build ecj with gcj-built ecj ("javac")
# 3. Re-build ecj with output of 2.

%if %{gcj_support}
  # Unzip the "stable compiler" source into a temp dir and build it.
  # Note:  we don't want to build the CompilerAdapter.
  mkdir ecj-bootstrap-tmp
  unzip -qq -d ecj-bootstrap-tmp jdtcoresrc/src/ecj.zip
  rm -f ecj-bootstrap-tmp/org/eclipse/jdt/core/JDTCompilerAdapter.java
  
  # 1a. Build ecj with gcj -C
  pushd ecj-bootstrap-tmp
  for f in `find -name '*.java' | cut -c 3-`; do
      gcj -Wno-deprecated -C $f
  done
  find -name '*.class' -or -name '*.properties' -or -name '*.rsc' |\
      xargs jar cf ../ecj-bootstrap.jar
  popd
  
  # Delete our modified ecj and restore the backup
  rm -rf ecj-bootstrap-tmp
  
%if %{native_ecj}
    # 1b. Natively-compile it
    gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \
      -o ecj-bootstrap.jar.so ecj-bootstrap.jar
   
    gcj-dbtool -n ecj-bootstrap.db 30000
    gcj-dbtool -a ecj-bootstrap.db ecj-bootstrap.jar{,.so}
%endif
  
  # 2a. Build ecj
  export CLASSPATH=ecj-bootstrap.jar:$ORIGCLASSPATH
%if %{native_ecj}
  export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/ecj-bootstrap.db"
%endif
%endif
ant -buildfile jdtcoresrc/compilejdtcorewithjavac.xml

%if %{native_ecj}
  # 2b. Natively-compile ecj
  gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \
    -o jdtcoresrc/ecj.jar.so jdtcoresrc/ecj.jar
   
  gcj-dbtool -n jdtcoresrc/ecj.db 30000
  gcj-dbtool -a jdtcoresrc/ecj.db jdtcoresrc/ecj.jar{,.so}

  # Remove our gcj-built ecj
  rm ecj-bootstrap.db ecj-bootstrap.jar{,.so}

  # To enSURE we're not using any pre-compiled ecj on the build system, set this
  export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/jdtcoresrc/ecj.db"
%endif

# 3. Use this ecj to rebuild itself
export CLASSPATH=`pwd`/jdtcoresrc/ecj.jar:$ORIGCLASSPATH
ant -buildfile jdtcoresrc/compilejdtcore.xml

%if %{native_ecj}
  # Natively-compile it
  gcj -fPIC -fjni -findirect-dispatch -shared -Wl,-Bsymbolic \
    -o ecj.jar.so ecj.jar
  gcj-dbtool -n ecj.db 30000
  gcj-dbtool -a ecj.db ecj.jar{,.so}
  export ANT_OPTS="-Dgnu.gcj.precompiled.db.path=`pwd`/ecj.db"
  
  # Remove old native bits
  rm jdtcoresrc/ecj.db jdtcoresrc/ecj.jar.so
%endif

# Build the rest of Eclipse
export CLASSPATH=`pwd`/ecj.jar:$ORIGCLASSPATH
export JAVA_HOME=%{java_home}
ant \
  -Dnobootstrap=true \
  -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

# FIXME: document this properly
# re-pack all zips. we need to do this to work around the multilib problem 
for zip in $(find -type f -name \*.zip); do
  mkdir $zip-repack
  pushd $zip-repack
  zipfile=../$(echo $zip | sed "s:./.*/::")
  unzip -qq $zipfile
  rm $zipfile
  find -type f -exec touch --date=1/1/1970 "{}" \; 
  zip -q -X -9 -r $zipfile .
  popd
  rm -r $zip-repack
done


%install
rm -rf $RPM_BUILD_ROOT

# 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

install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}

tar -C $RPM_BUILD_ROOT%{_datadir} -zxf \
  result/linux-gtk-%{eclipse_arch}-sdk.tar.gz

pushd $RPM_BUILD_ROOT%{_datadir}/%{name}

# Extract .so files
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90535
java -cp startup.jar org.eclipse.core.launcher.Main -consolelog -application org.eclipse.core.runtime.initializer -fileInitializer %{SOURCE19}
popd

# Binaries, libraries, and natively-built shared libraries
install -d -m 755 $RPM_BUILD_ROOT%{_libdir}/%{name}

install -d -m 755 $RPM_BUILD_ROOT%{_bindir}

# Eclipse binary
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/eclipse \
  $RPM_BUILD_ROOT%{_libdir}/%{name}/eclipse

pushd $RPM_BUILD_ROOT%{_datadir}/%{name}
ln -s %{_libdir}/%{name}/eclipse eclipse

# Symlink JNI libraries
for l in `find configuration -name \*.so`; do
    mv $l $RPM_BUILD_ROOT%{_libdir}/%{name};
    pushd `dirname $l`;
      ln -s %{_libdir}/%{name}/`basename $l`;
    popd;
    # SWT bundle stuff should go in libswt3-gtk
    # Contents of other bundles should go in eclipse-platform
    if [ "`basename $l`" = "libswt-gtk-$SWT_VERSION.so" ]
    then
        pushd `dirname $l`;
          cd ../..;
          currentDir=`pwd`;
          # Add this directory to the files list for libswt
          # This topmostDirs hack is needed due to differences in directory
          # layout between the build system and regular machines
          topmostDirs=`echo $currentDir | gawk -F '/' '{ print $2"-"$3 }'`;
          if [ "$topmostDirs" = "var-tmp" ]; then
            echo $currentDir | gawk -F '/' '{ print "/"$5"/"$6"/"$7"/"$8"/"$9"/"$10"/"$11"/"$12 }' > %{_builddir}/%{buildsubdir}/%{libname}-gtk2.install;
          else
            echo $currentDir | gawk -F '/' '{ print "/"$7"/"$8"/"$9"/"$10"/"$11"/"$12"/"$13"/"$14 }' > %{_builddir}/%{buildsubdir}/%{libname}-gtk2.install;
          fi
        popd
    elif [ "`basename $l`" = "liblocalfile_1_0_0.so" ]; then
        pushd `dirname $l`;
          cd ../../../../..;
          currentDir=`pwd`;
          # Add this directory to the files list for eclipse-platform
          # This topmostDirs hack is needed due to differences in directory
          # layout between the build system and regular machines
          topmostDirs=`echo $currentDir | gawk -F '/' '{ print $2"-"$3 }'`;
          if [ "$topmostDirs" = "var-tmp" ]; then
            echo $currentDir | gawk -F '/' '{ print "/"$5"/"$6"/"$7"/"$8"/"$9"/"$10"/"$11"/"$12 }' >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
          else
            echo $currentDir | gawk -F '/' '{ print "/"$7"/"$8"/"$9"/"$10"/"$11"/"$12"/"$13"/"$14 }' >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
          fi
        popd
    elif [ "`basename $l`" = "libupdate.so" ]; then
        pushd `dirname $l`;
          cd ../../../../..;
          currentDir=`pwd`;
          # Add this directory to the files list for eclipse-platform
          # This topmostDirs hack is needed due to differences in directory
          # layout between the build system and regular machines
          topmostDirs=`echo $currentDir | gawk -F '/' '{ print $2"-"$3 }'`;
          if [ "$topmostDirs" = "var-tmp" ]; then
            echo $currentDir | gawk -F '/' '{ print "/"$5"/"$6"/"$7"/"$8"/"$9"/"$10"/"$11"/"$12 }' >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
          else
            echo $currentDir | gawk -F '/' '{ print "/"$7"/"$8"/"$9"/"$10"/"$11"/"$12"/"$13"/"$14 }' >> %{_builddir}/%{buildsubdir}/%{name}-platform.install;
          fi
        popd
    fi
done
popd

pushd $RPM_BUILD_ROOT%{_libdir}/%{name}
chmod -R 755 eclipse *.so
popd

### begin libswt-gtk2 symlinks
pushd $RPM_BUILD_ROOT%{_libdir}
for base in awt-gtk atk-gtk cairo-gtk mozilla-gtk gnome-gtk gtk pi-gtk glx-gtk; do
  ln -s %{_libdir}/%{name}/libswt-${base}-$SWT_VERSION.so libswt-${base}-$SWT_VERSION.so
done
popd
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
pushd $RPM_BUILD_ROOT%{_javadir}
ln -s %{_datadir}/%{name}/plugins/org.eclipse.swt.gtk.linux.%{eclipse_arch}_%{eclipse_majmin}.%{eclipse_micro}.v$SWT_VERSION*.jar swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar
ln -s swt-gtk-%{eclipse_majmin}.%{eclipse_micro}.jar swt-gtk-%{eclipse_majmin}.jar
popd
### end libswt-gtk2 symlinks

pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/
ln -s org.eclipse.pde.build_* org.eclipse.pde.build
popd

mkdir -p $RPM_BUILD_ROOT%{_bindir}
pushd $RPM_BUILD_ROOT%{_bindir}
ln -s %{_datadir}/%{name}/%{name}
popd

# Default config
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
perl -pe 's|/usr/lib/eclipse/|%{_datadir}/%{name}/|g' \
  %{SOURCE6} > $RPM_BUILD_ROOT%{_sysconfdir}/eclipse.conf

# rh/freedesktop.org icons
install -p -D -m0644 %{SOURCE5} \
  $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 \
  $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 \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
# Remove unused icon.xpm
rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/icon.xpm

# install the efj wrapper script and change the Eclipse installation dir
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 

# A sanity check.
desktop-file-validate %{SOURCE2}

# freedesktop.org menu entry
install -p -D -m0644 %{SOURCE2} \
  $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop

cat >> $RPM_BUILD_ROOT%{_datadir}/%{name}/.eclipseproduct << EOF
name=Eclipse Platform
id=org.eclipse.platform
version=%{eclipse_majmin}.%{eclipse_micro}
EOF

%if %{fedora}
# Put Fedora Core version into about.mappings of org.eclipse.sdk to show it in
# Eclipse about dialog.  (courtesy Debian Eclipse packagers)
# FIXME use the third id
pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.sdk_%{eclipse_majmin}.%{eclipse_micro}.*
FEDORA_VERSION=`cat /etc/fedora-release`
sed -e "s/\(0=.*\)/\1 ($FEDORA_VERSION)/" < about.mappings > about.mappings.tmp
mv about.mappings.tmp about.mappings
popd
%endif

# Create a script that can be used to make a symlink tree of the
# eclipse platform.
cp %{SOURCE16} copy-platform
(
  cd $RPM_BUILD_ROOT%{_datadir}/%{name}
  ls -d * | egrep -v '^(plugins|features)$'
  ls -d plugins/* features/*
) |
sed -e's/^\(.*\)$/\1 \1/' -e's,^,ln -s $eclipse/,' >> copy-platform

mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts
cp copy-platform $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts
install -p -D -m755 %{SOURCE21} $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts/rebuild-sdk-features
sdk_version=$(basename `find $RPM_BUILD_ROOT%{_datadir}/%{name}/features \
  -type d -name \*sdk_%{version}\*` | sed -e 's/org.eclipse.sdk_//')
sed --in-place "s:@SDK_VERSION@:$sdk_version:" \
  $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts/rebuild-sdk-features 
sed --in-place "s:/usr/share/eclipse:%{_datadir}/%{name}:" \
  $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts/rebuild-sdk-features 
chmod a+x $RPM_BUILD_ROOT%{_datadir}/%{name}/buildscripts/rebuild-sdk-features

pushd $RPM_BUILD_ROOT%{_datadir}/%{name}
## BEGIN ANT ##
rm plugins/org.apache.ant_*/lib/ant-antlr.jar
rm plugins/org.apache.ant_*/lib/ant-apache-bcel.jar
#rm plugins/org.apache.ant_*/lib/ant-apache-bsf.jar
rm plugins/org.apache.ant_*/lib/ant-apache-log4j.jar
rm plugins/org.apache.ant_*/lib/ant-apache-oro.jar
rm plugins/org.apache.ant_*/lib/ant-apache-regexp.jar
rm plugins/org.apache.ant_*/lib/ant-apache-resolver.jar
rm plugins/org.apache.ant_*/lib/ant-commons-logging.jar
#rm plugins/org.apache.ant_*/lib/ant-commons-net.jar
#rm plugins/org.apache.ant_*/lib/ant-icontract.jar
#rm plugins/org.apache.ant_*/lib/ant-jai.jar
rm plugins/org.apache.ant_*/lib/ant.jar
rm plugins/org.apache.ant_*/lib/ant-javamail.jar
rm plugins/org.apache.ant_*/lib/ant-jdepend.jar
#rm plugins/org.apache.ant_*/lib/ant-jmf.jar
rm plugins/org.apache.ant_*/lib/ant-jsch.jar
rm plugins/org.apache.ant_*/lib/ant-junit.jar
rm plugins/org.apache.ant_*/lib/ant-launcher.jar
#rm plugins/org.apache.ant_*/lib/ant-netrexx.jar
rm plugins/org.apache.ant_*/lib/ant-nodeps.jar
#rm plugins/org.apache.ant_*/lib/ant-starteam.jar
#rm plugins/org.apache.ant_*/lib/ant-stylebook.jar
rm plugins/org.apache.ant_*/lib/ant-swing.jar
rm plugins/org.apache.ant_*/lib/ant-trax.jar
#rm plugins/org.apache.ant_*/lib/ant-vaj.jar
#rm plugins/org.apache.ant_*/lib/ant-weblogic.jar
#rm plugins/org.apache.ant_*/lib/ant-xalan1.jar
#rm plugins/org.apache.ant_*/lib/ant-xslp.jar
# FIXME use build-jar-repository
ln -s %{_javadir}/ant/ant-antlr.jar plugins/org.apache.ant_1.6.5/lib/ant-antlr.jar
ln -s %{_javadir}/ant/ant-apache-bcel.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-bcel.jar
#ln -s %{_javadir}/ant/ant-apache-bsf.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-bsf.jar
ln -s %{_javadir}/ant/ant-apache-log4j.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-log4j.jar
ln -s %{_javadir}/ant/ant-apache-oro.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-oro.jar
ln -s %{_javadir}/ant/ant-apache-regexp.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-regexp.jar
ln -s %{_javadir}/ant/ant-apache-resolver.jar plugins/org.apache.ant_1.6.5/lib/ant-apache-resolver.jar
ln -s %{_javadir}/ant/ant-commons-logging.jar plugins/org.apache.ant_1.6.5/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
#ln -s %{_javadir}/ant/ant-commons-net.jar plugins/org.apache.ant_1.6.5/lib/ant-commons-net.jar
#ln -s %{_javadir}/ant/ant-icontract.jar plugins/org.apache.ant_1.6.5/lib/ant-icontract.jar
#ln -s %{_javadir}/ant/ant-jai.jar plugins/org.apache.ant_1.6.5/lib/ant-jai.jar
ln -s %{_javadir}/ant.jar plugins/org.apache.ant_1.6.5/lib/ant.jar
ln -s %{_javadir}/ant/ant-javamail.jar plugins/org.apache.ant_1.6.5/lib/ant-javamail.jar
ln -s %{_javadir}/ant/ant-jdepend.jar plugins/org.apache.ant_1.6.5/lib/ant-jdepend.jar
#ln -s %{_javadir}/ant/ant-jmf.jar plugins/org.apache.ant_1.6.5/lib/ant-jmf.jar
ln -s %{_javadir}/ant/ant-jsch.jar plugins/org.apache.ant_1.6.5/lib/ant-jsch.jar
ln -s %{_javadir}/ant/ant-junit.jar plugins/org.apache.ant_1.6.5/lib/ant-junit.jar
ln -s %{_javadir}/ant-launcher.jar plugins/org.apache.ant_1.6.5/lib/ant-launcher.jar
#ln -s %{_javadir}/ant/ant-netrexx.jar plugins/org.apache.ant_1.6.5/lib/ant-netrexx.jar
ln -s %{_javadir}/ant/ant-nodeps.jar plugins/org.apache.ant_1.6.5/lib/ant-nodeps.jar
#ln -s %{_javadir}/ant/ant-starteam.jar plugins/org.apache.ant_1.6.5/lib/ant-starteam.jar
#ln -s %{_javadir}/ant/ant-stylebook.jar plugins/org.apache.ant_1.6.5/lib/ant-stylebook.jar
ln -s %{_javadir}/ant/ant-swing.jar plugins/org.apache.ant_1.6.5/lib/ant-swing.jar
ln -s %{_javadir}/ant/ant-trax.jar plugins/org.apache.ant_1.6.5/lib/ant-trax.jar
#ln -s %{_javadir}/ant/ant-vaj.jar plugins/org.apache.ant_1.6.5/lib/ant-vaj.jar
#ln -s %{_javadir}/ant/ant-weblogic.jar plugins/org.apache.ant_1.6.5/lib/ant-weblogic.jar
#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
# 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 ##
#rm plugins/org.eclipse.tomcat_*/commons-beanutils.jar
#rm plugins/org.eclipse.tomcat_*/commons-collections.jar
#rm plugins/org.eclipse.tomcat_*/commons-digester.jar
#rm plugins/org.eclipse.tomcat_*/commons-logging-api.jar
#rm plugins/org.eclipse.tomcat_*/commons-modeler.jar
#rm plugins/org.eclipse.tomcat_*/jakarta-regexp-1.3.jar
#rm plugins/org.eclipse.tomcat_*/servlet.jar
#rm plugins/org.eclipse.tomcat_*/servlets-manager.jar
#rm plugins/org.eclipse.tomcat_*/naming-common.jar
#rm plugins/org.eclipse.tomcat_*/servlets-common.jar
#rm plugins/org.eclipse.tomcat_*/tomcat-http11.jar
#ln -s %{tomcatsharedir}/bin/bootstrap.jar plugins/org.eclipse.tomcat_*/bootstrap.jar
#ln -s %{tomcatlibdir}/server/lib/catalina.jar plugins/org.eclipse.tomcat_*/catalina.jar
#ln -s %{tomcatlibdir}/server/lib/catalina-optional.jar plugins/org.eclipse.tomcat_*/catalina-optional.jar
#ln -s %{_javadir}/jakarta-commons-beanutils.jar plugins/org.eclipse.tomcat_*/jakarta-commons-beanutils.jar
#ln -s %{_javadir}/jakarta-commons-collections.jar plugins/org.eclipse.tomcat_*/jakarta-commons-collections.jar
#ln -s %{_javadir}/jakarta-commons-dbcp.jar plugins/org.eclipse.tomcat_*/jakarta-commons-dbcp.jar
#ln -s %{_javadir}/jakarta-commons-digester.jar plugins/org.eclipse.tomcat_*/jakarta-commons-digester.jar
#ln -s %{_javadir}/jakarta-commons-digester-rss.jar plugins/org.eclipse.tomcat_*/jakarta-commons-digester-rss.jar
#ln -s %{_javadir}/jakarta-commons-el.jar plugins/org.eclipse.tomcat_*/jakarta-commons-el.jar
#ln -s %{_javadir}/jakarta-commons-fileupload.jar plugins/org.eclipse.tomcat_*/jakarta-commons-fileupload.jar
#ln -s %{_javadir}/jakarta-commons-launcher.jar plugins/org.eclipse.tomcat_*/jakarta-commons-launcher.jar
#ln -s %{_javadir}/jakarta-commons-logging.jar plugins/org.eclipse.tomcat_*/jakarta-commons-logging.jar
#ln -s %{_javadir}/jakarta-commons-modeler.jar plugins/org.eclipse.tomcat_*/jakarta-commons-modeler.jar
#ln -s %{_javadir}/jakarta-commons-pool.jar plugins/org.eclipse.tomcat_*/jakarta-commons-pool.jar
#ln -s %{_javadir}/jasper5-compiler.jar  plugins/org.eclipse.tomcat_*/jasper-compiler.jar
#ln -s %{_javadir}/jasper5-runtime.jar plugins/org.eclipse.tomcat_*/jasper-runtime.jar
#ln -s %{_javadir}/jspapi.jar plugins/org.eclipse.tomcat_*/jspapi.jar
#ln -s %{_javadir}/mx4j/mx4j.jar plugins/org.eclipse.tomcat_*/mx4j.jar
#ln -s %{_javadir}/mx4j/mx4j-impl.jar plugins/org.eclipse.tomcat_*/mx4j-impl.jar
#ln -s %{_javadir}/mx4j/mx4j-jmx.jar plugins/org.eclipse.tomcat_*/mx4j-jmx.jar
#ln -s %{tomcatlibdir}/common/lib/naming-common.jar plugins/org.eclipse.tomcat_*/naming-common.jar
#ln -s %{tomcatlibdir}/common/lib/naming-factory.jar plugins/org.eclipse.tomcat_*/naming-factory.jar
#ln -s %{tomcatlibdir}/common/lib/naming-resources.jar plugins/org.eclipse.tomcat_*/naming-resources.jar
#ln -s %{_javadir}/regexp.jar plugins/org.eclipse.tomcat_*/regexp.jar
#ln -s %{_javadir}/servletapi5.jar plugins/org.eclipse.tomcat_*/servletapi5.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-common.jar plugins/org.eclipse.tomcat_*/servlets-common.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-default.jar plugins/org.eclipse.tomcat_*/servlets-default.jar
#ln -s %{tomcatlibdir}/server/lib/servlets-invoker.jar plugins/org.eclipse.tomcat_*/servlets-invoker.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-coyote.jar plugins/org.eclipse.tomcat_*/tomcat-coyote.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-http11.jar plugins/org.eclipse.tomcat_*/tomcat-http11.jar
#ln -s %{tomcatlibdir}/server/lib/tomcat-util.jar plugins/org.eclipse.tomcat_*/tomcat-util.jar
## END TOMCAT ##
# FIXME rm -f in ln
#rm plugins/org.junit_*/junit.jar
ln -sf %{_javadir}/junit.jar plugins/org.junit_*/junit.jar

# Symlink org.eclipse.jdt.core_%{eclipse_majmin}.%{eclipse_micro}.jar in
# %{_datadir}/java/eclipse-ecj.jar for java-1.4.2-gcj-compat's "javac"
mkdir -p $RPM_BUILD_ROOT%{_datadir}/java
ln -s %{_datadir}/%{name}/plugins/org.eclipse.jdt.core_%{eclipse_majmin}.%{eclipse_micro}*.jar \
  $RPM_BUILD_ROOT%{_datadir}/java/eclipse-ecj.jar
ln -s %{_datadir}/java/eclipse-ecj.jar \
  $RPM_BUILD_ROOT%{_datadir}/java/jdtcore.jar

# 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 %{native_ecj}
# # 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
# Install /usr/bin/ecj script
sed 's:@JAVADIR@:%{_javadir}:g' < %{SOURCE20} > ecj
install -m755 ecj $RPM_BUILD_ROOT%{_bindir}
rm ecj
# Remove log file(s) we don't want to ship
pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/configuration
rm *.log
popd

%if %{gcj_support}
%ifarch ia64
# FIXME: auto get version number; tweak aot-compile-rpm to fix this
aot-compile-rpm --exclude %{_datadir}/%{name}/plugins/org.eclipse.team.cvs.core_3.2.0.I200606011710.jar
%else
aot-compile-rpm
%endif
%endif

%clean
rm -rf $RPM_BUILD_ROOT

%post ecj
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%post jdt
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%post jdt-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%post pde
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%post pde-runtime
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%post pde-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%post rcp
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%post rcp-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%post -n %{libname}-gtk2
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%post platform
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
  gtk-update-icon-cache -q %{_datadir}/icons/hicolor
fi

%post platform-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun ecj
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%postun jdt
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun jdt-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun pde
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun pde-runtime
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%postun pde-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun rcp
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%postun rcp-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%postun -n %{libname}-gtk2
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif

%postun platform
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
  gtk-update-icon-cache -q %{_datadir}/icons/hicolor
fi

%postun platform-devel
if [ -x %{_datadir}/%{name}/buildscripts/rebuild-sdk-features ]; then
  %{_datadir}/%{name}/buildscripts/rebuild-sdk-features > /dev/null
fi

%files ecj
%defattr(-,root,root)
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/plugins
%dir %{_datadir}/%{name}/features
%dir %{_datadir}/%{name}/configuration
%{_datadir}/%{name}/plugins/org.eclipse.jdt.core_*
%{_javadir}/eclipse-ecj.jar
%{_javadir}/jdtcore.jar
%{_bindir}/ecj
%if %{gcj_support}
# Native bits
%dir %{_libdir}/gcj/%{name}
%{_libdir}/gcj/%{name}/org.eclipse.jdt.core_*
%endif

%files -n %{libname}-gtk2 -f %{libname}-gtk2.install
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.swt*
%{_datadir}/%{name}/plugins/org.eclipse.jface_*
%{_datadir}/%{name}/plugins/org.eclipse.jface.text_*
%{_datadir}/%{name}/plugins/org.eclipse.jface.databinding_*
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/plugins
%dir %{_datadir}/%{name}/features
%dir %{_datadir}/%{name}/configuration
%dir %{_datadir}/%{name}/configuration/org.eclipse.osgi
%dir %{_datadir}/%{name}/configuration/org.eclipse.osgi/bundles
# %{_datadir}/%{name}/configuration/org.eclipse.osgi/bundles/%{swt_bundle_id} is
# in libswt3-gtk2.install
%{_libdir}/%{name}/libswt-*.so
%{_libdir}/libswt-*.so
%{_javadir}/swt-gtk*.jar
%if %{gcj_support}
# Native bits
%dir %{_libdir}/gcj/%{name}
%{_libdir}/gcj/%{name}/org.eclipse.jface_*
%{_libdir}/gcj/%{name}/org.eclipse.jface.text_*
%{_libdir}/gcj/%{name}/org.eclipse.jface.databinding_*
%{_libdir}/gcj/%{name}/org.eclipse.swt.gtk.linux.%{eclipse_arch}_*
%endif

%files jdt
%defattr(-,root,root)
%{_bindir}/efj
%{_datadir}/%{name}/plugins/org.eclipse.jdt_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.core_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.core.manipulation_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.debug.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.debug_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.doc.user_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.junit_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.junit.runtime_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.launching_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.ui_*
%{_datadir}/%{name}/plugins/org.junit_*
%{_datadir}/%{name}/features/org.eclipse.jdt_*
%if %{gcj_support}
# Native bits
%{_libdir}/gcj/%{name}/org.eclipse.jdt.core.manipulation_*
%{_libdir}/gcj/%{name}/org.eclipse.jdt.debug.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.jdt.launching_*
%{_libdir}/gcj/%{name}/org.eclipse.jdt.ui_*
%{_libdir}/gcj/%{name}/junitruntime.jar.*
%{_libdir}/gcj/%{name}/junitsupport.jar.*
%{_libdir}/gcj/%{name}/jdimodel.jar.*
%{_libdir}/gcj/%{name}/jdi.jar.*
%endif

%files jdt-devel
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.jdt.doc.isv_*
%{_datadir}/%{name}/plugins/org.eclipse.jdt.source_*
%{_datadir}/%{name}/features/org.eclipse.jdt.source_*

%files pde
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.pde.build*
%{_datadir}/%{name}/plugins/org.eclipse.pde.core_*
%{_datadir}/%{name}/plugins/org.eclipse.pde.doc.user_*
%{_datadir}/%{name}/plugins/org.eclipse.pde.junit.runtime_*
%{_datadir}/%{name}/plugins/org.eclipse.pde.runtime_*
%{_datadir}/%{name}/plugins/org.eclipse.pde.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.pde_*
%{_datadir}/%{name}/features/org.eclipse.pde_*
%if %{gcj_support}
# Native bits
%{_libdir}/gcj/%{name}/pdebuild.jar*
%{_libdir}/gcj/%{name}/pdebuild-ant.jar*
%{_libdir}/gcj/%{name}/org.eclipse.pde.core_*
%{_libdir}/gcj/%{name}/org.eclipse.pde.junit.runtime_*
%{_libdir}/gcj/%{name}/org.eclipse.pde.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.pde_*
%endif

%files pde-runtime
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.pde.runtime_*
%if %{gcj_support}
%{_libdir}/gcj/%{name}/org.eclipse.pde.runtime_*
%endif

%files pde-devel
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.pde.source_*
%{_datadir}/%{name}/features/org.eclipse.pde.source_*

%files rcp
%defattr(-,root,root)
%{_datadir}/%{name}/features/org.eclipse.rcp_*
%{_datadir}/%{name}/plugins/org.eclipse.rcp_*
%{_datadir}/%{name}/plugins/org.eclipse.core.runtime_*
%{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.auth_*
%if %{gcj_support}
# Native bits
%{_libdir}/gcj/%{name}/org.eclipse.core.runtime.compatibility.auth_*
%{_libdir}/gcj/%{name}/org.eclipse.core.runtime_*
%endif

%files rcp-devel
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/com.ibm.icu.source_*
%{_datadir}/%{name}/plugins/org.eclipse.rcp.source_*
%{_datadir}/%{name}/plugins/org.eclipse.rcp.source.linux*
%{_datadir}/%{name}/features/org.eclipse.rcp.source_*

%files platform -f %{name}-platform.install
%defattr(-,root,root)
%{_datadir}/%{name}/eclipse.ini
%{_datadir}/%{name}/epl-v10.html
%{_datadir}/%{name}/notice.html
%{_datadir}/%{name}/readme
%{_datadir}/%{name}/plugins/com.jcraft.jsch_*
%{_datadir}/%{name}/plugins/org.apache.ant_*
%{_datadir}/%{name}/plugins/org.apache.lucene_*
%{_datadir}/%{name}/plugins/org.eclipse.ant.core_*
%{_datadir}/%{name}/plugins/org.eclipse.ant.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.compare_*
%{_datadir}/%{name}/plugins/org.eclipse.core.boot_*
%{_datadir}/%{name}/plugins/org.eclipse.core.commands_*
%{_datadir}/%{name}/plugins/org.eclipse.core.contenttype_*
%{_datadir}/%{name}/plugins/org.eclipse.core.expressions_*
%{_datadir}/%{name}/plugins/org.eclipse.core.filebuffers_*
%{_datadir}/%{name}/plugins/org.eclipse.core.filesystem_*
%ifarch %{ix86} x86_64
%{_datadir}/%{name}/plugins/org.eclipse.core.filesystem.linux*
%endif
%{_datadir}/%{name}/plugins/org.eclipse.core.jobs_*
%{_datadir}/%{name}/plugins/org.eclipse.core.resources.compatibility_*
%{_datadir}/%{name}/plugins/org.eclipse.core.resources_*
%{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility_*
%{_datadir}/%{name}/plugins/org.eclipse.core.runtime.compatibility.registry_*
%{_datadir}/%{name}/plugins/org.eclipse.core.variables_*
%{_datadir}/%{name}/plugins/org.eclipse.debug.core_*
%{_datadir}/%{name}/plugins/org.eclipse.debug.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.equinox.common_*
%{_datadir}/%{name}/plugins/org.eclipse.equinox.preferences_*
%{_datadir}/%{name}/plugins/org.eclipse.equinox.registry_*
%{_datadir}/%{name}/plugins/org.eclipse.help.base_*
%{_datadir}/%{name}/plugins/org.eclipse.help.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.help.webapp_*
%{_datadir}/%{name}/plugins/org.eclipse.help.appserver_*
%{_datadir}/%{name}/plugins/org.eclipse.help_*
%{_datadir}/%{name}/plugins/org.eclipse.ltk.core.refactoring_*
%{_datadir}/%{name}/plugins/org.eclipse.ltk.ui.refactoring_*
%{_datadir}/%{name}/plugins/org.eclipse.osgi.services_*
%{_datadir}/%{name}/plugins/org.eclipse.osgi.util_*
%{_datadir}/%{name}/plugins/org.eclipse.osgi_*
%{_datadir}/%{name}/plugins/org.eclipse.platform.doc.user_*
%{_datadir}/%{name}/plugins/org.eclipse.platform_*
%{_datadir}/%{name}/plugins/org.eclipse.search_*
%{_datadir}/%{name}/plugins/org.eclipse.team.core_*
%{_datadir}/%{name}/plugins/org.eclipse.team.cvs.core_*
%{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ssh_*
%{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ssh2_*
%{_datadir}/%{name}/plugins/org.eclipse.team.cvs.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.team.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.text_*
%{_datadir}/%{name}/plugins/org.eclipse.tomcat_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.browser_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.cheatsheets_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.console_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.externaltools_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.forms_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.ide_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.intro.universal_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.navigator_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.navigator.resources_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.intro_*
%{_datadir}/%{name}/plugins/org.eclipse.ui_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.workbench_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.workbench.compatibility_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.workbench.texteditor_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.editors_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.presentations*_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.views_*
%{_datadir}/%{name}/plugins/org.eclipse.ui.views.properties.tabbed_*
%{_datadir}/%{name}/plugins/org.eclipse.update.configurator_*
%{_datadir}/%{name}/plugins/org.eclipse.update.core.linux_*
%{_datadir}/%{name}/plugins/org.eclipse.update.core_*
%{_datadir}/%{name}/plugins/org.eclipse.update.scheduler_*
%{_datadir}/%{name}/plugins/org.eclipse.update.ui_*
%{_datadir}/%{name}/plugins/com.ibm.icu_*
%{_datadir}/%{name}/features/org.eclipse.platform_*
%{_datadir}/%{name}/plugins/org.eclipse.swt_*
%{_datadir}/%{name}/features/org.eclipse.sdk_*
%{_datadir}/%{name}/plugins/org.eclipse.sdk_*
%ifarch %{ix86} x86_64
%{_datadir}/%{name}/about.html
%endif
%ifarch x86_64
%{_datadir}/%{name}/about_files
%endif
%{_datadir}/%{name}/.eclipseproduct
%{_datadir}/%{name}/startup.jar
%{_datadir}/%{name}/buildscripts
%{_libdir}/%{name}/eclipse
%{_libdir}/%{name}/libupdate*
%ifarch %{ix86} x86_64
%{_libdir}/%{name}/liblocalfile*
%endif
# This is all from our FileInitializer extraction of .sos
# all extracted bundles other than SWT will be in eclipse-platform.install
%dir %{_datadir}/%{name}/configuration
%dir %{_datadir}/%{name}/configuration/org.eclipse.osgi
%dir %{_datadir}/%{name}/configuration/org.eclipse.osgi/bundles
%{_datadir}/%{name}/configuration/org.eclipse.osgi/.bundledata*
%{_datadir}/%{name}/configuration/org.eclipse.osgi/.lazy*
%{_datadir}/%{name}/configuration/org.eclipse.osgi/.manager
%{_datadir}/%{name}/configuration/org.eclipse.osgi/.state*
%{_datadir}/%{name}/configuration/config.ini
%{_datadir}/%{name}/configuration/org.eclipse.core.runtime
%{_datadir}/%{name}/configuration/org.eclipse.update
%{_datadir}/%{name}/eclipse
%attr(0755,root,root) %{_bindir}/eclipse
%{_datadir}/applications/*
%{_datadir}/pixmaps/*
%{_datadir}/icons/*/*/apps/*
%config(noreplace) %{_sysconfdir}/eclipse.conf
%if %{gcj_support}
# Native bits
%{_libdir}/gcj/%{name}/startup.jar*
%{_libdir}/gcj/%{name}/com.jcraft.jsch_*
%{_libdir}/gcj/%{name}/org.eclipse.ant.core_*
%{_libdir}/gcj/%{name}/org.eclipse.ant.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.core.commands_*
%{_libdir}/gcj/%{name}/org.eclipse.core.expressions_*
%{_libdir}/gcj/%{name}/org.eclipse.core.contenttype_*
%{_libdir}/gcj/%{name}/org.eclipse.core.filebuffers_*
%{_libdir}/gcj/%{name}/org.eclipse.core.filesystem_*
%{_libdir}/gcj/%{name}/org.eclipse.core.jobs_*
%{_libdir}/gcj/%{name}/org.eclipse.core.resources_*
%{_libdir}/gcj/%{name}/org.eclipse.core.resources.compatibility_*
%{_libdir}/gcj/%{name}/org.eclipse.core.runtime.compatibility_*
%{_libdir}/gcj/%{name}/runtime_registry_compatibility.jar*
%{_libdir}/gcj/%{name}/org.eclipse.core.variables_*
%{_libdir}/gcj/%{name}/org.eclipse.equinox.common_*
%{_libdir}/gcj/%{name}/org.eclipse.equinox.preferences_*
%{_libdir}/gcj/%{name}/org.eclipse.equinox.registry_*
%{_libdir}/gcj/%{name}/org.eclipse.help_*
%{_libdir}/gcj/%{name}/org.eclipse.help.appserver_*
%{_libdir}/gcj/%{name}/org.eclipse.help.base_*
%{_libdir}/gcj/%{name}/org.eclipse.help.ui_*
%{_libdir}/gcj/%{name}/servlets.jar*
%{_libdir}/gcj/%{name}/webapp.jar*
%{_libdir}/gcj/%{name}/tomcatwrapper.jar*
%{_libdir}/gcj/%{name}/universal.jar*
%{_libdir}/gcj/%{name}/org.eclipse.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.browser_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.cheatsheets_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.console_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.editors_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.externaltools_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.forms_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.ide_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.intro_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.navigator_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.navigator.resources_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.presentations.r21_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.views_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.views.properties.tabbed_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.workbench_*
%{_libdir}/gcj/%{name}/org.eclipse.ui.workbench.texteditor_*
%{_libdir}/gcj/%{name}/compatibility.jar*
%{_libdir}/gcj/%{name}/org.eclipse.update.configurator_*
%{_libdir}/gcj/%{name}/org.eclipse.update.core_*
%{_libdir}/gcj/%{name}/org.eclipse.update.scheduler_*
%{_libdir}/gcj/%{name}/org.eclipse.update.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.osgi_*
%{_libdir}/gcj/%{name}/org.eclipse.osgi.services_*
%{_libdir}/gcj/%{name}/org.eclipse.osgi.util_*
%{_libdir}/gcj/%{name}/org.eclipse.compare_*
%{_libdir}/gcj/%{name}/org.eclipse.debug.core_*
%{_libdir}/gcj/%{name}/org.eclipse.debug.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.ltk.ui.refactoring_*
%{_libdir}/gcj/%{name}/org.eclipse.ltk.core.refactoring_*
%{_libdir}/gcj/%{name}/platform.jar*
%{_libdir}/gcj/%{name}/org.eclipse.team.core_*
%{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ssh2_*
# FIXME: work around aot-compile-rpm problem
%ifnarch ia64
%{_libdir}/gcj/%{name}/org.eclipse.team.cvs.core_*
%endif
%{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ssh_*
%{_libdir}/gcj/%{name}/org.eclipse.team.cvs.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.team.ui_*
%{_libdir}/gcj/%{name}/org.eclipse.search_*
%{_libdir}/gcj/%{name}/org.eclipse.text_*
%{_libdir}/gcj/%{name}/com.ibm.icu_*
# FIXME: take this out when the tomcat patch is updated
%{_libdir}/gcj/%{name}/ant-apache-bsf.jar*
%{_libdir}/gcj/%{name}/bootstrap.jar*
%{_libdir}/gcj/%{name}/catalina.jar*
%{_libdir}/gcj/%{name}/commons-beanutils.jar*
%{_libdir}/gcj/%{name}/commons-collections.jar*
%{_libdir}/gcj/%{name}/commons-digester.jar*
%{_libdir}/gcj/%{name}/commons-logging-api.jar*
%{_libdir}/gcj/%{name}/commons-modeler.jar*
%{_libdir}/gcj/%{name}/jakarta-regexp-1.3.jar*
%{_libdir}/gcj/%{name}/jasper-compiler.jar*
%{_libdir}/gcj/%{name}/jasper-runtime.jar*
%{_libdir}/gcj/%{name}/jsp.jar*
%{_libdir}/gcj/%{name}/mx4j-jmx.jar*
%{_libdir}/gcj/%{name}/naming-common.jar*
%{_libdir}/gcj/%{name}/naming-factory.jar*
%{_libdir}/gcj/%{name}/naming-resources.jar*
%{_libdir}/gcj/%{name}/parser.jar*
%{_libdir}/gcj/%{name}/servlet.jar*
%{_libdir}/gcj/%{name}/servlets-common.jar*
%{_libdir}/gcj/%{name}/servlets-default.jar*
%{_libdir}/gcj/%{name}/servlets-invoker.jar*
%{_libdir}/gcj/%{name}/servlets-manager.jar*
%{_libdir}/gcj/%{name}/tomcat-coyote.jar*
%{_libdir}/gcj/%{name}/tomcat-http11.jar*
%{_libdir}/gcj/%{name}/tomcat-util.jar*
%endif

%files platform-devel
%defattr(-,root,root)
%{_datadir}/%{name}/plugins/org.eclipse.platform.doc.isv_*
%{_datadir}/%{name}/plugins/org.eclipse.platform.source_*
%{_datadir}/%{name}/features/org.eclipse.platform.source_*
%{_datadir}/%{name}/plugins/org.eclipse.platform.source.linux.gtk.*
%if %{gcj_support}
# Native bits 
%{_libdir}/gcj/%{name}/org.eclipse.platform.doc.isv_*
%endif

%changelog
* Wed Jun 07 2006 Ben Konrath <bkonrath@redhat.com> 3.2.0-0jpp_0fc.3.2RC7.3
- Enable ppc64, s390 and s390x.
- Add check for jars at the end of prep.
- Fix patch for rh #162177 (square brackets patch).
- Fix swt symlinks rh #194500.
- Add versionless pde.build symlink.
- Rename efj-wrapper.sh to efj.sh.in.
- Re-pack all zips after the build to ensure that zips have the same md5sum
  across arch re-builds. This is needed to avoid multilib conflicts.

* Wed Jun 07 2006 Andrew Overholt <overholt@redhat.com> 3.2.0-0jpp_0fc.3.2RC7.2
- Fix eclipse-ecj.jar symlink to include qualifier.

* Tue Jun 06 2006 Ben Konrath <bkonrath@redhat.com> 3.2.0-0jpp_0fc.3.2RC7.1
- 3.2RC7.
- Remove com.jcraft.jsch_0.1.28.jar and repackage with classes from the system
  jsch.jar. 
- Work around ia64 compile problem in aot-compile-rpm. 

* Wed May 31 2006 Ben Konrath <bkonrath@redhat.com> 3.2.0-0jpp_0fc.3.2RC6
- 3.2RC6.

* Tue May 30 2006 Ben Konrath <bkonrath@redhat.com> 3.1.2-1jpp_15fc
- Add pde.build-add-package-build.patch to add generic releng scripts.
- Move doc.isv plugins to devel packages and require java-javadoc on devel
  packages.
- Add pde-runtime subpackage - needed for PHPeclipse package.
- Update libswt mozilla patch for mozilla 1.7.13.
- Add swt patch to fix rh#191536, e.o#98371.

* Mon May 15 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_14fc
- Bump mozilla requirement to match rawhide.

* Tue Mar 07 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_13fc
- One more small help fix (include tomcatwrapper.jar o.e.tomcat manifest).

* Fri Mar 03 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_12fc
- Only build with a native ecj on x86{,_64}

* Tue Feb 28 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_12fc
- Update to tomcat 5.5 (e.o#98371).
- Don't build on ppc64 until we get the tomcat situation straightened out.

* Fri Feb 17 2006 Igor Foox <ifoox@redhat.com> - 1:3.1.2-1jpp_10fc
- Added patch for ppc64.

* Fri Feb 17 2006 Igor Foox <ifoox@redhat.com> - 1:3.1.2-1jpp_9fc
- Try build on ppc64.

* Fri Feb 17 2006 Andrew Overholt <overholt@redhat.com> - 1:3.1.2-1jpp_8fc
- Try build on ppc64 (rh#172172, rh#181846).

* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 1:3.1.2-1jpp_7fc
- bump again for double-long bug on ppc(64)

* Fri Feb 10 2006 Ben Konrath <bkonrath@redhat.com> 3.1.2-1jpp_6fc
- Update the rebuild-sdk-features script to use the 3.1 updatesite (rh#180387, rh#180768).
- Make platform/feature.xml reference the tomcat5 plugin.

* Tue Feb 07 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_5fc
- Use new java-1.4.2-gcj-compat-javadoc package.
- Always generate debug info when building RPMs (Andrew Haley).
- Slightly modify swt-gtk symlinks (rh#180000).

* Mon Feb 06 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_4fc
- Add an swt-gtk.jar and fix symlink to point to correct jar (rh#180000).
- Link against generic libjawt.so (rh#158755).
- Re-add patch to use built launcher.

* Sat Feb 4 2006 Ben Konrath <bkonrath@redhat.com> 3.1.2-1jpp_3fc
- Update efj patches to match what has been committed to HEAD.

* Fri Feb 3 2006 Igor Foox <ifoox@redhat.com> 3.1.2-1jpp_2fc
- Updated launcher script.

* Tue Jan 31 2006 Andrew Overholt <overholt@redhat.com> 3.1.2-1jpp_1fc
- 3.1.2.
- Remove unnecessary patches.

* Tue Jan 31 2006 Karsten Hopp <karsten@redhat.de>
- BuildRequire: unzip

* Wed Jan 25 2006 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_16fc
- Rebuild against latest gcc to see if this fixes rh#178156.

* Wed Jan 04 2006 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_15fc
- Update s390{,x} patches.
- Use natively-compiled ecj during build.
- Attempt build on ia64.
- Change about_files to be i386 and x86_64 only (will patch file upstream).

* Fri Dec 23 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_14fc
- Rebuild again.

* Wed Dec 21 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_13fc
- Rebuild with new gcc (gcc#25121).

* Mon Dec 19 2005 Igor Foox <ifoox@redhat.com> 3.1.1-1jpp_12fc
- New version of launcher path (rh#175454).

* Mon Dec 19 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_11fc
- Update patch for offline javadoc linking.
- Rebuild with new gjdoc (rh#161147).

* Tue Dec 13 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_10fc
- Add patch for offline javadoc building/linking.

* Mon Dec 12 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_10fc
- Use ecj from 3.1.1 (rh#175380).
- Remove ecj options patch as it is in ecj from 3.1.1.
- New version of launcher patch (rh#175454) - ifoox.

* Sun Dec 11 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_10fc
- Build with gcc 4.1.

* Fri Dec 09 2005 Ben Konrath <bkonrath@redhat.com> 3.1.1-1jpp_10fc
- update updatehomedir-core.patch to remove unused code

* Wed Dec 07 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_9fc
- Add patch for launcher following symlinks (rh#168726, e.o#79592) - ifoox.
- Remove launcher script.

* Mon Dec 05 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_8fc
- Add eclipse-rcp-devel as a requirement of eclipse-platform-devel
  (rh#161267).
- Updated splash screen (thanks to Diana Fong) (rh#170580).
- Include and use rebuild-sdk-features (rh#173589).

* Fri Dec 02 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_8fc
- Update EFJ patch (e.o#75333).
- Update update-site-in-home-dir patch (e.o#90630) - bkonrath.

* Tue Nov 15 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_7fc
- Disable ia64 and ppc64 for now (these seem to be upstream issues).

* Thu Nov 10 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_7fc
- Build on ppc64 and ia64.
- Add patch for mozilla code with gcc 4:
http://debian-ppc64.alioth.debian.org/gcc4/patches-old/swt-gtk_3.1-1.0.0.1.gcc4.patch

* Fri Nov 04 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_6fc
- Patch org.eclipse.help.webapp jasper classpath.

* Thu Nov 03 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_5fc
- Import work done by Debian Eclipse packagers:
  - Add Fedora version in Eclipse about dialog.
  - Update eclipse-javadoc.patch to match Debian's disable-filelog patch.
  - Remove buildDoc patches and add helpindexbuilder patch (e.o#114001).
  - Add patches to build Cairo SWT bindings.

* Tue Nov 01 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_4fc
- Temporarily exclude ia64 and ppc64 (rh#172174).

* Mon Oct 31 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_4fc
- Bump mozilla requirement.
- Use libXtst-devel instead of xorg-x11-devel.

* Thu Oct 27 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_4fc
- Really fix browser issue on x86_64 (rh#168040).
- Attempt to build on ia64 and ppc64 (include swt-mozilla on the latter).
- Add BuildRequires for libgnome{,ui}-devel (rh#171532).

* Tue Oct 25 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_3fc
- Make non-gcj builds not noarch (rh#171711).

* Wed Oct 12 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_2fc
- Add JavaModelCache overflow patch (e.o#111299).

* Tue Oct 11 2005 Andrew Overholt <overholt@redhat.com> 3.1.1-1jpp_1fc
- 3.1.1.
- Patch around gij failing for the doc plug-in generation.
- Make /usr/bin/ecj a script (allows all jvms to call it).

* Sat Oct 08 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-15
- Bump mozilla requirement.
- Re-enable org.eclipse.ui.forms_3.1.0.jar.so, org.eclipse.osgi_3.1.0.jar.so,
  and org.eclipse.ui.workbench_3.1.0.jar.so (rh#146463, rh#158137, rh#151919)
- Add patch for /etc/gre64.conf (for 64-bit systems, rh#168040, e.o#109253).
- Remove MOZILLA_FIVE_HOME magic from eclipse.script.
- Remove jdtCompilerAdapter.jar due to aot-compile-rpm smarts.
- Bump gcc and java-gcj-compat requirements.
- Remove lucene-1.4.3-src.zip (rh#170343).

* Wed Aug 24 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-14
- /usr/lib -> %{_libdir} in eclipse.script (rh#159031).

* Tue Aug 23 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-13
- Bump mozilla requirement.

* Thu Jul 28 2005 Gary Benson <gbenson@redhat.com> 3.1.0_fc-12
- Allow leading separators in classpaths (e.o#105430).
- Clear away ant-jmf entirely.

* Wed Jul 27 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-11
- Bump release for FC4 update.

* Mon Jul 25 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-10
- Change mozilla BuildRequirement to be equals and not greater-than or equals
  since we need the exact version for our patches.
- Bump mozilla requirements and patches to 1.7.10.
- Bump release due to FC4 update still not being released.
- Add ant-jmf to exclude list.

* Tue Jul 19 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-7
- Remove ant-jmf symlinking and requirement.
- Update to use java-gcj-compat and not java-1.4.2-gcj-compat.

* Tue Jul 12 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-6
- Bump release to build against new gcc.
- Bump gcc requirement to gcc 4.0.1.
- Add back BuildArch until we get bootstrapping sorted out.
- Bump required version of java-gcj-compat to the latest (-40jpp_37rh).
- Remove lots of jiggery-pokery with native compilation and use gbenson's new
  aot-compile.
- Re-work files sections appropriately.
- Change mozilla-nspr-devel -> nspr-devel due to change in mozilla packaging.
- Update patch for mozilla build as per above.
- Add org.eclipse.osgi_3.1.0.jar to exclude.

* Tue Jul 05 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-5
- Revert ecj_bootstrap patch since it won't work.
- Keep mozilla requirement off ppc64.
- Add ant-apache-bsf requirement since we have that in FC5.

* Tue Jul 05 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-4
- Add ecj_bootstrap patch from Gary Benson to bootstrap new architectures.
- Remove ExclusiveArch.

* Tue Jul 05 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-3
- Bump release for FC4 update.

* Mon Jul 04 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-2
- Remove remaining pre-built ant jars (but don't symlink to ant.jar until we
  have ant 1.6.5 - rh#162444).
- Bump requirement on gcc to get fixes for rh#158614 and gcc#21637.
- Add patch to not try to link to external javadocs and include the javadoc
  output in the build output.
- Add build and runtime requirement on ant-javamail (I'm not sure how we missed
  this previously).

* Mon Jul  4 2005 Gary Benson <gbenson@redhat.com> 3.1.0_fc-2
- Disable classpath access rules introduced in e.o#92398 (rh#162177).

* Tue Jun 28 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-1
- Import 3.1.
- Update splash screen.

* Sun Jun 26 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC4.1
- Import 3.1 RC4.
- Remove activeHelpSample.jar building patch as it's now fixed upstream.
- Add patch to remove references to cairo since we don't have it in FC4.
- Add about.html and about_files to eclipse-platform.install (x86 & x86_64).
- Add patch to create public compare API (jpound - e.o#98707).
- Add patch from Robin Green to not look for firefox libxpcom.so (rh#161658).
- Symlink lucene jars (rh#159939).

* Fri Jun 24 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC3.3
- Add rcp requirement for platform (rh#161267).
- Add un-owned osgi directories to libswt and platform.

* Tue Jun 21 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC3.2
- Use SWT bundle ID for SWT %files list (determine in %%install).

* Mon Jun 20 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC3.1
- Import 3.1RC3.
- Use FileInitializer (e.o#90535) - this should eliminate .sos in ~/.eclipse.
- Add eclipse-filenamepatterns.txt ("*.so" currently) for above.
- Symlink JNI libraries.

* Fri Jun 17 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC2.2
- Update to new naming scheme for resulting gzipped tarball.
- Add patch to not generate help indices (it seems to hang).

* Thu Jun 16 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.RC2.1
- Import 3.1RC2.
- Add RCP sub-package.  Unsure about its dependencies ATM.

* Tue Jun 14 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M7.9
- Add tomcat5 patch and symlinks.

* Thu May 26 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M7.8
- Fix ant jar removal (gbenson).

* Wed May 25 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M7.7
- Fix ecj symlink in /usr/share/java (rh#158734).

* Sun May 22 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M7.4
- Remove compilation of jdt.ui jar.so on ppc.

* Sat May 21 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M7.3
- Add ecj-options patch to bootstrap source.
- Make embedded browser widget work (Robin Green).
- Bump required version of java-gcj-compat to the latest (-40jpp_24rh).
- Use -lgcjawt when building with gcj.

* Wed May 18 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M7.2
- Disable org.eclipse.osgi_3.1.0.jar.so.
- Add ecj-options patch, remove ecj-extdirs patch.

* Wed May 18 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M7.1
- Update to 3.1M7.
- Add file initializer patch.
- Temporarily remove s390{,x} patches.
- Update GNU formatter ui patch.
- Add ECJ ext dirs patch.

* Tue May 17 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M6.19
- Add Epoch on eclipse-platform.
- Use %%{_bindir} in post and postun scripts.

* Tue May 17 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.18
- Add Epoch to jsch requires.

* Mon May 16 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.17
- Update libswt-mozilla patches and require mozilla 1.7.8.
 
* Fri May 13 2005 Andrew Overholt <overholt@redhat.com>
- Use %%{ix86} macro in ExclusiveArch rather than i386 (jorton).

* Wed May 11 2005 Ben Konrath <bkonrath@redhat.com>
- Add jsch >= 0.1.18-1jpp.
- Remove Fedora specific part of junit version.
- Temporarily disable org.eclipse.ui.forms_3.1.0.jar.so (rh#146463).

* Mon May 09 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.16
- Add Requires junit >= 3.8.1-3jpp_4fc to JDT.
- Add -g to gcj calls.

* Thu May 05 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M6.15
- Rebuild with new gjdoc (rh#152049).

* Wed May 4 2005 Ben Konrath <bkonrath@redhat.com>
- Re-enable jdt.ui/jdt.jar.so and require gcj 4.0.0-2 (rh#151296).

* Mon May 2 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.14
- Replace temporary patch to debug.ui with upstream patch to swt (rh#155853).

* Sat Apr 30 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.13
- Add patch to temporarily stop an NPE in debug.ui (rh#155853).

* Thu Apr 28 2005 Phil Muldoon <pmuldoon@redhat.com>
- Allow multiple optional arguments in eclipse-copy-platform.sh 

* Wed Apr 27 2005 Andrew Overholt <overholt@redhat.com>
- Include epoch in mozilla BuildRequires.
- Remove last remaining gij-specific option from eclipse.script.

* Wed Apr 27 2005 Jeremy Katz <katzj@redhat.com> 3.1.0_fc-0.M6.12
- silence %%post

* Sun Apr 24 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M6.11
- Re-add osgi.jar.so since gcj fix is in our gcc RPMs.
- Bump gcc requirements accordingly.
- Add gcc-c++ to BuildRequires (for SWT Mozilla).
- Add specific java-1.4.2-gcj-compat nvr requirement (rh#151866).

* Fri Apr 22 2005 Aaron Luchko <aluchko@redhat.com> 3.1.0_fc-0.M6.10
- Import archived projects (e.o#82988)

* Fri Apr 22 2005 Andrew Overholt <overholt@redhat.com>
- Add Requires(post,postun): java-1.4.2-gcj-compat for each sub-package and use
  full path (Joe Orton).
- Make /usr/bin/eclipse executable again (rh#155715).
- Bump jsch version.

* Thu Apr 21 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M6.9
- Use upstream icons (not RHDS ones) (rh#146484).
- Add plugin directories to %files sections.
- Rework %files sections a bit.
- Fix SWT symlink (bkonrath).
- Temporarily remove jdt.ui/jdt.jar.so.

* Thu Apr 21 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.8
- Fix updatesite patch.
- Temporarily remove org.eclipse.ui.workbench_3.1.0.jar.so (r.c#151919)

* Mon Apr 18 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M6.7
- Add %if %%{gcj_support} blocks.
- Add %%{_libdir}/%%{name}/plugins to native %files section of each sub-rpm.
- Add GNU-style JDT code formatting option (e.o#91770).
- Add patch to install plugins from update site in home dir (e.o#90630).
- Change gcc-java requirements to libgcj as gcj-dbtool is now in the latter.

* Mon Apr 18 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.6
- Bump version number. 

* Mon Apr 18 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.5
- Update mozilla patch.

* Sat Apr 16 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M6.4
- Update to 3.1M6.
- Change bootstrap procedure to match the upstream method.
- Remove patches that were fixed upstream. 
- Add efj wrapper script.

* Wed Apr 13 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M5.20
- Fix the bootstrap patch (the ecj jar was missing some files).

* Tue Apr 12 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.19
- Add Requires(post,postun): java-1.4.2-gcj-compat for rebuild-gcj-db (Joe
  Orton).
- Add ecj binary.

* Wed Apr 06 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.18
- Fix typo in gcj db building loops.
- Add -O1 to x86_64 jar.so compilation.
- Add EFJ (Eclipse Formatter for Java) patches (bkonrath) (e.o#75333).
- Add patch to build swttools.jar (e.o#90364).
- Symlink out to ant-jsch now that we have that.

* Mon Apr 04 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.17
- Actually insert .jar-.jar.so combinations into sub-dbs.

* Thu Mar 31 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.16
- Fix eclipse.script to not leave a sh process around (Joe Orton)
- Use proper sub-dbs.
- Don't compile jars that are symlinked from elsewhere.
- Add jar-so combinations to .db based on .jar.so existence (not .jar).
- Rename sub-dbs to be eclipse-*.db.
- Use rebuild-gcj-db script.

* Mon Mar 28 2005 Christopher Aillon <caillon@redhat.com>
- rebuilt

* Fri Mar 25 2005 Christopher Aillon <caillon@redhat.com> 3.1.0_fc-0.M5.14
- Update the GTK+ theme icon cache on (un)install

* Fri Mar 18 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.13
- Re-add compilation of resources.jar.
- Backport bootstrapping patch.
- Add Requires: java-1.4.2-gcj-compat.
- Modified find patch courtesy Ziga Mahkovec (RH#149927#).
- Compile with -O2 on ppc as well.
- Add jsch, jakarta-commons-modeler, and mx4j symlinking.
- Make use of gcj-dbtool -f to create databases in install.
- Use system-wide classmap.db.
- Remove *.jarswithnativelibs from files sections.
- Update mozilla dependency.

* Mon Mar 07 2005 Ben Konrath <bkonrath@redhat.com> 3.1.0_fc-0.M5.12
- Add activeHelpSample.jar patch.
- Change to Fedora M-build splash screen.
- Add find patch courtesy Ziga Mahkovec (RH#149927#)
- Build native stuff with -O2 on i386.

* Mon Mar 07 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.11
- Add s390 and s390x patches.
- Don't build for them, though, due to gcc bug and Eclipse building issue.
- Add xorg-x11-devel BuildRequires.

* Fri Mar 04 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.10
- Add proper mozilla version.
- Don't build eclipseAdaptor.jar.so in order to work around plugin building
  problems.

* Thu Mar 03 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.9
- Add patch to build libswt-mozilla.
- Build libswt-awt.
- Add 64-bit swt lib list.

* Tue Mar 01 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.8
- Add ppc.
- Add patch to copy over icon for unsupported (upstream) platforms but don't
  include the source for the launcher.
- gcc4 -> gcc changes.
- Add swt-cairo to 64-bit platforms' %files.

* Fri Feb 25 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.7
- Add tar args patch (e.o #86571).
- New build bootstrapping patches.

* Fri Feb 25 2005 Andrew Overholt <overholt@redhat.com> 3.1.0_fc-0.M5.6
- Re-work how we do the gcj-dbtool magic.
- Don't remove ant-netrexx (need to find an RPM if we can).

* Sun Feb 20 2005 Andrew Overholt <overholt@redhat.com> 1:3.1_fc-0.M5.5
- Build for just i386 and x86_64 for now due to upstream gcc bugs.

* Sun Feb 20 2005 Andrew Overholt <overholt@redhat.com> 1:3.1_fc-0.M5.1
- New 3.1M5a build using upstream build method.
- Re-organize sub-packages (ecj, platform, platform-devel, jdt, jdt-devel, pde,
  pde-devel, fold gtk2 package into platform).
- Move jface and org.eclipse.text into libswt3-gtk2.
- Bring in JPackage symlinks for packages we have in Fedora (David Walluck) and
  put in %%prep.
- Work around x86_64 filename differences.
- Remove xerces, xalan, and xml-commons-apis requirement (and LD_PRELOAD from
  script).
- Bootstrap build.