summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetteri Räty <betelgeuse@gentoo.org>2008-12-06 13:32:57 +0000
committerPetteri Räty <betelgeuse@gentoo.org>2008-12-06 13:32:57 +0000
commit9b5cbf4794f968637a95ad85d866fac89209ce27 (patch)
tree810f2d6174da2a2d3996fd2a911d2ddebb6b7231 /dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild
parentFix another cp command to POSIX. (diff)
downloadhistorical-9b5cbf4794f968637a95ad85d866fac89209ce27.tar.gz
historical-9b5cbf4794f968637a95ad85d866fac89209ce27.tar.bz2
historical-9b5cbf4794f968637a95ad85d866fac89209ce27.zip
Version bumps for security bug #250012.
Package-Manager: portage-2.1.6_rc2/cvs/Linux 2.6.27-gentoo-r2 i686
Diffstat (limited to 'dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild')
-rw-r--r--dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild168
1 files changed, 168 insertions, 0 deletions
diff --git a/dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild b/dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild
new file mode 100644
index 000000000000..07dc8c500f52
--- /dev/null
+++ b/dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/sun-jdk-1.4.2.19.ebuild,v 1.1 2008/12/06 13:32:57 betelgeuse Exp $
+
+JAVA_SUPPORTS_GENERATION_1="true"
+inherit pax-utils java-vm-2 eutils
+
+MY_PV=${PV%.*}_${PV##*.}
+MY_PN=j2sdk
+MY_P=${MY_PN}${MY_PV}
+MY_PVB=${PV%.*}
+
+At="j2sdk-${PV//./_}-linux-i586.bin"
+jce_policy="jce_policy-${MY_PVB//./_}.zip"
+
+S="${WORKDIR}/${MY_P}"
+DESCRIPTION="Sun's J2SE Development Kit"
+HOMEPAGE="http://java.sun.com/j2se/1.4.2/"
+SRC_URI="x86? ( ${At} )
+ jce? ( ${jce_policy} )"
+SLOT="1.4"
+LICENSE="sun-bcla-java-vm"
+KEYWORDS="~x86"
+# files are prestripped
+RESTRICT="fetch strip"
+IUSE="X alsa doc examples jce nsplugin odbc"
+
+DEPEND="sys-apps/sed
+ app-arch/unzip"
+
+RDEPEND="
+ alsa? ( media-libs/alsa-lib )
+ doc? ( =dev-java/java-sdk-docs-1.4.2* )
+ X? (
+ x11-libs/libXext
+ x11-libs/libXi
+ x11-libs/libXp
+ x11-libs/libXtst
+ x11-libs/libXt
+ x11-libs/libX11
+ )
+ odbc? ( dev-db/unixODBC )"
+
+JAVA_PROVIDE="jdbc-stdext"
+
+DL_PREFIX="https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef="
+DOWNLOAD_URL="${DL_PREFIX}${MY_PN}-${MY_PV}-oth-JPR@CDS-CDS_Developer"
+DOWNLOAD_URL_JCE="${DL_PREFIX}7503-jce-1.4.2-oth-JPR@CDS-CDS_Developer"
+
+QA_TEXTRELS_x86="opt/${P}/jre/lib/i386/libawt.so
+ opt/${P}/jre/plugin/i386/ns4/libjavaplugin.so
+ opt/${P}/jre/plugin/i386/ns610/libjavaplugin_oji.so
+ opt/${P}/jre/plugin/i386/ns610-gcc32/libjavaplugin_oji.so"
+
+pkg_nofetch() {
+ einfo "Please download ${At} from:"
+ einfo ${DOWNLOAD_URL}
+ einfo "and move it to ${DISTDIR}"
+ if use jce; then
+ echo
+ einfo "Also download ${jce_policy} from:"
+ einfo ${DOWNLOAD_URL_JCE}
+ einfo "Java(TM) Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files"
+ einfo "and move it to ${DISTDIR}"
+ fi
+}
+
+src_unpack() {
+ if [ ! -r "${DISTDIR}/${At}" ]; then
+ die "cannot read ${At}. Please check the permission and try again."
+ fi
+ if use jce; then
+ if [ ! -r "${DISTDIR}/${jce_policy}" ]; then
+ die "cannot read ${jce_policy}. Please check the permission and try again."
+ fi
+ fi
+ #Search for the ELF Header
+ testExp=$(echo -e '\0177\0105\0114\0106\0001\0001\0001')
+ startAt=`grep -aonm 1 ${testExp} ${DISTDIR}/${At} | cut -d: -f1`
+ tail -n +${startAt} "${DISTDIR}/${At}" > install.sfx
+ chmod +x install.sfx
+ ./install.sfx || die
+ rm install.sfx
+
+ if [[ -f ${S}/lib/unpack ]]; then
+ UNPACK_CMD=${S}/lib/unpack
+ chmod +x $UNPACK_CMD
+ sed -i 's#/tmp/unpack.log#/dev/null\x00\x00\x00\x00\x00\x00#g' $UNPACK_CMD
+ local PACKED_JARS="lib/tools.jar jre/lib/rt.jar jre/lib/jsse.jar \
+ jre/lib/charsets.jar jre/lib/ext/localedata.jar jre/lib/plugin.jar \
+ jre/javaws/javaws.jar"
+ for i in $PACKED_JARS; do
+ PACK_FILE=${S}/`dirname $i`/`basename $i .jar`.pack
+ if [ -f ${PACK_FILE} ]; then
+ echo " unpacking: $i"
+ $UNPACK_CMD ${PACK_FILE} "${S}"/$i
+ rm -f ${PACK_FILE}
+ fi
+ done
+ fi
+}
+
+src_install() {
+ local dirs="bin include jre lib man"
+ dodir /opt/${P}
+
+ cp -dPR ${dirs} "${D}/opt/${P}/"
+
+ # Set PaX markings on all JDK/JRE executables to allow code-generation on
+ # the heap by the JIT compiler.
+ pax-mark srpm $(list-paxables "${D}"/opt/${P}/{,/jre}/bin/*)
+
+ dodoc COPYRIGHT README THIRDPARTYLICENSEREADME.txt || die
+ dohtml README.html || die
+ if use examples; then
+ cp -pPR demo "${D}/opt/${P}/" || die
+ fi
+
+ cp -pPR src.zip "${D}/opt/${P}/" || die
+
+ if use jce ; then
+ # Using unlimited jce while still retaining the strong jce
+ # May have repercussions when you find you cannot symlink libraries
+ # in classpaths.
+ cd "${D}/opt/${P}/jre/lib/security"
+ unzip "${DISTDIR}/${jce_policy}"
+ mv jce unlimited-jce
+ dodir /opt/${P}/jre/lib/security/strong-jce
+ mv "${D}/opt/${P}/jre/lib/security/US_export_policy.jar" \
+ "${D}/opt/${P}/jre/lib/security/strong-jce" || die
+ mv "${D}/opt/${P}/jre/lib/security/local_policy.jar" \
+ "${D}/opt/${P}/jre/lib/security/strong-jce" || die
+ dosym /opt/${P}/jre/lib/security/unlimited-jce/US_export_policy.jar /opt/${P}/jre/lib/security/
+ dosym /opt/${P}/jre/lib/security/unlimited-jce/local_policy.jar /opt/${P}/jre/lib/security/
+ fi
+
+ if use nsplugin; then
+ local plugin_dir="ns610"
+ if has_version '>=sys-devel/gcc-3.2' ; then
+ plugin_dir="ns610-gcc32"
+ fi
+
+ install_mozilla_plugin /opt/${P}/jre/plugin/i386/${plugin_dir}/libjavaplugin_oji.so
+ fi
+
+ # bug #147259
+ dosym ../jre/javaws/javaws /opt/${P}/bin/javaws
+ dosym ../javaws/javaws /opt/${P}/jre/bin/javaws
+
+ # create dir for system preferences
+ dodir /opt/${P}/.systemPrefs
+ # Create files used as storage for system preferences.
+ touch "${D}/opt/${P}/.systemPrefs/.system.lock"
+ chmod 644 "${D}/opt/${P}/.systemPrefs/.system.lock"
+ touch "${D}/opt/${P}/.systemPrefs/.systemRootModFile"
+ chmod 644 "${D}/opt/${P}/.systemPrefs/.systemRootModFile"
+
+ # 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}/jre/plugin/desktop/sun_java.desktop" > \
+ "${T}/sun_java-${SLOT}.desktop"
+
+ domenu "${T}/sun_java-${SLOT}.desktop"
+
+ set_java_env
+ java-vm_revdep-mask
+}