In commit beb991110d (Remove now-unused code once used on IRIX,
2019-01-11, v3.14.0-rc1~167^2) we removed remnants of IRIX support.
Also remove remnants of MIPSpro compiler support.
Adds `Fortran_COMPILER_ID` and `Fortran_COMPILER_VERSION` generator
expression support to match equivalent `C_COMPILER_ID`,
`CXX_COMPILER_ID`, `C_COMPILER_VERSION`, and `CXX_COMPILER_VERSION`
support.
This is very helpful in the case where the C/C++ compiler suite is a
different type of compiler from the platform Fortran compiler and
projects use generator expressions to assign compiler flags and
definitions. (e.g. `GNU` C/C++ and `SunPro` Fortran on Linux)
This option only has an effect if at least one of the other LOG_<step>
options is enabled. If an error occurs for a step which has logging to
file enabled, that step's output will be printed to the console. For
cases where a large amount of output is recorded, just the end of that
output may be printed to the console.
Most steps support the logging into a file but the patch command is a
notable exception. This commit adds the LOG_PATCH options that acts as
the other LOG_* options.
In some circumstances the user of ExternalProject may not desire the
split log files for stdout and stderr. In particular with a project has
many errors it can be difficult to correlate the output error with the
command that it resulted from.
This commit adds the LOG_MERGED_STDOUTERR option that when enabled
outputs into a unified <name>-<step>.log for each step. If disabled it
will default to the previous behaviour of <name>-<step>-out.log and
<name>-<step>-err.log.
In some situations it can be helpful to separate out the location of the
log files from the location of the stamp files. For instance if you have
a continuous integration that exposes the location where log files are
stored.
This commit adds an option that allows a user to override the default
behaviour of putting the log files in STAMP_DIR called LOG_DIR. The
previous behaviour of putting the log files into the STAMP_DIR applies
if LOG_DIR is not specified.
Emacs 27.0 warns
Loading ‘cmake-mode’: unescaped character literals `?(', `?)' detected!
during byte-compilation of cmake-mode.el The new warning was added in
emacs commit c2bbdc3316 (Warn about missing backslashes during load).
Add backslashes to escape the literals.
d45aa38a Add dev notes for topic 'curl_netrc_options'
60c272b6 ExternalProject: Add support for NETRC and NETRC_FILE suboption
754e39dd Add testcases for file(DOWNLOAD|UPLOAD) netrc options
5d67e902 file(DOWNLOAD|UPLOAD): Add 'NETRC' and 'NETRC_FILE' suboption
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
Merge-request: !1376
The VS_SHADER_OUTPUT_HEADER_FILE property is the name of the generated
header file containing the object code of the shader.
The VS_SHADER_VARIABLE_NAME property is the name of the variable
containing the object code in the above header file.
Signed-off-by: Kevin M. Godby <kevin@godby.org>
An update from vim-cmake-syntax by commit v3.9.0-rc1~167^2^2
(vim-cmake-syntax 2017-05-02, 2017-05-02) brought in a change to set
`expandtab` in CMake language files. This should be a per-project or
per-user choice instead, so drop the setting.
Create a `<LANG>_CPPLINT` target property (initialized by a
`CMAKE_<LANG>_CPPLINT` variable) to specify a `cpplint` style checker
command line to be run along with the compiler.
Per-source copyright/license notice headers that spell out copyright holder
names and years are hard to maintain and often out-of-date or plain wrong.
Precise contributor information is already maintained automatically by the
version control tool. Ultimately it is the receiver of a file who is
responsible for determining its licensing status, and per-source notices are
merely a convenience. Therefore it is simpler and more accurate for
each source to have a generic notice of the license name and references to
more detailed information on copyright holders and full license terms.
Our `Copyright.txt` file now contains a list of Contributors whose names
appeared source-level copyright notices. It also references version control
history for more precise information. Therefore we no longer need to spell
out the list of Contributors in each source file notice.
Replace CMake per-source copyright/license notice headers with a short
description of the license and links to `Copyright.txt` and online information
available from "https://cmake.org/licensing". The online URL also handles
cases of modules being copied out of our source into other projects, so we
can drop our notices about replacing links with full license text.
Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority
of the replacements mechanically. Manually fix up shebang lines and trailing
newlines in a few files. Manually update the notices in a few files that the
script does not handle.
In case of long '<command> <args...>' the description text is wrapped
and indented on the next line.
Avoid taking these lines into account by explicitly requiring the third
character to be a non-space.
This commit updates the vim-syntax-file. It is still not complete, but contains much more keywords,
built-in variables. Generator expressions are highlighted as well.
This file is generated from a script which parses the --help
output of cmake 3.5.
Imported from here: https://github.com/pboettch/vim-cmake-syntax
Signed-off-by: Patrick Boettcher <patrick.boettcher@posteo.de>
We run `cmake --help-*-list` to get a list of items for completion.
Since CMake < 3.0 always printed "cmake version ..." on the first line
of the output we have previously ignored the first line. However, CMake
3.0 and above do not print the version line so we should not ignore the
first line or we miss one item.
Ideally we should filter the first line out if it is "cmake version ..."
in order to support CMake < 3.0 cleanly, but at worst the version line
will show up as a completion option so simply including the first line
is good enough for now.
Symbols such as "CHECK_FUNCTION_EXISTS" should not trigger an open block
(due to containing the "word" FUNCTION). Fix this regression caused by
commit v3.4.0-rc1~292^2~3 (cmake-mode.el: Use `rx' for regexps,
2015-07-23).
The latter is now the preferred URL for visiting cmake.org with a
browser. Convert using the shell code:
git ls-files -z | xargs -0 sed -i 's|http://www\.cmake|https://cmake|g'
Emacs 24 and above support a generic "prog-mode" to simplify definition
of programming modes. Derive "cmake-mode" from it since we are a
programming mode.
Control flow keywords will now be highlighted as such. Variable names
will be also be recognized. Adjust function name highlighting to work
in places other than the start of a line.
Since version 24, Emacs supports a generic mode called prog-mode. Like
all other modes it has its own mode-hook, prog-mode-hook. For Emacs
users it is common to provide all your generic programming-mode related
customizations in this mode-hook.
cmake-mode is definitely a programming-mode and should support calling
this hook. There are two ways to make that happen:
* Make your major-mode a derived-mode from prog-mode.
* Manually calling the hook upon mode-activation.
Implementing a derived mode may be the most proper thing to do, but that
may require quite a few structural changes. For now just call the hook
explicitly if it exists. This should cover much of what users need.
With the current version of homebrew one gets:
bash: _init_completion: command not found
Avoid this by initializing manually when the function is not defined.
Usually it is not needed to call '(require 'thingatpt')' explicitly
because the function 'symbol-at-point' is in autoloaded but to be sure
to have the function loaded in every case, require thingatpt.
Since commit v3.1.0-rc2~1^2~1 (cmake-mode.el: syntax of '_' should be
treated as symbol, 2014-11-12) the 'word-at-point' function does not
extract the whole keyword anymore if it contains an '_', because
'forward-word' stops at '_'. Use 'symbol-at-point' to extract a whole
keyword even if there is an '_'.
Word commands, such as foward-word(M-f), backward-kill-word(M-backspace),
don't work well like other major-modes if syntax of '_' is treated as "word".
Tested-by: Guillaume Papin <guillaume.papin@parrot.com>
Drop use of the free variable from unscreamify-cmake-buffer.
The proper way to do this would be defvar or let, but it is more
sensible to drop the feature completely: replace-match will shift the
point and the saved-point will be invalid. More careful coding could
avoid this, but seems overkill.