Added 1.6.0 version of emul package, providing a 1.6 plugin for amd64
authorWilliam Thomson <wltjr@gentoo.org>
Fri, 26 Jan 2007 01:46:38 +0000 (01:46 +0000)
committerWilliam Thomson <wltjr@gentoo.org>
Fri, 26 Jan 2007 01:46:38 +0000 (01:46 +0000)
Package-Manager: portage-2.1.2-r1

app-emulation/emul-linux-x86-java/ChangeLog
app-emulation/emul-linux-x86-java/Manifest
app-emulation/emul-linux-x86-java/emul-linux-x86-java-1.6.0.ebuild [new file with mode: 0644]
app-emulation/emul-linux-x86-java/files/construct-1.6.sh [new file with mode: 0644]
app-emulation/emul-linux-x86-java/files/construct.sh
app-emulation/emul-linux-x86-java/files/digest-emul-linux-x86-java-1.6.0 [new file with mode: 0644]
app-emulation/emul-linux-x86-java/files/emul-linux-x86-java-1.6.env [new file with mode: 0644]

index 86d71e3416f6bc18f3b76625d2ad55a1085d7f59..4c16836b91b463f6e5e2219bfa2a89654e55940e 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for app-emulation/emul-linux-x86-java
 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/emul-linux-x86-java/ChangeLog,v 1.15 2007/01/26 00:54:15 wltjr Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/emul-linux-x86-java/ChangeLog,v 1.16 2007/01/26 01:46:38 wltjr Exp $
+
+*emul-linux-x86-java-1.6.0 (26 Jan 2007)
+
+  26 Jan 2007; William L. Thomson Jr. <wltjr@gentoo.org>
+  +files/emul-linux-x86-java-1.6.env, +files/construct-1.6.sh,
+  files/construct.sh, +emul-linux-x86-java-1.6.0.ebuild:
+  Added 1.6.0 version of emul package, providing a 1.6 plugin for amd64
 
 *emul-linux-x86-java-1.5.0.10 (26 Jan 2007)
 
index cbf5759bedeaca84809dafadcc03a7e74b9fb3b7..5d8fcfbb01fef612766d404bfb5799ff7d7b0168 100644 (file)
@@ -1,7 +1,11 @@
-AUX construct.sh 6967 RMD160 6fa693089fbd2cf30260782e08b8a242ae39f9e2 SHA1 1863e77a2d8c4343d7d43691bf8ccb312a10111c SHA256 a37a38c2d1d468b65f142e4cc6a7c7cd924119343f71eac230b67b4dd025a094
-MD5 f88ec02aebfd52f64ab97f139c917706 files/construct.sh 6967
-RMD160 6fa693089fbd2cf30260782e08b8a242ae39f9e2 files/construct.sh 6967
-SHA256 a37a38c2d1d468b65f142e4cc6a7c7cd924119343f71eac230b67b4dd025a094 files/construct.sh 6967
+AUX construct-1.6.sh 6798 RMD160 799ca391fbd21f367967d7c9ecd41426f4a72401 SHA1 014a26831f8f3cee9653d42cd194216cda2e1787 SHA256 32639949b003703e236257f3d2d3272659ab89c80b2819bdb552af2d5f3070d7
+MD5 7d7c11a7876fbf6faa240eba586f7793 files/construct-1.6.sh 6798
+RMD160 799ca391fbd21f367967d7c9ecd41426f4a72401 files/construct-1.6.sh 6798
+SHA256 32639949b003703e236257f3d2d3272659ab89c80b2819bdb552af2d5f3070d7 files/construct-1.6.sh 6798
+AUX construct.sh 6963 RMD160 b1bb2e2ff9a0f5a8de7128d7b510a29356b1559b SHA1 12edcf184bc0ee5216260cee51595e2492dcd371 SHA256 dd1174321a419bef34c7fb4a6dedd80bf0873a00f16899d27b46dc89f2f9c216
+MD5 4ab101eeab50e3e50394b871ccf78650 files/construct.sh 6963
+RMD160 b1bb2e2ff9a0f5a8de7128d7b510a29356b1559b files/construct.sh 6963
+SHA256 dd1174321a419bef34c7fb4a6dedd80bf0873a00f16899d27b46dc89f2f9c216 files/construct.sh 6963
 AUX emul-linux-x86-java-1.4.2.env 727 RMD160 29279e5fe51f87a7f76dba2022f2c171745c789a SHA1 31f31314571306b8d260f851e24341e4551792a3 SHA256 cafc42b6936f13bf329554028330280d3bbe26ac811cdedac253990a4cb67708
 MD5 626f8534952d8a9f795ab09a5ca6ca6f files/emul-linux-x86-java-1.4.2.env 727
 RMD160 29279e5fe51f87a7f76dba2022f2c171745c789a files/emul-linux-x86-java-1.4.2.env 727
