[meta-java] openjdk-8: support rm_work disabled

Submitted by André Draszik on Sept. 18, 2018, 3:10 p.m. | Patch ID: 154973

Details

Message ID 20180918151043.32634-1-git@andred.net
State Master Next
Delegated to: Richard Leitner
Headers show

Commit Message

André Draszik Sept. 18, 2018, 3:10 p.m.
From: André Draszik <andre.draszik@jci.com>

Now that generation of the Java keystore actually works (again?),
OE-core commit 09bb7718d74 ("ca-certificates: use relative symlinks from $ETCCERTSDIR"),
do_compile() will fail when invoked multiple times.

The reason is that during do_compile(), the Java keytool is
used to create a Java keystore with the certificates provided
by ca-certificates. Before above OE-core commit, no
certificates were actually being added, but as certificates
are being added now, multiple do_compile() runs will end up
adding the same certificate twice when rm_work is disabled,
causing a keytool exception, as that is not allowed.

So let's remove any previously generated keystore before trying
to add certificates to it.

Signed-off-by: André Draszik <andre.draszik@jci.com>

---
This applies on top of commit ec5aae3d ("conf: distro: add mejate{,-musl} distributions")
---
 recipes-core/openjdk/openjdk-8-native.inc | 1 +
 1 file changed, 1 insertion(+)

Patch hide | download patch | download mbox

diff --git a/recipes-core/openjdk/openjdk-8-native.inc b/recipes-core/openjdk/openjdk-8-native.inc
index 6a01046..bae5d09 100644
--- a/recipes-core/openjdk/openjdk-8-native.inc
+++ b/recipes-core/openjdk/openjdk-8-native.inc
@@ -55,6 +55,7 @@  do_configure_prepend() {
 
 do_compile_prepend() {
     export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS}"
+    rm -f "${B}/images/j2sdk-image/jre/lib/security/cacerts"
 }
 
 do_compile_append() {

Comments

Richard Leitner Oct. 10, 2018, 7:39 a.m.
Hi,
this is a note to let you know that I've just added this patch to the
master-next branch of the meta-java repository at
	git://git.yoctoproject.org/meta-java

As soon as it has gone through some more testing it will likely be
merged to the master branch.

If you have any questions, please let me know.

regards;Richard.L

On 9/18/18 5:10 PM, André Draszik wrote:
> From: André Draszik <andre.draszik@jci.com>
> 
> Now that generation of the Java keystore actually works (again?),
> OE-core commit 09bb7718d74 ("ca-certificates: use relative symlinks from $ETCCERTSDIR"),
> do_compile() will fail when invoked multiple times.
> 
> The reason is that during do_compile(), the Java keytool is
> used to create a Java keystore with the certificates provided
> by ca-certificates. Before above OE-core commit, no
> certificates were actually being added, but as certificates
> are being added now, multiple do_compile() runs will end up
> adding the same certificate twice when rm_work is disabled,
> causing a keytool exception, as that is not allowed.
> 
> So let's remove any previously generated keystore before trying
> to add certificates to it.
> 
> Signed-off-by: André Draszik <andre.draszik@jci.com>
> 
> ---
> This applies on top of commit ec5aae3d ("conf: distro: add mejate{,-musl} distributions")
> ---
>  recipes-core/openjdk/openjdk-8-native.inc | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/recipes-core/openjdk/openjdk-8-native.inc b/recipes-core/openjdk/openjdk-8-native.inc
> index 6a01046..bae5d09 100644
> --- a/recipes-core/openjdk/openjdk-8-native.inc
> +++ b/recipes-core/openjdk/openjdk-8-native.inc
> @@ -55,6 +55,7 @@ do_configure_prepend() {
>  
>  do_compile_prepend() {
>      export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS}"
> +    rm -f "${B}/images/j2sdk-image/jre/lib/security/cacerts"
>  }
>  
>  do_compile_append() {
>