Thanks Mark
2008/11/5 Mark Hindess <[EMAIL PROTECTED]>:
>
> Committed as r711744.
> -Mark.
>
> In message <[EMAIL PROTECTED]>, Oliver Deakin writes:
>>
>> Looks good to me. +1 to that fix.
>>
>> Regards,
>> Oliver
>>
>> Mark Hindess wrote:
>> > The correct fix is:
>> >
>> > Index: build.xml
>> > ===================================================================
>> > --- build.xml (revision 711662)
>> > +++ build.xml (working copy)
>> > @@ -319,6 +319,7 @@
>> > <chmod file="${target.dir}/hdk/jdk/jre/bin/keytool*" perm="ugo+x"
>> />
>> > <chmod file="${target.dir}/hdk/jdk/jre/bin/policytool*" perm="ugo+
>> x" />
>> > <chmod file="${target.dir}/hdk/jdk/jre/bin/unpack200*" perm="ugo+x
>> " />
>> > + <chmod file="${target.dir}/hdk/jdk/jre/bin/pack200*" perm="ugo+x"
>> />
>> > </target>
>> >
>> > <target name="assemble-jdk">
>> >
>> > Please can someone second this commit?
>> >
>> > Regards,
>> > Mark.
>> >
>> > In message <[EMAIL PROTECTED]>, "
>> Sian
>> > January" writes:
>> >
>> >> Hi Chunrong,
>> >>
>> >> I've downloaded the hdk snapshot (Windows32) from
>> >> http://people.apache.org/builds/harmony/snapshots/r710036/ and both
>> >> the pack200 executables work for me. Which platform are you seeing
>> >> problems on?
>> >>
>> >> Thanks,
>> >>
>> >> Sian
>> >>
>> >>
>> >> 2008/11/5 chunrong lai <[EMAIL PROTECTED]>:
>> >>
>> >>> I see after a HDK building there are four pack200.
>> >>>
>> >>> ./working_jdktools/deploy/jdk/bin/pack200
>> >>> ./working_jdktools/deploy/jdk/jre/bin/pack200
>> >>> ./target/hdk/jdk/bin/pack200
>> >>> ./target/hdk/jdk/jre/bin/pack200
>> >>>
>> >>> While the first three are executable but the fourth is not yet. I think t
>> ha
>> >>>
>> >> t
>> >>
>> >>> it is what we run by default.
>> >>> So we need to further enhanced the scripts to make it executable.
>> >>>
>> >>> + <echo message="Run jdk/jre/bin/pack200 in ${hy.tests.reports}"/>
>> >>> + <exec failonerror="true"
>> >>> + executable="${test.jre.home}/bin/pack200${exe.suffix}"
>> >>> + dir="${hy.tests.reports}">
>> >>> + <arg line="" />
>> >>> + </exec>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> On Wed, Oct 22, 2008 at 6:28 PM, <[EMAIL PROTECTED]> wrote:
>> >>>
>> >>>
>> >>>> Author: sjanuary
>> >>>> Date: Wed Oct 22 03:28:30 2008
>> >>>> New Revision: 707024
>> >>>>
>> >>>> URL: http://svn.apache.org/viewvc?rev=707024&view=rev
>> >>>> Log:
>> >>>> Pack200 - add "pack200" executable
>> >>>>
>> >>>> Added:
>> >>>>
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apac
>> he
>> >>>>
>> >> /harmony/jretools/pack200/
>> >>
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apac
>> he
>> >>>>
>> >> /harmony/jretools/pack200/Main.java
>> >>
>> >>>> (with props)
>> >>>> Modified:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jdktools/META-INF/MANIFEST.MF
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/META-INF/MANIFEST.MF
>> >>>> harmony/enhanced/jdktools/trunk/modules/samsa/build.xml
>> >>>>
>> >>>> Modified:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jdktools/META-INF/MANIFEST.MF
>> >>>> URL:
>> >>>> http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jdk
>> to
>> >>>>
>> >> ols/META-INF/MANIFEST.MF?rev=707024&r1=707023&r2=707024&view=diff
>> >>
>> >>>> ========================================================================
>> ==
>> >>>>
>> >> ====
>> >>
>> >>>> --- harmony/enhanced/jdktools/trunk/modules/jdktools/META-INF/MANIFEST.M
>> F
>> >>>> (original)
>> >>>> +++ harmony/enhanced/jdktools/trunk/modules/jdktools/META-INF/MANIFEST.M
>> F
>> >>>> Wed Oct 22 03:28:30 2008
>> >>>> @@ -40,6 +40,7 @@
>> >>>> org.apache.harmony.tools.jarsigner,
>> >>>> org.apache.harmony.tools.keytool,
>> >>>> org.apache.harmony.tools.unpack200,
>> >>>> + org.apache.harmony.tools.pack200,
>> >>>> com.sun.tools.javac,
>> >>>> com.sun.tools.jdi,
>> >>>> com.sun.tools.jdi.connect,
>> >>>>
>> >>>> Modified:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/META-INF/MANIFEST.MF
>> >>>> URL:
>> >>>> http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jre
>> to
>> >>>>
>> >> ols/META-INF/MANIFEST.MF?rev=707024&r1=707023&r2=707024&view=diff
>> >>
>> >>>> ========================================================================
>> ==
>> >>>>
>> >> ====
>> >>
>> >>>> --- harmony/enhanced/jdktools/trunk/modules/jretools/META-INF/MANIFEST.M
>> F
>> >>>> (original)
>> >>>> +++ harmony/enhanced/jdktools/trunk/modules/jretools/META-INF/MANIFEST.M
>> F
>> >>>> Wed Oct 22 03:28:30 2008
>> >>>> @@ -36,4 +36,5 @@
>> >>>> org.apache.harmony.security.x509;version="1.0.0"
>> >>>> Export-Package: org.apache.harmony.jretools.keytool,
>> >>>> org.apache.harmony.jretools.unpack200,
>> >>>> + org.apache.harmony.jretools.pack200,
>> >>>> org.apache.harmony.jretools.policytool
>> >>>>
>> >>>> Added:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apach
>> e/
>> >>>>
>> >> harmony/jretools/pack200/Main.java
>> >>
>> >>>> URL:
>> >>>> http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jre
>> to
>> >>>>
>> >> ols/src/main/java/org/apache/harmony/jretools/pack200/Main.java?rev=707024
>> &vi
>> >> ew=auto
>> >>
>> >>>> ========================================================================
>> ==
>> >>>>
>> >> ====
>> >>
>> >>>> ---
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apach
>> e/
>> >>>>
>> >> harmony/jretools/pack200/Main.java
>> >>
>> >>>> (added)
>> >>>> +++
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apach
>> e/
>> >>>>
>> >> harmony/jretools/pack200/Main.java
>> >>
>> >>>> Wed Oct 22 03:28:30 2008
>> >>>> @@ -0,0 +1,124 @@
>> >>>> +/*
>> >>>> + * Licensed to the Apache Software Foundation (ASF) under one or more
>> >>>> + * contributor license agreements. See the NOTICE file distributed wi
>> th
>> >>>> + * this work for additional information regarding copyright ownership.
>> >>>> + * The ASF licenses this file to You under the Apache License, Version
>> >>>> 2.0
>> >>>> + * (the "License"); you may not use this file except in compliance wit
>> h
>> >>>> + * the License. You may obtain a copy of the License at
>> >>>> + *
>> >>>> + * http://www.apache.org/licenses/LICENSE-2.0
>> >>>> + *
>> >>>> + * Unless required by applicable law or agreed to in writing, software
>> >>>> + * distributed under the License is distributed on an "AS IS" BASIS,
>> >>>> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> >>>> implied.
>> >>>> + * See the License for the specific language governing permissions and
>> >>>> + * limitations under the License.
>> >>>> + */
>> >>>> +package org.apache.harmony.jretools.pack200;
>> >>>> +
>> >>>> +import java.io.BufferedOutputStream;
>> >>>> +import java.io.FileInputStream;
>> >>>> +import java.io.FileOutputStream;
>> >>>> +import java.io.OutputStream;
>> >>>> +import java.util.jar.JarInputStream;
>> >>>> +
>> >>>> +import org.apache.harmony.pack200.Archive;
>> >>>> +
>> >>>> +public class Main {
>> >>>> +
>> >>>> + public static void main(String args[]) throws Exception {
>> >>>> +
>> >>>> + String inputFileName = null;
>> >>>> + String outputFileName = null;
>> >>>> + boolean verbose = false;
>> >>>> + boolean quiet = false;
>> >>>> + String logFileName = null;
>> >>>> + boolean gzip = true;
>> >>>> +
>> >>>> + for (int i = 0; i < args.length; i++) {
>> >>>> + if (args[i].equals("--help") || args[i].equals("-help")
>> >>>> + || args[i].equals("-h") || args[i].equals("-?")) {
>> >>>> + printHelp();
>> >>>> + return;
>> >>>> + } else if(args[i].equals("-g") || args[i].equals("--no-gzip
>> ")
>> >>>>
>> >> )
>> >>
>> >>>> {
>> >>>> + gzip = false;
>> >>>> + } else if(args[i].equals("--gzip")) {
>> >>>> + gzip = true;
>> >>>> + } else if(args[i].equals("-v") ||
>> >>>> args[i].equals("--verbose")) {
>> >>>> + verbose = true;
>> >>>> + quiet = false;
>> >>>> + } else if(args[i].equals("-q") || args[i].equals("--quiet")
>> )
>> >>>>
>> >> {
>> >>
>> >>>> + quiet = true;
>> >>>> + verbose = false;
>> >>>> + } else if(args[i].startsWith("-l")) {
>> >>>> + logFileName = args[i].substring(2);
>> >>>> + } else if(args[i].equals("-V") || args[i].equals("--version
>> ")
>> >>>>
>> >> )
>> >>
>> >>>> {
>> >>>> + printVersion();
>> >>>> + return;
>> >>>> + } else {
>> >>>> + outputFileName = args[i];
>> >>>> + if(args.length > i + 1) {
>> >>>> + inputFileName = args[i+1];
>> >>>> + }
>> >>>> + break;
>> >>>> + }
>> >>>> + }
>> >>>> + if(inputFileName == null || outputFileName == null) {
>> >>>> + printUsage();
>> >>>> + return;
>> >>>> + }
>> >>>> + JarInputStream inputStream = new JarInputStream(new
>> >>>> FileInputStream(inputFileName));
>> >>>> + OutputStream outputStream = new BufferedOutputStream(new
>> >>>> FileOutputStream(outputFileName));
>> >>>> + Archive archive = new Archive(inputStream, outputStream, gzip);
>> >>>> + archive.pack();
>> >>>> + }
>> >>>> +
>> >>>> + private static void printUsage() {
>> >>>> + System.out.println("Usage: pack200 [-opt... | --option=value].
>> ..
>> >>>> x.pack[.gz] y.jar");
>> >>>> + System.out.println("(For more information, run pack200 --help)"
>> );
>> >>>> + }
>> >>>> +
>> >>>> + private static void printHelp() {
>> >>>> + // TODO: Support all the options
>> >>>> + System.out.println("Usage: pack200 [-opt... | --option=value].
>> ..
>> >>>> x.pack[.gz] y.jar");
>> >>>> + System.out.println();
>> >>>> + System.out.println("Packing Options");
>> >>>> + System.out.println(" -g, --no-gzip output a
>> >>>> plain *.pack file with no zipping");
>> >>>> + System.out.println(" --gzip (default)
>> >>>> post-process the pack output with gzip");
>> >>>> +// System.out.println(" -G, --strip-debug remove
>> >>>> debugging attributes while packing");
>> >>>> +// System.out.println(" -O, --no-keep-file-order do not
>> >>>> transmit file ordering information");
>> >>>> +// System.out.println(" --keep-file-order (defaul
>> t)
>> >>>> preserve input file ordering");
>> >>>> +// System.out.println(" -S{N}, --segment-limit={N} output
>> >>>> segment limit (default N=1Mb)");
>> >>>> +// System.out.println(" -E{N}, --effort={N} packing
>> >>>> effort (default N=5)");
>> >>>> +// System.out.println(" -H{h}, --deflate-hint={h} transmi
>> t
>> >>>> deflate hint: true, false, or keep (default)");
>> >>>> +// System.out.println(" -m{V}, --modification-time={V} transmi
>> t
>> >>>> modtimes: latest or keep (default)");
>> >>>> +// System.out.println(" -P{F}, --pass-file={F} transmi
>> t
>> >>>> the given input element(s) uncompressed");
>> >>>> +// System.out.println(" -U{a}, --unknown-attribute={a} unknown
>> >>>> attribute action: error, strip, or pass (default)");
>> >>>> +// System.out.println(" -C{N}={L}, --class-attribute={N}={L}
>> >>>> (user-defined attribute)");
>> >>>> +// System.out.println(" -F{N}={L}, --field-attribute={N}={L}
>> >>>> (user-defined attribute)");
>> >>>> +// System.out.println(" -M{N}={L}, --method-attribute={N}={L}
>> >>>> (user-defined attribute)");
>> >>>> +// System.out.println(" -D{N}={L}, --code-attribute={N}={L}
>> >>>> (user-defined attribute)");
>> >>>> +// System.out.println(" -f{F}, --config-file={F} read fi
>> le
>> >>>> F for Pack200.Packer properties");
>> >>>> +// System.out.println(" -v, --verbose increas
>> e
>> >>>> program verbosity");
>> >>>> +// System.out.println(" -q, --quiet set
>> >>>> verbosity to lowest level");
>> >>>> +// System.out.println(" -l{F}, --log-file={F} output
>> to
>> >>>> the given log file, or '-' for System.out");
>> >>>> + System.out.println(" -?, -h, --help print thi
>> s
>> >>>> message");
>> >>>> + System.out.println(" -V, --version print
>> >>>> program version");
>> >>>> +// System.out.println(" -J{X} pass
>> >>>> option X to underlying Java VM");
>> >>>> +// System.out.println("");
>> >>>> +// System.out.println("Notes:");
>> >>>> +// System.out.println(" The -P, -C, -F, -M, and -D options
>> >>>> accumulate.");
>> >>>> +// System.out.println(" Example attribute definition: -C
>> >>>> SourceFile=RUH .");
>> >>>> +// System.out.println(" Config. file properties are defined by
>> th
>> >>>>
>> >> e
>> >>
>> >>>> Pack200 API.");
>> >>>> +// System.out.println(" For meaning of -S, -E, -H-, -m, -U valu
>> es
>> >>>>
>> >> ,
>> >>
>> >>>> see Pack200 API.");
>> >>>> +// System.out.println(" Layout definitions (like RUH) are defin
>> ed
>> >>>> by JSR 200.");
>> >>>> +// System.out.println("");
>> >>>> +// System.out.println("Repacking mode updates the JAR file with
>> a
>> >>>> pack/unpack cycle:");
>> >>>> +// System.out.println(" pack200 [-r|--repack] [-opt |
>> >>>> --option=value]... [repackedy.jar] y.jar");
>> >>>> + }
>> >>>> +
>> >>>> + private static void printVersion() {
>> >>>> + System.out.println("Apache Harmony pack200 version 0.0"); // T
>> OD
>> >>>>
>> >> O
>> >>
>> >>>> - version number
>> >>>> + }
>> >>>> +
>> >>>> +}
>> >>>>
>> >>>> Propchange:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apach
>> e/
>> >>>>
>> >> harmony/jretools/pack200/Main.java
>> >>
>> >>>> ------------------------------------------------------------------------
>> --
>> >>>>
>> >> ----
>> >>
>> >>>> svn:eol-style = native
>> >>>>
>> >>>> Propchange:
>> >>>> harmony/enhanced/jdktools/trunk/modules/jretools/src/main/java/org/apach
>> e/
>> >>>>
>> >> harmony/jretools/pack200/Main.java
>> >>
>> >>>> ------------------------------------------------------------------------
>> --
>> >>>>
>> >> ----
>> >>
>> >>>> svn:mime-type = text/plain
>> >>>>
>> >>>> Modified: harmony/enhanced/jdktools/trunk/modules/samsa/build.xml
>> >>>> URL:
>> >>>> http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/sam
>> sa
>> >>>>
>> >> /build.xml?rev=707024&r1=707023&r2=707024&view=diff
>> >>
>> >>>> ========================================================================
>> ==
>> >>>>
>> >> ====
>> >>
>> >>>> --- harmony/enhanced/jdktools/trunk/modules/samsa/build.xml (original)
>> >>>> +++ harmony/enhanced/jdktools/trunk/modules/samsa/build.xml Wed Oct 22
>> >>>> 03:28:30 2008
>> >>>> @@ -84,7 +84,10 @@
>> >>>> <copy file="${hy.samsa.exe}"
>> >>>> tofile="${jretools.deploy.dir}/bin/unpack200${exe.suffix}" />
>> >>>> <chmod file="${jretools.deploy.dir}/bin/unpack200${exe.suffix}"
>> >>>> perm="ugo+x" />
>> >>>>
>> >>>> - <copy file="${hy.samsa.exe}"
>> >>>> tofile="${jretools.deploy.dir}/bin/policytool${exe.suffix}" />
>> >>>> + <copy file="${hy.samsa.exe}"
>> >>>> tofile="${jretools.deploy.dir}/bin/pack200${exe.suffix}" />
>> >>>> + <chmod file="${jretools.deploy.dir}/bin/pack200${exe.suffix}"
>> >>>> perm="ugo+x" />
>> >>>> +
>> >>>> + <copy file="${hy.samsa.exe}"
>> >>>> tofile="${jretools.deploy.dir}/bin/policytool${exe.suffix}" />
>> >>>> <chmod file="${jretools.deploy.dir}/bin/policytool${exe.suffix}"
>> >>>> perm="ugo+x" />
>> >>>>
>> >>>> </target>
>> >>>> @@ -114,7 +117,8 @@
>> >>>> <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jdktools.deploy.dir}/bin/javap${progdb.suffix}" />
>> >>>> <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jdktools.deploy.dir}/bin/jarsigner${progdb.suffix}" />
>> >>>> <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jretools.deploy.dir}/bin/unpack200${progdb.suffix}" />
>> >>>> - <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jretools.deploy.dir}/bin/keytool${progdb.suffix}" />
>> >>>> + <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jretools.deploy.dir}/bin/pack200${progdb.suffix}" />
>> >>>> + <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jretools.deploy.dir}/bin/keytool${progdb.suffix}" />
>> >>>> <copy file="${hy.samsa.progdb}"
>> >>>> tofile="${jretools.deploy.dir}/bin/policytool${progdb.suffix}" />
>> >>>>
>> >>>> </target>
>> >>>> @@ -192,6 +196,14 @@
>> >>>> <arg line="" />
>> >>>> </exec>
>> >>>>
>> >>>> + <echo message="Run jdk/jre/bin/pack200 in ${hy.tests.reports}"/
>> >
>> >>>> + <exec failonerror="true"
>> >>>> + executable="${test.jre.home}/bin/pack200${exe.suffix}"
>> >>>> + dir="${hy.tests.reports}">
>> >>>> + <arg line="" />
>> >>>> + </exec>
>> >>>> +
>> >>>> +
>> >>>> </target>
>> >>>>
>> >>>> <!-- Clean natives -->
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>
>> >> --
>> >> Unless stated otherwise above:
>> >> IBM United Kingdom Limited - Registered in England and Wales with number 7
>> 415
>> >> 98.
>> >> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>> >>
>> >>
>> >
>> >
>> >
>> >
>>
>> --
>> Oliver Deakin
>> Unless stated otherwise above:
>> IBM United Kingdom Limited - Registered in England and Wales with number 7415
>> 98.
>> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>>
>
>
>
--
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU