[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