jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit f05a42ef8c8192186f91a169047742e5c3ae9b9e
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Wed Nov 17 14:01:55 2021 +0100
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Wed Nov 17 16:53:47 2021 +0100

    tdf#144695 VendorBase::isValidArch also for macOS
    
    Lets extend it only to macOS (where there is some confusion now with 
Rosetta-
    translated vs. native processes on Apple M1 machines), not to all Unix-like 
OSs:
    The comment that it "is not defined what the exact [os.arch] values are" is
    still relevant.  At least for OpenJDK, while Windows has a hardcoded list of
    possible values in GetJavaProperties at
    
<https://github.com/openjdk/jdk/blob/9604ee82690f89320614b37bfef4178abc869777/src/java.base/windows/native/libjava/java_props_md.c#L568>,
    the corresponding non-Windows code in GetJavaProperties at
    
<https://github.com/openjdk/jdk/blob/319a3b994703aac84df7bcde272adfcb3cdbbbf0/jdk/src/solaris/native/java/lang/java_props_md.c#L175>
    uses ARCHPROPNAME which, via
    
    > -DARCHPROPNAME='"$(OPENJDK_TARGET_CPU_OSARCH)"'
    
    at
    
<https://github.com/openjdk/jdk/blob/c363db8ed00ff27eadf06294364d908d6a7d03a6/jdk/makefiles/CompileNativeLibraries.gmk#L185>,
    appears to somehow come out of Autoconf at
    
<https://github.com/openjdk/jdk/blob/228c21635b011fbf956b83a0b07fc297e9a34c46/common/autoconf/spec.gmk.in#L93>,
    so probably can show some variance in actual values being used.
    
    Change-Id: I16725cd9365f6bd034372c653aa43ab84d487b98
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125401
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx 
b/jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx
index 8863df3352ff..f4cf14a9ab3f 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/vendorbase.cxx
@@ -175,10 +175,12 @@ bool VendorBase::isValidArch() const
     // It is not defined what the exact values are.
     // Oracle JRE 8 has "x86" and "amd64", the others were found at 
http://lopica.sourceforge.net/os.html .
     // There might still be missing some options; we need to extend the check 
once we find out.
-#if defined _WIN64
+#if defined _WIN64 || (defined MACOSX && defined __x86_64__)
     return m_sArch == "amd64" || m_sArch == "x86_64";
 #elif defined _WIN32
     return m_sArch == "x86" || m_sArch == "i386" || m_sArch == "i686";
+#elif defined MACOSX && defined __aarch64__
+    return m_sArch == "aarch64";
 #else
     (void)this;
     return true;

Reply via email to