Browse Source

fixed bootstrap build to not use LoadCOmmandCOmmand

Ken Martin 23 years ago
parent
commit
716eb19819
2 changed files with 12 additions and 0 deletions
  1. 4 0
      Source/CMakeLists.txt
  2. 8 0
      Source/cmCommands.cxx

+ 4 - 0
Source/CMakeLists.txt

@@ -85,6 +85,10 @@ ADD_EXECUTABLE(cmake cmakemain.cxx)
 ADD_EXECUTABLE(DumpDocumentation cmDumpDocumentation)
 ADD_EXECUTABLE(DumpDocumentation cmDumpDocumentation)
 ADD_EXECUTABLE(ctest ctest.cxx)
 ADD_EXECUTABLE(ctest ctest.cxx)
 
 
+IF (UNIX)
+  TARGET_LINK_LIBRARIES(CMakeLib ${CMAKE_DL_LIBS})
+ENDIF (UNIX)
+
 TARGET_LINK_LIBRARIES(cmake CMakeLib)
 TARGET_LINK_LIBRARIES(cmake CMakeLib)
 TARGET_LINK_LIBRARIES(DumpDocumentation CMakeLib)
 TARGET_LINK_LIBRARIES(DumpDocumentation CMakeLib)
 TARGET_LINK_LIBRARIES(ctest CMakeLib)
 TARGET_LINK_LIBRARIES(ctest CMakeLib)

+ 8 - 0
Source/cmCommands.cxx

@@ -87,7 +87,13 @@
 #include "cmQTWrapUICommand.cxx"
 #include "cmQTWrapUICommand.cxx"
 #include "cmWrapExcludeFilesCommand.cxx"
 #include "cmWrapExcludeFilesCommand.cxx"
 
 
+// on regular builds add in the load command command
+// we do not add it in on the bootstrap because it 
+// requires dynaic loading support etc, which makes
+// the bootstrap configure file a mess
+#if defined(CMAKE_BUILD_WITH_CMAKE)
 #include "cmLoadCommandCommand.cxx"
 #include "cmLoadCommandCommand.cxx"
+#endif
 
 
 void GetPredefinedCommands(std::list<cmCommand*>& commands)
 void GetPredefinedCommands(std::list<cmCommand*>& commands)
 {
 {
@@ -130,7 +136,9 @@ void GetPredefinedCommands(std::list<cmCommand*>& commands)
   commands.push_back(new cmLinkDirectoriesCommand);
   commands.push_back(new cmLinkDirectoriesCommand);
   commands.push_back(new cmLinkLibrariesCommand);
   commands.push_back(new cmLinkLibrariesCommand);
   commands.push_back(new cmLoadCacheCommand);
   commands.push_back(new cmLoadCacheCommand);
+#if defined(CMAKE_BUILD_WITH_CMAKE)
   commands.push_back(new cmLoadCommandCommand);
   commands.push_back(new cmLoadCommandCommand);
+#endif
   commands.push_back(new cmMacroCommand);
   commands.push_back(new cmMacroCommand);
   commands.push_back(new cmMakeDirectoryCommand);
   commands.push_back(new cmMakeDirectoryCommand);
   commands.push_back(new cmMarkAsAdvancedCommand);
   commands.push_back(new cmMarkAsAdvancedCommand);