[yocto] Fwd: [meta-oracle-java][PATCH 5/6] Use update-alternatives

Jaap de Jong jaap.dejong at nedap.com
Wed Mar 29 00:03:36 PDT 2017


---

  recipes-devtools/oracle-java/oracle-jse-jdk.inc | 14 ++++++++++++++
  recipes-devtools/oracle-java/oracle-jse.inc     | 12 ++++++++++--
  2 files changed, 24 insertions(+), 2 deletions(-)

diff --git a/recipes-devtools/oracle-java/oracle-jse-jdk.inc b/recipes-devtools/oracle-java/oracle-jse-jdk.inc
index 291a75d..9fd76e1 100644
--- a/recipes-devtools/oracle-java/oracle-jse-jdk.inc
+++ b/recipes-devtools/oracle-java/oracle-jse-jdk.inc
@@ -25,3 +25,17 @@ BBCLASSEXTEND = "native"
  
  RPROVIDES_${PN} += "java2-development"
  PROVIDES += "virtual/javac virtual/java-initial"
+
+pkg_postinst_${PN} () {
+	update-alternatives --install ${bindir}/jar   jar   ${JDK_HOME}/bin/jar 100
+	update-alternatives --install ${bindir}/java  java  ${JDK_HOME}/jre/bin/java 100
+	update-alternatives --install ${bindir}/javac javac ${JDK_HOME}/jre/bin/javac 100
+	update-alternatives --install ${bindir}/javah javah ${JDK_HOME}/bin/javah 100
+}
+
+pkg_prerm_${PN} () {
+	update-alternatives --remove jar   ${JDK_HOME}/jre/bin/jar
+	update-alternatives --remove java  ${JDK_HOME}/jre/bin/java
+	update-alternatives --remove javac ${JDK_HOME}/jre/bin/javac
+	update-alternatives --remove javah ${JDK_HOME}/jre/bin/javah
+}
diff --git a/recipes-devtools/oracle-java/oracle-jse.inc b/recipes-devtools/oracle-java/oracle-jse.inc
index 7e508bf..37685cd 100644
--- a/recipes-devtools/oracle-java/oracle-jse.inc
+++ b/recipes-devtools/oracle-java/oracle-jse.inc
@@ -21,8 +21,6 @@ JDK_HOME = "${libdir_jvm}/${JDK_DIR}"
  do_install () {
  	install -d -m 0755			${D}${libdir_jvm}
  	cp -a ${S}/${JDK_JRE}${PV}_${PV_UPDATE}	${D}${JDK_HOME}
-	install -d -m 0755			${D}${bindir}
-	ln -sf ${JDK_HOME}/bin/java		${D}${bindir}/java
  }
  
  # All the files are provided in a binaray package, and keeping all the
@@ -36,3 +34,13 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
  FILES_${PN} = "/usr/"
  RPROVIDES_${PN} = "java2-runtime java2-vm"
  PROVIDES += "virtual/java"
+
+inherit update-alternatives
+
+pkg_postinst_${PN} () {
+	update-alternatives --install ${bindir}/java java ${JDK_HOME}/jre/bin/java 75
+}
+
+pkg_prerm_${PN} () {
+	update-alternatives --remove java ${JDK_HOME}/jre/bin/java
+}
-- 
2.7.4




More information about the yocto mailing list