2 j2se_detect_oracle_j2sdk=oracle_j2sdk_detect
3 oracle_j2sdk_detect() {
6 # Update (jdk-7u15-linux-i586.tar.gz)
7 if [[ $archive_name =~ jdk-([0-9]+)u([0-9]+)-linux-(i586|x64|amd64)\.(bin|tar\.gz) ]]
9 j2se_release=${BASH_REMATCH[1]}
10 j2se_update=${BASH_REMATCH[2]}
11 j2se_arch=${BASH_REMATCH[3]}
13 j2se_version=${j2se_release}u${j2se_update}
16 # Early Access Release (jdk-8-ea-bin-b103-linux-i586-15_aug_2013.tar.gz)
17 if [[ $archive_name =~ jdk-([0-9]+)-ea-bin-(b[0-9]+)-linux-(i586|x64|amd64).*\.(bin|tar\.gz) ]]
19 j2se_release=${BASH_REMATCH[1]}
20 j2se_update=${BASH_REMATCH[2]}
21 j2se_arch=${BASH_REMATCH[3]}
22 j2se_type="Early Access Release"
23 j2se_version=${j2se_release}~ea-build-${j2se_update}
26 if [[ $j2se_release > 0 ]]
28 j2se_priority=$((310 + $j2se_release))
29 j2se_expected_min_size=130 #Mb
31 # check if the architecture matches
34 case "${DEB_BUILD_ARCH:-$DEB_BUILD_GNU_TYPE}" in
36 if [[ "$j2se_arch" != "i586" ]]; then compatible=0; fi
38 amd64|x86_64-linux-gnu)
39 if [[ "$j2se_arch" != "x64" && "$j2se_arch" != "amd64" ]]; then compatible=0; fi
41 armhf|armel|arm-linux-gnueabihf|arm-linux-gnueabi)
42 case "$archive_name" in
43 "jdk-7u"[0-9]"-linux-arm-sfp.tar.gz") # SUPPORTED
44 j2se_version=1.7.0+update${archive_name:6:1}${revision}
45 j2se_expected_min_size=100 #Mb
49 "jdk-7u"[0-9][0-9]"-linux-arm-sfp.tar.gz") # SUPPORTED
50 j2se_version=1.7.0+update${archive_name:6:2}${revision}
51 j2se_expected_min_size=60 #Mb
59 if [[ $compatible == 0 ]]
61 echo "The archive $archive_name is not supported on the ${DEB_BUILD_ARCH} architecture"
69 Java(TM) Development Kit (JDK)
70 Standard Edition, Version $j2se_release $j2se_type $j2se_update
73 if read_yn "Is this correct [Y/n]: "; then
75 j2se_required_space=$(( $j2se_expected_min_size * 2 + 20 ))
77 j2se_title="Java(TM) JDK, Standard Edition, Oracle(TM)"
79 j2se_install=oracle_j2sdk_install
80 j2se_remove=oracle_j2sdk_remove
81 j2se_jinfo=oracle_j2sdk_jinfo
82 if [ "${DEB_BUILD_ARCH:0:3}" = "arm" ]; then
83 oracle_jre_bin_hl="java keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool"
84 oracle_jre_bin_jre="policytool"
86 oracle_jre_bin_hl="java javaws keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool"
87 oracle_jre_bin_jre="javaws policytool"
89 if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then
90 oracle_no_man_jre_bin_jre="ControlPanel"
92 oracle_jre_lib_hl="jexec"
93 oracle_bin_jdk="appletviewer extcheck idlj jar jarsigner javac javadoc javah javap jconsole jdb jinfo jmap jps jsadebugd jstack jstat jstatd native2ascii rmic serialver"
99 oracle_j2sdk_install() {
101 if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then
105 install_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_hl
106 install_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_jre
107 if [ -n "$oracle_no_man_jre_bin_jre" ]; then
108 install_no_man_alternatives $jvm_base$j2se_name/jre/bin $oracle_no_man_jre_bin_jre
110 install_no_man_alternatives $jvm_base$j2se_name/jre/lib $oracle_jre_lib_hl
111 install_alternatives $jvm_base$j2se_name/bin $oracle_bin_jdk
113 # No plugin for ARM architecture yet
114 if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then
115 plugin_dir="$jvm_base$j2se_name/jre/lib/$DEB_BUILD_ARCH"
116 for b in $browser_plugin_dirs;do
117 install_browser_plugin "/usr/lib/\$b/plugins" "libjavaplugin.so" "\$b-javaplugin.so" "\$plugin_dir/libnpjp2.so"
123 oracle_j2sdk_remove() {
125 if [ ! -e "$jvm_base$j2se_name/debian/info" ]; then
129 remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_hl
130 remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_jre_bin_jre
131 if [ -n "$oracle_no_man_jre_bin_jre" ]; then
132 remove_alternatives $jvm_base$j2se_name/jre/bin $oracle_no_man_jre_bin_jre
134 remove_alternatives $jvm_base$j2se_name/jre/lib $oracle_jre_lib_hl
135 remove_alternatives $jvm_base$j2se_name/bin $oracle_bin_jdk
137 # No plugin for ARM architecture yet
138 if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then
139 plugin_dir="$jvm_base$j2se_name/jre/lib/$DEB_BUILD_ARCH"
140 for b in $browser_plugin_dirs;do
141 remove_browser_plugin "\$b-javaplugin.so" "\$plugin_dir/libnpjp2.so"
147 oracle_j2sdk_jinfo() {
150 priority=$j2se_priority
153 jinfos "hl" $jvm_base$j2se_name/jre/bin/ $oracle_jre_bin_hl
154 jinfos "jre" $jvm_base$j2se_name/jre/bin/ $oracle_jre_bin_jre
155 if [ -n "$oracle_no_man_jre_bin_jre" ]; then
156 jinfos "jre" $jvm_base$j2se_name/jre/bin/ $oracle_no_man_jre_bin_jre
158 jinfos "hl" $jvm_base$j2se_name/jre/lib/ $oracle_jre_lib_hl
159 jinfos "jdk" $jvm_base$j2se_name/bin/ $oracle_bin_jdk
160 if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then
161 for b in $browser_plugin_dirs;do
162 echo "plugin iceweasel-javaplugin.so $jvm_base$j2se_name/jre/lib/$DEB_BUILD_ARCH/libnpjp2.so"