diff options
Diffstat (limited to 'packages/gcc/gcc-4.3.0/debian/libjava-jar.dpatch')
-rw-r--r-- | packages/gcc/gcc-4.3.0/debian/libjava-jar.dpatch | 227 |
1 files changed, 227 insertions, 0 deletions
diff --git a/packages/gcc/gcc-4.3.0/debian/libjava-jar.dpatch b/packages/gcc/gcc-4.3.0/debian/libjava-jar.dpatch new file mode 100644 index 0000000000..38177b2495 --- /dev/null +++ b/packages/gcc/gcc-4.3.0/debian/libjava-jar.dpatch @@ -0,0 +1,227 @@ +#! /bin/sh -e + +# DP: gjar: support @ arguments. + +dir= +if [ $# -eq 3 -a "$2" = '-d' ]; then + pdir="-d $3" + dir="$3/" +elif [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) + patch $pdir -f --no-backup-if-mismatch -p0 < $0 + uudecode $0 + tar -xv -f jar-main-classes.tar.bz2 -C ${dir}libjava + rm -f jar-main-classes.tar.bz2* + ;; + -unpatch) + patch $pdir -f --no-backup-if-mismatch -R -p0 < $0 + ;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +esac +exit 0 + +From: Christian Thalinger <twisti@complang.tuwien.ac.at> + +While building OpenJDK b16 I noticed that jar does not support @ +arguments. OpenJDK e.g. uses it to import the binary plug files. + +This patch adds support for @filelist, where the file filelist may only +contain files and not options, as the spec says. + +Index: libjava/classpath/tools/gnu/classpath/tools/jar/Main.java +=================================================================== +RCS file: /cvsroot/classpath/classpath/tools/gnu/classpath/tools/jar/Main.java,v +retrieving revision 1.9 +diff -u -3 -p -r1.9 Main.java +--- libjava/classpath/tools/gnu/classpath/tools/jar/Main.java 31 Jan 2007 17:05:34 -0000 1.9 ++++ libjava/classpath/tools/gnu/classpath/tools/jar/Main.java 23 Jul 2007 18:31:19 -0000 +@@ -47,6 +47,8 @@ import gnu.classpath.tools.getopt.Parser + + import java.io.BufferedReader; + import java.io.File; ++import java.io.FileNotFoundException; ++import java.io.FileReader; + import java.io.InputStreamReader; + import java.io.IOException; + import java.text.MessageFormat; +@@ -102,14 +104,51 @@ public class Main + public void notifyFile(String fileArgument) + { + Entry entry; ++ ++ if (fileArgument.charAt(0) == '@') ++ { ++ BufferedReader br = null; ++ String filename; ++ ++ try ++ { ++ br = ++ new BufferedReader(new FileReader(fileArgument.substring(1))); ++ } ++ catch (FileNotFoundException fnfe) ++ { ++ System.err.println(fnfe); ++ System.exit(1); ++ } ++ ++ try ++ { ++ while ((filename = br.readLine()) != null) ++ addEntry(filename); ++ } ++ catch (IOException ioe) ++ { ++ ioe.printStackTrace(); ++ } ++ } ++ else ++ { ++ addEntry(fileArgument); ++ } ++ } ++ ++ private final void addEntry(String filename) ++ { ++ Entry entry; ++ + if (changedDirectory != null) + { +- entry = new Entry(new File(changedDirectory, fileArgument), +- fileArgument); ++ entry = new Entry(new File(changedDirectory, filename), ++ filename); + changedDirectory = null; + } + else +- entry = new Entry(new File(fileArgument)); ++ entry = new Entry(new File(filename)); + entries.add(entry); + } + } + + +begin-base64 644 jar-main-classes.tar.bz2 +QlpoOTFBWSZTWW4Pr8QAFqP///////////////////////////////////// +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 +==== |