Просмотр исходного кода

Linux: Avoid finding libraries using lib64 on ArchLinux

ArchLinux uses `/lib` for 64-bit libraries and there is no `/lib64`.
However, unlike Debian, 32-bit libraries are in `/lib32`.
Letu Ren 3 лет назад
Родитель
Сommit
988b9928e4
1 измененных файлов с 8 добавлено и 3 удалено
  1. 8 3
      Modules/Platform/Linux.cmake

+ 8 - 3
Modules/Platform/Linux.cmake

@@ -87,7 +87,12 @@ include(Platform/UnixPaths)
 
 # Debian has lib32 and lib64 paths only for compatibility so they should not be
 # searched.
-if(NOT CMAKE_CROSSCOMPILING AND EXISTS "/etc/debian_version")
-  set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS FALSE)
-  set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE)
+if(NOT CMAKE_CROSSCOMPILING)
+  if (EXISTS "/etc/debian_version")
+    set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB32_PATHS FALSE)
+    set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE)
+  endif()
+  if (EXISTS "/etc/arch-release")
+    set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE)
+  endif()
 endif()