[blfs-dev] Mercurial or wget for openjdk?

Pierre Labastie pierre.labastie at neuf.fr
Sat Sep 5 13:55:45 PDT 2015


On 05/09/2015 19:54, Fernando de Oliveira wrote:
> Em 05-09-2015 13:40, Bruce Dubbs escreveu:
>> Pierre Labastie wrote:
>>> Hi all,
>>>
>>> Sorry for discussing this again, but before the timing given below, I was
>>> wondering what the best approach for downloading OpenJDK files was. Using
>>> mercurial, it amounts to:
>>> ----------
>>> hg clone http://hg.openjdk.java.net/jdk8u/jdk8u<rev>
>>> cd jdk8u<rev>
>>> sh get_source.sh
>>> sh common/bin/hgforest.sh update -r jdk8u<rev>-b<build> # not really
>>> needed
>>> ----------
>>> Note that mercurial is needed (obviously), but mercurial depends only on
>>> Python, which is a very basic package, and builds very fast (a few
>>> tenths of
>>> SBU). hgforest is optimized to retrieve several repositories at the
>>> same time,
>>> so the download time is not too long. Actually, timing gives:
>>> -------------
>>> time (
>>> hg clone http://hg.openjdk.java.net/jdk8u/jdk8u60
>>> cd jdk8u60
>>> sh get_source.sh
>>> sh common/bin/hgforest.sh update -r jdk8u60-b27 )
>>> ...
>>> real    6m31.868s
>>> user    0m0.896s
>>> sys     0m0.060s
>>>
>>> The other approach is to use wget to download tarballs, as proposed by
>>> Fernando. For measuring download+unpack time, I use a version slightly
>>> different from
>>> http://lists.linuxfromscratch.org/pipermail/blfs-dev/2015-May/030258.html:
>>>
>>> time (
>>> PACKAGE=jdk8u60-b27.tar.bz2
>>> URL=http://hg.openjdk.java.net/jdk8u/jdk8u60
>>> URL_END=archive/$PACKAGE
>>> wget $URL/$URL_END
>>> tar xf $PACKAGE
>>> for additional in corba hotspot jaxp jaxws langtools jdk nashorn; do
>>>    wget $URL/$additional/$URL_END -O $additional.tar.bz2
>>>    mkdir -p jdk8u60-jdk8u60-b27/$additional
>>>    tar --stripcomponents=1 \
>>>        -C jdk8u60-jdk8u60-b27/$additional \
>>>        -x -f $additional.tar.bz2
>>> done
>>> )
>>> ...
>>> real    2m56.273s
>>> user    0m8.716s
>>> sys     0m2.472s
>>>
>>> So definitely, the wget approach is shorter. OTOH the mercurial
>>> approach is
>>> much simpler and less prone to errors. If using wget, I think I'll use
>>> some
>>> approach similar to what we do for X, as suggested by Fernando, but it
>>> would
>>> be still complicated, unless maybe we make a file with 4 fields per line:
>>> tarball-name, md5 extracted-dirname, final-dirname.
>>
>> Using mercurial provides an example for that version control package.  I
>> don't wee a problem with doing OpenJDK with mercurial.
>>
>> Note, I only build OPenJDK for testing the book.  I cannot recall
>> needing or using it in other circumstances.
>>
>>   -- Bruce
>>
> 
> Why is this result so the expected one?
> 
> After forgetting Fernando's suggestion for months, delaying for more
> time, waiting BLFS7.8 freeze, and with Bruce playing the game...
> 
> Is there a single person that thought the result could be different?
> 

What result? It is a discussion... I delayed for months because I first
forgot, then because I waited for the next update (which is now). Anyway the
way you retrieve subprojects is not a big deal.

Pierre


More information about the blfs-dev mailing list