CMake 3.18.3: aarch64: Could NOT find JNI
With recent changes !5162 (merged) we have a build error in ALTLinux on aarch64:
$ cat CMakeLists.txt
...
find_package(JNI REQUIRED)
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY)
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake/Modules/FindJNI.cmake:374 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:53 (find_package)
-- Configuring incomplete, errors occurred!
for ALTLinux:
$ ls /usr/lib/jvm/java/lib/aarch64/
jli libjawt.so
The fix is trivial:
diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake
index eff815ddc8..bbca952866 100644
--- a/Modules/FindJNI.cmake
+++ b/Modules/FindJNI.cmake
@@ -60,7 +60,7 @@ macro(java_append_library_directories _var)
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^i.86$")
set(_java_libarch "i386")
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^aarch64")
- set(_java_libarch "arm64")
+ set(_java_libarch "arm64" "aarch64")
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^alpha")
set(_java_libarch "alpha")
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "^arm")