There were recent bug fixes pushed to CMake 'next' (and I believe now to 'master' as well) to address the "headerpad_max_install_names" portion of this discussion. It should be passed with "-Wl," now so that it passes through to the linker on the Mac.
This particular error should go away if you use a nightly dev build of CMake. Try that and let us know if you get farther with nightly cmake. Thanks, David On Wed, Dec 22, 2010 at 5:34 PM, Richard Wackerbarth <[email protected]>wrote: > On Dec 22, 2010, at 3:24 PM, Bill Hoffman wrote: > > > So, Darwin-icc.cmake is for the Intel compiler on the Mac. The intel > compiler does not want and can not have the -Wl, syntax. These modules need > to be updated to the new way of handling compilers. > > If you will point me toward an example of "the new way", I will try to > generate some patches for your review. > > BTW, I been looking at some of this code in order to get ObjC to compile > correctly with different SDKs. > > In doing so, it appears that the cmSystemTools::FileFormat routines are no > longer used anywhere. > If I am correct, that code should be purged in order to minimize confusion. > > From df901a217e1d0ed9e472472ca86d9ac5aa1e6db6 Mon Sep 17 00:00:00 2001 > Date: Fri, 17 Dec 2010 18:32:05 -0600 > Subject: [PATCH] File Format is now determined within the Compiler-Specific > Modules > > --- > Source/cmSystemTools.cxx | 65 > ---------------------------------------------- > Source/cmSystemTools.h | 24 ----------------- > 2 files changed, 0 insertions(+), 89 deletions(-) > > diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx > index 7bc89a4..31ceaa3 100644 > --- a/Source/cmSystemTools.cxx > +++ b/Source/cmSystemTools.cxx > @@ -1432,71 +1432,6 @@ bool cmSystemTools::SimpleGlob(const cmStdString& > glob, > return res; > } > > -cmSystemTools::FileFormat cmSystemTools::GetFileFormat(const char* cext) > -{ > - if ( ! cext || *cext == 0 ) > - { > - return cmSystemTools::NO_FILE_FORMAT; > - } > - //std::string ext = cmSystemTools::LowerCase(cext); > - std::string ext = cext; > - if ( ext == "c" || ext == ".c" || > - ext == "m" || ext == ".m" > - ) { return cmSystemTools::C_FILE_FORMAT; } > - if ( > - ext == "C" || ext == ".C" || > - ext == "M" || ext == ".M" || > - ext == "c++" || ext == ".c++" || > - ext == "cc" || ext == ".cc" || > - ext == "cpp" || ext == ".cpp" || > - ext == "cxx" || ext == ".cxx" || > - ext == "mm" || ext == ".mm" > - ) { return cmSystemTools::CXX_FILE_FORMAT; } > - if ( > - ext == "f" || ext == ".f" || > - ext == "F" || ext == ".F" || > - ext == "f77" || ext == ".f77" || > - ext == "f90" || ext == ".f90" || > - ext == "for" || ext == ".for" || > - ext == "f95" || ext == ".f95" > - ) { return cmSystemTools::FORTRAN_FILE_FORMAT; } > - if ( ext == "java" || ext == ".java" ) > - { return cmSystemTools::JAVA_FILE_FORMAT; } > - if ( > - ext == "H" || ext == ".H" || > - ext == "h" || ext == ".h" || > - ext == "h++" || ext == ".h++" || > - ext == "hm" || ext == ".hm" || > - ext == "hpp" || ext == ".hpp" || > - ext == "hxx" || ext == ".hxx" || > - ext == "in" || ext == ".in" || > - ext == "txx" || ext == ".txx" > - ) { return cmSystemTools::HEADER_FILE_FORMAT; } > - if ( ext == "rc" || ext == ".rc" ) > - { return cmSystemTools::RESOURCE_FILE_FORMAT; } > - if ( ext == "def" || ext == ".def" ) > - { return cmSystemTools::DEFINITION_FILE_FORMAT; } > - if ( ext == "lib" || ext == ".lib" || > - ext == "a" || ext == ".a") > - { return cmSystemTools::STATIC_LIBRARY_FILE_FORMAT; } > - if ( ext == "o" || ext == ".o" || > - ext == "obj" || ext == ".obj") > - { return cmSystemTools::OBJECT_FILE_FORMAT; } > -#ifdef __APPLE__ > - if ( ext == "dylib" || ext == ".dylib" ) > - { return cmSystemTools::SHARED_LIBRARY_FILE_FORMAT; } > - if ( ext == "so" || ext == ".so" || > - ext == "bundle" || ext == ".bundle" ) > - { return cmSystemTools::MODULE_FILE_FORMAT; } > -#else // __APPLE__ > - if ( ext == "so" || ext == ".so" || > - ext == "sl" || ext == ".sl" || > - ext == "dll" || ext == ".dll" ) > - { return cmSystemTools::SHARED_LIBRARY_FILE_FORMAT; } > -#endif // __APPLE__ > - return cmSystemTools::UNKNOWN_FILE_FORMAT; > -} > - > bool cmSystemTools::Split(const char* s, std::vector<cmStdString>& l) > { > std::vector<std::string> temp; > diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h > index 6f9147c..ad7ddc3 100644 > --- a/Source/cmSystemTools.h > +++ b/Source/cmSystemTools.h > @@ -249,25 +249,6 @@ public: > static void EnableRunCommandOutput() {s_DisableRunCommandOutput = false; > } > static bool GetRunCommandOutput() { return s_DisableRunCommandOutput; } > > - /** > - * Come constants for different file formats. > - */ > - enum FileFormat { > - NO_FILE_FORMAT = 0, > - C_FILE_FORMAT, > - CXX_FILE_FORMAT, > - FORTRAN_FILE_FORMAT, > - JAVA_FILE_FORMAT, > - HEADER_FILE_FORMAT, > - RESOURCE_FILE_FORMAT, > - DEFINITION_FILE_FORMAT, > - STATIC_LIBRARY_FILE_FORMAT, > - SHARED_LIBRARY_FILE_FORMAT, > - MODULE_FILE_FORMAT, > - OBJECT_FILE_FORMAT, > - UNKNOWN_FILE_FORMAT > - }; > - > enum CompareOp { > OP_LESS, > OP_GREATER, > @@ -280,11 +261,6 @@ public: > static bool VersionCompare(CompareOp op, const char* lhs, const char* > rhs); > > /** > - * Determine the file type based on the extension > - */ > - static FileFormat GetFileFormat(const char* ext); > - > - /** > * On Windows 9x we need a comspec (command.com) substitute to run > * programs correctly. This string has to be constant available > * through the running of program. This method does not create a copy. > -- > 1.7.1+GitX > _______________________________________________ > Powered by www.kitware.com > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Follow this link to subscribe/unsubscribe: > http://www.cmake.org/mailman/listinfo/cmake >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake
