X-Git-Url: http://git.sven.stormbind.net/?p=sven%2Fjava-package.git;a=blobdiff_plain;f=lib%2Foracle-jdk.sh;h=54f38298c2895fc493bd41700ac270017523d309;hp=3f51c306491438334abd28c38b76a29a9f9777ae;hb=13cbb1260288871a5cbbf3b98815252f3e9b5aa3;hpb=96612acf73ab70b784e3ca29bbfd68f79976bced diff --git a/lib/oracle-jdk.sh b/lib/oracle-jdk.sh index 3f51c30..54f3829 100644 --- a/lib/oracle-jdk.sh +++ b/lib/oracle-jdk.sh @@ -3,8 +3,40 @@ j2se_detect_oracle_j2sdk=oracle_j2sdk_detect oracle_j2sdk_detect() { j2se_release=0 + # JDK 10 release candidate (jdk-10+46_linux-x64_bin.tar.gz) + if [[ $archive_name =~ jdk-10(\.([0-9]+)\.([0-9]+)|\+[0-9]+)?_linux-x64_bin\.tar\.gz ]] + then + j2se_release=10 + j2se_update=${BASH_REMATCH[1]:-.0.0} + j2se_arch=x64 + j2se_version_name="${j2se_release} version ${j2se_release}${j2se_update}" + j2se_version=${j2se_release}${j2se_update}${revision} + j2se_expected_min_size=340 #Mb + j2se_binary_subdir="/bin" + oracle_no_man_jre_bin_jre="appletviewer idlj jaotc jar jarsigner java javac javadoc javap javapackager javaws jcmd jconsole jcontrol jdb jdeprscan jdeps jhsdb jimage jinfo jjs jlink jmap jmod jps jrunscript jshell jstack jstat jstatd jweblauncher keytool orbd pack200 rmic rmid rmiregistry schemagen serialver servertool tnameserv unpack200 wsgen wsimport xjc" + oracle_bin_jdk=" " + oracle_jre_bin_hl=" " + oracle_jre_bin_jre=" " + fi + + # JDK 9 GA release (jdk-9.0.1_linux-x64_bin.tar.gz) + if [[ $archive_name =~ jdk-9(\.([0-9]+)\.([0-9]+))?_linux-x64_bin\.tar\.gz ]] + then + j2se_release=9 + j2se_update=${BASH_REMATCH[1]:-.0.0} + j2se_arch=x64 + j2se_version_name="${j2se_release} version ${j2se_release}${j2se_update}" + j2se_version=${j2se_release}${j2se_update}${revision} + j2se_expected_min_size=340 #Mb + j2se_binary_subdir="/bin" + oracle_no_man_jre_bin_jre="appletviewer idlj jaotc jar jarsigner java javac javadoc javah javap javapackager javaws jcmd jconsole jcontrol jdb jdeprscan jdeps jhsdb jimage jinfo jjs jlink jmap jmc jmod jps jrunscript jshell jstack jstat jstatd jweblauncher keytool orbd pack200 policytool rmic rmid rmiregistry schemagen serialver servertool tnameserv unpack200 wsgen wsimport xjc" + oracle_bin_jdk=" " + oracle_jre_bin_hl=" " + oracle_jre_bin_jre=" " + fi + # Update or GA release (jdk-7u15-linux-i586.tar.gz) - if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?-linux-(i586|x64|amd64|arm-vfp-hflt)\.(bin|tar\.gz) ]] + if [[ $archive_name =~ jdk-([0-8]+)(u([0-9]+))?-linux-(i586|x64|amd64|arm-vfp-hflt)\.(bin|tar\.gz) ]] then j2se_release=${BASH_REMATCH[1]} j2se_update=${BASH_REMATCH[3]} @@ -20,7 +52,7 @@ oracle_j2sdk_detect() { fi # Early Access Release (jdk-8-ea-bin-b103-linux-i586-15_aug_2013.tar.gz) - if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?-(ea|fcs)(-bin)?-(b[0-9]+)-linux-(i586|x64|amd64|arm-vfp-hflt).*\.(bin|tar\.gz) ]] + if [[ $archive_name =~ jdk-([0-8]+)(u([0-9]+))?-(ea|fcs)(-bin)?-(b[0-9]+)-linux-(i586|x64|amd64|arm-vfp-hflt).*\.(bin|tar\.gz) ]] then j2se_release=${BASH_REMATCH[1]} j2se_update=${BASH_REMATCH[3]} @@ -39,7 +71,7 @@ oracle_j2sdk_detect() { if [[ $j2se_release > 0 ]] then j2se_priority=$((310 + $j2se_release)) - j2se_expected_min_size=130 #Mb + j2se_expected_min_size=${j2se_expected_min_size:-180} #Mb # check if the architecture matches let compatible=1 @@ -98,15 +130,16 @@ EOF oracle_jre_bin_hl="java keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool" oracle_jre_bin_jre="policytool" else - oracle_jre_bin_hl="java javaws keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool" - oracle_jre_bin_jre="javaws policytool" + oracle_jre_bin_hl="${oracle_jre_bin_hl:-java javaws keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool}" + oracle_jre_bin_jre="${oracle_jre_bin_jre:-javaws policytool}" fi if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then - oracle_no_man_jre_bin_jre="ControlPanel jcontrol" + oracle_no_man_jre_bin_jre="${oracle_no_man_jre_bin_jre:-ControlPanel jcontrol}" fi oracle_jre_lib_hl="jexec" - oracle_bin_jdk="appletviewer extcheck idlj jar jarsigner javac javadoc javah javap jcmd jconsole jdb jdeps jhat jinfo jmap jmc jps jrunscript jsadebugd jstack jstat jstatd jvisualvm native2ascii rmic schemagen serialver wsgen wsimport xjc" + oracle_bin_jdk="${oracle_bin_jdk:-appletviewer extcheck idlj jar jarsigner javac javadoc javah javap jcmd jconsole jdb jdeps jhat jinfo jmap jmc jps jrunscript jsadebugd jstack jstat jstatd jvisualvm native2ascii rmic schemagen serialver wsgen wsimport xjc}" j2se_package="$j2se_vendor-java$j2se_release-jdk" + j2se_binary_subdir="${j2se_binary_subdir:-/jre/bin}" j2se_run fi fi @@ -118,16 +151,16 @@ if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then exit 0 fi -install_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_hl -install_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_jre +install_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_jre_bin_hl +install_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_jre_bin_jre if [ -n "$oracle_no_man_jre_bin_jre" ]; then - install_no_man_alternatives $jvm_base$j2se_name/jre/bin $oracle_no_man_jre_bin_jre + install_no_man_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_no_man_jre_bin_jre fi install_no_man_alternatives $jvm_base$j2se_name/jre/lib $oracle_jre_lib_hl install_alternatives $jvm_base$j2se_name/bin $oracle_bin_jdk -# No plugin for ARM architecture yet -if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then +# No plugin for ARM architecture yet and no plugin in Java 10 later +if [[ "${DEB_BUILD_ARCH:0:3}" != "arm" && "${j2se_release}" -lt "10" ]]; then plugin_dir="$jvm_base$j2se_name/jre/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" @@ -142,16 +175,16 @@ if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then exit 0 fi -remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_hl -remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_jre +remove_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_jre_bin_hl +remove_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_jre_bin_jre if [ -n "$oracle_no_man_jre_bin_jre" ]; then - remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_no_man_jre_bin_jre + remove_alternatives $jvm_base$j2se_name${j2se_binary_subdir} $oracle_no_man_jre_bin_jre fi remove_alternatives $jvm_base$j2se_name/jre/lib $oracle_jre_lib_hl remove_alternatives $jvm_base$j2se_name/bin $oracle_bin_jdk -# No plugin for ARM architecture yet -if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then +# No plugin for ARM architecture yet and no plugin in Java 10 and later +if [[ "${DEB_BUILD_ARCH:0:3}" != "arm" && "${j2se_release}" -lt "10" ]]; then plugin_dir="$jvm_base$j2se_name/jre/lib/$DEB_BUILD_ARCH" for b in $browser_plugin_dirs;do remove_browser_plugin "\$b-javaplugin.so" "\$plugin_dir/libnpjp2.so" @@ -163,13 +196,13 @@ EOF oracle_j2sdk_jinfo() { cat << EOF name=$j2se_name -priority=$j2se_priority +priority=${priority_override:-$j2se_priority} section=main EOF - jinfos "hl" $jvm_base$j2se_name/jre/bin/ $oracle_jre_bin_hl - jinfos "jre" $jvm_base$j2se_name/jre/bin/ $oracle_jre_bin_jre + jinfos "hl" $jvm_base$j2se_name${j2se_binary_subdir}/ $oracle_jre_bin_hl + jinfos "jre" $jvm_base$j2se_name${j2se_binary_subdir}/ $oracle_jre_bin_jre if [ -n "$oracle_no_man_jre_bin_jre" ]; then - jinfos "jre" $jvm_base$j2se_name/jre/bin/ $oracle_no_man_jre_bin_jre + jinfos "jre" $jvm_base$j2se_name${j2se_binary_subdir}/ $oracle_no_man_jre_bin_jre fi jinfos "hl" $jvm_base$j2se_name/jre/lib/ $oracle_jre_lib_hl jinfos "jdk" $jvm_base$j2se_name/bin/ $oracle_bin_jdk @@ -206,7 +239,7 @@ oracle_j2sdk_control() { cat << EOF Package: $j2se_package Architecture: $j2se_debian_arch -Depends: \${misc:Depends}, $depends +Depends: \${misc:Depends}, java-common, $depends Recommends: netbase Provides: java-virtual-machine, java-runtime, java2-runtime, $provides_runtime $java_browser_plugin java-compiler, java2-compiler, java-runtime-headless, java2-runtime-headless, $provides_headless java-sdk, java2-sdk, $provides_sdk Description: $j2se_title