Casts from std::string -> cmStdString were high on the list of things
taking up time. Avoid such implicit casts across function calls by just
using std::string everywhere.
The comment that the symbol name is too long is no longer relevant since
modern debuggers alias the templates anyways and the size is a
non-issue since the underlying methods are generated since it's
inherited.
Most of these are turned into strings in the body of the method
(multiple times in some cases). Accept strings to simplify the API and
keep string construction down.
Extract upstream KWSys using the following shell commands.
$ git archive --prefix=upstream-kwsys/ 9c653603 | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' b1916e0a..9c653603
Brad King (1):
9c653603 Process: Suppress IBM XL warning about infinite loop in test
Change-Id: I3a1f36707bcfff0f34e0176528d9c792384ac8c5
Since we compile command implementations in large batches the
translation units get too big for MIPSpro optimization limits.
Suppress the warnings it produces:
Warning: Olimit was exceeded on function ...
Warning: To override Olimit for all functions in file, use -OPT:Olimit=3201
489b1c23 Windows: Use response files to specify link libraries for GNU tools
745caae6 Makefile: Rename linker response file boolean to be more specific
5e8e4d0f cmLocalGenerator: Add response file option to OutputLinkLibraries
b9aa5041 cmLocalGenerator: Simplify GetIncludeFlags output formatting
971653b7 cmLocalGenerator: Add format option to ConvertToLinkReference
0c0ef9e7 cmLocalGenerator: Add format option to ConvertToIncludeReference
02bebd60 cmLocalGenerator: Add format option to ConvertToOutputForExisting
c8751709 Makefile: Factor out some duplicate link libraries generation
Since commit 71b14dcb (Utilities/Release: Do not upload doc staging
tarball, 2014-02-26) the prefix upload_release.cmake computes does not
match any files when used with -DVERSION=master as has been done for the
nightly binary builds. Since the version is not actually 'master'
anyway, change the nightly binary upload logic to explicitly pass the
destination directory. Do not pass any VERSION so the default is taken
and matches the binaries.
If a package is requested with an EXACT version, that doesn't imply
that dependencies must be found EXACTly too.
Extend the macro to allow specifying that a dependency must be found
by EXACT version instead.
Work around the command-line-length limit by using an @linklibs.rsp
response file to pass the flags for link libraries. This allows
very long lists of libraries to be used in addition to the existing
support for passing object files via response file.
Suggested-by: Peter Keuschnigg <peter.keuschnigg@pmu.ac.at>