Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
CMake
CMake
Commits
89e037ee
Commit
89e037ee
authored
Feb 19, 2001
by
Bill Hoffman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ENH: first pass at cache, clean up the unix generator, clean up configure.in some
parent
a4bbb55e
Changes
22
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
647 additions
and
508 deletions
+647
-508
CMakeMakefileTemplate.in
CMakeMakefileTemplate.in
+0
-0
Source/CMakeBuildTargets.cxx
Source/CMakeBuildTargets.cxx
+17
-2
Source/CMakeSetupCMD.cxx
Source/CMakeSetupCMD.cxx
+11
-8
Source/MFCDialog/CMakeSetup.rc
Source/MFCDialog/CMakeSetup.rc
+204
-204
Source/MFCDialog/CMakeSetupDialog.cpp
Source/MFCDialog/CMakeSetupDialog.cpp
+4
-0
Source/MFCDialog/resource.h
Source/MFCDialog/resource.h
+24
-24
Source/Makefile.in
Source/Makefile.in
+3
-1
Source/cmCacheManager.cxx
Source/cmCacheManager.cxx
+27
-12
Source/cmCacheManager.h
Source/cmCacheManager.h
+9
-6
Source/cmCommand.h
Source/cmCommand.h
+2
-6
Source/cmDSWMakefile.cxx
Source/cmDSWMakefile.cxx
+8
-4
Source/cmDSWWriter.cxx
Source/cmDSWWriter.cxx
+8
-4
Source/cmFindIncludeCommand.cxx
Source/cmFindIncludeCommand.cxx
+15
-1
Source/cmFindLibraryCommand.cxx
Source/cmFindLibraryCommand.cxx
+15
-2
Source/cmFindProgramCommand.cxx
Source/cmFindProgramCommand.cxx
+19
-5
Source/cmIncludeDirectoryCommand.cxx
Source/cmIncludeDirectoryCommand.cxx
+1
-1
Source/cmMakefile.cxx
Source/cmMakefile.cxx
+1
-1
Source/cmRegularExpression.h
Source/cmRegularExpression.h
+2
-2
Source/cmSystemTools.cxx
Source/cmSystemTools.cxx
+3
-2
Source/cmUnixMakefileGenerator.cxx
Source/cmUnixMakefileGenerator.cxx
+266
-221
Source/cmUnixMakefileGenerator.h
Source/cmUnixMakefileGenerator.h
+6
-0
configure.in.sample
configure.in.sample
+2
-2
No files found.
MakefileTemplate.in
→
CMake
MakefileTemplate.in
View file @
89e037ee
File moved
Source/CMakeBuildTargets.cxx
View file @
89e037ee
...
...
@@ -17,14 +17,27 @@
#include "cmStandardIncludes.h"
#include "cmMakeDepend.h"
#include "cmUnixMakefileGenerator.h"
#include "cmCacheManager.h"
void
Usage
(
const
char
*
program
)
{
std
::
cerr
<<
"Usage: "
<<
program
<<
" CMakeLists.txt "
<<
"-Ssource_start_directory "
<<
"-Ooutput_start_directory "
<<
"-Hsource_home_directory "
<<
"-Boutput_home_directory
\n
"
<<
"Where start directories are the current place in the tree,"
"and the home directories are the top.
\n
"
;
}
// This is the main program used to gentrate makefile fragments
// from CMakeLists.txt input files.
int
main
(
int
ac
,
char
**
av
)
{
if
(
ac
<
2
)
{
std
::
cerr
<<
"Usage: "
<<
av
[
0
]
<<
" Makefile.in -Ipath ..."
<<
std
::
endl
;
Usage
(
av
[
0
])
;
return
-
1
;
}
// Create a makefile
...
...
@@ -66,10 +79,12 @@ int main(int ac, char** av)
// Read and parse the input makefile
mf
.
MakeStartDirectoriesCurrent
();
cmCacheManager
::
GetInstance
()
->
LoadCache
(
&
mf
);
if
(
!
mf
.
ReadListFile
(
av
[
1
]))
{
std
::
cerr
<<
"Usage: "
<<
av
[
0
]
<<
" Makefile.in -Ipath ..."
<<
std
::
endl
;
Usage
(
av
[
0
])
;
return
-
1
;
}
mf
.
GenerateMakefile
();
cmCacheManager
::
GetInstance
()
->
SaveCache
(
&
mf
);
}
Source/CMakeSetupCMD.cxx
View file @
89e037ee
...
...
@@ -16,6 +16,7 @@
#include "cmStandardIncludes.h"
#include "cmMakefile.h"
#include "cmMSProjectGenerator.h"
#include "cmCacheManager.h"
// this is the command line version of CMakeSetup.
...
...
@@ -59,13 +60,13 @@ int main(int ac, char** av)
if
(
ac
<
3
)
{
std
::
cerr
<<
"Usage: "
<<
av
[
0
]
<<
" CMakeLists.txt -[DSP|DSW] -H
insighthome -Dcurrentdir
"
" -Ooutput
directory"
<<
std
::
endl
;
" CMakeLists.txt -[DSP|DSW] -H
source_home -Sstart_source_directory
"
" -O
start_
output
_
directory
-Boutput_home
"
<<
std
::
endl
;
return
-
1
;
}
std
::
string
arg
=
av
[
2
];
cmMakefile
builder
;
SetArgs
(
builder
,
ac
,
av
);
cmMakefile
makefile
;
SetArgs
(
makefile
,
ac
,
av
);
cmMSProjectGenerator
*
pg
=
new
cmMSProjectGenerator
;
if
(
arg
.
find
(
"-DSP"
,
0
)
!=
std
::
string
::
npos
)
{
...
...
@@ -75,10 +76,12 @@ int main(int ac, char** av)
{
pg
->
BuildDSWOn
();
}
builder
.
SetMakefileGenerator
(
pg
);
builder
.
MakeStartDirectoriesCurrent
();
builder
.
ReadListFile
(
av
[
1
]);
builder
.
GenerateMakefile
();
makefile
.
SetMakefileGenerator
(
pg
);
makefile
.
MakeStartDirectoriesCurrent
();
cmCacheManager
::
GetInstance
()
->
LoadCache
(
&
makefile
);
makefile
.
ReadListFile
(
av
[
1
]);
makefile
.
GenerateMakefile
();
cmCacheManager
::
GetInstance
()
->
SaveCache
(
&
makefile
);
return
0
;
}
Source/MFCDialog/CMakeSetup.rc
View file @
89e037ee
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
"#ifdef _WIN32\r\n"
"LANGUAGE 9, 1\r\n"
"#pragma code_page(1252)\r\n"
"#endif //_WIN32\r\n"
"#include ""res\\CMakeSetupDialog.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
"#include ""afxres.rc"" // Standard components\r\n"
"#endif\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME ICON DISCARDABLE "res\\CMakeSetupDialog.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUTBOX DIALOG DISCARDABLE 0, 0, 235, 55
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About CMakeSetup"
FONT 8, "MS Sans Serif"
BEGIN
ICON IDR_MAINFRAME,IDC_STATIC,11,17,20,20
LTEXT "CMakeSetup Version 1.0",IDC_STATIC,40,10,119,8,
SS_NOPREFIX
LTEXT "Copyright (C) 2000",IDC_STATIC,40,25,119,8
DEFPUSHBUTTON "OK",IDOK,178,7,50,14,WS_GROUP
END
IDD_CMakeSetupDialog_DIALOG DIALOGEX 0, 0, 320, 200
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_APPWINDOW
CAPTION "CMakeSetupDialog"
FONT 8, "MS Sans Serif"
BEGIN
DEFPUSHBUTTON "OK",IDOK,260,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,260,23,50,14
EDITTEXT IDC_WhereSource,13,27,135,13,ES_AUTOHSCROLL
PUSHBUTTON "Browse...",IDC_BUTTON2,150,28,43,13
LTEXT "Where is the source code:",IDC_STATIC,15,15,104,9
EDITTEXT IDC_WhereBuild,14,67,133,13,ES_AUTOHSCROLL
PUSHBUTTON "Browse...",IDC_BUTTON3,151,66,43,13
LTEXT "Where do you want to build the binaries:",IDC_STATIC,16,
56,128,9
END
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904B0"
BEGIN
VALUE "CompanyName", "\0"
VALUE "FileDescription", "CMakeSetup MFC Application\0"
VALUE "FileVersion", "1, 0, 0, 1\0"
VALUE "InternalName", "CMakeSetup\0"
VALUE "LegalCopyright", "Copyright (C) 2000\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "CMakeSetup.EXE\0"
VALUE "ProductName", "CMakeSetup Application\0"
VALUE "ProductVersion", "1, 0, 0, 1\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
#endif // !_MAC
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_ABOUTBOX, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 228
TOPMARGIN, 7
BOTTOMMARGIN, 48
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
IDS_ABOUTBOX "&About CMakeSetup..."
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE 9, 1
#pragma code_page(1252)
#endif //_WIN32
#include "res\CMakeSetupDialog.rc2" // non-Microsoft Visual C++ edited resources
#include "afxres.rc" // Standard components
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"#define _AFX_NO_SPLITTER_RESOURCES\r\n"
"#define _AFX_NO_OLE_RESOURCES\r\n"
"#define _AFX_NO_TRACKER_RESOURCES\r\n"
"#define _AFX_NO_PROPERTY_RESOURCES\r\n"
"\r\n"
"#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
"#ifdef _WIN32\r\n"
"LANGUAGE 9, 1\r\n"
"#pragma code_page(1252)\r\n"
"#endif //_WIN32\r\n"
"#include ""res\\CMakeSetupDialog.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
"#include ""afxres.rc"" // Standard components\r\n"
"#endif\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME ICON DISCARDABLE "res\\CMakeSetupDialog.ico"
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_ABOUTBOX DIALOG DISCARDABLE 0, 0, 235, 55
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About CMakeSetup"
FONT 8, "MS Sans Serif"
BEGIN
ICON IDR_MAINFRAME,IDC_STATIC,11,17,20,20
LTEXT "CMakeSetup Version 1.0",IDC_STATIC,40,10,119,8,
SS_NOPREFIX
LTEXT "Copyright (C) 2000",IDC_STATIC,40,25,119,8
DEFPUSHBUTTON "OK",IDOK,178,7,50,14,WS_GROUP
END
IDD_CMakeSetupDialog_DIALOG DIALOGEX 0, 0, 320, 200
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_APPWINDOW
CAPTION "CMakeSetupDialog"
FONT 8, "MS Sans Serif"
, 0, 0, 0x1
BEGIN
DEFPUSHBUTTON "OK",IDOK,260,7,50,14
PUSHBUTTON "Cancel",IDCANCEL,260,23,50,14
EDITTEXT IDC_WhereSource,13,27,135,13,ES_AUTOHSCROLL
PUSHBUTTON "Browse...",IDC_BUTTON2,150,28,43,13
LTEXT "Where is the source code:",IDC_STATIC,15,15,104,9
EDITTEXT IDC_WhereBuild,14,67,133,13,ES_AUTOHSCROLL
PUSHBUTTON "Browse...",IDC_BUTTON3,151,66,43,13
LTEXT "Where do you want to build the binaries:",IDC_STATIC,16,
56,128,9
END
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,0,0,1
PRODUCTVERSION 1,0,0,1
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904B0"
BEGIN
VALUE "CompanyName", "\0"
VALUE "FileDescription", "CMakeSetup MFC Application\0"
VALUE "FileVersion", "1, 0, 0, 1\0"
VALUE "InternalName", "CMakeSetup\0"
VALUE "LegalCopyright", "Copyright (C) 2000\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "CMakeSetup.EXE\0"
VALUE "ProductName", "CMakeSetup Application\0"
VALUE "ProductVersion", "1, 0, 0, 1\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END
#endif // !_MAC
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_ABOUTBOX, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 228
TOPMARGIN, 7
BOTTOMMARGIN, 48
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
IDS_ABOUTBOX "&About CMakeSetup..."
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
#define _AFX_NO_SPLITTER_RESOURCES
#define _AFX_NO_OLE_RESOURCES
#define _AFX_NO_TRACKER_RESOURCES
#define _AFX_NO_PROPERTY_RESOURCES
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE 9, 1
#pragma code_page(1252)
#endif //_WIN32
#include "res\CMakeSetupDialog.rc2" // non-Microsoft Visual C++ edited resources
#include "afxres.rc" // Standard components
#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
Source/MFCDialog/CMakeSetupDialog.cpp
View file @
89e037ee
...
...
@@ -7,6 +7,7 @@
#include "../cmDSWMakefile.h"
#include "../cmWindowsConfigure.h"
#include "../cmMSProjectGenerator.h"
#include "../cmCacheManager.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
...
...
@@ -266,10 +267,13 @@ void CMakeSetupDialog::OnOK()
CString
makefileIn
=
m_WhereSource
;
makefileIn
+=
"/CMakeLists.txt"
;
mf
.
MakeStartDirectoriesCurrent
();
// Create a string for the cache file
cmCacheManager
::
GetInstance
()
->
LoadCache
(
&
mf
);
mf
.
ReadListFile
(
makefileIn
);
// Move this to the cache editor
mf
.
GenerateMakefile
();
CDialog
::
OnOK
();
cmCacheManager
::
GetInstance
()
->
SaveCache
(
&
mf
);
this
->
SaveToRegistry
();
}
...
...
Source/MFCDialog/resource.h
View file @
89e037ee
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by CMakeSetup.rc
//
#define IDM_ABOUTBOX 0x0010
#define IDD_ABOUTBOX 100
#define IDS_ABOUTBOX 101
#define IDD_CMakeSetupDialog_DIALOG 102
#define IDR_MAINFRAME 128
#define IDC_WhereSource 1001
#define IDC_BUTTON2 1002
#define IDC_WhereBuild 1003
#define IDC_BUTTON3 1004
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 1
29
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 100
3
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by CMakeSetup.rc
//
#define IDM_ABOUTBOX 0x0010
#define IDD_ABOUTBOX 100
#define IDS_ABOUTBOX 101
#define IDD_CMakeSetupDialog_DIALOG 102
#define IDR_MAINFRAME 128
#define IDC_WhereSource 1001
#define IDC_BUTTON2 1002
#define IDC_WhereBuild 1003
#define IDC_BUTTON3 1004
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 1
31
#define _APS_NEXT_COMMAND_VALUE 32771
#define _APS_NEXT_CONTROL_VALUE 100
4
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
Source/Makefile.in
View file @
89e037ee
...
...
@@ -21,7 +21,8 @@ cmClassFile.o \
cmSystemTools.o
\
cmDirectory.o
\
cmUnixMakefileGenerator.o
\
cmCommands.o
cmCommands.o
\
cmCacheManager.o
cmCollectFlags.o
:
$(srcdir)/*.h
...
...
@@ -35,6 +36,7 @@ cmClassFile.o : $(srcdir)/*.h
cmDirectory.o
:
$(srcdir)/*.h
cmUnixMakefileGenerator.o
:
$(srcdir)/*.h
cmCommands.o
:
$(srcdir)/*.h
cmCacheManager.o
:
$(srcdir)/*.h
...
...
Source/cmCacheManager.cxx
View file @
89e037ee
...
...
@@ -16,10 +16,13 @@
#include "cmCacheManager.h"
#include "cmSystemTools.h"
#include "cmCacheManager.h"
#include "cmMakefile.h"
const
char
*
cmCacheManagerTypes
[]
=
{
"BOOL"
,
"PATH"
,
"FILEPATH"
,
"STRING"
,
0
};
...
...
@@ -33,6 +36,7 @@ cmCacheManager::CacheEntryType cmCacheManager::StringToType(const char* s)
{
return
static_cast
<
CacheEntryType
>
(
i
);
}
++
i
;
}
return
STRING
;
}
...
...
@@ -51,12 +55,15 @@ cmCacheManager* cmCacheManager::GetInstance()
bool
cmCacheManager
::
LoadCache
(
c
onst
char
*
path
)
bool
cmCacheManager
::
LoadCache
(
c
mMakefile
*
mf
)
{
std
::
ifstream
fin
(
path
);
std
::
string
cacheFile
=
mf
->
GetHomeOutputDirectory
();
cacheFile
+=
"/CMakeCache.txt"
;
// clear the old cache
m_Cache
.
clear
();
std
::
ifstream
fin
(
cacheFile
.
c_str
());
if
(
!
fin
)
{
cmSystemTools
::
Error
(
"Unable to open cache file for load. "
,
path
);
return
false
;
}
const
int
bsize
=
4096
;
...
...
@@ -64,37 +71,45 @@ bool cmCacheManager::LoadCache(const char* path)
std
::
string
inputLine
;
while
(
fin
)
{
// Format is key:type=value
CacheEntry
e
;
std
::
string
key
;
fin
.
getline
(
buffer
,
bsize
,
'
|
'
);
fin
.
getline
(
buffer
,
bsize
,
'
:
'
);