Explorar o código

CMakeFindPackageMode: fix 32/64bit detection if 'file' is a symlink

Yury G. Kudryashov %!s(int64=13) %!d(string=hai) anos
pai
achega
0b8638821e
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      Modules/CMakeFindPackageMode.cmake

+ 2 - 1
Modules/CMakeFindPackageMode.cmake

@@ -71,7 +71,8 @@ if(UNIX)
       # use the file utility to check whether itself is 64 bit:
       find_program(FILE_EXECUTABLE file)
       if(FILE_EXECUTABLE)
-        execute_process(COMMAND "${FILE_EXECUTABLE}" "${FILE_EXECUTABLE}" OUTPUT_VARIABLE fileOutput ERROR_QUIET)
+        get_filename_component(FILE_ABSPATH "${FILE_EXECUTABLE}" ABSOLUTE)
+        execute_process(COMMAND "${FILE_ABSPATH}" "${FILE_ABSPATH}" OUTPUT_VARIABLE fileOutput ERROR_QUIET)
         if("${fileOutput}" MATCHES "64-bit")
           set(CMAKE_SIZEOF_VOID_P 8)
         endif()