Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
CMake
CMake
Commits
eb6bba34
Commit
eb6bba34
authored
Sep 27, 2002
by
Bill Hoffman
Browse files
BUG: fix doc string and allow a variable to be promoted from non-cache to cache
parent
cc6d5618
Changes
2
Hide whitespace changes
Inline
Side-by-side
Source/cmSetCommand.cxx
View file @
eb6bba34
...
...
@@ -107,19 +107,21 @@ bool cmSetCommand::InitialPass(std::vector<std::string> const& args)
type
=
cmCacheManager
::
StringToType
(
args
[
cacheStart
+
1
].
c_str
());
docstring
=
args
[
cacheStart
+
2
].
c_str
();
}
//
get the current cache value for the variabl
e
c
onst
char
*
cacheValue
=
m_Makefile
->
Get
Definition
(
variable
);
if
(
cacheValue
)
//
see if this is already in the cach
e
c
mCacheManager
::
CacheIterator
it
=
m_Makefile
->
Get
CacheManager
()
->
GetCacheIterator
(
variable
);
if
(
!
it
.
IsAtEnd
()
)
{
// if it is not a cached value, or it is a cached
// value that is not internal keep the value found
// in the cache
// if the set is trying to CACHE the value but the value
// is already in the cache and the type is not internal
// then leave now without setting any definitions in the cache
// or the makefile
if
(
cache
&&
type
!=
cmCacheManager
::
INTERNAL
)
{
return
true
;
}
}
// if it is meant to be in the cache then define it in the cache
if
(
cache
)
{
...
...
Source/cmSetCommand.h
View file @
eb6bba34
...
...
@@ -70,7 +70,8 @@ public:
"SET(VAR [VALUE] [CACHE TYPE DOCSTRING])
\n
"
"Within CMAKE sets VAR to the value VALUE. VALUE is expanded before VAR "
"is set to it. If CACHE is present, then the VAR is put in the cache."
" TYPE and DOCSTRING are required. If TYPE is INTERNAL, then the "
" TYPE and DOCSTRING are required. TYPE may be BOOL, PATH, FILEPATH, STRING, INTERNAL, "
"or STATIC. If TYPE is INTERNAL, then the "
" VALUE is Always written into the cache, replacing any values "
"existing in the cache. If it is not a CACHE VAR, then this always "
"writes into the current makefile.
\n
"
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment