From 43107b1596e45ddd94412d53a00f5f07647c49d0 Mon Sep 17 00:00:00 2001 From: Sebastian Veit Date: Tue, 12 Dec 2023 15:49:14 +0100 Subject: [PATCH 1/2] openjdk-21-jre: Provide initial recipe Signed-off-by: Sebastian Veit --- .../openjdk-21-jre_21.0.1+12.bb | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb diff --git a/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb b/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb new file mode 100644 index 0000000..42bd285 --- /dev/null +++ b/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb @@ -0,0 +1,80 @@ +SUMMARY = "Prebuilt OpenJDK JRE for Java 21 offered by Adoptium." +HOMEPAGE = "https://adoptium.net" +LICENSE = "GPL-2.0-with-classpath-exception" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-with-classpath-exception;md5=6133e6794362eff6641708cfcc075b80" + +COMPATIBLE_HOST = "(x86_64|aarch64).*-linux" +OVERRIDES = "${TARGET_ARCH}" + +JVM_CHECKSUM:aarch64 = "4582c4cc0c6d498ba7a23fdb0a5179c9d9c0d7a26f2ee8610468d5c2954fcf2f" +JVM_RDEPENDS:aarch64 = " \ + alsa-lib (>= 0.9) \ + freetype (>= 2.13) \ + glibc (>= 2.34) \ + libx11 (>= 1.8) \ + libxext (>= 1.3) \ + libxi (>= 1.8) \ + libxrender (>= 0.9) \ + libxtst (>= 1.2) \ + zlib (>= 1.1.4) \ +" +JVM_CHECKSUM:x86_64 = "277f4084bee875f127a978253cfbaad09c08df597feaf5ccc82d2206962279a3" +JVM_RDEPENDS:x86_64 = " \ + alsa-lib (>= 0.9) \ + freetype (>= 2.13) \ + glibc (>= 2.34) \ + libx11 (>= 1.8) \ + libxext (>= 1.3) \ + libxi (>= 1.8) \ + libxrender (>= 0.9) \ + libxtst (>= 1.2) \ + zlib (>= 1.1.4) \ +" + +RDEPENDS:${PN} = "${JVM_RDEPENDS}" + +API_RELEASE_NAME = "jdk-${PV}" +API_OS = "linux" +API_ARCH:aarch64 = "aarch64" +API_ARCH:x86_64 = "x64" +API_IMAGE_TYPE = "jre" +API_JVM_IMPL = "hotspot" +API_HEAP_SIZE ?= "normal" +API_VENDOR = "eclipse" + +SRC_URI = "https://api.adoptium.net/v3/binary/version/${API_RELEASE_NAME}/${API_OS}/${API_ARCH}/${API_IMAGE_TYPE}/${API_JVM_IMPL}/${API_HEAP_SIZE}/${API_VENDOR};downloadfilename=${BPN}-${API_ARCH}-${PV}.tar.gz;subdir=${BPN}-${PV};striplevel=1" +SRC_URI[sha256sum] = "${JVM_CHECKSUM}" + +libdir_jre = "${libdir}/jvm/openjdk-21-jre" + +# Prevent the packaging task from stripping out +# debugging symbols, since there are none. +INSANE_SKIP:${PN} = "ldflags" +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +# Package unversioned libraries +SOLIBS = ".so" +FILES_SOLIBSDEV = "" + +# Ignore QA Issue: non -dev/-dbg/nativesdk- package +INSANE_SKIP:${PN}:append = " dev-so" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" +do_install() { + install -d ${D}${libdir_jre} + cp -R --no-dereference --preserve=mode,links -v ${S}/* ${D}${libdir_jre} +} + +RPROVIDES:${PN} = "java2-runtime" +FILES:${PN} = "${libdir_jre}" + +inherit update-alternatives +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE:${PN} = "java keytool" +ALTERNATIVE_LINK_NAME[java] = "${bindir}/java" +ALTERNATIVE_TARGET[java] = "${libdir_jre}/bin/java" +ALTERNATIVE_LINK_NAME[keytool] = "${bindir}/keytool" +ALTERNATIVE_TARGET[keytool] = "${libdir_jre}/bin/keytool" From 7ece7e9672dd9fc3f80c611e42aaca79332284c2 Mon Sep 17 00:00:00 2001 From: Sebastian Veit Date: Fri, 15 Dec 2023 11:13:32 +0100 Subject: [PATCH 2/2] openjdk-21-jre: Adapt recipe for dunfell Signed-off-by: Sebastian Veit --- recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb b/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb index 42bd285..c9f6856 100644 --- a/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb +++ b/recipes-core/openjdk-21-jre/openjdk-21-jre_21.0.1+12.bb @@ -6,6 +6,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-with-classpath-exceptio COMPATIBLE_HOST = "(x86_64|aarch64).*-linux" OVERRIDES = "${TARGET_ARCH}" +JVM_SUBDIR:aarch64 = "jdk-21.0.1+12-jre" JVM_CHECKSUM:aarch64 = "4582c4cc0c6d498ba7a23fdb0a5179c9d9c0d7a26f2ee8610468d5c2954fcf2f" JVM_RDEPENDS:aarch64 = " \ alsa-lib (>= 0.9) \ @@ -18,6 +19,7 @@ JVM_RDEPENDS:aarch64 = " \ libxtst (>= 1.2) \ zlib (>= 1.1.4) \ " +JVM_SUBDIR:x86_64 = "jdk-21.0.1+12-jre" JVM_CHECKSUM:x86_64 = "277f4084bee875f127a978253cfbaad09c08df597feaf5ccc82d2206962279a3" JVM_RDEPENDS:x86_64 = " \ alsa-lib (>= 0.9) \ @@ -42,9 +44,11 @@ API_JVM_IMPL = "hotspot" API_HEAP_SIZE ?= "normal" API_VENDOR = "eclipse" -SRC_URI = "https://api.adoptium.net/v3/binary/version/${API_RELEASE_NAME}/${API_OS}/${API_ARCH}/${API_IMAGE_TYPE}/${API_JVM_IMPL}/${API_HEAP_SIZE}/${API_VENDOR};downloadfilename=${BPN}-${API_ARCH}-${PV}.tar.gz;subdir=${BPN}-${PV};striplevel=1" +SRC_URI = "https://api.adoptium.net/v3/binary/version/${API_RELEASE_NAME}/${API_OS}/${API_ARCH}/${API_IMAGE_TYPE}/${API_JVM_IMPL}/${API_HEAP_SIZE}/${API_VENDOR};downloadfilename=${BPN}-${API_ARCH}-${PV}.tar.gz;subdir=${BPN}-${PV}" SRC_URI[sha256sum] = "${JVM_CHECKSUM}" +S = "${WORKDIR}/${BPN}-${PV}/${JVM_SUBDIR}" + libdir_jre = "${libdir}/jvm/openjdk-21-jre" # Prevent the packaging task from stripping out