[SCM] eclipse - Powerful IDE written in java - Debian package. branch, master, updated. debian/3.7.1-1-15-gf2a1b55

Jakub Adam jakub.adam at ktknet.cz
Sun Mar 11 11:48:33 UTC 2012


The following commit has been merged in the master branch:
commit f2a1b556fb8c568f7cee19464d577a810e0cbc9e
Author: Jakub Adam <jakub.adam at ktknet.cz>
Date:   Sat Mar 10 23:14:59 2012 +0100

    Add bundle-info-helper.patch and find-org-apache-ant.patch

diff --git a/debian/changelog b/debian/changelog
index fc9c47b..b077489 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,8 @@ eclipse (3.7.2-1) UNRELEASED; urgency=low
   * Make extended description of eclipse binary package more accurate
     (Closes: #655945).
   * Bump Standards-Version to 3.9.3 (no changes required).
+  * Fix broken installaton after some package Eclipse core platform
+    depends on is upgraded (Closes: #662153, #663335).
 
  -- Jakub Adam <jakub.adam at ktknet.cz>  Wed, 07 Mar 2012 01:07:05 +0100
 
diff --git a/debian/patches/bundle-info-helper.patch b/debian/patches/bundle-info-helper.patch
new file mode 100644
index 0000000..c817c6c
--- /dev/null
+++ b/debian/patches/bundle-info-helper.patch
@@ -0,0 +1,318 @@
+From: Jakub Adam <jakub.adam at ktknet.cz>
+Date: Sat, 10 Mar 2012 18:06:03 +0100
+Subject: bundle-info-helper
+
+In bundles.info there is a list of bundles load by Equinox simple configurator
+on startup. This file is generated when Eclipse is built from sources and its
+contents are fixed thereafter. This patch tries to solve a situation when some
+of orbit dependencies are upgraded by operating system's package manager.
+
+The bundle's record in bundles.info contains a version number it had at the
+time of compilation. When this number becomes different from the version of
+bundle that is actually installed in the system, Eclipse rejects to load the
+bundle which leads to missing plugins or even inability to start the workbench.
+
+When bundles.info is loaded by simpleconfigurator, the BundleInfoHelper class
+inspects OSGi metadata of the installed bundles and replaces the version
+number from bundles.info with the real one. It does this only to the runtime
+data structures, bundles file is kept read only. After that, simpleconfigurator
+is able to load the upgraded bundles.
+---
+ .../src/org/debian/BundleInfoHelper.java           |  261 ++++++++++++++++++++
+ .../utils/SimpleConfiguratorUtils.java             |    8 +-
+ 2 files changed, 268 insertions(+), 1 deletions(-)
+ create mode 100644 eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/debian/BundleInfoHelper.java
+
+diff --git a/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/debian/BundleInfoHelper.java b/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/debian/BundleInfoHelper.java
+new file mode 100644
+index 0000000..0888047
+--- /dev/null
++++ b/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/debian/BundleInfoHelper.java
+@@ -0,0 +1,261 @@
++/*******************************************************************************
++ * Copyright (c) 2012 Jakub Adam.
++ * All rights reserved. This program and the accompanying materials
++ * are made available under the terms of the Eclipse Public License v1.0
++ * which accompanies this distribution, and is available at
++ * http://www.eclipse.org/legal/epl-v10.html
++ * 
++ * The code is based on getOSGiManifest() method from
++ * org.eclipse.equinox.internal.frameworkadmin.utils.Utils and
++ * org.eclipse.osgi.util.ManifestElement classes. The original code copyright
++ * holder is IBM Corporation.
++ *******************************************************************************/
++
++package org.debian;
++
++import java.io.*;
++import java.net.*;
++import java.util.*;
++import java.util.jar.JarFile;
++import java.util.zip.ZipEntry;
++import java.util.zip.ZipFile;
++import org.eclipse.equinox.internal.simpleconfigurator.utils.BundleInfo;
++import org.eclipse.equinox.internal.simpleconfigurator.utils.URIUtil;
++import org.osgi.framework.Constants;
++import org.osgi.framework.Version;
++
++/** 
++ * In bundles.info there is a list of bundles load by Equinox simple configurator
++ * on startup. This file is generated when Eclipse is built from sources and its
++ * contents are fixed thereafter. This class tries to solve a situation when some
++ * of orbit dependencies are upgraded by operating system's package manager.
++ * 
++ * The bundle's record in bundles.info contains a version number it had at the
++ * time of compilation. When this number becomes different from the version of
++ * that is actually installed in the system, Eclipse rejects to load the bundle
++ * which leads to missing plugins or even inability to start the workbench.
++ * 
++ * When bundles.info is loaded by simpleconfigurator, the BundleInfoHelper class
++ * inspects OSGi metadata of the installed bundles and replaces the version
++ * number from bundles.info with the real one. It does this only to the runtime
++ * data structures, bundles file is kept read only. After that, simpleconfigurator
++ * can load the upgraded bundles.
++ */
++public class BundleInfoHelper {
++
++	public static List useDebianBundleVersions(List bundles) {
++		List newBundles = new ArrayList();
++
++		ListIterator it = bundles.listIterator();
++		while (it.hasNext()) {
++			BundleInfo bundle = (BundleInfo) it.next();
++
++			try {
++				URI fullUri;
++				if (bundle.getBaseLocation() != null)
++					fullUri = new URI(bundle.getBaseLocation().toString() + bundle.getLocation().toString());
++				else
++					fullUri = bundle.getLocation();
++
++				Dictionary manifest = getOSGiManifest(fullUri);
++
++				if (manifest != null) {
++					String debianVersion = (String) manifest.get(Constants.BUNDLE_VERSION);
++					debianVersion = Version.parseVersion(debianVersion).toString();
++					BundleInfo newBundle = new BundleInfo(bundle.getSymbolicName(), debianVersion, bundle.getLocation(), bundle.getStartLevel(), bundle.isMarkedAsStarted());
++					newBundle.setBaseLocation(bundle.getBaseLocation());
++					bundle = newBundle;
++				}
++			} catch (URISyntaxException e) {
++				// Use original bundle
++			}
++
++			newBundles.add(bundle);
++		}
++
++		return newBundles;
++	}
++
++	/* Following code is copied from org.eclipse.equinox.internal.frameworkadmin.utils.Utils
++	 * with some minor changes. It is here because required bundle may not be 
++	 * loaded yet at the early time when useDebianBundleVersions() is run. */
++
++	private static final String FILE_SCHEME = "file"; //$NON-NLS-1$
++
++	private static Dictionary getOSGiManifest(URI location) {
++		if (location == null)
++			return null;
++		// if we have a file-based URL that doesn't end in ".jar" then...
++		if (FILE_SCHEME.equals(location.getScheme()))
++			return basicLoadManifest(URIUtil.toFile(location));
++
++		try {
++			URL url = new URL("jar:" + location.toString() + "!/"); //$NON-NLS-1$//$NON-NLS-2$
++			JarURLConnection jarConnection = (JarURLConnection) url.openConnection();
++			ZipFile jar = jarConnection.getJarFile();
++
++			try {
++				ZipEntry entry = jar.getEntry(JarFile.MANIFEST_NAME);
++				if (entry == null)
++					return null;
++
++				Map manifest = parseBundleManifest(jar.getInputStream(entry), null);
++				if (manifest.get(Constants.BUNDLE_SYMBOLICNAME) == null) {
++					return null;
++				}
++				return manifestToProperties(manifest);
++			} catch (Exception e) {
++				return null;
++			} finally {
++				jar.close();
++			}
++		} catch (IOException e) {
++			if (System.getProperty("osgi.debug") != null) {
++				System.err.println("location=" + location);
++				e.printStackTrace();
++			}
++		}
++		return null;
++	}
++
++	//Return a dictionary representing a manifest. The data may result from plugin.xml conversion  
++	private static Dictionary basicLoadManifest(File bundleLocation) {
++		InputStream manifestStream = null;
++		ZipFile jarFile = null;
++		try {
++			try {
++				// Handle a JAR'd bundle
++				if (bundleLocation.isFile()) {
++					jarFile = new ZipFile(bundleLocation, ZipFile.OPEN_READ);
++					ZipEntry manifestEntry = jarFile.getEntry(JarFile.MANIFEST_NAME);
++					if (manifestEntry != null) {
++						manifestStream = jarFile.getInputStream(manifestEntry);
++					}
++				} else {
++					// we have a directory-based bundle
++					File bundleManifestFile = new File(bundleLocation, JarFile.MANIFEST_NAME);
++					if (bundleManifestFile.exists())
++						manifestStream = new BufferedInputStream(new FileInputStream(new File(bundleLocation, JarFile.MANIFEST_NAME)));
++				}
++			} catch (IOException e) {
++				//ignore
++			}
++			try {
++				Map manifest = parseBundleManifest(manifestStream, null);
++				// add this check to handle the case were we read a non-OSGi manifest
++				if (manifest.get(Constants.BUNDLE_SYMBOLICNAME) == null)
++					return null;
++				return manifestToProperties(manifest);
++			} catch (IOException ioe) {
++				return null;
++			} catch (Exception e) {
++				return null;
++			}
++		} finally {
++			try {
++				if (manifestStream != null)
++					manifestStream.close();
++			} catch (IOException e1) {
++				//Ignore
++			}
++			try {
++				if (jarFile != null)
++					jarFile.close();
++			} catch (IOException e2) {
++				//Ignore
++			}
++		}
++	}
++
++	private static Properties manifestToProperties(Map d) {
++		Iterator iter = d.keySet().iterator();
++		Properties result = new Properties();
++		while (iter.hasNext()) {
++			String key = (String) iter.next();
++			result.put(key, d.get(key));
++		}
++		return result;
++	}
++
++	// Copied from org.eclipse.osgi.util.ManifestElement
++
++	/**
++	 * Parses a bundle manifest and puts the header/value pairs into the supplied Map.
++	 * Only the main section of the manifest is parsed (up to the first blank line).  All
++	 * other sections are ignored.  If a header is duplicated then only the last  
++	 * value is stored in the map.
++	 * <p>
++	 * The supplied input stream is consumed by this method and will be closed.
++	 * If the supplied Map is null then a Map is created to put the header/value pairs into.
++	 * </p>
++	 * @param manifest an input stream for a bundle manifest.
++	 * @param headers a map used to put the header/value pairs from the bundle manifest.  This value may be null.
++	 * @throws Exception if the manifest has an invalid syntax
++	 * @throws IOException if an error occurs while reading the manifest
++	 * @return the map with the header/value pairs from the bundle manifest
++	 */
++	public static Map parseBundleManifest(InputStream manifest, Map headers) throws IOException, Exception {
++		if (headers == null)
++			headers = new HashMap();
++		BufferedReader br;
++		try {
++			br = new BufferedReader(new InputStreamReader(manifest, "UTF8")); //$NON-NLS-1$
++		} catch (UnsupportedEncodingException e) {
++			br = new BufferedReader(new InputStreamReader(manifest));
++		}
++		try {
++			String header = null;
++			StringBuffer value = new StringBuffer(256);
++			boolean firstLine = true;
++
++			while (true) {
++				String line = br.readLine();
++				/* The java.util.jar classes in JDK 1.3 use the value of the last
++				 * encountered manifest header. So we do the same to emulate
++				 * this behavior. We no longer throw a BundleException
++				 * for duplicate manifest headers.
++				 */
++
++				if ((line == null) || (line.length() == 0)) /* EOF or empty line */
++				{
++					if (!firstLine) /* flush last line */
++					{
++						headers.put(header, value.toString().trim());
++					}
++					break; /* done processing main attributes */
++				}
++
++				if (line.charAt(0) == ' ') /* continuation */
++				{
++					if (firstLine) /* if no previous line */
++					{
++						throw new Exception("The manifest line has an invalid leading space");
++					}
++					value.append(line.substring(1));
++					continue;
++				}
++
++				if (!firstLine) {
++					headers.put(header, value.toString().trim());
++					value.setLength(0); /* clear StringBuffer */
++				}
++
++				int colon = line.indexOf(':');
++				if (colon == -1) /* no colon */
++				{
++					throw new Exception("The manifest line is invalid; it has no colon '':'' character after the header key");
++				}
++				header = line.substring(0, colon).trim();
++				value.append(line.substring(colon + 1));
++				firstLine = false;
++			}
++		} finally {
++			try {
++				br.close();
++			} catch (IOException ee) {
++				// do nothing
++			}
++		}
++		return headers;
++	}
++}
+diff --git a/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java b/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
+index 0ab0582..eb6146c 100644
+--- a/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
++++ b/eclipse/plugins/org.eclipse.equinox.simpleconfigurator/src/org/eclipse/equinox/internal/simpleconfigurator/utils/SimpleConfiguratorUtils.java
+@@ -11,6 +11,7 @@ package org.eclipse.equinox.internal.simpleconfigurator.utils;
+ import java.io.*;
+ import java.net.*;
+ import java.util.*;
++import org.debian.BundleInfoHelper;
+ import org.eclipse.osgi.service.resolver.VersionRange;
+ import org.osgi.framework.Version;
+ 
+@@ -40,7 +41,12 @@ public class SimpleConfiguratorUtils {
+ 		}
+ 
+ 		try {
+-			return readConfiguration(stream, base);
++			List result = readConfiguration(stream, base);
++
++			if (url.toString().startsWith("file:/usr/lib/eclipse/configuration"))
++				result = BundleInfoHelper.useDebianBundleVersions(result);
++
++			return result;
+ 		} finally {
+ 			stream.close();
+ 		}
diff --git a/debian/patches/find-org-apache-ant.patch b/debian/patches/find-org-apache-ant.patch
new file mode 100644
index 0000000..50a6985
--- /dev/null
+++ b/debian/patches/find-org-apache-ant.patch
@@ -0,0 +1,86 @@
+From: Jakub Adam <jakub.adam at ktknet.cz>
+Date: Wed, 7 Mar 2012 19:52:48 +0100
+Subject: find-org-apache-ant
+
+---
+ build.xml                      |    4 +-
+ nonosgidependencies.properties |   54 ++++++++++++++++++++--------------------
+ 2 files changed, 29 insertions(+), 29 deletions(-)
+
+diff --git a/build.xml b/build.xml
+index e5633ea..45a250f 100644
+--- a/build.xml
++++ b/build.xml
+@@ -368,11 +368,11 @@
+ 		<symlinkOSGiJars dependencies="${basedir}/jdtdependencies.properties" topLevelDir="${buildDirectory}/plugins" manifests="${basedir}/dependencyManifests" copyFiles="${copyFiles}"/>
+ 		<symlinkNonOSGiJars dependencies="${basedir}/jdtnonosgidependencies.properties" topLevelDir="${buildDirectory}/plugins" copyFiles="${copyFiles}"/>
+ 		<symlinkOSGiJars dependencies="${basedir}/sdkdependencies.properties" topLevelDir="${buildDirectory}/plugins" manifests="${basedir}/dependencyManifests" copyFiles="${copyFiles}"/>
+-		<replaceregexp file="${buildDirectory}/plugins/org.apache.ant_1.8.2.v20110505-1300/META-INF/MANIFEST.MF" flags="m,g,s">
++		<replaceregexp file="${buildDirectory}/plugins/org.apache.ant_1.8.2.v20120109-1030/META-INF/MANIFEST.MF" flags="m,g,s">
+ 			<regexp pattern="^Name.*" />
+ 			<substitution expression="" />
+ 		</replaceregexp>
+-		<replaceregexp file="${buildDirectory}/plugins/org.apache.ant_1.8.2.v20110505-1300/META-INF/MANIFEST.MF" flags="m,g,s">
++		<replaceregexp file="${buildDirectory}/plugins/org.apache.ant_1.8.2.v20120109-1030/META-INF/MANIFEST.MF" flags="m,g,s">
+ 			<regexp pattern="^SHA1-Digest.*" />
+ 			<substitution expression="" />
+ 		</replaceregexp>
+diff --git a/nonosgidependencies.properties b/nonosgidependencies.properties
+index a47fc48..ed3c044 100644
+--- a/nonosgidependencies.properties
++++ b/nonosgidependencies.properties
+@@ -1,27 +1,27 @@
+-org.apache.ant_1.8.2.v20110505-1300/bin/ant=/usr/share/ant/bin/ant
+-org.apache.ant_1.8.2.v20110505-1300/bin/antRun=/usr/share/ant/bin/antRun
+-org.apache.ant_1.8.2.v20110505-1300/bin/antRun.pl=/usr/share/ant/bin/antRun.pl
+-org.apache.ant_1.8.2.v20110505-1300/bin/complete-ant-cmd.pl=/usr/share/ant/bin/complete-ant-cmd.pl
+-org.apache.ant_1.8.2.v20110505-1300/bin/runant.pl=/usr/share/ant/bin/runant.pl
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-antlr.jar=/usr/share/java/ant/ant-antlr.jar:/usr/share/java/ant-antlr.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-bcel.jar=/usr/share/java/ant/ant-apache-bcel.jar:/usr/share/java/ant-apache-bcel.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-bsf.jar=/usr/share/java/ant/ant-apache-bsf.jar:/usr/share/java/ant-apache-bsf.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-log4j.jar=/usr/share/java/ant/ant-apache-log4j.jar:/usr/share/java/ant-apache-log4j.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-oro.jar=/usr/share/java/ant/ant-apache-oro.jar:/usr/share/java/ant-apache-oro.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-regexp.jar=/usr/share/java/ant/ant-apache-regexp.jar:/usr/share/java/ant-apache-regexp.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-resolver.jar=/usr/share/java/ant/ant-apache-resolver.jar:/usr/share/java/ant-apache-resolver.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-apache-xalan2.jar=/usr/share/java/ant/ant-apache-xalan2.jar:/usr/share/java/ant-apache-xalan2.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-commons-logging.jar=/usr/share/java/ant/ant-commons-logging.jar:/usr/share/java/ant-commons-logging.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-commons-net.jar=/usr/share/java/ant/ant-commons-net.jar:/usr/share/java/ant-commons-net.jar
+-#org.apache.ant_1.8.2.v20110505-1300/lib/ant-jai.jar=/usr/share/java/ant/ant-jai.jar:/usr/share/java/ant-jai.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-javamail.jar=/usr/share/java/ant/ant-javamail.jar:/usr/share/java/ant-javamail.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-jdepend.jar=/usr/share/java/ant/ant-jdepend.jar:/usr/share/java/ant-jdepend.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-jmf.jar=/usr/share/java/ant/ant-jmf.jar:/usr/share/java/ant-jmf.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-jsch.jar=/usr/share/java/ant/ant-jsch.jar:/usr/share/java/ant-jsch.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-junit.jar=/usr/share/java/ant/ant-junit.jar:/usr/share/java/ant-junit.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-junit4.jar=/usr/share/java/ant/ant-junit.jar:/usr/share/java/ant-junit.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-launcher.jar=/usr/share/java/ant-launcher.jar:/usr/share/java/ant-launcher.jar
+-#org.apache.ant_1.8.2.v20110505-1300/lib/ant-netrexx.jar=/usr/share/java/ant-netrexx.jar:/usr/share/java/ant-netrexx.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant-swing.jar=/usr/share/java/ant/ant-swing.jar:/usr/share/java/ant-swing.jar
+-#org.apache.ant_1.8.2.v20110505-1300/lib/ant-testutil.jar=/usr/share/java/ant/ant-testutil.jar:/usr/share/java/ant-testutil.jar
+-org.apache.ant_1.8.2.v20110505-1300/lib/ant.jar=/usr/share/java/ant.jar
++org.apache.ant_1.8.2.v20120109-1030/bin/ant=/usr/share/ant/bin/ant
++org.apache.ant_1.8.2.v20120109-1030/bin/antRun=/usr/share/ant/bin/antRun
++org.apache.ant_1.8.2.v20120109-1030/bin/antRun.pl=/usr/share/ant/bin/antRun.pl
++org.apache.ant_1.8.2.v20120109-1030/bin/complete-ant-cmd.pl=/usr/share/ant/bin/complete-ant-cmd.pl
++org.apache.ant_1.8.2.v20120109-1030/bin/runant.pl=/usr/share/ant/bin/runant.pl
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-antlr.jar=/usr/share/java/ant/ant-antlr.jar:/usr/share/java/ant-antlr.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-bcel.jar=/usr/share/java/ant/ant-apache-bcel.jar:/usr/share/java/ant-apache-bcel.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-bsf.jar=/usr/share/java/ant/ant-apache-bsf.jar:/usr/share/java/ant-apache-bsf.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-log4j.jar=/usr/share/java/ant/ant-apache-log4j.jar:/usr/share/java/ant-apache-log4j.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-oro.jar=/usr/share/java/ant/ant-apache-oro.jar:/usr/share/java/ant-apache-oro.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-regexp.jar=/usr/share/java/ant/ant-apache-regexp.jar:/usr/share/java/ant-apache-regexp.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-resolver.jar=/usr/share/java/ant/ant-apache-resolver.jar:/usr/share/java/ant-apache-resolver.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-apache-xalan2.jar=/usr/share/java/ant/ant-apache-xalan2.jar:/usr/share/java/ant-apache-xalan2.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-commons-logging.jar=/usr/share/java/ant/ant-commons-logging.jar:/usr/share/java/ant-commons-logging.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-commons-net.jar=/usr/share/java/ant/ant-commons-net.jar:/usr/share/java/ant-commons-net.jar
++#org.apache.ant_1.8.2.v20120109-1030/lib/ant-jai.jar=/usr/share/java/ant/ant-jai.jar:/usr/share/java/ant-jai.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-javamail.jar=/usr/share/java/ant/ant-javamail.jar:/usr/share/java/ant-javamail.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-jdepend.jar=/usr/share/java/ant/ant-jdepend.jar:/usr/share/java/ant-jdepend.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-jmf.jar=/usr/share/java/ant/ant-jmf.jar:/usr/share/java/ant-jmf.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-jsch.jar=/usr/share/java/ant/ant-jsch.jar:/usr/share/java/ant-jsch.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-junit.jar=/usr/share/java/ant/ant-junit.jar:/usr/share/java/ant-junit.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-junit4.jar=/usr/share/java/ant/ant-junit.jar:/usr/share/java/ant-junit.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-launcher.jar=/usr/share/java/ant-launcher.jar:/usr/share/java/ant-launcher.jar
++#org.apache.ant_1.8.2.v20120109-1030/lib/ant-netrexx.jar=/usr/share/java/ant-netrexx.jar:/usr/share/java/ant-netrexx.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant-swing.jar=/usr/share/java/ant/ant-swing.jar:/usr/share/java/ant-swing.jar
++#org.apache.ant_1.8.2.v20120109-1030/lib/ant-testutil.jar=/usr/share/java/ant/ant-testutil.jar:/usr/share/java/ant-testutil.jar
++org.apache.ant_1.8.2.v20120109-1030/lib/ant.jar=/usr/share/java/ant.jar
diff --git a/debian/patches/series b/debian/patches/series
index bff28be..80d1019 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -21,3 +21,5 @@ set-shared-config-dir.patch
 use-distribution-swt.patch
 add-o.e.equinox.log.patch
 relabel-to-3-7-2.patch
+find-org-apache-ant.patch
+bundle-info-helper.patch

-- 
eclipse - Powerful IDE written in java - Debian package.



More information about the pkg-java-commits mailing list