| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Create options "MESSAGE_ALWAYS", "MESSAGE_LAZY", and "MESSAGE_NEVER" to
specify whether to print the "Installing" and "Up-to-date" messages.
Extend the RunCMake.file test with cases covering these options.
|
|
|
|
|
|
|
|
|
|
|
| |
Teach cmFileCopier::InstallDirectory to detect whether the destination
directory exists. If so, report it as "Up-to-date" instead of
"Installing". This resolves message asymmetry with file installations.
Extend the RunCMake.file and RunCMake.install tests to check the
installation output on both the first and second run.
Suggested-by: J Decker <d3ck0r@gmail.com>
|
|
|
|
|
|
| |
When installing a DIRECTORY, do not pre-create the DESTINATION. The
cmFileCopier::InstallDirectory method will create the directory anyway.
Give it a chance to detect whether the directory already exists or not.
|
|
|
|
|
| |
Rather than making dummy backtraces and passing them around, just make
backtraces optional.
|
|
|
|
|
| |
This allows backtraces to be fully controlled by the makefile rather
than externally (and makes changing how they are manipulated easier).
|
| |
|
|
|
|
|
|
|
|
| |
Curl makes progress callbacks frequently but we round to the nearest
percent and report only when that changes so that we make at most 101
progress reports. However, when unexpected data beyond the total are
transferred the progress can get beyond 100% and lead to unlimited
reports. Avoid this case by capping the reported progress to 100%.
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
Also use SystemTools::Fopen() instead of fopen().
This is to eventually support utf-8 filenames.
|
|
|
|
| |
Remove the keyword from all Source/* files outside of KWSys.
|
|\
| |
| |
| |
| | |
b983a58 file: Add GENERATE command to produce files at generate time
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The idea is to write to a temp file which contains generator
expressions, and at generate time, evaluate the generator expressions,
and write the result to a file.
Because executables on Windows are limited in the length of command line
it is possible to use, it is common to write command line arguments to a
file instead and specify the file as a source of arguments.
This new FILE(GENERATE) subcommand allows the use of generator
expressions to create such files so that they can be used with
add_custom_command for example.
|
|/ |
|
|
|
|
|
| |
If a symlink points at a directory the symlink should be removed but not
the content of the directory.
|
|
|
|
| |
...in the new file and string TIMESTAMP sub-commands
|
| |
|
|
|
|
|
|
| |
The file command requires at least two arguments, so guarding the GLOB and
MAKE_DIRECTORY command is not necessary. Changed it for an assert to keep the
protection.
|
|\
| |
| |
| |
| | |
95a0011 file(DOWNLOAD): Change EXPECTED_HASH to take ALGO=value
|
| |
| |
| |
| |
| |
| | |
Make the EXPECTED_HASH option take only a single value instead of two to
avoid handling sub-keyword arguments. This is also consistent with
URL_HASH in ExternalProject.
|
|\ \
| |/
|/|
| |
| | |
14aff4d file(DOWNLOAD): Add HTTP User-Agent string
|
| |
| |
| |
| |
| |
| |
| | |
Some servers require a User-Agent string. The curl command-line tool
just sends "curl/$curlver", so do the same.
Suggested-by: Fredrik Ehnbom <fehnbom@nvidia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Add support for SHA algorithms.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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/ \+$//'
|
|\
| |
| |
| |
| | |
a41557a install: Fix FILES_MATCHING on case-sensitive Mac filesystems (#13177)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Windows and Apple machines have predominantly used case-insensitive
filesystems so our file(INSTALL) command uses case-insensitive pattern
matching. It is implemented by converting the pattern and file path to
lower case before matching. The FILES_MATCHING option is implemented by
excluding a path that does not match any pattern unless it is a
directory that must be searched recursively. However, the test that an
excluded path is a directory is executed on the lower-case path and
therefore fails on mixed-case input paths on case-sensitive filesystems.
Fix the file(INSTALL) implementation to use the lower-case path only for
pattern matching and preserve the original path for tests against the
real filesystem.
|
|/
|
|
|
|
| |
It seems that file.seekg(0) will, in some circumstances, cause the next
file.getline() to omit the first character it reads. Workaround the
bug by seeking from ios::beg explicitly.
|
|
|
|
|
|
| |
The purpose of the TargetType enumeration was overloaded for install
type because install rules were once recorded as targets. Factor the
install types out into their own enumeration.
|
|
|
|
|
| |
We do not compile support for the cryptographic hashes during bootstrap.
Disable the APIs that use them.
|
|
|
|
|
| |
Construct a cmCryptoHash subclass instance based on the name of the
desired hash algorithm.
|
|
|
|
| |
Add a file() command API for SHA1, SHA224, SHA256, SHA384, and SHA512.
|
|
|
|
|
| |
Provide a CMake-language binding to the md5sum function previously
available only by "cmake -E md5sum".
|
|
|
|
|
|
|
|
| |
If a http server responds with a result code greater than 400 then the
data returned from the download probably do not match that expected.
Teach file(DOWNLOAD) to fail with an error in this case instead of
silently pretending that the download worked. The file(UPLOAD) command
already does this.
|
|
|
|
|
|
| |
Credit goes to "cppcheck".
Signed-off-by: Thomas Jarosch <thomas.jarosch@intra2net.com>
|
|
|
|
|
| |
Add option INACTIVITY_TIMEOUT to terminate the operation if there is no
progress for more than a given amount of time.
|
|\
| |
| |
| |
| | |
c3e452e Require at least CMake 2.6.3 to build current CMake
|
| |
| |
| |
| | |
Remove some cruft left for supporting builds with CMake 2.4.
|
| | |
|
|/
|
|
| |
Including documentation and testing, of course.
|
|
|
|
| |
Thanks to Daniel Nelson for the suggestion and the patch.
|
|
|
|
|
|
|
| |
The SetError method automatically starts the message with the name of
the command. Fix up calls to it so that we get "file DOWNLOAD..."
instead of "file FILE(DOWNLOAD ...". Also reduce length of long lines
containing these calls.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 8d0161c8 (Trust umask for file permissions, 2010-01-12) taught
these commands to set permissions to 0666 explicitly. The intention was
to let the open() call inside ofstream handle permsisions so that umask
would be honored. Now we set permissions only when we need to preserve
those on an existing file. New files will be created with umask-based
permissions.
|
|\ \
| | |
| | |
| | |
| | | |
Conflicts:
Modules/ExternalProject.cmake
|
| | |
| | |
| | |
| | |
| | |
| | | |
Enable file(DOWNLOAD ...) to follow redirects. Thanks to
Michael Wild for requesting the addition and providing
the majority of the patch.
|