summaryrefslogtreecommitdiff
path: root/Source/cmFileCommand.h
Commit message (Collapse)AuthorAgeFilesLines
* Teach file(DOWNLOAD|UPLOAD) to timeout after inactivityBrad King2011-06-011-4/+9
| | | | | Add option INACTIVITY_TIMEOUT to terminate the operation if there is no progress for more than a given amount of time.
* Implement file(UPLOAD (#11286)David Cole2011-02-251-0/+15
| | | | Including documentation and testing, of course.
* Warn in find(GLOB) docs about bad use case (#11617)Brad King2010-12-161-1/+6
| | | | | | | | The first instinct of a lot of users is to use file(GLOB) to assemble lists of sources. Add a warning to the help text stating that it should not be used for this purpose and briefly explain why. Suggested-By: Ryan Pavlik
* Improve FILE(DOWNLOAD) and ExternalProject.David Cole2010-05-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Improve FILE(DOWNLOAD ...): - Add percent complete progress output to the FILE DOWNLOAD command. This progress output is off by default to preserve existing behavior. To turn it on, pass SHOW_PROGRESS as an argument. - Add EXPECTED_MD5 argument. Verify that the downloaded file has the expected md5 sum after download is complete. - Add documentation for SHOW_PROGRESS and EXPECTED_MD5. When the destination file exists already and has the expected md5 sum, then do not bother re-downloading the file. ("Short circuit" return.) Also, add a test that checks for the status output indicating that the short circuit behavior is actually occurring. Use a binary file for the test so that the md5 sum is guaranteed to be the same on all platforms regardless of "shifting text file line ending" issues. Improve ExternalProject: - Add argument URL_MD5. - Add verify step that compares md5 sum of .tar.gz file before extracting it. - Add md5 check to download step, too, to prevent unnecessary downloads. - Emit a warning message when a file is not verified. Indicate that the file may be corrupt or that no checksum was specified.
* Fix up download a bit, better error checking and uses of long not double for ↵Bill Hoffman2009-10-221-1/+1
| | | | timeout as curl needs, bug# 9748
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | 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.
* ENH: Create file(COPY) command signatureBrad King2009-04-291-1/+37
| | | | | | | | The file(INSTALL) command has long been undocumented and used only to implement install() scripts. We now document it and provide a similar file(COPY) signature which is useful in general-purpose scripts. It provides the capabilities of install(DIRECTORY) and install(FILES) but operates immediately instead of contributing to install scripts.
* ENH: Refactor file(INSTALL) implementationBrad King2009-04-291-24/+0
| | | | | | The undocumented file(INSTALL) is implemented by a cmFileInstaller class inside cmFileCommand. This refactors the class to split out code not specific to installation into a cmFileCopier base class.
* ENH: Send all file installations through one pathBrad King2009-04-291-4/+2
| | | | | | This creates a single cmFileInstaller method to dispatch installation of symlinks, directories, and files. The change removes duplicate tests of input file type and makes the decision more consistent.
* ENH: Remove unused PROPERTIES from file(INSTALL)Brad King2009-04-271-1/+0
| | | | | The undocumented file(INSTALL) command used to support a PROPERTIES option, but no install code still uses it. This removes the option.
* ENH: Create file(RENAME) command modeBrad King2009-04-151-0/+5
| | | | | This creates command "file(RENAME <oldname> <newname>)" to rename a file or directory within a single disk volume.
* ENH: Add undocumented file(DIFFERENT) commandBrad King2009-01-071-0/+1
| | | | | This new command will be used by generated installation scripts to determine whether an already-installed export file has changed.
* BUG: fix spellingBill Hoffman2008-12-181-1/+1
|
* ENH: Improve FILE GLOB_RECURSE handling of symlinks with a new CMake policy. ↵David Cole2008-09-111-5/+5
| | | | CMP0009 establishes NEW default behavior of not recursing through symlinks. OLD default behavior or explicit FOLLOW_SYMLINKS argument to FILE GLOB_RECURSE will still recurse through symlinks.
* BUG: Correct typo in documentation: or -> ofDavid Cole2008-08-231-1/+1
|
* ENH: Add the RECURSE_SYMLINKS_OFF flag to the FILE GLOB_RECURSE command. ↵David Cole2008-08-231-2/+4
| | | | Exposes the recently added kwsys capability that prevents recursing through symlinks to CMake scripts.
* BUG: Remove check for files written by file(WRITE) being loaded.Brad King2008-04-301-4/+0
| | | | | | | | | | | | - CMake 1.8 and below did not do the check but could get in infinite loops due to the local generate step. - CMake 2.0 added the check but failed to perform it in directories with no targets (see bug #678). - CMake 2.2 removed the local generate which fixed the problem but did not remove the check. - Between CMake 2.4 and 2.6.0rc6 the check was fixed to work even when no targets appear in a directory (see bug #6923). - Bottom line: the check is no longer needed.
* ENH: Improve RPATH behavior during installation.Brad King2008-04-141-1/+3
| | | | | | | - If new RPATH is empty then remove the entry completely - Preserve file modification time so installation is not repeated - If installed file already exists remove it if its RPATH does not match that expected
* ENH: Use builtin chrpath instead of relinking ELF targetsBrad King2008-03-011-0/+1
| | | | | | | | | | - Add cmSystemTools::ChangeRPath method - Add undocumented file(CHRPATH) command - When installing use file(CHRPATH) to change the rpath instead of relinking - Remove CMAKE_CHRPATH lookup from CMakeFindBinUtils - Remove CMAKE_USE_CHRPATH option since this should always work
* ENH: make sure files are binary for download and make status a pair of value ↵Bill Hoffman2008-02-071-1/+5
| | | | string
* ENH: add DOWNLOAD option to FILE commandBill Hoffman2008-02-061-1/+8
|
* ENH: add return and break support to cmake, also change basic command ↵Ken Martin2008-01-231-1/+2
| | | | invocation signature to be able to return extra informaiton via the cmExecutionStatus class
* ENH: add the keywords OFFSET and HEX to the FILE() command, using OFFSET anAlexander Neundorf2008-01-021-2/+4
| | | | | | | | | offset can be specified where the reading starts, and using HEX the data can be converted into a hex string, so binary data can be compared with text functions -add docs for LIMIT, OFFSET and HEX Alex
* ENH: make commands lower case by defaultKen Martin2007-10-101-22/+21
|
* COMP: Remove unused argument.Brad King2007-07-021-1/+0
|
* ENH: Further cleanup of installation script generation. The per-component ↵Brad King2007-07-021-6/+0
| | | | and per-configuration testing is now done in cmake code instead of in the FILE(INSTALL) command. The generation of the cmake code to do these tests is centralized in cmInstallGenerator. Old-style shared library versioning and component/config support code has been removed from FILE(INSTALL). This commit is surrounded by the tags CMake-InstallGeneratorCleanup2-pre and CMake-InstallGeneratorCleanup2-post.
* BUG: Need to compute the correct versioned name for executables on cygwin. ↵Brad King2007-06-271-1/+2
| | | | This addresses bug#5238.
* STYLE: add documentation for FILE(REMOVE ...) and FILE(REMOVE_RECURSE ...)Alexander Neundorf2007-06-131-4/+8
| | | | | | | FILE(REMOVE ...) works only for files, not for directories, REMOVE_RECURSE works for both, it seems having both is not necessary Alex
* STYLE: remove out commented codeAlexander Neundorf2007-06-071-15/+10
| | | | Alex
* ENH: add option to FILE(STRINGS NO_HEX_CONVERSION) to disable automaticAlexander Neundorf2007-05-251-3/+10
| | | | | | | | | | | | | | | | | | | conversion of hex and srec files to binary. Without this automatic conversion, everywhere where a compiled file is parsed for strings the a file(HEX2BIN somefile binfile) command has to be added otherwise it will not work for these compilers. I tried this with DetermineCompiler and CheckTypeSize and nobody will do this except the users who work with such compilers. For them it will break if they don't add this conversion command in all these places. If FILE(STRINGS) is used with a text file, it will in most cases still work as expected, since it will only convert hex and srec files. If a user actually wants to get text out of hex files, he knows what he's doing and will see the hint in the documentation. Anyway, it should work without having to create a temporary file, will work on this later. Alex
* ENH: make the compiler id detection work, even if the output file name ofAlexander Neundorf2007-05-251-3/+4
| | | | | | | the compiler is completely unknown and even if it produces intel hex or motorola s-record files, with test Alex
* ENH: merge CMake-CrossCompileBasic to HEADAlexander Neundorf2007-05-171-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | -add a RESULT_VARIABLE to INCLUDE() -add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain -have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system) -use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to run the executables if they have a different suffix because they are probably crosscompiled, but nevertheless it should be able to find them -make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE -support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.) -move ranlib on OSX from the file command to a command in executed in cmake_install.cmake -add support for stripping during install in cmake_install.cmake -split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools -remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms -create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these -add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a list of directories which will be prepended to all search directories, right now as a cmake variable, turning it into a global cmake property may need some more work -remove cmTestTestHandler::TryExecutable(), it's unused -split cmFileCommand::HandleInstall() into slightly smaller functions Alex
* ENH: Added FILE(STRINGS) command.Brad King2007-04-251-0/+25
|
* ENH: added LIMIT on file readKen Martin2007-03-011-1/+1
|
* ENH: fix spelling error bug # 4233Bill Hoffman2007-02-201-1/+1
|
* ENH: Changing shared library versioned file names on OSX to conform to that ↵Brad King2006-06-051-0/+1
| | | | platform's convention.
* STYLE: fix line lengthKen Martin2006-05-101-1/+2
|
* ENH: add path conversion stuff and rm SYSTEM_PATHBill Hoffman2006-04-051-5/+12
|
* ENH: Add relative tag and add test for relative tagAndy Cedilnik2006-03-211-3/+5
|
* ENH: add a new FILE SYSTEM_PATH that allows you to read a environment ↵Bill Hoffman2006-03-101-1/+5
| | | | variable with a path in it.
* STYLE: fix line lengthsBill Hoffman2006-03-101-1/+2
|
* ENH: use a cmake script to do the clean step, this allows for large numbers ↵Bill Hoffman2006-03-091-0/+3
| | | | of files to be removed without making the command line too long
* STYLE: fix docsKen Martin2005-11-161-7/+7
|
* ENH: Add regular string replace (not regex), and relative path command. Also ↵Andy Cedilnik2005-10-171-1/+4
| | | | add tests
* ENH: big change that includes immediate subdir support, removing the notion ↵Ken Martin2005-03-181-6/+0
| | | | of inherited commands, makefiles no longer read in the parent makefiles but instead inherit thier parent makefiles current settings
* ENH: Add check for infinite loops. Make sure that files written using ↵Andy Cedilnik2004-04-181-0/+4
| | | | WRITE_FILE and FILE WRITE are not used as input files. Fixes Bug #678 - WRITE_FILE and FILE(WRITE...) lead to infinite loops
* ENH: Add unix style install in file commandAndy Cedilnik2004-01-261-0/+6
|
* removed redundent includesKen Martin2003-08-101-1/+0
|
* ENH: Fix commentAndy Cedilnik2003-07-211-0/+1
|
* ENH: Recurse subdirectoriesAndy Cedilnik2003-07-141-1/+7
|