@@ -10,6 +14,10 @@ AUX emul-linux-x86-java-1.5.env 855 RMD160 e9ce4d40ee6a8bd9b0720e00838c399d5f3fd
 MD5 6c388221ceab769f4cf1129d94e65016 files/emul-linux-x86-java-1.5.env 855
 RMD160 e9ce4d40ee6a8bd9b0720e00838c399d5f3fdca0 files/emul-linux-x86-java-1.5.env 855
 SHA256 d36f364c0855d13d7ec2eb4ea3cdbaa483318f1f57b7720edfa5eb0050a12cdb files/emul-linux-x86-java-1.5.env 855
+AUX emul-linux-x86-java-1.6.env 854 RMD160 46ff683cc74f89d16168ab91168f713d6964bf45 SHA1 b41f5fb5d87a1719e793631f0be66de63d7b0114 SHA256 16c77c56ae35d6c5b8a63c7d548706c94dbf55ba7f3c8c4f712dc2ac079ba64a
+MD5 f62d3ed6efbbaacbd71b527a19a23f76 files/emul-linux-x86-java-1.6.env 854
+RMD160 46ff683cc74f89d16168ab91168f713d6964bf45 files/emul-linux-x86-java-1.6.env 854
+SHA256 16c77c56ae35d6c5b8a63c7d548706c94dbf55ba7f3c8c4f712dc2ac079ba64a files/emul-linux-x86-java-1.6.env 854
 AUX javasettings_Linux_x86.xml 1601 RMD160 e87fe605d34fd6060f58f511deea5a935697be9f SHA1 39c5f9693db821b038f47f1f27c995caa9bcac5b SHA256 832b7aa00beb330c655e1503061785e2069fcc1a2ec36830948613f02c4d7585
 MD5 40fcbcc585ad443b5bf473228c8ef18d files/javasettings_Linux_x86.xml 1601
 RMD160 e87fe605d34fd6060f58f511deea5a935697be9f files/javasettings_Linux_x86.xml 1601
@@ -17,6 +25,7 @@ SHA256 832b7aa00beb330c655e1503061785e2069fcc1a2ec36830948613f02c4d7585 files/ja
 DIST j2re-1.4.2-03-linux-i586.bin 8201180 RMD160 f221d66016cf4a1f462e0e1d35ed21e4dbd4042d SHA1 2a7ea8eeb99af799bb54f83762d97d3021b262ea SHA256 f560b8e7ffccb0e7338dc69d4fa6e1d4911b81727a07f4c8ab9e83b96145f8d9
 DIST jdk-1_5_0_08-dlj-linux-i586.bin 49498712 RMD160 11c01f6391cec0476a3d96306a7bee7ec82d8425 SHA1 e7bc2da45219c54f9ac0dcbe6b3b8bf7ead3cc4e SHA256 e96ebeefb5116182c01f6e3fb306d24f1b81ba6849b76b0d4705051b01647ce8
 DIST jdk-1_5_0_10-dlj-linux-i586.bin 49553457 RMD160 8aa7b53064831d800b8aeae67ffd3f5e4e2e3155 SHA1 fc4883d6da60940cbe4b6c2575478cead26313ff SHA256 e4300d88ae630f02132a4ce23afbdc40f994de91b37d4b64cb1da0b58df678fa
+DIST jdk-6-dlj-linux-i586.bin 62718862 RMD160 4ff9f1f82b20f0dbd792e6765c02d87749e00aac SHA1 bc7a56952b362e472a0ec179e0852ca7bf0c0507 SHA256 1c4f98edb6c1b379807d9dab61971c0271b2b4cf1f1be914cc85354744408467
 EBUILD emul-linux-x86-java-1.4.2.03-r1.ebuild 3098 RMD160 4cd5ee03d4bb9898da9a9f0e3fb6bf4e4f3be29c SHA1 81ae71ef019662a5667e88c445da5f7c3b681fb4 SHA256 44c0f286fb1bf112ed4f5c53d4f294dbbe34a8f0d53507a297d7c6f5665af59e
 MD5 3068277991ae1d4daef6dd14fd0d67d3 emul-linux-x86-java-1.4.2.03-r1.ebuild 3098
 RMD160 4cd5ee03d4bb9898da9a9f0e3fb6bf4e4f3be29c emul-linux-x86-java-1.4.2.03-r1.ebuild 3098
