Bug#264137: ibm-jdk-1.4 support for java-package-0.20

Rico Schiekel Rico Schiekel <fire@logix-tt.com>, 264137@bugs.debian.org
Thu Mar 3 11:55:02 2005


This is a multi-part MIME message sent by reportbug.

--===============0349441704==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Package: java-package
Version: 0.20
Followup-For: Bug #264137


this patch add support for the ibm jdk on java-package-0.20.

I only include detection for the 141-ppc and the 142-i386 sdk's.
if someone has the time, a better detection is needed. ;)

thanks,
rico

-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.11-madwifi-fire
Locale: LANG=de_DE, LC_CTYPE=de_DE (charmap=ISO-8859-1)

Versions of packages java-package depends on:
ii  coreutils                     5.2.1-2    The GNU core utilities
ii  debhelper                     4.2.31     helper programs for debian/rules
ii  fakeroot                      1.2.2      Gives a fake root environment

-- no debconf information

--===============0349441704==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="ibm_sdk.diff"

diff -r -u -N java-package-0.20.old/debian/rules java-package-0.20/debian/rules
--- java-package-0.20.old/debian/rules	2005-01-25 00:54:51.000000000 +0100
+++ java-package-0.20/debian/rules	2005-03-03 12:20:40.000000000 +0100
@@ -26,7 +26,7 @@
 
 	install -m 755 make-jpkg.out $(B)/usr/bin/make-jpkg
 	cp lib/*.sh $(B)/usr/share/java-package/
-	for dir in $(wildcard blackdown-j2*) $(wildcard sun-j2*); do \
+	for dir in $(wildcard blackdown-j2*) $(wildcard sun-j2*) $(wildcard ibm-j2*); do \
 		cp -a $$dir $(B)/usr/share/java-package/; \
 	done
 	find $(B) -type d -name CVS | xargs -r rm -r
diff -r -u -N java-package-0.20.old/ibm-j2sdk1.4/install java-package-0.20/ibm-j2sdk1.4/install
--- java-package-0.20.old/ibm-j2sdk1.4/install	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.20/ibm-j2sdk1.4/install	2005-03-03 18:18:47.000000000 +0100
@@ -0,0 +1,36 @@
+#! /bin/bash -e
+
+
+suffix=j2sdk1.4-ibm
+j2se_base="/usr/lib/$suffix"
+priority=314
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+# alternative <program>
+function program_alternative() {
+    local program="$1"
+    update-alternatives \
+	--install "/usr/bin/$program" "$program" \
+	"$j2se_base/bin/$program" "$priority" \
+	--slave "/usr/share/man/man1/$program.1.gz" "$program.1.gz" \
+	"$j2se_base/man/man1/$program.1.gz"
+}
+
+program_alternative appletviewer
+program_alternative idlj
+program_alternative jar
+program_alternative java
+program_alternative javac
+program_alternative javadoc
+program_alternative javah
+program_alternative javap
+program_alternative jdb
+program_alternative rmic
+program_alternative rmid
+program_alternative rmiregistry
+program_alternative serialver
+
+# no plugin available ...
diff -r -u -N java-package-0.20.old/ibm-j2sdk1.4/remove java-package-0.20/ibm-j2sdk1.4/remove
--- java-package-0.20.old/ibm-j2sdk1.4/remove	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.20/ibm-j2sdk1.4/remove	2005-03-03 12:15:45.000000000 +0100
@@ -0,0 +1,30 @@
+#! /bin/bash -e
+
+suffix=j2sdk1.4-ibm
+j2se_base="/usr/lib/$suffix"
+
+if [ ! -e "$j2se_base/debian/info" ]; then
+    exit 0
+fi
+
+# alternative <program>
+function program_alternative() {
+    local program="$1"
+    update-alternatives \
+	--remove "$program" "/usr/bin/$program-$suffix"
+}
+
+program_alternative appletviewer
+program_alternative idlj
+program_alternative jar
+program_alternative java
+program_alternative javac
+program_alternative javadoc
+program_alternative javah
+program_alternative javap
+program_alternative jdb
+program_alternative rmic
+program_alternative rmid
+program_alternative rmiregistry
+program_alternative serialver
+
diff -r -u -N java-package-0.20.old/lib/common.sh java-package-0.20/lib/common.sh
--- java-package-0.20.old/lib/common.sh	2005-02-08 15:13:52.000000000 +0100
+++ java-package-0.20/lib/common.sh	2005-03-03 18:15:23.000000000 +0100
@@ -69,8 +69,20 @@
     mkdir "$extract_dir"
     cd "$extract_dir"
     echo
-    
-    if ! sh "$archive_path"; then
+
+    local extract_cmd
+    case "$archive_path" in
+	*.tar)
+	    extract_cmd="tar xf";;
+	*.tar.bz2)
+	    extract_cmd="tar --bzip2 -xf";;
+	*.tgz|*.tar.gz)
+	    extract_cmd="tar xfz";;
+	*)
+	    extract_cmd=sh
+    esac
+
+    if ! $extract_cmd "$archive_path"; then
 	cat << EOF
 
 WARNING: The package installation script exited with an error
diff -r -u -N java-package-0.20.old/lib/ibm-j2sdk.sh java-package-0.20/lib/ibm-j2sdk.sh
--- java-package-0.20.old/lib/ibm-j2sdk.sh	1970-01-01 01:00:00.000000000 +0100
+++ java-package-0.20/lib/ibm-j2sdk.sh	2005-03-03 19:11:39.000000000 +0100
@@ -0,0 +1,35 @@
+# Detect product
+function ibm_j2sdk_detect() {
+    local found=
+    case "$archive_name" in
+	"IBMJava2-SDK-142.tgz")
+	    j2se_version=1.4.2
+	    j2se_expected_min_size=53 # 55142 kB
+	    found=true
+	    ;;
+    "IBMJava2-SDK-141.ppc.tgz")
+        j2se_version=1.4.1
+        j2se_expected_min_size=55 # 57075 kB
+        found=true
+        ;;
+    esac
+    if [[ -n "$found" ]]; then
+	cat << EOF
+
+Detected product:
+    Java(TM) Software Development Kit (J2SDK)
+    Standard Edition, Version $j2se_version
+    IBM Corporation
+EOF
+	if read_yn "Is this correct [Y/n]: "; then
+	    j2se_found=true
+	    j2se_release="${j2se_version:0:3}"
+	    j2se_required_space=$(( $j2se_expected_min_size * 2 + 20 ))
+	    j2se_vendor="ibm"
+	    j2se_title="Java(TM) 2 SDK, Standard Edition, IBM Corporation"
+	    j2sdk_run
+	fi
+    fi
+}
+
+j2se_detect_ibm_j2sdk=ibm_j2sdk_detect

--===============0349441704==--