Daily Ports+ #1: JDK Upgrades2008年01月16日 14時59分39秒

This is to illustrate daily use of ports+ as examples.

I have to be a root to use ports+, at this moment. It is a good idea to begin with "test" target.


% su -l
Password:
# ports+ test
...
# upgrade evolution-data-server-1.12.3 to evolution-data-server-1.12.3_1
# upgrade p5-Test-Harness-3.06 to p5-Test-Harness-3.07
# upgrade subversion-1.4.4_1 to subversion-1.4.6
# upgrade subversion-perl-1.4.4_1 to subversion-perl-1.4.6
# upgrade graphviz-2.16 to graphviz-2.16.1
# upgrade netpbm-10.26.47 to netpbm-10.26.48
# upgrade diablo-jdk-1.5.0.07.01_8 to diablo-jdk-1.5.0.07.01_9
# upgrade jdk-1.5.0.13p7_2,1 to jdk-1.5.0.13p7_4,1
# upgrade jdk-1.6.0.3p3 to jdk-1.6.0.3p3_1
# upgrade shared-mime-info-0.22_1 to shared-mime-info-0.23
# upgrade cups-base-1.3.5 to cups-base-1.3.5_1
# upgrade e2fsprogs-1.40.3 to e2fsprogs-1.40.4

It is unfortunate but jdk requires to say "yes" at extraction stage. The first example is one of the few exceptional case. These need to be extracted before ports+ upgrade or to be taken care separately after ports+ upgrade.

I will extract myself and begin with ports+. I also know that jdk requires 2 to 3 GB of disk space for each build. I will use mdconfig. this time; I use tmpfs most of times, though.


# grep WRK /etc/make.conf
WRKDIRPREFIX=/ports/tmp
# dd if=/dev/zero of=/ports/tmp.md seek=9999 bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes transferred in 0.066654 secs (15731637 bytes/sec)
# mdconfig -a -t vnode -f /ports/tmp.md
md1
# newfs -U /dev/md1
/dev/md1: 10000.0MB (20480000 sectors) block size 16384, fragment size 2048
        using 55 cylinder groups of 183.77MB, 11761 blks, 23552 inodes.
        with soft update
...
# mount -onoatime /dev/md1 /ports/tmp
# df /ports/tmp
Filesystem 1K-blocks Used   Avail Capacity  Mounted on
/dev/md1     9914318    4 9121170     0%    /ports/tmp

Extract jdk15.


# cd /usr/ports/java/jdk15/
# make extract
===>  Found saved configuration for jdk-1.5.0.13p7_2,1

IMPORTANT: To build JDK 1.5.0 port, you should have at least
2.5Gb of free disk space in build area!

===>  Extracting for jdk-1.5.0.13p7_4,1
...
JAVA RESEARCH LICENSE
Version 1.6


I.    DEFINITIONS.

"Licensee" means You and any other party that has entered into and has
...
5.    Export Control.   As further described at
http://www.sun.com/its, you agree to comply with the U.S. export
controls and trade laws of other countries that apply to Technology
and Modifications.

...


Do you agree to the above license terms? [yes or no] 
yes
cd /ports/tmp/usr/ports/java/jdk15/work && /usr/local/bin/unzip -qo
j2se/make/tools/crypto/pkcs11/sunpkcs11_src.zip  -d /ports/tmp/usr/ports/java/jdk15/work
...

Then, jdk16.


# cd ../jdk16
# make extract
===>  jdk-1.6.0.3p3_1 :
 Due to licensing restrictions, certain files must be fetched manually.

 Please open http://download.java.net/jdk6/6u3/promoted/b05/index.html
 in a web browser.  Download the
 Update 3 Source, jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar and the
 Source Binaries, jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar and the
 Mozilla Headers, jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar .
...

I have to download manually as I don't have them downloaded, yet.

# make extract
===>  Found saved configuration for jdk-1.6.0.3p3

IMPORTANT: To build the JDK 1.6.0 port, you should have at least
2.5Gb of free disk space in the build area!

===>  Extracting for jdk-1.6.0.3p3_1
...
...

5.    Export Control.   As further described at
http://www.sun.com/its, you agree to comply with the U.S. export
controls and trade laws of other countries that apply to Technology
and Modifications.


Do you agree to the above license terms? [yes or no] 
yes
...

Now, Let's start. I have two CPU-cores on this computer, by the way. I always use at least -j3 to maintain good resource balance among CPU, disk, and network for a single core. I often pick up the number of processes as 3 or 4 times # of cores.


# ports+ -make-config -j 4 -k /var/db/pkg/*-*

I can check which ones are in process now.

% ls /var/db/pkg/*+lock
/var/db/pkg/evolution-data-server-1.12.3_1+lock
/var/db/pkg/graphviz-2.16.1+lock
/var/db/pkg/jdk-1.5.0.13p7_4,1+lock
/var/db/pkg/jdk-1.6.0.3p3_1+lock

Once ports+ finishes, I check which one failed with "test" target.


# ports+ test
# upgrade subversion-1.4.4_1 to subversion-1.4.6
# upgrade subversion-perl-1.4.4_1 to subversion-perl-1.4.6

I run the build without network connection after downloading jdk16. That is the reason why it failed. I have to upgrade these two later where network is reachable.

Next.

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2008/01/16/2563161/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。