Removing the Process() API and removing the parameters from the
constructor will allow cmGeneratorExpressions to be cached and evaluated
with multiple configs for example, such as when evaluating target
properties. This requires the creation of a new compiled representation
of cmGeneratorExpression. The cmListFileBacktrace remains in the
constructor so that we can record where a particular generator
expression appeared in the CMakeLists file.
The expressions may be parsed and then cached and evaluated multiple
times. They are evaluated lazily so that literals such as ',' can be
treated as universal parameter separators, and can be processed from
results without appearing literally, and without interfering with the
parsing/evaluation of the entire expression.
25a4f56 Build with Qt5 if it is found.
717f31a Compile with both Qt4 and Qt5.
066e858 Replace two include_directories with a setting.
430ba9f Use add_subdirectory instead of the obsolete subdirs.
32a5725 Remove an if which is always true.
0b6625c Move variable setting down to where it relates to.
8ab312b Use CMake platform variables instead of Qt ones.
bd728f6 Add a return-after-error if an old Qt is found.
The logic added in commit e1c89f08 (file(DOWNLOAD): Add options for SSL,
2012-08-21) did not actually provide the documented behavior. Simplify
the implementation to read the variable values first and then replace
them with the explicit argument values if encountered. Always set the
curl option CURLOPT_SSL_VERIFYPEER to either on or off explicitly
instead of depending on the curl default behavior.
TLS has superseded SSL so rename the recently added file(DOWNLOAD) and
ExternalProject options using the newer terminology. Drop "CURLOPT"
from names because curl is an implementation detail.
Extend the number of components tested by
if(... VERSION_LESS ...)
if(... VERSION_EQUAL ...)
if(... VERSION_GREATER ...)
from 4 to 8. The latter is a more extreme maximum.
Add the ability to request that downloads disable or enable Certificate
Authority checking with https ssl downloads. When the option to verify
the servers CA is disabled, one may verify download contents with SHA
hashes.
d0c863f docbook: Fix Sun CC warning on ptr_fun(isalnum)
4e62784 docbook: Fix formatter naming convention to avoid shadow
9ad85dbb docbook: Remove redundant docs that cause invalid DocBook
9468b41 docbook: Add CMake.DocBook test to validate xml (#13508)
3a9e373 docbook: Add support for <abstract> at section level 1
67e7d49 docbook: Cleanup formatter and generated DocBook
55146ed docbook: Fix the DocBook section output
dbfe335 docbook: Factor out code to write valid DocBook IDs
cffa899 docbook: Remove table of contents
ac25bc0 Utilities/xml: Add docbook-4.5 DTD (#13508)
2b2e86f Utilities/xml: Add .gitattributes to disable whitespace checks
57234dd cmCTestSVN: Load and process information from externals
3776690 cmCTestSVN: Add a LoadExternal() function and an ExternalParser class
41f0f83 cmCTestSVN: Use the SVNInfo structure
fb6d513 cmCTestSVN: Create the SVNInfo for the root repository
8d1e102 cmCTestSVN: Add the Repositories list and the RootInfo pointer
2f204bc cmCTestSVN: Extend Revision struct with SVN repo information
aa1076f cmCTestSVN: Add the new SVNInfo structure
The Sun compiler complains:
cmDocumentationFormatterDocbook.cxx", line 230: Warning (Anachronism),
badargtype2w: Formal argument x of type int(*)(int) in call to
std::ptr_fun<int, int>(int(*)(int)) is being passed
extern "C" int(*)(int).
Add an intermediate C++ function to forward to the C function.
Some compilers complain:
cmDocumentationFormatterDocbook.cxx: In member function virtual void cmDocumentationFormatterDocbook::PrintHeader(const char*, const char*, std::ostream&):
cmDocumentationFormatterDocbook.cxx:197:73: warning: declaration of docname shadows a member of 'this' [-Wshadow]
Fix the name of the member variable.
If a section has subsections (ie. subelemens with a title), all elements
before the first title are written inside an <abstract>. Also wrap
<programlisting> in <para>, to allow preformatted output in abstracts.
The DocBook formatter used to generate something like:
<para id="section"><sect2><title>Title</title></sect2>Some Text</para>
Which was completely wrong. In DocBook, a section should look like this:
<sect2 id="section"><title>Title</title><para>Some Text</para></sect2>
Attributes in XML may contain alphanumeric characters, underscores,
colons and dots. When DocBook is chunked, the dot is often used as a
path separator. To generate a valid ID, we take the title of the
section, transform all non-alphanumeric characters to underscores and
then add a prefix separated with dots. We also add the document name as
a prefix, in order to 'xinclude' eg. cmake.docbook and ctest.docbook in
the same document. IDs are written in multiple places, so the code is
factored to a function.
When DocBook is transformed (eg. to PDF, HTML, ...), a TOC is generated
from the document's layout. The TOC-like list that the docbook
formatter used to generate was both redundant and invalid.