diff --git a/.cvsignore b/.cvsignore
index 7a85514..68844fe 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,2 +1,3 @@
-eclipse-sourceBuild-srcIncluded-3.2.zip
eclipse-fedora-splash-3.2.png
+icu4jsrc_3_4_5.jar
+eclipse-sourceBuild-srcIncluded-M20060921-0945.zip
diff --git a/eclipse-icu4j-build-files.patch b/eclipse-icu4j-build-files.patch
new file mode 100644
index 0000000..4bcc52c
--- /dev/null
+++ b/eclipse-icu4j-build-files.patch
@@ -0,0 +1,352 @@
+diff -ruN icu4j-eclipse-plugins.orig/com.ibm.icu/build.xml icu4j-eclipse-plugins/com.ibm.icu/build.xml
+--- icu4j-eclipse-plugins.orig/com.ibm.icu/build.xml 1969-12-31 19:00:00.000000000 -0500
++++ icu4j-eclipse-plugins/com.ibm.icu/build.xml 2006-09-23 19:14:54.000000000 -0400
+@@ -0,0 +1,172 @@
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
+diff -ruN icu4j-eclipse-plugins.orig/com.ibm.icu.base/build.xml icu4j-eclipse-plugins/com.ibm.icu.base/build.xml
+--- icu4j-eclipse-plugins.orig/com.ibm.icu.base/build.xml 1969-12-31 19:00:00.000000000 -0500
++++ icu4j-eclipse-plugins/com.ibm.icu.base/build.xml 2006-09-23 19:23:47.000000000 -0400
+@@ -0,0 +1,172 @@
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
diff --git a/eclipse-swt-firefox.patch b/eclipse-swt-firefox.patch
index ced29e1..e011736 100644
--- a/eclipse-swt-firefox.patch
+++ b/eclipse-swt-firefox.patch
@@ -9,10 +9,10 @@ diff -u -r1.15 xpcom_stats.cpp
#ifdef NATIVE_STATS
--int XPCOM_nativeFunctionCount = 131;
--int XPCOM_nativeFunctionCallCount[131];
-+int XPCOM_nativeFunctionCount = 130;
-+int XPCOM_nativeFunctionCallCount[130];
+-int XPCOM_nativeFunctionCount = 132;
+-int XPCOM_nativeFunctionCallCount[132];
++int XPCOM_nativeFunctionCount = 131;
++int XPCOM_nativeFunctionCallCount[131];
char * XPCOM_nativeFunctionNames[] = {
"Call",
"NS_1GetComponentManager",
diff --git a/eclipse-updatehomedir.patch b/eclipse-updatehomedir.patch
index 7dbabfa..b05f120 100644
--- a/eclipse-updatehomedir.patch
+++ b/eclipse-updatehomedir.patch
@@ -1,32 +1,134 @@
-Index: src/org/eclipse/update/search/UpdateSearchRequest.java
+Index: src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java,v
-retrieving revision 1.27
-diff -u -r1.27 UpdateSearchRequest.java
---- plugins/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java 29 Mar 2006 23:37:07 -0000 1.27
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java 30 Mar 2006 06:02:10 -0000
-@@ -10,6 +10,7 @@
- *******************************************************************************/
- package org.eclipse.update.search;
+RCS file: /cvsroot/eclipse/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java,v
+retrieving revision 1.12.2.1
+diff -u -r1.12.2.1 InstallWizard2.java
+--- plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java 23 Aug 2006 03:55:35 -0000 1.12.2.1
++++ plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java 25 Sep 2006 22:38:03 -0000
+@@ -153,7 +153,7 @@
+ addPage(licensePage);
+ optionalFeaturesPage = new OptionalFeaturesPage(config);
+ addPage(optionalFeaturesPage);
+- targetPage = new TargetPage(config);
++ targetPage = new TargetPage(config, isUpdate);
+ addPage(targetPage);
+ }
+
+Index: src/org/eclipse/update/internal/ui/wizards/TargetPage.java
+===================================================================
+RCS file: /cvsroot/eclipse/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java,v
+retrieving revision 1.81.2.1
+diff -u -r1.81.2.1 TargetPage.java
+--- plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java 23 Aug 2006 03:55:35 -0000 1.81.2.1
++++ plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java 25 Sep 2006 22:38:03 -0000
+@@ -18,6 +18,9 @@
+ import java.util.HashSet;
+ import java.util.Iterator;
-+import java.io.File;
- import java.net.URL;
- import java.util.ArrayList;
++import org.eclipse.core.runtime.CoreException;
++import org.eclipse.core.runtime.IStatus;
++import org.eclipse.core.runtime.Platform;
+ import org.eclipse.jface.dialogs.Dialog;
+ import org.eclipse.jface.dialogs.IDialogSettings;
+ import org.eclipse.jface.resource.ImageDescriptor;
+@@ -92,6 +95,7 @@
+ private Label installLocation;
+ private Button changeLocation;
+ static HashSet added;
++ private boolean isUpdate; // whether the wizard is updating a feature or installing a new one
-@@ -140,11 +141,11 @@
- this.category = category;
- this.scope = scope;
- }
-+
+ class JobsContentProvider
+ extends DefaultContentProvider
+@@ -236,13 +240,14 @@
/**
- * Returns the search catagory used in this request.
- * @return the search category
+ * Constructor for ReviewPage2
*/
--
- public IUpdateSearchCategory getCategory() {
- return category;
+- public TargetPage(IInstallConfiguration config) {
++ public TargetPage(IInstallConfiguration config, boolean isUpdate) {
+ super("Target"); //$NON-NLS-1$
+ setTitle(UpdateUIMessages.InstallWizard_TargetPage_title);
+ setDescription(UpdateUIMessages.InstallWizard_TargetPage_desc);
+ this.config = config;
+ UpdateUI.getDefault().getLabelProvider().connect(this);
+ configListener = new ConfigListener();
++ this.isUpdate = isUpdate;
}
-@@ -251,6 +252,10 @@
+
+ public void setJobs(IInstallFeatureOperation[] jobs) {
+@@ -273,7 +278,7 @@
+ label.setLayoutData(gd);
+
+ installLocation = new Label(client, SWT.NULL);
+- installLocation.setText("foo"); //$NON-NLS-1$
++ installLocation.setText(""); //$NON-NLS-1$
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ installLocation.setLayoutData(gd);
+
+@@ -656,12 +661,45 @@
+ continue;
+ }
+
+- jobs[i].setTargetSite(getFirstTargetSite(jobs[i]));
++ IConfiguredSite csite = getFirstTargetSite(jobs[i]);
++ if (csite == null && Platform.getInstallLocation().isReadOnly() && isUpdate == false) {
++ // there are no updateable sites, the installation location is read-only and we are installing a new feature
++ // make an update site in the user's home direcotry
++ File site = new File(System.getProperty("user.home") + File.separator + ".eclipse" + File.separator + //$NON-NLS-1$ //$NON-NLS-2$
++ Platform.getProduct().getId() + File.separator + "updates"); //$NON-NLS-1$
++
++ try {
++ csite = config.createConfiguredSite(site);
++ config.addConfiguredSite(csite);
++ IStatus status = csite.verifyUpdatableStatus();
++ if (!status.isOK())
++ throw new CoreException(status);
++
++ } catch (CoreException e) {
++ // there was a problem, the user must choose an installation site
++ csite = null;
++ // no need to check if the directory exists because File.delete() returns false if it's not there
++ deleteDir(site);
++ }
++ }
+
++ jobs[i].setTargetSite(csite);
+ }
+
+ }
+-
++
++ private boolean deleteDir(File dir) {
++ if (dir.isDirectory()) {
++ String[] files = dir.list();
++ for (int i=0; i < files.length; i++) {
++ if (!deleteDir(new File(dir, files[i]))) {
++ return false;
++ }
++ }
++ }
++ return dir.delete();
++ }
++
+ private IConfiguredSite getMostReceantlyUsedSite() {
+ IDialogSettings master = UpdateUI.getDefault().getDialogSettings();
+ IDialogSettings section = master.getSection(TargetSiteDialog.MOST_RECEANTLY_USED_SITE_URL);
+@@ -696,7 +734,7 @@
+ IConfiguredSite[] sites = config.getConfiguredSites();
+ for (int i = 0; i < sites.length; i++) {
+ IConfiguredSite csite = sites[i];
+- if (getSiteVisibility(csite, job))
++ if (getSiteVisibility(csite, job) && csite.getSite().getCurrentConfiguredSite().verifyUpdatableStatus().isOK())
+ return csite;
+ }
+ return null;
+Index: src/org/eclipse/update/search/UpdateSearchRequest.java
+===================================================================
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java,v
+retrieving revision 1.31
+diff -u -r1.31 UpdateSearchRequest.java
+--- plugins/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java 8 Aug 2006 20:21:42 -0000 1.31
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/search/UpdateSearchRequest.java 25 Sep 2006 22:38:05 -0000
+@@ -282,6 +282,10 @@
// currently, the next conditional is only executed (qsite!=null) when
// running an update search.
if (qsite != null && searchFeatureProvidedSites) {
@@ -39,11 +141,11 @@ diff -u -r1.27 UpdateSearchRequest.java
// when there is no mapped site the feature is not updatable
Index: src/org/eclipse/update/search/IUpdateSearchQuery.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/search/IUpdateSearchQuery.java,v
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/search/IUpdateSearchQuery.java,v
retrieving revision 1.8
diff -u -r1.8 IUpdateSearchQuery.java
--- plugins/org.eclipse.update.core/src/org/eclipse/update/search/IUpdateSearchQuery.java 1 Mar 2005 20:29:16 -0000 1.8
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/search/IUpdateSearchQuery.java 30 Mar 2006 06:02:10 -0000
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/search/IUpdateSearchQuery.java 25 Sep 2006 22:38:05 -0000
@@ -7,6 +7,7 @@
*
* Contributors:
@@ -63,74 +165,76 @@ diff -u -r1.8 IUpdateSearchQuery.java
+ * @return the IFeature that is associated with the IUpdateSearchQuery
+ * @since 3.2
+ */
-+ public IFeature getFeature();
++ public IFeature getFeature();
}
Index: src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java,v
-retrieving revision 1.8
-diff -u -r1.8 OptionalFeatureSearchCategory.java
---- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java 1 Mar 2005 20:29:16 -0000 1.8
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java 30 Mar 2006 06:02:10 -0000
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java,v
+retrieving revision 1.9
+diff -u -r1.9 OptionalFeatureSearchCategory.java
+--- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java 11 Apr 2006 15:47:09 -0000 1.9
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/OptionalFeatureSearchCategory.java 25 Sep 2006 22:38:05 -0000
@@ -76,6 +76,13 @@
public IQueryUpdateSiteAdapter getQuerySearchSite() {
return null;
}
-+
++
+ /* (non-Javadoc)
+ * @see org.eclipse.update.internal.ui.search.ISearchQuery#getFeature()
+ */
+ public IFeature getFeature() {
-+ return null;
++ return null;
+ }
}
public void addVersionedIdentifier(VersionedIdentifier vid) {
Index: src/org/eclipse/update/internal/search/UpdatesSearchCategory.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java,v
-retrieving revision 1.26
-diff -u -r1.26 UpdatesSearchCategory.java
---- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java 23 May 2005 17:59:41 -0000 1.26
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java 30 Mar 2006 06:02:10 -0000
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java,v
+retrieving revision 1.27
+diff -u -r1.27 UpdatesSearchCategory.java
+--- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java 11 Apr 2006 15:47:09 -0000 1.27
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/UpdatesSearchCategory.java 25 Sep 2006 22:38:05 -0000
@@ -285,6 +285,10 @@
monitor.worked(1);
monitor.done();
}
-+
++
+ public IFeature getFeature() {
+ return candidate;
-+ }
++ }
}
private ArrayList candidates;
Index: src/org/eclipse/update/internal/search/SiteSearchCategory.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java,v
-retrieving revision 1.12
-diff -u -r1.12 SiteSearchCategory.java
---- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java 29 Mar 2006 23:37:08 -0000 1.12
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java 30 Mar 2006 06:02:10 -0000
-@@ -114,6 +114,12 @@
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java,v
+retrieving revision 1.14.2.1
+diff -u -r1.14.2.1 SiteSearchCategory.java
+--- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java 18 Aug 2006 23:31:21 -0000 1.14.2.1
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/search/SiteSearchCategory.java 25 Sep 2006 22:38:05 -0000
+@@ -133,6 +133,14 @@
public IQueryUpdateSiteAdapter getQuerySearchSite() {
return null;
}
++
+ /* (non-Javadoc)
+ * @see org.eclipse.update.internal.ui.search.ISearchQuery#getFeature()
+ */
+ public IFeature getFeature() {
-+ return null;
++ return null;
+ }
++
}
public SiteSearchCategory() {
Index: src/org/eclipse/update/internal/core/ConfiguredSite.java
===================================================================
-RCS file: /home/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/core/ConfiguredSite.java,v
+RCS file: /cvsroot/eclipse/org.eclipse.update.core/src/org/eclipse/update/internal/core/ConfiguredSite.java,v
retrieving revision 1.96
diff -u -r1.96 ConfiguredSite.java
--- plugins/org.eclipse.update.core/src/org/eclipse/update/internal/core/ConfiguredSite.java 30 Mar 2006 02:34:37 -0000 1.96
-+++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/core/ConfiguredSite.java 30 Mar 2006 06:02:10 -0000
++++ plugins/org.eclipse.update.core/src/org/eclipse/update/internal/core/ConfiguredSite.java 25 Sep 2006 22:38:05 -0000
@@ -35,6 +35,7 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
@@ -150,123 +254,3 @@ diff -u -r1.96 ConfiguredSite.java
verifyStatus = createStatus(IStatus.ERROR, NLS.bind(Messages.ConfiguredSite_ContainedInAnotherSite, (new String[] { container.getAbsolutePath() })), null);
return verifyStatus;
}
-Index: src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java
-===================================================================
-RCS file: /home/eclipse/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java,v
-retrieving revision 1.8
-diff -u -r1.8 InstallWizard2.java
---- plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java 17 Mar 2006 06:02:44 -0000 1.8
-+++ plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/InstallWizard2.java 30 Mar 2006 06:02:11 -0000
-@@ -148,7 +148,7 @@
- addPage(licensePage);
- optionalFeaturesPage = new OptionalFeaturesPage(config);
- addPage(optionalFeaturesPage);
-- targetPage = new TargetPage(config);
-+ targetPage = new TargetPage(config, isUpdate);
- addPage(targetPage);
- }
-
-Index: src/org/eclipse/update/internal/ui/wizards/TargetPage.java
-===================================================================
-RCS file: /home/eclipse/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java,v
-retrieving revision 1.74
-diff -u -r1.74 TargetPage.java
---- plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java 21 Nov 2005 21:39:24 -0000 1.74
-+++ plugins/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/TargetPage.java 30 Mar 2006 06:02:11 -0000
-@@ -13,6 +13,9 @@
- import java.io.*;
- import java.util.*;
-
-+import org.eclipse.core.runtime.Platform;
-+import org.eclipse.core.runtime.CoreException;
-+import org.eclipse.core.runtime.IStatus;
- import org.eclipse.jface.dialogs.Dialog;
- import org.eclipse.jface.resource.*;
- import org.eclipse.jface.viewers.*;
-@@ -41,6 +44,7 @@
- private Label installLocation;
- private Button changeLocation;
- static HashSet added;
-+ private boolean isUpdate; // whether the wizard is updating a feature or installing a new one
-
- class JobsContentProvider
- extends DefaultContentProvider
-@@ -113,13 +117,14 @@
- /**
- * Constructor for ReviewPage2
- */
-- public TargetPage(IInstallConfiguration config) {
-+ public TargetPage(IInstallConfiguration config, boolean isUpdate) {
- super("Target"); //$NON-NLS-1$
- setTitle(UpdateUIMessages.InstallWizard_TargetPage_title);
- setDescription(UpdateUIMessages.InstallWizard_TargetPage_desc);
- this.config = config;
- UpdateUI.getDefault().getLabelProvider().connect(this);
- configListener = new ConfigListener();
-+ this.isUpdate = isUpdate;
- }
-
- public void setJobs(IInstallFeatureOperation[] jobs) {
-@@ -150,7 +155,7 @@
- label.setLayoutData(gd);
-
- installLocation = new Label(client, SWT.NULL);
-- installLocation.setText("foo"); //$NON-NLS-1$
-+ installLocation.setText(""); //$NON-NLS-1$
- gd = new GridData(GridData.FILL_HORIZONTAL);
- installLocation.setLayoutData(gd);
-
-@@ -360,17 +365,51 @@
- continue;
- }
-
-- jobs[i].setTargetSite(getFirstTargetSite(jobs[i]));
-+ IConfiguredSite csite = getFirstTargetSite(jobs[i]);
-+ if (csite == null && Platform.getInstallLocation().isReadOnly() && isUpdate == false) {
-+ // there are no updateable sites, the installation location is read-only and we are installing a new feature
-+ // make an update site in the user's home direcotry
-+ File site= new File(System.getProperty("user.home") + File.separator + ".eclipse" + File.separator + //$NON-NLS-1$
-+ Platform.getProduct().getId() + File.separator + "updates"); //$NON-NLS-1$
-+
-+ try {
-+ csite = config.createConfiguredSite(site);
-+ config.addConfiguredSite(csite);
-+ IStatus status = csite.verifyUpdatableStatus();
-+ if (!status.isOK())
-+ throw new CoreException(status);
-+
-+ } catch (CoreException e) {
-+ // there was a problem, the user must choose an installation site
-+ csite = null;
-+ // no need to check if the directory exists because File.delete() returns false if it's not there
-+ deleteDir(site);
-+ }
-+ }
-
-+ jobs[i].setTargetSite(csite);
- }
- }
-+
-+ private boolean deleteDir(File dir) {
-+ if (dir.isDirectory()) {
-+ String[] files = dir.list();
-+ for (int i=0; i < files.length; i++) {
-+ if (!deleteDir(new File(dir, files[i]))) {
-+ return false;
-+ }
-+ }
-+ }
-+ return dir.delete();
-+ }
-
-
- private IConfiguredSite getFirstTargetSite(IInstallFeatureOperation job) {
- IConfiguredSite[] sites = config.getConfiguredSites();
- for (int i = 0; i < sites.length; i++) {
- IConfiguredSite csite = sites[i];
-- if (getSiteVisibility(csite, job))
-+ if (getSiteVisibility(csite, job) &&
-+ csite.getSite().getCurrentConfiguredSite().verifyUpdatableStatus().isOK())
- return csite;
- }
- return null;
diff --git a/eclipse.spec b/eclipse.spec
index 146ff58..8c39a55 100644
--- a/eclipse.spec
+++ b/eclipse.spec
@@ -18,7 +18,7 @@ Epoch: 1
%define eclipse_major 3
%define eclipse_minor 2
%define eclipse_majmin %{eclipse_major}.%{eclipse_minor}
-%define eclipse_micro 0
+%define eclipse_micro 1
%define libname libswt3
# All arches line up except i386 -> x86
@@ -31,13 +31,15 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: %{eclipse_majmin}.%{eclipse_micro}
-Release: 8%{?dist}
+Release: 0.RC.1%{?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-200606291905/eclipse-sourceBuild-srcIncluded-3.2.zip
+Source0: http://download.eclipse.org/eclipse/downloads/drops/M20060921-0945/eclipse-sourceBuild-srcIncluded-M20060921-0945.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
%if %{fedora}
Source11: %{name}-fedora-splash-3.2.png
%endif
@@ -60,8 +62,11 @@ Patch0: %{name}-libswt-enableallandO2.patch
# 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
+Patch6: %{name}-xpcom-profile.patch
+Patch7: %{name}-swt-add-gecko-paths-profile-libs.patch
# Build swttools.jar
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=90364
Patch18: %{name}-swttools.patch
@@ -111,8 +116,6 @@ Patch22: %{name}-updatehomedir.patch
Patch34: %{name}-bz162177.patch
# Use ecj for gcj
Patch57: %{name}-ecj-gcj.patch
-# firefox-devel's firefox-xpcom.pc needs to include -I/embed_base
-# https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=200929
Patch59: %{name}-swt-firefox.patch
Patch100: customBuildCallbacks.xml-add-pre.gather.bin.parts.patch
@@ -370,7 +373,16 @@ to create an IDE based on Eclipse.
pushd plugins/org.eclipse.swt/Eclipse\ SWT\ PI/gtk/library
%patch0 -p0
%patch52 -p0
+# Only compile the mozilla 1.7 / firefox profile library
+sed --in-place "s/make_mozilla:\$(MOZILLA_LIB).*/make_mozilla:\$(MOZILLA_LIB) \$(PROFILE17_LIB)/" make_linux.mak
+# FIXME: file bug about this upstream
+%patch7 -p0
popd
+pushd ./plugins/org.eclipse.swt/Eclipse\ SWT\ Mozilla/common/library
+# fix swt profile include
+%patch6 -p0
+popd
+
%patch2 -p0
%patch4 -p0
%patch5 -p0
@@ -567,13 +579,6 @@ 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
@@ -694,6 +699,48 @@ for f in `find .. -name \*.java`; do
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
+pushd baseLocation/plugins
+rm com.ibm.icu.base_3.4.5.jar \
+ com.ibm.icu_3.4.5.jar \
+ com.ibm.icu.base.source_3.4.5/src/com.ibm.icu.base_3.4.5/src.zip \
+ com.ibm.icu.source_3.4.5/src/com.ibm.icu_3.4.5/src.zip
+mkdir -p icu4j-build-temp
+
+pushd icu4j-build-temp
+unzip -qq %{SOURCE7}
+sed --in-place "s/ .*bootclasspath=.*//g" build.xml
+ant eclipseProjects
+popd
+
+mkdir -p icu4j-build
+mv icu4j-build-temp/eclipseProjects/com.ibm.icu icu4j-build
+mv icu4j-build-temp/eclipseProjects/com.ibm.icu.base icu4j-build
+rm -r icu4j-build-temp
+
+# add build.xml patches
+pushd icu4j-build
+%patch3 -p1
+popd
+
+popd
+
+# delete included jars
+# FIXME: file a bug about these
+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
+
# make sure there are no jars left
JARS=""
for j in $(find -name \*.jar); do
@@ -718,8 +765,36 @@ 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
rm -r baseLocation/plugins/com.jcraft.jsch_0.1.28.jar-build
+# finish the icu4j build
+pushd baseLocation/plugins
+
+# 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
+zip -X -9 -r $zipfile . -i \*.java
+popd
+pushd icu4j-build/com.ibm.icu.base
+ant build.update.jar
+popd
+mv icu4j-build/com.ibm.icu.base/com.ibm.icu.base_3.4.5.jar .
+
+# 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
+zip -X -9 -r $zipfile . -i \*.java
+popd
+pushd icu4j-build/com.ibm.icu
+ant build.update.jar
+popd
+mv icu4j-build/com.ibm.icu/com.ibm.icu_3.4.5.jar .
+
+popd
+
# 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")
@@ -947,14 +1022,19 @@ sed --in-place "s/eclipse.product=org.eclipse.sdk.ide/#eclipse.product=/" \
$RPM_BUILD_ROOT%{_datadir}/%{name}/configuration/config.ini
%if %{fedora}
-# Put Fedora Core version into about.mappings of org.eclipse.sdk to show it in
-# Eclipse about dialog. (courtesy Debian Eclipse packagers)
+# 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%{_datadir}/%{name}/plugins/org.eclipse.sdk_%{eclipse_majmin}.%{eclipse_micro}.*
+pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.sdk_%{eclipse_majmin}.*
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
+pushd $RPM_BUILD_ROOT%{_datadir}/%{name}/plugins/org.eclipse.platform_%{eclipse_majmin}.*
+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
@@ -1085,10 +1165,9 @@ build-jar-repository -s -p plugins/org.junit_* junit
# 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}.v_$JDTCOREVERSION.jar \
- $RPM_BUILD_ROOT%{_datadir}/java/eclipse-ecj.jar
-ln -s %{_datadir}/java/eclipse-ecj.jar \
- $RPM_BUILD_ROOT%{_datadir}/java/jdtcore.jar
+JDTCORESUFFIX=$(ls %{_datadir}/%{name}/plugins | grep jdt.core_ | sed "s/org.eclipse.jdt.core_//")
+ln -s %{_datadir}/%{name}/plugins/org.eclipse.jdt.core_$JDTCORESUFFIX $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
@@ -1126,8 +1205,10 @@ touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
gtk-update-icon-cache -q %{_datadir}/icons/hicolor
fi
+if [ -x %{_datadir}/%{name}/configuration/config.ini ]; then
sed --in-place "s/#eclipse.product=/eclipse.product=org.eclipse.platform.ide/" \
%{_datadir}/%{name}/configuration/config.ini
+fi
%postun platform
%if %{gcj_support}
@@ -1137,22 +1218,28 @@ touch --no-create %{_datadir}/icons/hicolor
if [ -x /usr/bin/gtk-update-icon-cache ]; then
gtk-update-icon-cache -q %{_datadir}/icons/hicolor
fi
+if [ -x %{_datadir}/%{name}/configuration/config.ini ]; then
sed --in-place "s/eclipse.product=org.eclipse.platform.ide/#eclipse.product=/" \
%{_datadir}/%{name}/configuration/config.ini
+fi
%post sdk
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
+if [ -x %{_datadir}/%{name}/configuration/config.ini ]; then
sed --in-place "s/eclipse.product=org.eclipse.platform.ide/eclipse.product=org.eclipse.sdk.ide/" \
%{_datadir}/%{name}/configuration/config.ini
+fi
%postun sdk
%if %{gcj_support}
%{_bindir}/rebuild-gcj-db
%endif
+if [ -x %{_datadir}/%{name}/configuration/config.ini ]; then
sed --in-place "s/eclipse.product=org.eclipse.sdk.ide/eclipse.product=org.eclipse.platform.ide/" \
%{_datadir}/%{name}/configuration/config.ini
+fi
%if %{gcj_support}
%post ecj -p %{_bindir}/rebuild-gcj-db
@@ -1497,6 +1584,12 @@ sed --in-place "s/eclipse.product=org.eclipse.sdk.ide/eclipse.product=org.eclips
%{_datadir}/%{name}/plugins/org.eclipse.sdk_*
%changelog
+* Mon Sep 25 2006 Ben Konrath 3.2.1-0.RC.1
+- M20060921-0945 (3.2.1 pre-release).
+- Upadate patches to 3.2.1.
+- Add icu4j 3.4.5 sources.
+- Add Fedora version to platform about.mappings as well as sdk.
+
* Mon Sep 25 2006 Andrew Overholt 3.2.0-8
- Remove unused eclipse.conf.
- Remove unused gre64.conf patch (applied upstream).
diff --git a/sources b/sources
index d2a4090..9be5c7d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
-67b41802092d4b2f779fb756dcaec85c eclipse-sourceBuild-srcIncluded-3.2.zip
a86209ba94fc9ccdda63a781bd4ea0d8 eclipse-fedora-splash-3.2.png
+c3be75d8af3c31b7a1748247ab3fee95 icu4jsrc_3_4_5.jar
+0fe89e9c7cf07a56c4fe8e2d7f5a394b eclipse-sourceBuild-srcIncluded-M20060921-0945.zip