@@ -33,10 +42,14 @@ EBUILD emul-linux-x86-java-1.5.0.10.ebuild 4004 RMD160 301c57306400a3572486f5d8a
 MD5 aa8d502a01ad0853231691658368c272 emul-linux-x86-java-1.5.0.10.ebuild 4004
 RMD160 301c57306400a3572486f5d8a46fe4c61e2beaac emul-linux-x86-java-1.5.0.10.ebuild 4004
 SHA256 07b9ec77af6ad98d846c53e15ef54bba06e2f4ccee033858c8ce3b79f177a4fa emul-linux-x86-java-1.5.0.10.ebuild 4004
-MISC ChangeLog 3118 RMD160 58dea562fde85b0a45dd51c0290a5d1ce1780902 SHA1 c37f8aebda765dcb87074781c942f92305c28f89 SHA256 1f07109e66f28c3fb3531c83abfcb2c0d52c5f37116d3986f6f21c626a646a68
-MD5 75d6b4f583db44be711ac3c8db829d3d ChangeLog 3118
-RMD160 58dea562fde85b0a45dd51c0290a5d1ce1780902 ChangeLog 3118
-SHA256 1f07109e66f28c3fb3531c83abfcb2c0d52c5f37116d3986f6f21c626a646a68 ChangeLog 3118
+EBUILD emul-linux-x86-java-1.6.0.ebuild 3637 RMD160 a778ffc88f39d8a1ba4fcc33f3aafcb9dc297b87 SHA1 ad76501911a51edc9be8e1a6f5b160f1cacf272d SHA256 48f0b5df1fcc414edb4edb9794bd76103d42761829cbf4e102d5e7502faed6be
+MD5 6d925fd9a6df47549407fe6543b6ea5f emul-linux-x86-java-1.6.0.ebuild 3637
+RMD160 a778ffc88f39d8a1ba4fcc33f3aafcb9dc297b87 emul-linux-x86-java-1.6.0.ebuild 3637
+SHA256 48f0b5df1fcc414edb4edb9794bd76103d42761829cbf4e102d5e7502faed6be emul-linux-x86-java-1.6.0.ebuild 3637
+MISC ChangeLog 3410 RMD160 54cdcb2d1c29295311e0387bd92adfc10bc33fd3 SHA1 97cbd91c243ea37a8ac2854be7db2e30324a47a8 SHA256 0b4735bf4f591a2732dd19c2f8d9da52cf4d098cfd9a41751b0fe57cf7404ec9
+MD5 85fae35e68aa37a758fee1ba0499b2a2 ChangeLog 3410
+RMD160 54cdcb2d1c29295311e0387bd92adfc10bc33fd3 ChangeLog 3410
+SHA256 0b4735bf4f591a2732dd19c2f8d9da52cf4d098cfd9a41751b0fe57cf7404ec9 ChangeLog 3410
 MISC metadata.xml 223 RMD160 5334a75802c04f73f2bbe2e5c133178728cc9bba SHA1 5f31c7deef3b32e6ed5126a4c40800419bc867f0 SHA256 90a4ae3bb1a82ba35e2971274b7c2437d3f717075382f02ece1b1c79421c1282
 MD5 ef1a1d0bbdb241725417e87002ec4d16 metadata.xml 223
 RMD160 5334a75802c04f73f2bbe2e5c133178728cc9bba metadata.xml 223
@@ -53,3 +66,6 @@ SHA256 3ee0c46629a8afb9fcbab31de25bd98ad094b95a0c4968637cebdf794be4d5f4 files/di
 MD5 4121668bffa114e96d47967ddf45c8ab files/digest-emul-linux-x86-java-1.5.0.10 280
 RMD160 4e4287a55e5706d8cf3cc76047ab07e4addb0673 files/digest-emul-linux-x86-java-1.5.0.10 280
 SHA256 07c9cbdd3dcd7b5cf04289e64f12cb8cbc36c67626cc4752b30a0ee18090dffe files/digest-emul-linux-x86-java-1.5.0.10 280
