Fix gb_JunitTest_use_jar_classset

For example, something like `touch ridljar/com/sun/star/uno/Any.java && make
JunitTest_ridl_remote` (i.e., requiring the classset of libreoffice.jar to be
rebuilt, which JunitTest_ridl_remote depends on) caused javac to fail with

> error: bad value for --patch-module option: 'org.libreoffice.uno='

when building the classset for libreoffice.jar, because its recipe
(gb_JavaClassSet__command in solenv/gbuild/JavaClassSet.mk) uses per-target
PACKAGEDIRS, but which is only set in the corresponding solenv/gbuild/Jar.mk
target.

So make gb_JunitTest_use_jar_classset -> gb_JavaClassSet_use_jar_classet depend
on the jar instead of just the classset, to make sure the classet gets built
properly as part of building its jar.

Change-Id: I5c46ff40b716ae91bd32d104a516f8eefbe62e21
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187481
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
This commit is contained in:
Stephan Bergmann
2025-07-09 11:24:53 +02:00
parent 037de86626
commit 5056afaf70
+2 -2
View File
@@ -170,8 +170,8 @@ endef
# $1: token identifying this JavaClassSet
# $2: token identifying the Jar being used
define gb_JavaClassSet_use_jar_classset
$(call gb_JavaClassSet_get_target,$(1)) : $(call gb_JavaClassSet_get_target,$(call gb_Jar_get_classsetname,$(2)))
$(call gb_JavaClassSet_get_target,$(1)) : JARDEPS += $(call gb_JavaClassSet_get_target,$(call gb_Jar_get_classsetname,$(2)))
$(call gb_JavaClassSet_get_target,$(1)) : $(call gb_Jar_get_target,$(2))
$(call gb_JavaClassSet_get_target,$(1)) : JARDEPS += $(call gb_Jar_get_target,$(2))
$(call gb_JavaClassSet_add_classpath,$(1),$(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,$(2))))
endef