]> git.sven.stormbind.net Git - sven/java-package.git/blobdiff - lib/oracle-jdk.sh
Refactor Debian package build code
[sven/java-package.git] / lib / oracle-jdk.sh
index 6d45ce52b9b595ea667351828651be02e2567519..ebc0efd8df32757c50beb4a1efddbfd435646e99 100644 (file)
@@ -74,8 +74,8 @@ oracle_j2sdk_detect() {
       echo "The archive $archive_name is not supported on the ${DEB_BUILD_ARCH} architecture"
       return
     fi
-    
-    
+
+
     cat << EOF
 
 Detected product:
@@ -92,6 +92,7 @@ EOF
       j2se_install=oracle_j2sdk_install
       j2se_remove=oracle_j2sdk_remove
       j2se_jinfo=oracle_j2sdk_jinfo
+      j2se_control=oracle_j2sdk_control
       if [ "${DEB_BUILD_ARCH:0:3}" = "arm" ]; then
         # javaws is not available for ARM
         oracle_jre_bin_hl="java keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200 policytool"
@@ -101,11 +102,12 @@ EOF
         oracle_jre_bin_jre="javaws policytool"
       fi
       if [ "${DEB_BUILD_ARCH:0:3}" != "arm" ]; then
-        oracle_no_man_jre_bin_jre="ControlPanel"
+        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 jps jrunscript jsadebugd jstack jstat jstatd native2ascii rmic schemagen serialver wsgen wsimport xjc"
-      j2sdk_run
+      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_run
     fi
   fi
 }
@@ -177,3 +179,47 @@ EOF
         done
     fi
 }
+
+oracle_j2sdk_control() {
+    build_depends="libasound2, libgl1-mesa-glx, libgtk2.0-0, libxslt1.1, libxtst6, libxxf86vm1"
+    j2se_control
+    java_browser_plugin="java-browser-plugin, "
+    depends="\${shlibs:Depends}"
+    if [ "${DEB_BUILD_ARCH:0:3}" = "arm" -a "${j2se_arch}" != "arm-vfp-hflt" ]; then
+        # ARM is only softfloat ATM so if building on armhf
+        # force the dependencies to pickup cross platform fu
+        if [ "${DEB_BUILD_ARCH}" == "armhf" ]; then
+            depends="libc6-armel, libsfgcc1, libsfstdc++6"
+        fi
+        # No browser on ARM yet
+        java_browser_plugin=""
+    fi
+    if [ "$create_cert_softlinks" == "true" ]; then
+        depends="$depends, ca-certificates-java"
+    fi
+    for i in `seq 5 ${j2se_release}`;
+    do
+        provides_runtime="${provides_runtime} java${i}-runtime,"
+        provides_headless="${provides_headless} java${i}-runtime-headless,"
+        provides_sdk="${provides_sdk} java${i}-sdk,"
+    done
+    cat << EOF
+Package: $j2se_package
+Architecture: any
+Depends: \${misc:Depends}, $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
+ The Java(TM) SE JDK is a development environment for building
+ applications, applets, and components that can be deployed on the
+ Java(TM) platform.
+ .
+ The Java(TM) SE JDK software includes tools useful for developing and
+ testing programs written in the Java programming language and running
+ on the Java platform. These tools are designed to be used from the
+ command line. Except for appletviewer, these tools do not provide a
+ graphical user interface.
+ .
+ This package has been automatically created with java-package ($version).
+EOF
+}