Ben Boeckel
7d674b5f0b
Revert "ClearMatches: Only clear matches which were actually set" ( #15261 )
...
This reverts commit v3.1.0-rc1~557^2~2 (ClearMatches: Only clear matches
which were actually set, 2014-03-12). The optimization did not track
the match count in the same scope as the variables, allowing possible
inconsistency.
Resolve conflicts in Source/cmIfCommand.cxx, Source/cmMakefile.cxx,
and Source/cmMakefile.h by moving the changes to the new location
of the code involved.
2014-11-26 13:45:06 -05:00
Nils Gladitz
328e869433
StringUuid: Implement new string(UUID) sub-command.
2014-08-28 15:13:54 +02:00
Ben Boeckel
f718b30a95
ClearMatches: Only clear matches which were actually set
...
ClearMatches was clearing many variables which were never set in the
first place. Instead, store how many matches were made last time and
only clear those. It is moved to the cmMakefile class since it is a
common utility used by multiple commands.
2014-04-29 16:00:05 -04:00
Stephen Kelly
28e1d2f8fc
cmStringCommand: Add GENEX_STRIP subcommand.
...
Strip out any generator expressions in the input string.
2014-03-31 23:18:44 +02:00
Stephen Kelly
21c573f682
Remove some c_str() calls.
...
Use the clang RemoveCStrCalls tool to automatically migrate the
code. This was only run on linux, so does not have any positive or
negative effect on other platforms.
2014-03-11 15:03:50 +01:00
Brad King
4e184a21be
string: Add CONCAT sub-command
...
Add a string(CONCAT) command to simply concatenate input arguments
together. This will be useful for combining strings from different
quoting syntaxes. Add a RunCMake.string test covering these cases.
2013-10-21 12:54:20 -04:00
Bill Hoffman
dc03499595
Do not set CMAKE_MATCH_ variables when not neeeded
...
Each call to AddDefinition has overhead for variable watches and such.
Avoid extra calls when not needed.
This decreases the configure time for ParaView by 10 seconds on my
machine. Without the change about 1,000,000 set-to-empty calls were
being made. After the change it drops to about 100,000.
2013-06-14 08:46:14 -04:00
Stephen Kelly
0ab50aea4c
string: Add MAKE_C_IDENTIFIER subcommand
2013-05-21 15:29:34 -04:00
David Cole
354ecc1e1f
CMake: Fix dashboard warnings
...
...in the new file and string TIMESTAMP sub-commands
2012-12-05 13:19:09 -05:00
Nils Gladitz
711e2b3b5c
CMake: Add TIMESTAMP subcommand to string and file commands
2012-12-05 10:39:10 -05:00
Kitware Robot
7bbaa4283d
Remove trailing whitespace from most CMake and C/C++ code
...
Our Git commit hooks disallow modification or addition of lines with
trailing whitespace. Wipe out all remnants of trailing whitespace
everywhere except third-party code.
Run the following shell code:
git ls-files -z -- \
bootstrap doxygen.config '*.readme' \
'*.c' '*.cmake' '*.cpp' '*.cxx' \
'*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \
'*.mm' '*.pike' '*.py' '*.txt' '*.vim' |
egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' |
egrep -z -v '^(Modules/CPack\..*\.in)' |
xargs -0 sed -i 's/ \+$//'
2012-08-13 14:18:39 -04:00
Brad King
b0853b5fae
Disable file() and string() hash commands during bootstrap
...
We do not compile support for the cryptographic hashes during bootstrap.
Disable the APIs that use them.
2011-11-16 11:03:30 -05:00
Brad King
2e9c26cf96
Add string(MD5) and string(SHA*) commands to compute hashes
...
Provide a CMake-language binding to these cryptographic hashes. Add a
string() command API for MD5, SHA1, SHA224, SHA256, SHA384, and SHA512.
2011-11-16 10:29:35 -05:00
Rolf Eike Beer
ecdad65a45
CMake: Update documentation of STRING(SUBSTRING) for length -1 ( #10740 )
2011-05-27 16:25:08 -04:00
Brad King
7ff98b7a8c
Fix forced-seed argument type in string(RANDOM)
...
Clang points out that local variable 'seed' needs to be "unsigned int":
Source/cmStringCommand.cxx:828:21: warning: operands of ? are integers
of different signs: 'int' and 'unsigned int' [-Wsign-compare]
srand(force_seed? seed : cmSystemTools::RandomSeed());
^ ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
2011-05-23 15:57:41 -04:00
Brad King
e1b0a11dd4
Improve string(RANDOM) default seed
...
The naive time(0) seed is unique only within one second. Instead try to
read a real source of entropy and otherwise fall back to a combination
of the process id and high-resolution time.
2011-05-17 10:07:26 -04:00
Brad King
006124b446
Avoid direct use of std::stringstream
...
In method cmStringCommand::HandleFindCommand added by parent commit use
the cmOStringStream compatibility wrapper instead of std::stringstream.
2011-02-17 08:44:22 -05:00
Tim Hütz
1462561a8c
Add a string(FIND) sub-command ( #11795 )
2011-02-15 13:17:51 -05:00
Brad King
dd2f81491e
Merge branch 'dev/add_test-working-directory' into dev/strict-mode
...
Conflicts:
Tests/CMakeLists.txt
2011-01-27 14:39:55 -05:00
Rolf Eike Beer
36cb701690
allow STRING(SUBSTRING) work with length -1 as "rest of the string"
...
This fixes the first half of bug 10740.
2010-12-08 16:38:30 -05:00
Ben Boeckel
a17aff74c7
Ignore CMAKE_MATCH_* variables for usage
2010-09-15 11:35:05 -04:00
Brad King
6fc4cd8680
Fix or cast integer conversions in cmake
...
These were revealed by GCC's -Wconversion option. Fix types where it is
easy to do so. Cast in cases we know the integer will not be truncated.
2010-06-25 09:05:15 -04:00
David Cole
d6fe0438c1
Fix issue #9851 - only seed the random number generator on the first call to STRING(RANDOM or if given the new RANDOM_SEED argument. Add test and documentation of new argument.
2009-11-06 10:07:10 -05:00
David Cole
837364cb04
Correct some typos in error messages in the string command. Add a test that covers more of the code implemented in cmStringCommand.cxx, especially the error handlers.
2009-10-02 14:51:43 -04:00
David Cole
a9dcc7fd47
Fix warnings in CMake source code. Suppress warnings in Lexer and Parser files that are 'too hard' to fix.
2009-09-30 11:41:34 -04:00
Brad King
96afb12087
Convert CMake to OSI-approved BSD License
...
This converts the CMake license to a pure 3-clause OSI-approved BSD
License. We drop the previous license clause requiring modified
versions to be plainly marked. We also update the CMake copyright to
cover the full development time range.
2009-09-28 11:43:28 -04:00
David Cole
9cd09b59c6
BUG: Correct typo in error message.
2008-08-26 12:54:06 -04:00
Ken Martin
0e69d38004
ENH: add return and break support to cmake, also change basic command invocation signature to be able to return extra informaiton via the cmExecutionStatus class
2008-01-23 10:28:26 -05:00
Alexander Neundorf
bcb73bb9f4
BUG: fix STRING(STRIP ...) if no non-space is contained in the input string,
...
this should fix the dashboard
Alex
2007-12-16 07:56:43 -05:00
Alexander Neundorf
e80acd971c
ENH: also store the group matches from IF( MATCHES) in CMAKE_MATCH_(0..9)
...
Alex
2007-08-29 11:58:38 -04:00
Alexander Neundorf
c1b3484c2d
ENH: store the matches for paren-delimited subexpression in
...
CMAKE_MATCH_[0..9] variables, so to get multiple subexpressions from one
string STRING(REGEX MATCH) has to be executed only once
Alex
2007-08-21 11:30:09 -04:00
Andy Cedilnik
1d4613a63b
ENH: Add STRING STRIP command
2007-04-26 21:50:52 -04:00
Brad King
cdc161f380
COMP: Added missing include for time.
2007-04-23 16:48:56 -04:00
Ken Martin
c4fc2c19c7
ENH: Add command to generate random strings
2007-04-23 11:04:12 -04:00
Ken Martin
daa37f1163
STYLE: fix line length
2006-05-12 13:53:21 -04:00
Ken Martin
3d96e52261
STYLE: some m_ to this-> cleanup
2006-03-15 11:02:08 -05:00
Bill Hoffman
89e5fc63fe
STYLE: fix line lengths
2006-03-10 13:54:57 -05:00
Bill Hoffman
097debb55a
BUG: end is not really end, but rather length
2005-10-20 10:11:03 -04:00
Andy Cedilnik
2a9d2ed412
COMP: Remove warning
2005-10-18 09:42:35 -04:00
Andy Cedilnik
985d092d4d
ENH: Add rudamentary mathematical expression support
2005-10-17 16:42:47 -04:00
Andy Cedilnik
12ef4edf64
ENH: Add String length and substring
2005-10-17 09:56:42 -04:00
Andy Cedilnik
6e5cdd6de7
ENH: Add regular string replace (not regex), and relative path command. Also add tests
2005-10-17 09:10:20 -04:00
Brad King
4990e1481d
ENH: Added STRING(CONFIGURE ...) command.
2004-03-04 10:05:14 -05:00
Brad King
bc16c68a14
BUG#452: Fix to argument checking for TOUPPER and TOLOWER subcommands.
2003-12-29 13:31:04 -05:00
Andy Cedilnik
45ea83a694
ERR: Remove unused variable
2003-07-10 14:35:58 -04:00
Andy Cedilnik
c4275f54c7
ENH: Add upper and lower case support. Close Bug #79 - STRING TOUPPER and TOLOWER
2003-07-10 13:25:54 -04:00
Brad King
38482b46d1
ENH: Merged use of the kwsys RegularExpression class instead of cmRegularExpression.
2003-06-23 14:10:12 -04:00
Bill Hoffman
5945a5a448
ENH: add some includes for borland 6
2003-05-23 16:40:55 -04:00
Andy Cedilnik
6244ac6f06
Add a way to convert ascii to string
2003-01-01 17:34:47 -05:00
Brad King
d66aa2262a
ENH: Added COMPARE modes to STRING command.
2002-12-04 18:44:39 -05:00