This commit is contained in:
parent
3dc2292aa2
commit
3fcea75415
174
0001-Allow-building-with-Java-8.patch
Normal file
174
0001-Allow-building-with-Java-8.patch
Normal file
@ -0,0 +1,174 @@
|
||||
From 23b6064d830de573a50dcbc480c54b58dcf99e5a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||
Date: Fri, 1 Mar 2024 13:36:42 +0100
|
||||
Subject: [PATCH] Allow building with Java 8
|
||||
|
||||
Change-Id: Ib1af1a98993aabb8a03f4ef19d8da4d9a71fdbc0
|
||||
---
|
||||
config_host.mk.in | 1 +
|
||||
configure.ac | 20 +++++++++++++++-----
|
||||
ridljar/Jar_libreoffice.mk | 6 +++---
|
||||
ridljar/Jar_unoloader.mk | 8 ++++----
|
||||
solenv/gbuild/JavaClassSet.mk | 6 +++---
|
||||
5 files changed, 26 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/config_host.mk.in b/config_host.mk.in
|
||||
index 04745d508fc3..00dc7aa1f898 100644
|
||||
--- a/config_host.mk.in
|
||||
+++ b/config_host.mk.in
|
||||
@@ -483,6 +483,7 @@ export MERGELIBS_MORE=@MERGELIBS_MORE@
|
||||
export ML_EXE=@ML_EXE@
|
||||
export MOC5=@MOC5@
|
||||
export MOC6=@MOC6@
|
||||
+MODULAR_JAVA=@MODULAR_JAVA@
|
||||
export MPL_SUBSET=@MPL_SUBSET@
|
||||
export MSGFMT=@MSGFMT@
|
||||
export MSGUNIQ=@MSGUNIQ@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index dd4ed7107aa8..b218120773d1 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2570,7 +2570,7 @@ AC_ARG_WITH(linker-hash-style,
|
||||
|
||||
AC_ARG_WITH(jdk-home,
|
||||
AS_HELP_STRING([--with-jdk-home=<absolute path to JDK home>],
|
||||
- [If you have installed JDK 17 or later on your system please supply the
|
||||
+ [If you have installed JDK 8 or later on your system please supply the
|
||||
path here. Note that this is not the location of the java command but the
|
||||
location of the entire distribution. In case of cross-compiling, this
|
||||
is the JDK of the host os. Use --with-build-platform-configure-options
|
||||
@@ -8647,7 +8647,7 @@ if test "$ENABLE_JAVA" != ""; then
|
||||
fi
|
||||
|
||||
if ! test -f "$with_jdk_home/lib/jvm.lib" -a -f "$with_jdk_home/bin/java.exe"; then
|
||||
- AC_MSG_ERROR([No JDK found, pass the --with-jdk-home option (or fix the path) pointing to a $WIN_HOST_BITS-bit JDK >= 17])
|
||||
+ AC_MSG_ERROR([No JDK found, pass the --with-jdk-home option (or fix the path) pointing to a $WIN_HOST_BITS-bit JDK >= 8])
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -8712,6 +8712,7 @@ dnl ===================================================================
|
||||
# Whether all the complexity here actually is needed any more or not, no idea.
|
||||
|
||||
JDK_SECURITYMANAGER_DISALLOWED=
|
||||
+MODULAR_JAVA=
|
||||
if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
_gij_longver=0
|
||||
AC_MSG_CHECKING([the installed JDK])
|
||||
@@ -8732,8 +8733,8 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
_jdk=`$JAVAINTERPRETER -version 2>&1 | $AWK -F'"' '{ print \$2 }' | $SED '/^$/d' | $SED s/[[-A-Za-z]]*//`
|
||||
_jdk_ver=`echo "$_jdk" | $AWK -F. '{ print (($1 * 100) + $2) * 100 + $3;}'`
|
||||
|
||||
- if test "$_jdk_ver" -lt 170000; then
|
||||
- AC_MSG_ERROR([JDK is too old, you need at least 17 ($_jdk_ver < 170000)])
|
||||
+ if test "$_jdk_ver" -lt 10800; then
|
||||
+ AC_MSG_ERROR([JDK is too old, you need at least 8 ($_jdk_ver < 10800)])
|
||||
fi
|
||||
dnl TODO: Presumably, the Security Manager will not merely be disallowed, but be
|
||||
dnl completely removed in some Java version > 18 (see
|
||||
@@ -8748,13 +8749,21 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
fi
|
||||
AC_MSG_RESULT([found $JAVA_HOME (JDK $_jdk)])
|
||||
|
||||
+ dnl Check whether the build Java supports modules
|
||||
+ if test "$_jdk_ver" -ge 90000; then
|
||||
+ MODULAR_JAVA=TRUE
|
||||
+ else
|
||||
+ AC_MSG_WARN([Modular jars will not be built. They need at least Java 9 ($_jdk_ver < 90000)])
|
||||
+ add_warning "Modular jars will not be built. They need at least Java 9 ($_jdk_ver < 90000)"
|
||||
+ fi
|
||||
+
|
||||
# set to limit VM usage for JunitTests
|
||||
JAVAIFLAGS=-Xmx64M
|
||||
# set to limit VM usage for javac
|
||||
JAVACFLAGS=-J-Xmx128M
|
||||
fi
|
||||
else
|
||||
- AC_MSG_ERROR([Java not found. You need at least JDK 17])
|
||||
+ AC_MSG_ERROR([Java not found. You need at least JDK 8])
|
||||
fi
|
||||
else
|
||||
if test -z "$ENABLE_JAVA"; then
|
||||
@@ -9058,6 +9067,7 @@ AC_SUBST(JDK_FOR_BUILD)
|
||||
AC_SUBST(JDK_SECURITYMANAGER_DISALLOWED_FOR_BUILD)
|
||||
AC_SUBST(JAVA_SOURCE_VER)
|
||||
AC_SUBST(JAVA_TARGET_VER)
|
||||
+AC_SUBST(MODULAR_JAVA)
|
||||
|
||||
|
||||
dnl ===================================================================
|
||||
diff --git a/ridljar/Jar_libreoffice.mk b/ridljar/Jar_libreoffice.mk
|
||||
index 76a56eedc078..77397bc246ee 100644
|
||||
--- a/ridljar/Jar_libreoffice.mk
|
||||
+++ b/ridljar/Jar_libreoffice.mk
|
||||
@@ -36,12 +36,12 @@ $(eval $(call gb_Jar_add_manifest_classpath,libreoffice, \
|
||||
$(eval $(call gb_Jar_add_packagedirs,libreoffice,\
|
||||
$(call gb_CustomTarget_get_workdir,ridljar/javamaker)/com \
|
||||
$(call gb_CustomTarget_get_workdir,unoil/javamaker)/com \
|
||||
- $(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,libreoffice))/module-info.class \
|
||||
+ $(if $(MODULAR_JAVA),$(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,libreoffice))/module-info.class) \
|
||||
))
|
||||
|
||||
-$(eval $(call gb_Jar_add_sourcefiles_java9,libreoffice,\
|
||||
+$(if $(MODULAR_JAVA),$(eval $(call gb_Jar_add_sourcefiles_java9,libreoffice,\
|
||||
ridljar/source/libreoffice/module-info \
|
||||
-))
|
||||
+)))
|
||||
|
||||
$(eval $(call gb_Jar_add_sourcefiles,libreoffice,\
|
||||
ridljar/com/sun/star/comp/bridgefactory/BridgeFactory \
|
||||
diff --git a/ridljar/Jar_unoloader.mk b/ridljar/Jar_unoloader.mk
|
||||
index 2acf20b5b289..b7fcbc105dc1 100644
|
||||
--- a/ridljar/Jar_unoloader.mk
|
||||
+++ b/ridljar/Jar_unoloader.mk
|
||||
@@ -14,13 +14,13 @@ $(eval $(call gb_Jar_set_packageroot,unoloader,com))
|
||||
$(eval $(call gb_Jar_set_manifest,unoloader,$(SRCDIR)/ridljar/source/unoloader/com/sun/star/lib/unoloader/manifest))
|
||||
|
||||
# the module-info.class is manually added here since it's not in "com" dir
|
||||
-$(eval $(call gb_Jar_add_packagedirs,unoloader,\
|
||||
+$(if $(MODULAR_JAVA),$(eval $(call gb_Jar_add_packagedirs,unoloader,\
|
||||
$(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,unoloader))/module-info.class \
|
||||
-))
|
||||
+)))
|
||||
|
||||
-$(eval $(call gb_Jar_add_sourcefiles_java9,unoloader,\
|
||||
+$(if $(MODULAR_JAVA),$(eval $(call gb_Jar_add_sourcefiles_java9,unoloader,\
|
||||
ridljar/source/unoloader/module-info \
|
||||
-))
|
||||
+)))
|
||||
|
||||
$(eval $(call gb_Jar_add_sourcefiles,unoloader,\
|
||||
ridljar/source/unoloader/com/sun/star/lib/unoloader/UnoClassLoader \
|
||||
diff --git a/solenv/gbuild/JavaClassSet.mk b/solenv/gbuild/JavaClassSet.mk
|
||||
index 84fbcc13c32d..8acf120dd615 100644
|
||||
--- a/solenv/gbuild/JavaClassSet.mk
|
||||
+++ b/solenv/gbuild/JavaClassSet.mk
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
gb_JavaClassSet_JAVACCOMMAND = $(ICECREAM_RUN) $(JAVACOMPILER) $(JAVACFLAGS) \
|
||||
-encoding utf8 \
|
||||
- --release $(1) \
|
||||
+ $(if $(MODULAR_JAVA),--release $(1),-source $(1) -target $(1)) \
|
||||
-Xlint:-options \
|
||||
-Xlint:unchecked
|
||||
|
||||
@@ -51,7 +51,7 @@ $(call gb_Helper_abbreviate_dirs,\
|
||||
-d $(call gb_JavaClassSet_get_classdir,$(2)) \
|
||||
@$$RESPONSEFILE &&) \
|
||||
rm -f $$RESPONSEFILE &&) \
|
||||
- $(if $(T_MODULENAME),\
|
||||
+ $(if $(MODULAR_JAVA),$(if $(T_MODULENAME),\
|
||||
RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),\
|
||||
$(T_JAVA9FILES)) && \
|
||||
$(if $(3),$(call gb_JavaClassSet_JAVACCOMMAND,9) \
|
||||
@@ -61,7 +61,7 @@ $(call gb_Helper_abbreviate_dirs,\
|
||||
$(if $(T_MODULENAME),--patch-module $(T_MODULENAME)="$(subst $(WHITESPACE),$(gb_CLASSPATHSEP),$(strip $(dir $(PACKAGEDIRS))))") \
|
||||
-d $(call gb_JavaClassSet_get_classdir,$(2)) \
|
||||
@$$RESPONSEFILE &&) \
|
||||
- rm -f $$RESPONSEFILE &&) \
|
||||
+ rm -f $$RESPONSEFILE &&)) \
|
||||
touch $(1))
|
||||
|
||||
endef
|
||||
--
|
||||
2.44.0
|
||||
|
@ -1,70 +0,0 @@
|
||||
From b8dd74fa811af7a1a8cf7f93b49ed63c828232a8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||
Date: Fri, 1 Mar 2024 07:31:27 +0100
|
||||
Subject: [PATCH 1/2] Revert java 17 changes
|
||||
|
||||
---
|
||||
README.md | 4 +++-
|
||||
configure.ac | 10 +++++-----
|
||||
2 files changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/README.md b/README.md
|
||||
index f529e48d4714..6afb8000b0e1 100644
|
||||
--- a/README.md
|
||||
+++ b/README.md
|
||||
@@ -57,7 +57,9 @@ Java is required for building many parts of LibreOffice. In TDF Wiki article
|
||||
[Development/Java](https://wiki.documentfoundation.org/Development/Java), the
|
||||
exact modules that depend on Java are listed.
|
||||
|
||||
-The baseline for Java is Java Development Kit (JDK) Version 17 or later.
|
||||
+The baseline for Java is Java Development Kit (JDK) Version 17 or later. It is
|
||||
+possible to build LibreOffice with JDK version 9, but it is no longer supported
|
||||
+by the JDK vendors, thus it should be avoided.
|
||||
|
||||
If you want to use Clang with the LibreOffice compiler plugins, the minimal
|
||||
version of Clang is 12.0.1. Since Xcode doesn't provide the compiler plugin
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index ae808e69c5b0..932abe65b353 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2570,7 +2570,7 @@ AC_ARG_WITH(linker-hash-style,
|
||||
|
||||
AC_ARG_WITH(jdk-home,
|
||||
AS_HELP_STRING([--with-jdk-home=<absolute path to JDK home>],
|
||||
- [If you have installed JDK 17 or later on your system please supply the
|
||||
+ [If you have installed JDK 9 or later on your system please supply the
|
||||
path here. Note that this is not the location of the java command but the
|
||||
location of the entire distribution. In case of cross-compiling, this
|
||||
is the JDK of the host os. Use --with-build-platform-configure-options
|
||||
@@ -8647,7 +8647,7 @@ if test "$ENABLE_JAVA" != ""; then
|
||||
fi
|
||||
|
||||
if ! test -f "$with_jdk_home/lib/jvm.lib" -a -f "$with_jdk_home/bin/java.exe"; then
|
||||
- AC_MSG_ERROR([No JDK found, pass the --with-jdk-home option (or fix the path) pointing to a $WIN_HOST_BITS-bit JDK >= 17])
|
||||
+ AC_MSG_ERROR([No JDK found, pass the --with-jdk-home option (or fix the path) pointing to a $WIN_HOST_BITS-bit JDK >= 9])
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -8732,8 +8732,8 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
_jdk=`$JAVAINTERPRETER -version 2>&1 | $AWK -F'"' '{ print \$2 }' | $SED '/^$/d' | $SED s/[[-A-Za-z]]*//`
|
||||
_jdk_ver=`echo "$_jdk" | $AWK -F. '{ print (($1 * 100) + $2) * 100 + $3;}'`
|
||||
|
||||
- if test "$_jdk_ver" -lt 170000; then
|
||||
- AC_MSG_ERROR([JDK is too old, you need at least 17 ($_jdk_ver < 170000)])
|
||||
+ if test "$_jdk_ver" -lt 90000; then
|
||||
+ AC_MSG_ERROR([JDK is too old, you need at least 9 ($_jdk_ver < 90000)])
|
||||
fi
|
||||
dnl TODO: Presumably, the Security Manager will not merely be disallowed, but be
|
||||
dnl completely removed in some Java version > 18 (see
|
||||
@@ -8754,7 +8754,7 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
JAVACFLAGS=-J-Xmx128M
|
||||
fi
|
||||
else
|
||||
- AC_MSG_ERROR([Java not found. You need at least JDK 17])
|
||||
+ AC_MSG_ERROR([Java not found. You need at least JDK 9])
|
||||
fi
|
||||
else
|
||||
if test -z "$ENABLE_JAVA"; then
|
||||
--
|
||||
2.44.0
|
||||
|
@ -1,193 +0,0 @@
|
||||
From afb38683e746c475e68b0883566b5593fc5babff Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||
Date: Fri, 1 Mar 2024 08:02:56 +0100
|
||||
Subject: [PATCH 2/2] Revert java 9 changes
|
||||
|
||||
---
|
||||
configure.ac | 8 ++++----
|
||||
ridljar/Jar_libreoffice.mk | 8 +-------
|
||||
ridljar/Jar_unoloader.mk | 11 +----------
|
||||
solenv/gbuild/Jar.mk | 3 +--
|
||||
solenv/gbuild/JavaClassSet.mk | 23 ++---------------------
|
||||
5 files changed, 9 insertions(+), 44 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 932abe65b353..153137c7ff7c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2570,7 +2570,7 @@ AC_ARG_WITH(linker-hash-style,
|
||||
|
||||
AC_ARG_WITH(jdk-home,
|
||||
AS_HELP_STRING([--with-jdk-home=<absolute path to JDK home>],
|
||||
- [If you have installed JDK 9 or later on your system please supply the
|
||||
+ [If you have installed JDK 8 or later on your system please supply the
|
||||
path here. Note that this is not the location of the java command but the
|
||||
location of the entire distribution. In case of cross-compiling, this
|
||||
is the JDK of the host os. Use --with-build-platform-configure-options
|
||||
@@ -8732,8 +8732,8 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
_jdk=`$JAVAINTERPRETER -version 2>&1 | $AWK -F'"' '{ print \$2 }' | $SED '/^$/d' | $SED s/[[-A-Za-z]]*//`
|
||||
_jdk_ver=`echo "$_jdk" | $AWK -F. '{ print (($1 * 100) + $2) * 100 + $3;}'`
|
||||
|
||||
- if test "$_jdk_ver" -lt 90000; then
|
||||
- AC_MSG_ERROR([JDK is too old, you need at least 9 ($_jdk_ver < 90000)])
|
||||
+ if test "$_jdk_ver" -lt 10800; then
|
||||
+ AC_MSG_ERROR([JDK is too old, you need at least 8 ($_jdk_ver < 10800)])
|
||||
fi
|
||||
dnl TODO: Presumably, the Security Manager will not merely be disallowed, but be
|
||||
dnl completely removed in some Java version > 18 (see
|
||||
@@ -8754,7 +8754,7 @@ if test "$ENABLE_JAVA" != "" -a "$cross_compiling" != "yes"; then
|
||||
JAVACFLAGS=-J-Xmx128M
|
||||
fi
|
||||
else
|
||||
- AC_MSG_ERROR([Java not found. You need at least JDK 9])
|
||||
+ AC_MSG_ERROR([Java not found. You need at least JDK 8])
|
||||
fi
|
||||
else
|
||||
if test -z "$ENABLE_JAVA"; then
|
||||
diff --git a/ridljar/Jar_libreoffice.mk b/ridljar/Jar_libreoffice.mk
|
||||
index 76a56eedc078..133d664e9459 100644
|
||||
--- a/ridljar/Jar_libreoffice.mk
|
||||
+++ b/ridljar/Jar_libreoffice.mk
|
||||
@@ -7,7 +7,7 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
#
|
||||
|
||||
-$(eval $(call gb_Jar_Jar,libreoffice,org.libreoffice.uno))
|
||||
+$(eval $(call gb_Jar_Jar,libreoffice))
|
||||
|
||||
$(eval $(call gb_Jar_use_customtargets,libreoffice,\
|
||||
ridljar/javamaker \
|
||||
@@ -32,15 +32,9 @@ $(eval $(call gb_Jar_add_manifest_classpath,libreoffice, \
|
||||
$(if $(filter MACOSX,$(OS)),../../Frameworks/,../) \
|
||||
))
|
||||
|
||||
-# ugly: the module-info.class is manually added here since it's not in "com" dir
|
||||
$(eval $(call gb_Jar_add_packagedirs,libreoffice,\
|
||||
$(call gb_CustomTarget_get_workdir,ridljar/javamaker)/com \
|
||||
$(call gb_CustomTarget_get_workdir,unoil/javamaker)/com \
|
||||
- $(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,libreoffice))/module-info.class \
|
||||
-))
|
||||
-
|
||||
-$(eval $(call gb_Jar_add_sourcefiles_java9,libreoffice,\
|
||||
- ridljar/source/libreoffice/module-info \
|
||||
))
|
||||
|
||||
$(eval $(call gb_Jar_add_sourcefiles,libreoffice,\
|
||||
diff --git a/ridljar/Jar_unoloader.mk b/ridljar/Jar_unoloader.mk
|
||||
index 2acf20b5b289..50b32e8f0f88 100644
|
||||
--- a/ridljar/Jar_unoloader.mk
|
||||
+++ b/ridljar/Jar_unoloader.mk
|
||||
@@ -7,21 +7,12 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
#
|
||||
|
||||
-$(eval $(call gb_Jar_Jar,unoloader,org.libreoffice.unoloader))
|
||||
+$(eval $(call gb_Jar_Jar,unoloader))
|
||||
|
||||
$(eval $(call gb_Jar_set_packageroot,unoloader,com))
|
||||
|
||||
$(eval $(call gb_Jar_set_manifest,unoloader,$(SRCDIR)/ridljar/source/unoloader/com/sun/star/lib/unoloader/manifest))
|
||||
|
||||
-# the module-info.class is manually added here since it's not in "com" dir
|
||||
-$(eval $(call gb_Jar_add_packagedirs,unoloader,\
|
||||
- $(call gb_JavaClassSet_get_classdir,$(call gb_Jar_get_classsetname,unoloader))/module-info.class \
|
||||
-))
|
||||
-
|
||||
-$(eval $(call gb_Jar_add_sourcefiles_java9,unoloader,\
|
||||
- ridljar/source/unoloader/module-info \
|
||||
-))
|
||||
-
|
||||
$(eval $(call gb_Jar_add_sourcefiles,unoloader,\
|
||||
ridljar/source/unoloader/com/sun/star/lib/unoloader/UnoClassLoader \
|
||||
ridljar/source/unoloader/com/sun/star/lib/unoloader/UnoLoader \
|
||||
diff --git a/solenv/gbuild/Jar.mk b/solenv/gbuild/Jar.mk
|
||||
index d1a84cebaabe..a6abe2996446 100644
|
||||
--- a/solenv/gbuild/Jar.mk
|
||||
+++ b/solenv/gbuild/Jar.mk
|
||||
@@ -94,7 +94,6 @@ endef
|
||||
# creates a class set and a dependency to it
|
||||
# registers target and clean target
|
||||
# adds jar files to DeliverLogTarget
|
||||
-# call gb_Jar_Jar,jarname,java9modulename
|
||||
define gb_Jar_Jar
|
||||
ifeq (,$$(findstring $(1),$$(gb_Jar_KNOWN)))
|
||||
$$(eval $$(call gb_Output_info,Currently known jars are: $(sort $(gb_Jar_KNOWN)),ALL))
|
||||
@@ -107,7 +106,7 @@ $(call gb_Jar_get_target,$(1)) : PACKAGEDIRS :=
|
||||
$(call gb_Jar_get_target,$(1)) : PACKAGEFILES :=
|
||||
$(call gb_Jar_get_target,$(1)) : \
|
||||
$(call gb_JavaClassSet_get_target,$(call gb_Jar_get_classsetname,$(1)))
|
||||
-$(call gb_JavaClassSet_JavaClassSet,$(call gb_Jar_get_classsetname,$(1)),$(2))
|
||||
+$(call gb_JavaClassSet_JavaClassSet,$(call gb_Jar_get_classsetname,$(1)))
|
||||
$(eval $(call gb_Module_register_target,$(call gb_Jar_get_target,$(1)),$(call gb_Jar_get_clean_target,$(1))))
|
||||
$(call gb_Helper_make_userfriendly_targets,$(1),Jar,$(call gb_Jar_get_target,$(1)))
|
||||
|
||||
diff --git a/solenv/gbuild/JavaClassSet.mk b/solenv/gbuild/JavaClassSet.mk
|
||||
index 84fbcc13c32d..3b8e48414c73 100644
|
||||
--- a/solenv/gbuild/JavaClassSet.mk
|
||||
+++ b/solenv/gbuild/JavaClassSet.mk
|
||||
@@ -19,7 +19,7 @@
|
||||
|
||||
gb_JavaClassSet_JAVACCOMMAND = $(ICECREAM_RUN) $(JAVACOMPILER) $(JAVACFLAGS) \
|
||||
-encoding utf8 \
|
||||
- --release $(1) \
|
||||
+ -source $(1) -target $(1) \
|
||||
-Xlint:-options \
|
||||
-Xlint:unchecked
|
||||
|
||||
@@ -33,35 +33,19 @@ ifneq ($(gb_DEBUGLEVEL),0)
|
||||
gb_JavaClassSet_JAVACDEBUG := -g
|
||||
endif
|
||||
|
||||
-# $(PACKAGEDIRS) inherited from Jar -- assumption is the last part of the path
|
||||
-# is top-level java package directory
|
||||
-# for Java 9 modules, invoke javac another time, with --patch-module so that
|
||||
-# it finds all the class files for whose packages the module-info contains a
|
||||
-# declaration
|
||||
define gb_JavaClassSet__command
|
||||
$(call gb_Helper_abbreviate_dirs,\
|
||||
mkdir -p $(dir $(1)) && \
|
||||
$(if $(filter-out $(JARDEPS),$(4)), \
|
||||
rm -rf $(call gb_JavaClassSet_get_classdir,$(2))/* && \
|
||||
RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),\
|
||||
- $(filter-out $(JARDEPS) $(T_JAVA9FILES),$(4))) && \
|
||||
+ $(filter-out $(JARDEPS),$(4))) && \
|
||||
$(if $(3),$(call gb_JavaClassSet_JAVACCOMMAND,$(JAVA_TARGET_VER)) \
|
||||
$(gb_JavaClassSet_JAVACDEBUG) \
|
||||
-classpath "$(T_CP)$(gb_CLASSPATHSEP)$(call gb_JavaClassSet_get_classdir,$(2))" \
|
||||
-d $(call gb_JavaClassSet_get_classdir,$(2)) \
|
||||
@$$RESPONSEFILE &&) \
|
||||
rm -f $$RESPONSEFILE &&) \
|
||||
- $(if $(T_MODULENAME),\
|
||||
- RESPONSEFILE=$(call gb_var2file,$(shell $(gb_MKTEMP)),\
|
||||
- $(T_JAVA9FILES)) && \
|
||||
- $(if $(3),$(call gb_JavaClassSet_JAVACCOMMAND,9) \
|
||||
- $(gb_JavaClassSet_JAVACDEBUG) \
|
||||
- -classpath "$(T_CP)$(gb_CLASSPATHSEP)$(call gb_JavaClassSet_get_classdir,$(2))" \
|
||||
- --module-path "$(T_CP)$(gb_CLASSPATHSEP)$(call gb_JavaClassSet_get_classdir,$(2))" \
|
||||
- $(if $(T_MODULENAME),--patch-module $(T_MODULENAME)="$(subst $(WHITESPACE),$(gb_CLASSPATHSEP),$(strip $(dir $(PACKAGEDIRS))))") \
|
||||
- -d $(call gb_JavaClassSet_get_classdir,$(2)) \
|
||||
- @$$RESPONSEFILE &&) \
|
||||
- rm -f $$RESPONSEFILE &&) \
|
||||
touch $(1))
|
||||
|
||||
endef
|
||||
@@ -82,7 +66,6 @@ $(call gb_JavaClassSet_get_preparation_target,%) :
|
||||
mkdir -p $(dir $@) && touch $@
|
||||
|
||||
# depend on makefile to enforce a rebuild if files are removed from the classset
|
||||
-# call gb_JavaClassSet_JavaClassSet,csname,java9modulename
|
||||
define gb_JavaClassSet_JavaClassSet
|
||||
$(call gb_JavaClassSet_get_target,$(1)) : \
|
||||
$(gb_Module_CURRENTMAKEFILE) \
|
||||
@@ -90,8 +73,6 @@ $(call gb_JavaClassSet_get_target,$(1)) : \
|
||||
$(call gb_JavaClassSet_get_target,$(1)) : JARDEPS := \
|
||||
$(gb_Module_CURRENTMAKEFILE) \
|
||||
$(call gb_JavaClassSet_get_preparation_target,$(1))
|
||||
-$(call gb_JavaClassSet_get_target,$(1)) : T_MODULENAME := $(2)
|
||||
-$(call gb_JavaClassSet_get_target,$(1)) : T_JAVA9FILES :=
|
||||
|
||||
endef
|
||||
|
||||
--
|
||||
2.44.0
|
||||
|
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 1 08:59:56 UTC 2024 - Fridrich Strba <fstrba@suse.com>
|
||||
|
||||
- Added patch:
|
||||
* 0001-Allow-building-with-Java-8.patch
|
||||
+ patch submitted upstream restoring the possibility to build
|
||||
with JDK >= 8
|
||||
- Removed patch:
|
||||
* 0001-Revert-java-9-changes.patch
|
||||
+ not needed with the new patch above
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 21 18:45:44 UTC 2024 - Cor Blom <cornelis@solcon.nl>
|
||||
|
||||
|
@ -114,10 +114,8 @@ Patch11: fix_webp_on_sle12_sp5.patch
|
||||
Patch14: use-fixmath-shared-library.patch
|
||||
# PATCH-FIX-SUSE Fix make distro-pack-install
|
||||
Patch15: fix-sdk-idl.patch
|
||||
# Useless upstream bump for java 17
|
||||
Patch100: 0001-Revert-java-17-changes.patch
|
||||
# Build with java 8
|
||||
Patch101: 0002-Revert-java-9-changes.patch
|
||||
# Patch submitted upstream to allow building with any Java >= 8
|
||||
Patch100: 0001-Allow-building-with-Java-8.patch
|
||||
# try to save space by using hardlinks
|
||||
Patch990: install-with-hardlinks.diff
|
||||
# save time by relying on rpm check rather than doing stupid find+grep
|
||||
@ -312,31 +310,21 @@ BuildRequires: pkgconfig(poppler-cpp)
|
||||
Source2021: %{external_url}/icu4c-73_2-src.tgz
|
||||
Source2022: %{external_url}/icu4c-73_2-data.zip
|
||||
Provides: bundled(icu) = 73.2
|
||||
BuildRequires: java-devel >= 1.8
|
||||
BuildRequires: libBox2D-devel
|
||||
BuildRequires: libmysqlclient-devel
|
||||
BuildConflicts: java < 1.8
|
||||
BuildConflicts: java >= 9
|
||||
BuildConflicts: java-devel < 1.8
|
||||
BuildConflicts: java-devel >= 9
|
||||
BuildConflicts: java-headless < 1.8
|
||||
BuildConflicts: java-headless >= 9
|
||||
Requires(post): update-desktop-files
|
||||
Requires(postun): update-desktop-files
|
||||
%else
|
||||
# genbrk binary is required
|
||||
BuildRequires: icu
|
||||
BuildRequires: java-devel >= 9
|
||||
BuildRequires: libbox2d-devel
|
||||
BuildRequires: libmariadb-devel
|
||||
BuildRequires: pkgconfig(icu-i18n)
|
||||
BuildConflicts: java < 9
|
||||
BuildConflicts: java-devel < 9
|
||||
BuildConflicts: java-headless < 9
|
||||
BuildRequires: pkgconfig(libopenjp2)
|
||||
%endif
|
||||
BuildRequires: gcc12
|
||||
BuildRequires: gcc12-c++
|
||||
BuildRequires: java-devel >= 1.8
|
||||
%if 0%{?suse_version}
|
||||
# needed by python3_sitelib
|
||||
BuildRequires: python-rpm-macros
|
||||
@ -1037,7 +1025,6 @@ Provides %{langname} translations and additional resources (help files, etc.) fo
|
||||
%if 0%{?suse_version} < 1500
|
||||
%patch -P 10 -p1
|
||||
%patch -P 11 -p1
|
||||
%patch -P 101 -p1
|
||||
%endif
|
||||
%patch -P 14 -p1
|
||||
%patch -P 15 -p1
|
||||
@ -1131,7 +1118,6 @@ export NOCONFIGURE=yes
|
||||
--with-system-headers \
|
||||
--with-system-libs \
|
||||
--with-system-jars \
|
||||
--with-system-ucpp \
|
||||
--with-system-dicts \
|
||||
--with-system-libpng \
|
||||
--with-system-dragonbox \
|
||||
@ -1208,7 +1194,6 @@ export NOCONFIGURE=yes
|
||||
%endif
|
||||
--enable-evolution2 \
|
||||
--enable-dbus \
|
||||
--enable-ext-ct2n \
|
||||
--enable-ext-nlpsolver \
|
||||
--enable-ext-numbertext \
|
||||
--enable-ext-wiki-publisher \
|
||||
|
Loading…
Reference in New Issue
Block a user