+MD5 35eac157f9b69bbbd07333c5a6a3f922 files/digest-emul-linux-x86-java-1.6.0 259
+RMD160 1451526c43309c014d81ea9645251f568208a9b5 files/digest-emul-linux-x86-java-1.6.0 259
+SHA256 7bfbfcb961d132341e65eaf06b2fbf36ed8d1387b0fbaa35f160ffc2fb217abe files/digest-emul-linux-x86-java-1.6.0 259
diff --git a/app-emulation/emul-linux-x86-java/emul-linux-x86-java-1.6.0.ebuild b/app-emulation/emul-linux-x86-java/emul-linux-x86-java-1.6.0.ebuild
new file mode 100644 (file)
index 0000000..2724ae1
--- /dev/null
@@ -0,0 +1,133 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/emul-linux-x86-java/emul-linux-x86-java-1.6.0.ebuild,v 1.1 2007/01/26 01:46:38 wltjr Exp $
+
+inherit java-vm-2 eutils
+
+#MY_PVL=${PV%.*}_${PV##*.}
+#MY_PVA=${PV//./_}
+
+#At="jdk-${MY_PVA}-dlj-linux-i586.bin"
+At="jdk-6-dlj-linux-i586.bin"
+DESCRIPTION="32bit version Sun's J2SE Development Kit"
+HOMEPAGE="http://java.sun.com/j2se/1.6.0/"
+SRC_URI="http://download.java.net/dlj/binaries/${At}"
+
+SLOT="1.6"
+LICENSE="dlj-1.1"
+KEYWORDS="-* ~amd64"
+RESTRICT="nostrip"
+IUSE="X alsa nsplugin"
+
+JAVA_VM_NO_GENERATION1=true
+
+RDEPEND="alsa? ( media-libs/alsa-lib )
+       X? ( || ( ( x11-libs/libICE
+                               x11-libs/libSM
+                               x11-libs/libX11
+                               x11-libs/libXau
+                               x11-libs/libXdmcp
+                               x11-libs/libXext
+                               x11-libs/libXi
+                               x11-libs/libXp
+                               x11-libs/libXt
+                               x11-libs/libXtst
+                         )
+                               virtual/x11
+                       )
+               )"
+
+JAVA_PROVIDE="jdbc-stdext jdbc-rowset"
+
+PACKED_JARS="lib/rt.jar lib/jsse.jar lib/charsets.jar lib/ext/localedata.jar lib/plugin.jar lib/javaws.jar lib/deploy.jar"
+
+# this is needed for proper operating under a PaX kernel without activated grsecurity acl
+CHPAX_CONSERVATIVE_FLAGS="pemsv"
+
+QA_TEXTRELS_amd64="opt/${P}/lib/i386/motif21/libmawt.so
+       opt/${P}/lib/i386/libdeploy.so"
+
+src_unpack() {
+       if [ ! -r ${DISTDIR}/${At} ]; then
+               die "cannot read ${At}. Please check the permission and try again."
+       fi
+
+       mkdir bundled-jdk
+       cd bundled-jdk
+       sh ${DISTDIR}/${At} --accept-license --unpack || die "Failed to unpack"
+
+       cd ..
+       bash ${FILESDIR}/construct-${SLOT}.sh  bundled-jdk sun-jdk-${PV} ${P} || die "construct-${SLOT}.sh failed"
+
+       ${S}/bin/java -client -Xshare:dump
+}
+
+src_install() {
+       local dirs="bin lib man javaws plugin"
+       dodir /opt/${P}
+
+       for i in $dirs ; do
+               cp -pPR $i ${D}/opt/${P}/ || die "failed to copy"
+       done
+       dodoc  README THIRDPARTYLICENSEREADME.txt
+       dohtml Welcome.html
+       dodir /opt/${P}/share/
+
+       if use nsplugin; then
+               local plugin_dir="ns7-gcc29"
+               if has_version '>=sys-devel/gcc-3' ; then
+                       plugin_dir="ns7"
+               fi
+
+               install_mozilla_plugin /opt/${P}/plugin/i386/$plugin_dir/libjavaplugin_oji.so
+       fi
+
+       # FIXME figure out how to handle the control pannel conflict with
+       # sun-jdk-bin
+
+       # install control panel for Gnome/KDE
+#      sed -e "s/INSTALL_DIR\/JRE_NAME_VERSION/\/opt\/${P}\/jre/" \
+#              -e "s/\(Name=Java\)/\1 Control Panel ${SLOT}/" \
+#              ${D}/opt/${P}/plugin/desktop/sun_java.desktop > \
+#              ${T}/sun_java-${SLOT}.desktop
+
+#      domenu ${T}/sun_java-${SLOT}.desktop
+
+       set_java_env
+}
+
+pkg_postinst() {
+       # Set as default VM if none exists
+       java-vm-2_pkg_postinst
+
+       # if chpax is on the target system, set the appropriate PaX flags
+       # this will not hurt the binary, it modifies only unused ELF bits
+       # but may confuse things like AV scanners and automatic tripwire
+       if has_version sys-apps/chpax
+       then
+               echo
+               einfo "setting up conservative PaX flags for java"
+
+               for paxkills in "java"
+               do
+                       chpax -${CHPAX_CONSERVATIVE_FLAGS} /opt/${P}/bin/$paxkills
+               done
+
+               # /opt/$VM/jre/bin/java_vm
+               chpax -${CHPAX_CONSERVATIVE_FLAGS} /opt/${P}/bin/java_vm
+
+               einfo "you should have seen lots of chpax output above now"
+               ewarn "make sure the grsec ACL contains those entries also"
+               ewarn "because enabling it will override the chpax setting"
+               ewarn "on the physical files - help for PaX and grsecurity"
+               ewarn "can be given by #gentoo-hardened + hardened@gentoo.org"
+       fi
+
+       if ! use X; then
+               local xwarn="virtual/x11 and/or"
+       fi
+
+       echo
+       ewarn "Some parts of Sun's JDK require ${xwarn} virtual/lpr to be installed."
+       ewarn "Be careful which Java libraries you attempt to use."
+}
diff --git a/app-emulation/emul-linux-x86-java/files/construct-1.6.sh b/app-emulation/emul-linux-x86-java/files/construct-1.6.sh
new file mode 100644 (file)
index 0000000..39c7b91
--- /dev/null
@@ -0,0 +1,273 @@
+#!/bin/bash
+# construct.sh
+# example construction of JRE and JDK directories from the DLJ bundles
+# 
+# Copyright © 2006 Sun Microsystems, Inc.
+# 
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+# 
+# The above copyright notice and this permission notice shall be
+# included in all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+# 
+# Sun, Sun Microsystems, the Sun logo and Java, Java HotSpot,
+# and JVM  trademarks or registered trademarks of Sun Microsystems,
+# Inc. in the U.S. and other countries.
+
+
+program=`basename $0`
+
+usage () {
+  echo "usage: ${program} path/to/unbundle-jdk path/to/linux-jdk path/to/linux-jre"
+}
+
+getargs() {
+  undir=$1
+  jdkdir=$2
+  jredir=$3
+  if [ ! -d $undir ]; then
+    echo "${program}: unbundle directory not found: $undir"
+    exit 2
+  fi
+  # make sure javahome is the JDK
+  javahome=`echo $undir/*/demo`
+  if [ ! -d $javahome ]; then
+    echo "${program}: unbundle directory incorrect: $undir"
+    echo "  expecting $undir/jdk1.5.0_xx"
+    exit 2
+  else
+    javahome=`dirname $javahome`
+  fi
+  # verify JDK dir
+  jdkdirp=`dirname $jdkdir`
+  jdkbase=`basename $jdkdir`
+  if [ ! -d $jdkdirp ]; then
+    echo "${program}: parent directory for JDK does not exist: $jdkdirp"
+    exit 2
+  fi
+  savedir=`pwd`
+  cd $jdkdirp
+  jdkdirp=`pwd`
+  cd $savedir
+  jdkdir=$jdkdirp/$jdkbase
+  # verify JRE dir
+  jredirp=`dirname $jredir`
+  jrebase=`basename $jredir`
+  if [ ! -d $jredirp ]; then
+    echo "${program}: parent directory for JRE does not exist: $jredirp"
+    exit 2
+  fi
+  savedir=`pwd`
+  cd $jredirp
+  jredirp=`pwd`
+  cd $savedir
+  jredir=$jredirp/$jrebase
+}
+
+checkfiles() {
+  if [ -r $jdkdir ]; then
+    echo "${program}: directory for JDK already exists: $jdkdir"
+    exit 2
+  fi
+  if [ -r $jredir ]; then
+    echo "${program}: directory for JRE already exists: $jredir"
+    exit 2
+  fi
+}
+
+copytree() {
+  echo "copying over the JDK tree..."
+  cp -a $javahome $jdkdir
+}
+
+linkrel() {
+  target=$1
+  link=$2
+  # make a softlink from the $link to the $target
+  # make this a relative link
+  targetb=(`echo $target | tr '/' ' '`)
+  linkb=(`echo $link | tr '/' ' '`)
+  (( n = ${#targetb[*]} ))
+  (( m = ${#linkb[*]} ))
+  c=$n  # common length
+  if [ $m -lt $c ]; then
+    (( c = m ))
+  fi
+  for (( i = 0 ; i < c ; i++ )); do 
+    if [ ${targetb[$i]} != ${linkb[$i]} ]; then
+      # echo components differ, stopping
+      break
+    fi
+  done
+  rel=""
+  for (( j = i + 1; j < m ; j++ )); do
+    if [ -z $rel ]; then
+      rel=".."
+    else
+      rel="$rel/.."
+    fi
+  done
+  for (( j = i; j < n ; j++ )); do
+    if [ -z $rel ]; then
+      rel=${targetb[$j]}
+    else
+      rel="$rel/${targetb[$j]}"
+    fi
+  done
+  ln -s $rel $link
+}
+
+createjre() {
+  echo "creating JRE directory..."
+  # absolute link
+  # ln -s $jdkdir/jre $jredir
+  # relative link
+  linkrel $jdkdir/jre $jredir
+}
+
+unpackjars() {
+  echo "unpacking jars..."
+  unpack200=$jdkdir/bin/unpack200
+  if [ ! -x $unpack200 ]; then
+    echo "${program}: file missing $unpack200"
+    exit 1
+  fi
+  cd $jdkdir
+  PACKED_JARS=`find . -name '*.pack'`
+  for i in $PACKED_JARS; do
+    # echo $i
+    jdir=`dirname $i`
+    jbase=`basename $i .pack`
+    if ! $unpack200 $jdkdir/$jdir/$jbase.pack $jdkdir/$jdir/$jbase.jar; then
+      echo "${program}: error unpacking $jdkdir/$jdir/$jbase.jar"
+    fi
+    if [ ! -r $jdkdir/$jdir/$jbase.jar ]; then
+      echo "${program}: missing $jdkdir/$jdir/$jbase.jar"
+    else
+      echo "  $jdir/$jbase.jar"
+      # remove pack file
+      rm $jdkdir/$jdir/$jbase.pack
+    fi
+  done
+}
+
+preparecds() {
+  # if this is a client installation...
+  compiler="`$jdkdir/bin/java -client -version 2>&1 | tail -n +3 | cut -d' ' -f1-4`"
+  if [ "X$compiler" = "XJava HotSpot(TM) Client VM" ]; then
+    # create the CDS archive
+    echo "creating the class data sharing archive..."
+    if ! $jdkdir/bin/java -client -Xshare:dump > /dev/null 2>&1; then
+       echo "returned error code $?"
+    fi
+  fi
+}
+
+jreman () {
+  echo "setting up the JRE man pages..."
+  # note this list is slightly different for OpenSolaris bundles
+  jreman="${T}/jre.man.txt"
+cat <<EOF > $jreman
+man/ja_JP.eucJP/man1/java.1
+man/ja_JP.eucJP/man1/javaws.1
+man/ja_JP.eucJP/man1/keytool.1
+man/ja_JP.eucJP/man1/orbd.1
+man/ja_JP.eucJP/man1/pack200.1
+man/ja_JP.eucJP/man1/policytool.1
+man/ja_JP.eucJP/man1/rmid.1
+man/ja_JP.eucJP/man1/rmiregistry.1
+man/ja_JP.eucJP/man1/servertool.1
+man/ja_JP.eucJP/man1/tnameserv.1
+man/ja_JP.eucJP/man1/unpack200.1
+man/man1/java.1
+man/man1/javaws.1
+man/man1/keytool.1
+man/man1/orbd.1
+man/man1/pack200.1
+man/man1/policytool.1
+man/man1/rmid.1
+man/man1/rmiregistry.1
+man/man1/servertool.1
+man/man1/tnameserv.1
+man/man1/unpack200.1
+EOF
+  # create jre/man directory
+  # mkdir $jdkdir/jre/man
+  # move the real JRE man pages to jre/man
+  # link the JDK JRE man pages to jre/man
+  # real JDK man pages stay where they are
+  for m in `cat $jreman`; do
+    manpath=`dirname $jdkdir/jre/$m`
+    mkdir -p $manpath
+    mv $jdkdir/$m $jdkdir/jre/$m
+    linkrel $jdkdir/jre/$m $jdkdir/$m
+  done
+  # link in Japanese man pages
+  ln -s ja_JP.eucJP $jdkdir/jre/man/ja
+  rm $jreman
+}
+
+elimdups() {
+  echo "eliminating duplication between the JDK and JDK/jre..."
+  jdkcomm="${T}/jdk.bin.comm.txt"
+cat <<EOF > $jdkcomm
+bin/ControlPanel
+bin/java
+bin/javaws
+bin/keytool
+bin/orbd
+bin/pack200
+bin/policytool
+bin/rmid
+bin/rmiregistry
+bin/servertool
+bin/tnameserv
+bin/unpack200
+EOF
+  # note there is little point in linking these common files
+  #   COPYRIGHT
+  #   LICENSE
+  #   THIRDPARTYLICENSEREADME.txt
+  # And this file is unique to the JDK
+  #   README.html
+  # And these files are unique to the JDK/jre/
+  #   CHANGES
+  #   README
+  #   Welcome.html
+  for p in `cat $jdkcomm`; do
+    rm $jdkdir/$p
+    # this is a relative link
+    ln -s ../jre/$p $jdkdir/$p
+  done
+  rm $jdkcomm
+}
+
+if [ $# -eq 3 ] ; then
+  getargs $1 $2 $3
+  checkfiles
+  copytree
+  createjre
+  unpackjars
+  preparecds
+  jreman
+  elimdups
+else
+  usage
+  exit 1
+fi
+
+exit 0
+
index 3f5f6d45eb1a12bde193a7650ec36dcb6d3f4d6a..7ee0e42729bc9a62ba3444033df0cda7601560a4 100644 (file)
@@ -228,7 +228,7 @@ EOF
 
 elimdups() {
   echo "eliminating duplication between the JDK and JDK/jre..."
-  jdkcomm="${T}/tmp/jdk.bin.comm.txt"
+  jdkcomm="${T}/jdk.bin.comm.txt"
 cat <<EOF > $jdkcomm
 bin/ControlPanel
 bin/java
diff --git a/app-emulation/emul-linux-x86-java/files/digest-emul-linux-x86-java-1.6.0 b/app-emulation/emul-linux-x86-java/files/digest-emul-linux-x86-java-1.6.0
new file mode 100644 (file)
index 0000000..451ffa4
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 f4481c4e064cec06a65d7751d9105c6d jdk-6-dlj-linux-i586.bin 62718862
+RMD160 4ff9f1f82b20f0dbd792e6765c02d87749e00aac jdk-6-dlj-linux-i586.bin 62718862
+SHA256 1c4f98edb6c1b379807d9dab61971c0271b2b4cf1f1be914cc85354744408467 jdk-6-dlj-linux-i586.bin 62718862
diff --git a/app-emulation/emul-linux-x86-java/files/emul-linux-x86-java-1.6.env b/app-emulation/emul-linux-x86-java/files/emul-linux-x86-java-1.6.env
new file mode 100644 (file)
index 0000000..f5f3c30
--- /dev/null
@@ -0,0 +1,16 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/emul-linux-x86-java/files/emul-linux-x86-java-1.6.env,v 1.1 2007/01/26 01:46:38 wltjr Exp $
+
+VERSION="Sun 32bit JRE @PV@"
+JAVA_HOME=/opt/@P@
+JRE_HOME=/opt/@P@
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/javaws"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/javaws"
+LDPATH="${JAVA_HOME}/lib/i386/:${JAVA_HOME}/lib/i386/native_threads/:${JAVA_HOME}/lib/i386/xawt/:${JAVA_HOME}/lib/i386/server/"
+MANPATH="/opt/@P@/man"
+PROVIDES_TYPE="JRE"
+PROVIDES_VERSION="1.6"
+BOOTCLASSPATH="${JAVA_HOME}/lib/rt.jar:${JAVA_HOME}/lib/i18n.jar:${JAVA_HOME}/lib/sunrsasign.jar:${JAVA_HOME}/lib/jsse.jar:${JAVA_HOME}/lib/jce.jar:${JAVA_HOME}/lib/charsets.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JRE_HOME PATH ROOTPATH LDPATH MANPATH"