[Cmake-commits] [cmake-commits] king committed cmComputeLinkInformation.cxx 1.44 1.45 cmDocumentVariables.cxx 1.31 1.32

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Jun 3 15:08:33 EDT 2009


Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv18480/Source

Modified Files:
	cmComputeLinkInformation.cxx cmDocumentVariables.cxx 
Log Message:
BUG: Recognize .so shared libraries on HP-UX

HP-UX uses both .sl and .so as extensions for shared libraries.  This
teaches CMake to recognize .so shared libraries so they are treated
properly during link dependency analysis.


Index: cmDocumentVariables.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmDocumentVariables.cxx,v
retrieving revision 1.31
retrieving revision 1.32
diff -C 2 -d -r1.31 -r1.32
*** cmDocumentVariables.cxx	14 May 2009 13:27:32 -0000	1.31
--- cmDocumentVariables.cxx	3 Jun 2009 19:08:30 -0000	1.32
***************
*** 378,381 ****
--- 378,390 ----
       false,
       "Variables that Provide Information");
+   cm->DefineProperty
+     ("CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES", cmProperty::VARIABLE,
+      "Additional suffixes for shared libraries.",
+      "Extensions for shared libraries other than that specified by "
+      "CMAKE_SHARED_LIBRARY_SUFFIX, if any.  "
+      "CMake uses this to recognize external shared library files during "
+      "analysis of libraries linked by a target.",
+      false,
+      "Variables that Provide Information");
  
  

Index: cmComputeLinkInformation.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmComputeLinkInformation.cxx,v
retrieving revision 1.44
retrieving revision 1.45
diff -C 2 -d -r1.44 -r1.45
*** cmComputeLinkInformation.cxx	15 Sep 2008 17:30:07 -0000	1.44
--- cmComputeLinkInformation.cxx	3 Jun 2009 19:08:30 -0000	1.45
***************
*** 815,818 ****
--- 815,829 ----
        }
      }
+   if(const char* sharedSuffixes =
+      mf->GetDefinition("CMAKE_EXTRA_SHARED_LIBRARY_SUFFIXES"))
+     {
+     std::vector<std::string> sharedSuffixVec;
+     cmSystemTools::ExpandListArgument(sharedSuffixes, sharedSuffixVec);
+     for(std::vector<std::string>::iterator i = sharedSuffixVec.begin();
+         i != sharedSuffixVec.end(); ++i)
+       {
+       this->AddLinkExtension(i->c_str(), LinkShared);
+       }
+     }
  
    // Compute a regex to match link extensions.



More information about the Cmake-commits mailing list