X-Git-Url: http://git.sven.stormbind.net/?p=sven%2Fjava-package.git;a=blobdiff_plain;f=lib%2Foracle-jre.sh;fp=lib%2Foracle-jre.sh;h=db287cd77e8f6aaa99e55fde3e706a1f2fa15d42;hp=0000000000000000000000000000000000000000;hb=1c05d6f0e114cff3d49a4a32348a0c154012ac1d;hpb=d8cde9ed501f030194a66a7993523d43ab926084 diff --git a/lib/oracle-jre.sh b/lib/oracle-jre.sh new file mode 100644 index 0000000..db287cd --- /dev/null +++ b/lib/oracle-jre.sh @@ -0,0 +1,108 @@ +# Detect product +j2se_detect_oracle_j2re=oracle_j2re_detect +oracle_j2re_detect() { + + if [[ $archive_name =~ jre-([0-9]+)u([0-9]+)-linux-(i586|x64|amd64)\.(bin|tar\.gz) ]] + then + j2se_release=${BASH_REMATCH[1]} + j2se_update=${BASH_REMATCH[2]} + j2se_arch=${BASH_REMATCH[3]} + j2se_version=$j2se_release.$j2se_update + j2se_priority=$((310 + $j2se_release - 1)) + j2se_expected_min_size=85 #Mb + + # check if the architecture matches + let compatible=1 + + case "${DEB_BUILD_ARCH:-$DEB_BUILD_GNU_TYPE}" in + i386|i486-linux-gnu) + if [[ "$j2se_arch" != "i586" ]]; then compatible=0; fi + ;; + amd64|x86_64-linux-gnu) + if [[ "$j2se_arch" != "x64" && "$j2se_arch" != "amd64" ]]; then compatible=0; fi + ;; + esac + + if [[ $compatible == 0 ]] + then + echo "The archive $archive_name is not supported on the ${DEB_BUILD_ARCH} architecture" + return + fi + + + cat << EOF + +Detected product: + Java(TM) Runtime Environment (JRE) + Standard Edition, Version $j2se_release Update $j2se_update + Oracle(TM) +EOF + if read_yn "Is this correct [Y/n]: "; then + j2se_found=true + j2se_required_space=$(( $j2se_expected_min_size * 2 + 20 )) + j2se_vendor="oracle" + j2se_title="Java(TM) JRE, Standard Edition, Oracle(TM)" + + j2se_install=oracle_j2re_install + j2se_remove=oracle_j2re_remove + j2se_jinfo=oracle_j2re_jinfo + oracle_jre_bin_hl="java javaws keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool" + oracle_jre_bin_jre="javaws policytool" + oracle_no_man_jre_bin_jre="ControlPanel" + oracle_jre_lib_hl="jexec" + j2re_run + fi + fi +} + +oracle_j2re_install() { + cat << EOF +if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then + exit 0 +fi + +install_alternatives $jvm_base$j2se_name/bin $oracle_jre_bin_hl +install_alternatives $jvm_base$j2se_name/bin $oracle_jre_bin_jre +install_no_man_alternatives $jvm_base$j2se_name/bin $oracle_no_man_jre_bin_jre +install_no_man_alternatives $jvm_base$j2se_name/lib $oracle_jre_lib_hl + +plugin_dir="$jvm_base$j2se_name/lib/$DEB_BUILD_ARCH" +for b in $browser_plugin_dirs;do + install_browser_plugin "/usr/lib/\$b/plugins" "libjavaplugin.so" "\$b-javaplugin.so" "\$plugin_dir/libnpjp2.so" +done +EOF +} + +oracle_j2re_remove() { + cat << EOF +if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then + exit 0 +fi + +remove_alternatives $jvm_base$j2se_name/bin $oracle_jre_bin_hl +remove_alternatives $jvm_base$j2se_name/bin $oracle_jre_bin_jre +remove_alternatives $jvm_base$j2se_name/bin $oracle_no_man_jre_bin_jre +remove_alternatives $jvm_base$j2se_name/lib $oracle_jre_lib_hl + +plugin_dir="$jvm_base$j2se_name/lib/$DEB_BUILD_ARCH" +for b in $browser_plugin_dirs;do + remove_browser_plugin "\$b-javaplugin.so" "\$plugin_dir/libnpjp2.so" +done +EOF +} + +oracle_j2re_jinfo() { + cat << EOF +name=$j2se_name +priority=$j2se_priority +section=main +EOF + jinfos "hl" $jvm_base$j2se_name/bin/ $oracle_jre_bin_hl + jinfos "jre" $jvm_base$j2se_name/bin/ $oracle_jre_bin_jre + jinfos "jre" $jvm_base$j2se_name/bin/ $oracle_no_man_jre_bin_jre + jinfos "hl" $jvm_base$j2se_name/lib/ $oracle_jre_lib_hl + for b in $browser_plugin_dirs;do + echo "plugin $b-javaplugin.so $jvm_base$j2se_name/lib/$DEB_BUILD_ARCH/libnpjp2.so" + done +} +