فهرست منبع

OS X: Improvements for getting install name of dylib.

In the case of a multi-arch dylib where none of the architectures
is the host architecture, otool -D returned multiple install names.
Clinton Stimpson 12 سال پیش
والد
کامیت
ff01f8b600
1فایلهای تغییر یافته به همراه4 افزوده شده و 1 حذف شده
  1. 4 1
      Source/cmSystemTools.cxx

+ 4 - 1
Source/cmSystemTools.cxx

@@ -2425,7 +2425,10 @@ bool cmSystemTools::GuessLibraryInstallName(std::string const& fullPath,
   RunSingleCommand(cmds, &output, 0, 0, OUTPUT_NONE);
 
   std::vector<std::string> strs = cmSystemTools::tokenize(output, "\n");
-  if(strs.size() == 2)
+  // otool returns extra lines reporting multiple install names
+  // in case the binary is multi-arch and none of the architectures
+  // is native (e.g. i386;ppc on x86_64)
+  if(strs.size() >= 2)
     {
     soname = strs[1];
     return true;