Browse Source

new package: Sun JDK 1.3.1

Ralf S. Engelschall 24 years ago
parent
commit
509624db53
3 changed files with 173 additions and 0 deletions
  1. 11 0
      jdk-sun/jdk-sun.patch
  2. 153 0
      jdk-sun/jdk-sun.spec
  3. 9 0
      jdk-sun/rc.jdk-sun

+ 11 - 0
jdk-sun/jdk-sun.patch

@@ -0,0 +1,11 @@
+--- bin/.java_wrapper	Thu Dec 20 16:46:33 2001
++++ bin/.java_wrapper	Thu Dec 20 16:46:26 2001
+@@ -35,7 +35,7 @@
+ while [ -L "$PRG" ]; do
+     ls=`ls -ld "$PRG"`
+     link=`expr "$ls" : '.*-> \(.*\)$'`
+-    if expr "$link" : '/' > /dev/null; then
++    if expr "$link" : '^/' > /dev/null; then
+ 	PRG="$link"
+     else
+ 	PRG="`dirname $PRG`/$link"

+ 153 - 0
jdk-sun/jdk-sun.spec

@@ -0,0 +1,153 @@
+##
+##  jdk-sun.spec -- OpenPKG RPM Specification
+##  Copyright (c) 2000-2001 Cable & Wireless Deutschland GmbH
+##  Copyright (c) 2000-2001 Ralf S. Engelschall <rse@engelschall.com>
+##
+##  Permission to use, copy, modify, and distribute this software for
+##  any purpose with or without fee is hereby granted, provided that
+##  the above copyright notice and this permission notice appear in all
+##  copies.
+##
+##  THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+##  SUCH DAMAGE. 
+##  
+
+%define       V_release 1.3
+
+%if "%{V_release}" == "1.3"
+%define       V_sunjava 1_3_1_01
+%define       V_filesys 1.3.1_01
+%define       V_openpkg 1.3.1.01
+%endif
+
+#   package information
+Name:         jdk-sun
+Summary:      Sun Java Development Kit (JDK)
+URL:          http://java.sun.com/j2se/
+Vendor:       Sun Microsystems, Inc.
+Packager:     The OpenPKG Project
+Distribution: OpenPKG [EXP]
+Group:        Language
+License:      Commercial
+Version:      %{V_openpkg}
+Release:      20011220
+
+#   list of sources
+Source0:      j2sdk-%{V_sunjava}-linux-i386.bin
+Source1:      j2sdk-%{V_sunjava}-solsparc.sh
+Source2:      rc.jdk-sun
+Source3:      jdk-sun.patch
+
+#   build information
+Prefix:       %{l_prefix}
+BuildRoot:    %{l_buildroot}
+BuildPreReq:  OpenPKG, openpkg >= 20011201.0, patch
+PreReq:       OpenPKG, openpkg >= 20011201.0
+AutoReq:      no
+AutoReqProv:  no
+Provides:     JDK
+
+%description
+    Sun Java Development Kit (JDK)
+    Java 2 Software Development Kit Standard Edition (J2SDK 1.3)
+
+%prep
+    %setup -q -c jdk-sun -T
+
+%build
+
+%install
+    rm -rf $RPM_BUILD_ROOT
+
+    #   vendor source selection
+    pkgfile=""
+    pkgdir=%{V_filesys}
+    case "%{l_target}" in
+        ix86-linux2.[2-5]* | ix86-freebsd4* )
+            pkgfile="j2sdk-%{V_sunjava}-linux-i386.bin"
+            pkgdir="jdk%{V_filesys}"
+            ;;
+        sparc64-solaris2.[6-8]*)
+            pkgfile="j2sdk-%{V_sunjava}-solsparc.sh"
+            pkgdir="j2sdk%{V_sunjava}"
+            ;;
+    esac
+    if [ ".$pkgfile" = . ]; then
+        echo "Sorry, unsupported architecture '%{l_target}'" 1>&2
+        exit 1
+    fi
+
+    #   create installation tree
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/bin \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
+        $RPM_BUILD_ROOT%{l_prefix}/libexec \
+        $RPM_BUILD_ROOT%{l_prefix}/man/man1 \
+        $RPM_BUILD_ROOT%{l_prefix}/share/jdk-sun/doc
+
+    #   unpack vendor distribution
+    (   umask 022
+        cd $RPM_BUILD_ROOT%{l_prefix}/libexec
+        echo "yes" | sh $RPM_SOURCE_DIR/$pkgfile \
+            >$RPM_BUILD_ROOT%{l_prefix}/share/jdk-sun/doc/COPYING
+        mv $pkgdir jdk-sun
+    )
+
+    #   patch vendor distribution
+    (   cd $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun
+        %{l_prefix}/bin/patch -p0 <%{SOURCE jdk-sun.patch}
+    )
+
+    #   cleanup vendor distribution
+    (   cd $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun/bin
+        find . -type f -print | xargs chmod u+w
+    )
+
+    #   optionally brand ELF binaries (FreeBSD only)
+    case "%{l_target}" in
+        ix86-freebsd4* )
+            brandelf -t Linux \
+                `find $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun/bin/ -type f -print` \
+                >/dev/null 2>&1 || true
+            ;;
+    esac
+
+    #   strip installation area
+    rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun/demo 2>/dev/null || true
+
+    #   reduce man pages to essential ones and move to final location
+    cp $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun/man/man1/* \
+       $RPM_BUILD_ROOT%{l_prefix}/man/man1
+    rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/jdk-sun/man 2>/dev/null || true
+
+    #   activate binaries
+    ( cd $RPM_BUILD_ROOT%{l_prefix}/bin
+      for bin in appletviewer awt_robot extcheck idlj jar jarsigner java \
+          java-rmi.cgi javac javadoc javah javap jdb keytool native2ascii \
+          oldjava oldjavac oldjdb policytool realpath rmic rmid rmiregistry \
+          serialver tnameserv; do
+          ln -s ../libexec/jdk-sun/bin/$bin .
+      done
+    )
+
+    #   install run-command script
+    %{l_shtool} install -c -m 755 -e 's;@l_prefix@;%{l_prefix};g' \
+        %{SOURCE rc.jdk-sun} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
+
+    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
+
+%files -f files
+
+%clean
+    rm -rf $RPM_BUILD_ROOT
+

+ 9 - 0
jdk-sun/rc.jdk-sun

@@ -0,0 +1,9 @@
+#!@l_prefix@/lib/rpm/bash @l_prefix@/etc/rc
+##
+##  rc.jdk-sun -- Run-Commands for Sun Java 2 Software Development Kit
+##
+
+%env
+    JAVA_HOME="@l_prefix@/libexec/jdk-sun"
+    export JAVA_HOME
+