summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2001-02-12 19:26:25 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2001-02-12 19:26:25 (GMT)
commitd195c01a900c24df9b4ff262cd4dbb9fd901592b (patch)
tree5db9a5c3b4716024f900846ecabf5de8648eec35 /Source
parent452a127004220c10354fc986f69b66580ce7de31 (diff)
downloadCMake-d195c01a900c24df9b4ff262cd4dbb9fd901592b.zip
CMake-d195c01a900c24df9b4ff262cd4dbb9fd901592b.tar.gz
CMake-d195c01a900c24df9b4ff262cd4dbb9fd901592b.tar.bz2
ENH: add cache manager class, move all commands into cmCommands.cxx to speed up compile times, share a .lib with the command line and mfc versions.
Diffstat (limited to 'Source')
-rw-r--r--Source/CMakeLib.dsp280
-rw-r--r--Source/CMakeSetup.dsw12
-rw-r--r--Source/CMakeSetupCMD.cxx2
-rw-r--r--Source/CMakeSetupCMD.dsp468
-rw-r--r--Source/MFCDialog/CMakeSetup.dsp281
-rw-r--r--Source/MFCDialog/CMakeSetupDialog.cpp3
-rw-r--r--Source/Makefile.in43
-rw-r--r--Source/cmCacheManager.cxx117
-rw-r--r--Source/cmCacheManager.h72
-rw-r--r--Source/cmCommands.cxx20
-rw-r--r--Source/cmConfigureHeaderCommand.cxx34
-rw-r--r--Source/cmConfigureHeaderCommand.h69
-rw-r--r--Source/cmDSWMakefile.cxx2
-rw-r--r--Source/cmDSWWriter.cxx2
-rw-r--r--Source/cmMSProjectGenerator.h7
15 files changed, 725 insertions, 687 deletions
diff --git a/Source/CMakeLib.dsp b/Source/CMakeLib.dsp
new file mode 100644
index 0000000..56a982e
--- /dev/null
+++ b/Source/CMakeLib.dsp
@@ -0,0 +1,280 @@
+# Microsoft Developer Studio Project File - Name="CMakeLib" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Static Library" 0x0104
+
+CFG=CMakeLib - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "CMakeLib.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "CMakeLib.mak" CFG="CMakeLib - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "CMakeLib - Win32 Release" (based on "Win32 (x86) Static Library")
+!MESSAGE "CMakeLib - Win32 Debug" (based on "Win32 (x86) Static Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "CMakeLib - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
+# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LIB32=link.exe -lib
+# ADD BASE LIB32 /nologo
+# ADD LIB32 /nologo
+
+!ELSEIF "$(CFG)" == "CMakeLib - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LIB32=link.exe -lib
+# ADD BASE LIB32 /nologo
+# ADD LIB32 /nologo
+
+!ENDIF
+
+# Begin Target
+
+# Name "CMakeLib - Win32 Release"
+# Name "CMakeLib - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=..\cmCacheManager.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmClassFile.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmCommands.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDirectory.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDSPMakefile.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDSWMakefile.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMakefile.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMakefileGenerator.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMSProjectGenerator.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmRegularExpression.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmSystemTools.cxx
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmWindowsConfigure.cxx
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# Begin Source File
+
+SOURCE=..\cmAbstractFilesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmAddTargetCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmAuxSourceDirectoryCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmCacheManager.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmClassFile.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDirectory.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDSPMakefile.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmDSWMakefile.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmExecutablesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmFindIncludeCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmFindLibraryCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmFindProgramCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmIncludeDirectoryCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmLibraryCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmLinkDirectoriesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmLinkLibrariesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMakeDepend.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMakefile.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMakefileGenerator.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmMSProjectGenerator.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmProjectCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmRegularExpression.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmSourceFilesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmSourceFilesRequireCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmStandardIncludes.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmSubdirCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmSystemTools.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmTestsCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmUnixDefinesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmUnixLibrariesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmUnixMakefileGenerator.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmWin32DefinesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmWin32LibrariesCommand.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\cmWindowsConfigure.h
+# End Source File
+# End Group
+# End Target
+# End Project
diff --git a/Source/CMakeSetup.dsw b/Source/CMakeSetup.dsw
index 353ff46..9dc9239 100644
--- a/Source/CMakeSetup.dsw
+++ b/Source/CMakeSetup.dsw
@@ -3,6 +3,18 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
###############################################################################
+Project: "CMakeLib"=.\CMakeLib.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
Project: "CMakeSetup"=.\MFCDialog\CMakeSetup.dsp - Package Owner=<4>
Package=<5>
diff --git a/Source/CMakeSetupCMD.cxx b/Source/CMakeSetupCMD.cxx
index cfcf690..81db439 100644
--- a/Source/CMakeSetupCMD.cxx
+++ b/Source/CMakeSetupCMD.cxx
@@ -69,7 +69,7 @@ int main(int ac, char** av)
cmMSProjectGenerator* pg = new cmMSProjectGenerator;
if(arg.find("-DSP", 0) != std::string::npos)
{
- pg->BuildDSPOff();
+ pg->BuildDSWOff();
}
else
{
diff --git a/Source/CMakeSetupCMD.dsp b/Source/CMakeSetupCMD.dsp
index f10dedd..3078318 100644
--- a/Source/CMakeSetupCMD.dsp
+++ b/Source/CMakeSetupCMD.dsp
@@ -1,362 +1,106 @@
-# Microsoft Developer Studio Project File - Name="CMakeSetupCMD" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Application" 0x0101
-
-CFG=CMakeSetupCMD - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "CMakeSetupCMD.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "CMakeSetupCMD.mak" CFG="CMakeSetupCMD - Win32 Debug"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "CMakeSetupCMD - Win32 Release" (based on "Win32 (x86) Application")
-!MESSAGE "CMakeSetupCMD - Win32 Debug" (based on "Win32 (x86) Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "CMakeSetupCMD - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir ""
-# PROP Intermediate_Dir "Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GR /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GR /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF "$(CFG)" == "CMakeSetupCMD - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir ""
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /W3 /Gm /GR /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GR /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "CMakeSetupCMD - Win32 Release"
-# Name "CMakeSetupCMD - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\cmAbstractFilesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmAddTargetCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\CMakeSetupCMD.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmAuxSourceDirectoryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmClassFile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDirectory.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDSPMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDSWMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmExecutablesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindIncludeCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindLibraryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindProgramCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmIncludeDirectoryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLibraryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLinkDirectoriesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLinkLibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakeDepend.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakefileGenerator.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMSProjectGenerator.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmProjectCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmRegularExpression.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSourceFilesRequireCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSourceFilesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSubdirCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSystemTools.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmTestsCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmUnixDefinesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmUnixLibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWin32DefinesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWin32LibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWindowsConfigure.cxx
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\cmAbstractFilesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmAddTargetCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmAuxSourceDirectoryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmClassFile.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDirectory.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDSPMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmDSWMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmExecutablesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindIncludeCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindLibraryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmFindProgramCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmIncludeDirectoryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLibraryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLinkDirectoriesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmLinkLibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakeDepend.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakefile2.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMakefileGenerator.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmMSProjectGenerator.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmProjectCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmRegularExpression.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSourceFilesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmStandardIncludes.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSubdirCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmSystemTools.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmTestsCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmUnixDefinesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmUnixLibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWin32DefinesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWin32LibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\cmWindowsConfigure.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
+# Microsoft Developer Studio Project File - Name="CMakeSetupCMD" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Application" 0x0101
+
+CFG=CMakeSetupCMD - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "CMakeSetupCMD.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "CMakeSetupCMD.mak" CFG="CMakeSetupCMD - Win32 Debug"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "CMakeSetupCMD - Win32 Release" (based on "Win32 (x86) Application")
+!MESSAGE "CMakeSetupCMD - Win32 Debug" (based on "Win32 (x86) Application")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "CMakeSetupCMD - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir ""
+# PROP Intermediate_Dir "Release"
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /W3 /GR /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /GR /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+
+!ELSEIF "$(CFG)" == "CMakeSetupCMD - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir ""
+# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /W3 /Gm /GR /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
+# ADD CPP /nologo /W3 /Gm /GR /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+
+!ENDIF
+
+# Begin Target
+
+# Name "CMakeSetupCMD - Win32 Release"
+# Name "CMakeSetupCMD - Win32 Debug"
+# Begin Group "Source Files"
+
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
+# Begin Source File
+
+SOURCE=.\CMakeSetupCMD.cxx
+# End Source File
+# End Group
+# Begin Group "Header Files"
+
+# PROP Default_Filter "h;hpp;hxx;hm;inl"
+# End Group
+# Begin Group "Resource Files"
+
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
+# End Group
+# End Target
+# End Project
diff --git a/Source/MFCDialog/CMakeSetup.dsp b/Source/MFCDialog/CMakeSetup.dsp
index 7a2dea1..ec04234 100644
--- a/Source/MFCDialog/CMakeSetup.dsp
+++ b/Source/MFCDialog/CMakeSetup.dsp
@@ -53,7 +53,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:windows /machine:I386
-# ADD LINK32 /nologo /subsystem:windows /machine:I386
+# ADD LINK32 Release/CMakeLib.lib /nologo /subsystem:windows /machine:I386
!ELSEIF "$(CFG)" == "CMakeSetup - Win32 Debug"
@@ -66,6 +66,7 @@ LINK32=link.exe
# PROP Use_Debug_Libraries 1
# PROP Output_Dir ".."
# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /Yu"stdafx.h" /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /D "_MBCS" /FD /GZ /c
@@ -79,7 +80,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 Debug/CMakeLib.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
!ENDIF
@@ -92,14 +93,6 @@ LINK32=link.exe
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
-SOURCE=..\cmAbstractFilesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmAddTargetCommand.cxx
-# End Source File
-# Begin Source File
-
SOURCE=.\CMakeSetup.cpp
# End Source File
# Begin Source File
@@ -108,130 +101,10 @@ SOURCE=.\CMakeSetup.rc
# End Source File
# Begin Source File
-SOURCE=..\CMakeSetupCMD.cxx
-# End Source File
-# Begin Source File
-
SOURCE=.\CMakeSetupDialog.cpp
# End Source File
# Begin Source File
-SOURCE=..\cmAuxSourceDirectoryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmClassFile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDirectory.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSPMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSWMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmExecutablesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindIncludeCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindLibraryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindProgramCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmIncludeDirectoryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLibraryCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLinkDirectoriesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLinkLibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakeDepend.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakefile.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakefileGenerator.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMSProjectGenerator.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmProjectCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmRegularExpression.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSourceFilesRequireCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSourceFilesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSubdirCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSystemTools.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmTestsCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmUnixDefinesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmUnixLibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWin32DefinesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWin32LibrariesCommand.cxx
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWindowsConfigure.cxx
-# End Source File
-# Begin Source File
-
SOURCE=.\StdAfx.cpp
# ADD CPP /Yc"stdafx.h"
# End Source File
@@ -241,18 +114,6 @@ SOURCE=.\StdAfx.cpp
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
-SOURCE=..\cmAbstractFilesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmAddTargetCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\CMakeSetup.h
-# End Source File
-# Begin Source File
-
SOURCE=.\CMakeSetup.h
# End Source File
# Begin Source File
@@ -261,142 +122,6 @@ SOURCE=.\CMakeSetupDialog.h
# End Source File
# Begin Source File
-SOURCE=..\cmAuxSourceDirectoryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmClassFile.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDirectory.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSPBuilder.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSPMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSWBuilder.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmDSWMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmExecutablesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindIncludeCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindLibraryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmFindProgramCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmIncludeDirectoryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLibraryCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLinkDirectoriesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmLinkLibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakeDepend.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakefile.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakefile2.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMakefileGenerator.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmMSProjectGenerator.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmProjectCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmRegularExpression.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmCommandMaker.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSourceFilesRequireCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSourceFilesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmStandardIncludes.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSubdirCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmSystemTools.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmTestsCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmUnixDefinesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmUnixLibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWin32DefinesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWin32LibrariesCommand.h
-# End Source File
-# Begin Source File
-
-SOURCE=..\cmWindowsConfigure.h
-# End Source File
-# Begin Source File
-
SOURCE=.\Resource.h
# End Source File
# Begin Source File
diff --git a/Source/MFCDialog/CMakeSetupDialog.cpp b/Source/MFCDialog/CMakeSetupDialog.cpp
index cf53d50..2a739c7 100644
--- a/Source/MFCDialog/CMakeSetupDialog.cpp
+++ b/Source/MFCDialog/CMakeSetupDialog.cpp
@@ -265,8 +265,7 @@ void CMakeSetupDialog::OnOK()
error += configSrc;
::MessageBox(0, error.c_str(), "config ERROR", MB_OK);
}
-
-
+
cmMakefile mf;
mf.SetMakefileGenerator(new cmMSProjectGenerator);
mf.SetHomeDirectory(m_WhereSource);
diff --git a/Source/Makefile.in b/Source/Makefile.in
index 2d5c15e..d28afda 100644
--- a/Source/Makefile.in
+++ b/Source/Makefile.in
@@ -13,64 +13,27 @@ OBJS = \
CMakeBuildTargets.o \
cmMakeDepend.o \
cmMakefile.o \
-cmAbstractFilesCommand.o \
cmMakefileGenerator.o \
-cmAddTargetCommand.o \
-cmProjectCommand.o \
-cmAuxSourceDirectoryCommand.o \
cmRegularExpression.o \
cmClassFile.o \
-cmSourceFilesCommand.o \
-cmSourceFilesRequireCommand.o \
-cmSubdirCommand.o \
cmSystemTools.o \
cmDirectory.o \
-cmUnixDefinesCommand.o \
-cmExecutablesCommand.o \
-cmTestsCommand.o \
-cmUnixLibrariesCommand.o \
-cmFindIncludeCommand.o \
-cmFindLibraryCommand.o \
cmUnixMakefileGenerator.o \
-cmFindProgramCommand.o \
-cmIncludeDirectoryCommand.o \
-cmWin32DefinesCommand.o \
-cmLibraryCommand.o \
-cmWin32LibrariesCommand.o \
-cmLinkDirectoriesCommand.o \
-cmLinkLibrariesCommand.o
+cmCommands.o
cmCollectFlags.o : $(srcdir)/*.h
CMakeBuildTargets.o : $(srcdir)/*.h
cmMakeDepend.o : $(srcdir)/*.h
cmMakefile.o : $(srcdir)/*.h
-cmAbstractFilesCommand.o : $(srcdir)/*.h
cmMakefileGenerator.o : $(srcdir)/*.h
-cmAddTargetCommand.o : $(srcdir)/*.h
-cmProjectCommand.o : $(srcdir)/*.h
cmAuxSourceDirectoryCommand.o : $(srcdir)/*.h
cmRegularExpression.o : $(srcdir)/*.h
cmClassFile.o : $(srcdir)/*.h
-cmSourceFilesCommand.o : $(srcdir)/*.h
-cmSourceFilesRequireCommand.o : $(srcdir)/*.h
-cmSubdirCommand.o : $(srcdir)/*.h
-cmSystemTools.o : $(srcdir)/*.h
cmDirectory.o : $(srcdir)/*.h
-cmUnixDefinesCommand.o : $(srcdir)/*.h
-cmExecutablesCommand.o : $(srcdir)/*.h
-cmTestsCommand.o : $(srcdir)/*.h
-cmUnixLibrariesCommand.o : $(srcdir)/*.h
-cmFindIncludeCommand.o : $(srcdir)/*.h
-cmFindLibraryCommand.o : $(srcdir)/*.h
cmUnixMakefileGenerator.o : $(srcdir)/*.h
-cmFindProgramCommand.o : $(srcdir)/*.h
-cmIncludeDirectoryCommand.o : $(srcdir)/*.h
-cmWin32DefinesCommand.o : $(srcdir)/*.h
-cmLibraryCommand.o : $(srcdir)/*.h
-cmWin32LibrariesCommand.o : $(srcdir)/*.h
-cmLinkDirectoriesCommand.o : $(srcdir)/*.h
-cmLinkLibrariesCommand.o : $(srcdir)/*.h
+cmCommands.o : $(srcdir)/*.h
+
CMakeBuildTargets: ${OBJS}
diff --git a/Source/cmCacheManager.cxx b/Source/cmCacheManager.cxx
new file mode 100644
index 0000000..79d6366
--- /dev/null
+++ b/Source/cmCacheManager.cxx
@@ -0,0 +1,117 @@
+/*=========================================================================
+
+ Program: Insight Segmentation & Registration Toolkit
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+
+ Copyright (c) 2000 National Library of Medicine
+ All rights reserved.
+
+ See COPYRIGHT.txt for copyright details.
+
+=========================================================================*/
+
+#include "cmCacheManager.h"
+#include "cmSystemTools.h"
+
+const char* cmCacheManagerTypes[] =
+{ "BOOL",
+ "PATH",
+ "STRING",
+ 0
+};
+
+cmCacheManager::CacheEntryType cmCacheManager::StringToType(const char* s)
+{
+ int i = 0;
+ while(cmCacheManagerTypes[i])
+ {
+ if(strcmp(s, cmCacheManagerTypes[i]) == 0)
+ {
+ return static_cast<CacheEntryType>(i);
+ }
+ }
+ return STRING;
+}
+
+
+cmCacheManager* cmCacheManager::s_Instance = 0;
+
+cmCacheManager* cmCacheManager::GetInstance()
+{
+ if(!cmCacheManager::s_Instance)
+ {
+ cmCacheManager::s_Instance = new cmCacheManager;
+ }
+ return cmCacheManager::s_Instance;
+}
+
+
+
+bool cmCacheManager::LoadCache(const char* path)
+{
+ std::ifstream fin(path);
+ if(!fin)
+ {
+ cmSystemTools::Error("Unable to open cache file for load. ", path);
+ return false;
+ }
+ const int bsize = 4096;
+ char buffer[bsize];
+ std::string inputLine;
+ while(fin)
+ {
+ CacheEntry e;
+ std::string key;
+ fin.getline(buffer, bsize, '|');
+ key = buffer;
+ fin.getline(buffer, bsize, '|');
+ e.m_Value = buffer;
+ fin.getline(buffer, bsize); // last token is separated by a newline
+ e.m_Type = cmCacheManager::StringToType(buffer);
+ if(fin)
+ {
+ m_Cache[key] = e;
+ }
+ }
+}
+
+bool cmCacheManager::SaveCache(const char* path)
+{
+ std::ofstream fout(path);
+ if(!fout)
+ {
+ cmSystemTools::Error("Unable to open cache file for save. ", path);
+ return false;
+ }
+ for( std::map<std::string, CacheEntry>::iterator i = m_Cache.begin();
+ i != m_Cache.end(); ++i)
+ {
+ fout << (*i).first.c_str() << " | " << (*i).second.m_Value << " | ";
+ CacheEntryType t = (*i).second.m_Type;
+ fout << cmCacheManagerTypes[t];
+ }
+ fout << "\n";
+}
+
+void cmCacheManager::AddCacheEntry(const char* key,
+ const char* value,
+ CacheEntryType type)
+{
+ CacheEntry e;
+ e.m_Value = value;
+ e.m_Type = type;
+ m_Cache[key] = e;
+}
+
+const char* cmCacheManager::GetCacheValue(const char* key)
+{
+ if(m_Cache.count(key))
+ {
+ return m_Cache[key].m_Value.c_str();
+ }
+ return 0;
+}
diff --git a/Source/cmCacheManager.h b/Source/cmCacheManager.h
new file mode 100644
index 0000000..580f40f
--- /dev/null
+++ b/Source/cmCacheManager.h
@@ -0,0 +1,72 @@
+/*=========================================================================
+
+ Program: Insight Segmentation & Registration Toolkit
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+
+ Copyright (c) 2000 National Library of Medicine
+ All rights reserved.
+
+ See COPYRIGHT.txt for copyright details.
+
+=========================================================================*/
+#ifndef cmCacheManager_h
+#define cmCacheManager_h
+
+#include "cmStandardIncludes.h"
+
+/** \class cmCacheManager
+ * \brief Control class for cmake's cache
+ *
+ * Load and Save CMake cache files.
+ *
+ */
+class cmCacheManager
+{
+public:
+ /**
+ * Types for the cache entries. These are useful as
+ * hints for a cache editor program. Path should bring
+ * up a file chooser, BOOL a check box, and STRING a
+ * text entry box.
+ */
+ enum CacheEntryType{ BOOL=0, PATH, STRING };
+ static CacheEntryType StringToType(const char*);
+ /**
+ * Singleton pattern get instance of the cmCacheManager.
+ */
+ static cmCacheManager* GetInstance();
+ /**
+ * Load a cache from file
+ */
+ bool LoadCache(const char* path);
+
+ /**
+ * Save the cache to a file
+ */
+ bool SaveCache(const char* path);
+
+ /**
+ * Add an entry into the cache
+ */
+ void AddCacheEntry(const char* key, const char* value, CacheEntryType type);
+
+ /**
+ * Get a value from the cache given a key
+ */
+ const char* GetCacheValue(const char* key);
+private:
+ static cmCacheManager* s_Instance;
+ class CacheEntry
+ {
+ public:
+ std::string m_Value;
+ CacheEntryType m_Type;
+ };
+ std::map<std::string, CacheEntry> m_Cache;
+};
+
+#endif
diff --git a/Source/cmCommands.cxx b/Source/cmCommands.cxx
new file mode 100644
index 0000000..e6cf4b7
--- /dev/null
+++ b/Source/cmCommands.cxx
@@ -0,0 +1,20 @@
+#include "cmAbstractFilesCommand.cxx"
+#include "cmAddTargetCommand.cxx"
+#include "cmAuxSourceDirectoryCommand.cxx"
+#include "cmExecutablesCommand.cxx"
+#include "cmFindIncludeCommand.cxx"
+#include "cmFindLibraryCommand.cxx"
+#include "cmFindProgramCommand.cxx"
+#include "cmIncludeDirectoryCommand.cxx"
+#include "cmLibraryCommand.cxx"
+#include "cmLinkDirectoriesCommand.cxx"
+#include "cmLinkLibrariesCommand.cxx"
+#include "cmProjectCommand.cxx"
+#include "cmSourceFilesCommand.cxx"
+#include "cmSourceFilesRequireCommand.cxx"
+#include "cmSubdirCommand.cxx"
+#include "cmTestsCommand.cxx"
+#include "cmUnixDefinesCommand.cxx"
+#include "cmUnixLibrariesCommand.cxx"
+#include "cmWin32DefinesCommand.cxx"
+#include "cmWin32LibrariesCommand.cxx"
diff --git a/Source/cmConfigureHeaderCommand.cxx b/Source/cmConfigureHeaderCommand.cxx
new file mode 100644
index 0000000..28f6cb8
--- /dev/null
+++ b/Source/cmConfigureHeaderCommand.cxx
@@ -0,0 +1,34 @@
+/*=========================================================================
+
+ Program: Insight Segmentation & Registration Toolkit
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+
+ Copyright (c) 2000 National Library of Medicine
+ All rights reserved.
+
+ See COPYRIGHT.txt for copyright details.
+
+=========================================================================*/
+#include "cmConfigureHeaderCommand.h"
+
+// cmConfigureHeaderCommand
+bool cmConfigureHeaderCommand::Invoke(std::vector<std::string>& args)
+{
+ if(args.size() != 2 )
+ {
+ this->SetError("called with incorrect number of arguments, expected 2");
+ return false;
+ }
+ m_InputFile = args[0];
+ m_OuputFile = args[1];
+ return true;
+}
+
+void cmConfigureHeaderCommand::FinalPass()
+{
+
+}
diff --git a/Source/cmConfigureHeaderCommand.h b/Source/cmConfigureHeaderCommand.h
new file mode 100644
index 0000000..0680db5
--- /dev/null
+++ b/Source/cmConfigureHeaderCommand.h
@@ -0,0 +1,69 @@
+/*=========================================================================
+
+ Program: Insight Segmentation & Registration Toolkit
+ Module: $RCSfile$
+ Language: C++
+ Date: $Date$
+ Version: $Revision$
+
+
+ Copyright (c) 2000 National Library of Medicine
+ All rights reserved.
+
+ See COPYRIGHT.txt for copyright details.
+
+=========================================================================*/
+#ifndef cmConfigureHeaderCommand_h
+#define cmConfigureHeaderCommand_h
+
+#include "cmStandardIncludes.h"
+#include "cmCommand.h"
+
+class cmConfigureHeaderCommand : public cmCommand
+{
+public:
+ virtual cmCommand* Clone()
+ {
+ return new cmConfigureHeaderCommand;
+ }
+
+ /**
+ * This is called when the command is first encountered in
+ * the input file.
+ */
+ virtual bool Invoke(std::vector<std::string>& args);
+
+ /**
+ * The name of the command as specified in CMakeList.txt.
+ */
+ virtual const char* GetName() { return "CONFIGURE_HEADER";}
+
+ /**
+ * Succinct documentation.
+ */
+ virtual const char* GetTerseDocumentation()
+ {
+ return "Create a header file from an autoconf style header.h.in file.";
+ }
+
+ /**
+ * Longer documentation.
+ */
+ virtual const char* GetFullDocumentation()
+ {
+ return
+ "CONFIGURE_HEADER(InputFile OutputFile)\n"
+ "The Input and Ouput files have to have full paths.\n"
+ "They can also use variables like CMAKE_BINARY_DIR, CMAKE_SOURCE_DIR\n";
+ }
+
+ /**
+ * Create the header files in this pass. This is so
+ * all varibles can be expaned.
+ */
+ virtual void FinalPass();
+};
+
+
+
+#endif
diff --git a/Source/cmDSWMakefile.cxx b/Source/cmDSWMakefile.cxx
index 1b643a9..e8db5d4 100644
--- a/Source/cmDSWMakefile.cxx
+++ b/Source/cmDSWMakefile.cxx
@@ -85,7 +85,7 @@ cmDSWMakefile
{
// Create a new cmDSPMakefile to read the currentDir CMakeLists.txt file
cmMSProjectGenerator* pg = new cmMSProjectGenerator;
- pg->BuildDSPOff();
+ pg->BuildDSWOff();
cmMakefile* mf = new cmMakefile;
mf->SetMakefileGenerator(pg);
// add it to the vector
diff --git a/Source/cmDSWWriter.cxx b/Source/cmDSWWriter.cxx
index 1b643a9..e8db5d4 100644
--- a/Source/cmDSWWriter.cxx
+++ b/Source/cmDSWWriter.cxx
@@ -85,7 +85,7 @@ cmDSWMakefile
{
// Create a new cmDSPMakefile to read the currentDir CMakeLists.txt file
cmMSProjectGenerator* pg = new cmMSProjectGenerator;
- pg->BuildDSPOff();
+ pg->BuildDSWOff();
cmMakefile* mf = new cmMakefile;
mf->SetMakefileGenerator(pg);
// add it to the vector
diff --git a/Source/cmMSProjectGenerator.h b/Source/cmMSProjectGenerator.h
index e572db7..6bdf511 100644
--- a/Source/cmMSProjectGenerator.h
+++ b/Source/cmMSProjectGenerator.h
@@ -46,9 +46,12 @@ public:
virtual void GenerateMakefile();
/**
- * Turn off the generation of a Microsoft Visual C++ DSP file.
+ * Turn off the generation of a Microsoft Visual C++ DSW file.
+ * This causes only the dsp file to be created. This
+ * is used to run as a command line program from inside visual
+ * studio.
*/
- void BuildDSPOff()
+ void BuildDSWOff()
{m_BuildDSW = false;}
/**