Commit Graph

36 Commits

Author SHA1 Message Date
Brad King 31d03e8399 ENH: Document scope of add_custom_command outputs
This explicitly states the scope of add_custom_command rules in
the documentation of add_custom_command and add_custom_target.
See issue #8815.
2009-03-30 08:27:28 -04:00
Brad King bed3ac8741 ENH: Remove SKIP_RULE_DEPENDS option from add_custom_command()
- Option was recently added but never released.
  - Custom commands no longer depend on build.make so we do
    not need the option.
  - Rule hashes now take care of rebuilding when rules change
    so the dependency is not needed.
2008-06-02 16:45:07 -04:00
Brad King 600e5e274e ENH: Add SKIP_RULE_DEPENDS option for add_custom_command()
- Allows make rules to be created with no dependencies.
  - Such rules will not re-run even if the commands themselves change.
  - Useful to create rules that run only if the output is missing.
2008-05-14 11:38:47 -04:00
Brad King e9503a174e ENH: Make add_custom_command interpret relative OUTPUT locations with respect to the build tre instead of the source tree. This can greatly simplify user code since generating a file will not need to reference CMAKE_CURRENT_BINARY_DIR. The new behavior is what users expect 99% of the time. 2008-01-30 11:22:10 -05:00
Ken Martin 0e69d38004 ENH: add return and break support to cmake, also change basic command invocation signature to be able to return extra informaiton via the cmExecutionStatus class 2008-01-23 10:28:26 -05:00
Ken Martin 8d32d229a3 ENH: make commands lower case by default 2007-10-10 11:47:43 -04:00
Brad King d7a5d4c191 ENH: Added IMPLICIT_DEPENDS option to ADD_CUSTOM_COMMAND. It currently works only for Makefile generators. It allows a custom command to have implicit dependencies in the form of C or CXX sources. 2007-09-17 10:50:46 -04:00
Bill Hoffman 0044ce71bc STYLE: add more docs 2007-07-17 13:43:37 -04:00
Brad King c288da754a BUG: Target names in the COMMAND part of a custom command should not create a file-level dependency that forces the command to rerun when the executable target rebuilds, but the target-level dependency should still be created. Target names in a DEPENDS should do both a target-level and file-level dependency. Updated the BuildDepends test to check that this works. 2007-05-23 13:27:00 -04:00
Brad King 168591e72d BUG: COMMENT was missing from docs. 2006-10-04 18:09:43 -04:00
Brad King 2dfa2ba888 ENH: Added APPEND option to ADD_CUSTOM_COMMAND to allow extra dependencies to be connected later. This is useful to create one rule and then have a macro add things to it later. This addresses bug#2151. 2006-10-04 15:24:26 -04:00
Brad King e4ec89d036 ENH: Added SYMBOLIC source file property to mark custom command outputs that are never actually created on disk. This is used by the Watcom WMake generator to generate the .SYMBOLIC mark on the files in the make system. 2006-10-02 10:20:53 -04:00
Brad King d01b6f1281 ENH: Added VERBATIM option to ADD_CUSTOM_COMMAND and ADD_CUSTOM_TARGET commands. This option enables full escaping of custom command arguments on all platforms. See bug#3786. 2006-09-28 11:30:49 -04:00
Brad King 4c2c2cfd68 BUG: Clarified documentation about custom command outputs and custom target dependencies. 2006-06-15 10:51:41 -04:00
Brad King d5719f22c1 ENH: Added support for multiple outputs generated by a single custom command. For Visual Studio generators the native tool provides support. For Xcode and Makefile generators a simple trick is used. The first output is considered primary and has the build rule attached. Other outputs simply depend on the first output with no build rule. During cmake_check_build_system CMake detects when a secondary output is missing and removes the primary output to make sure all outputs are regenerated. This approach always builds the custom command at the right time and only once even during parallel builds. 2006-04-11 11:06:19 -04:00
Bill Hoffman 347c5f4b46 ENH: add working directory support 2006-02-08 10:58:36 -05:00
Brad King b8a77b2965 BUG: Fixed formatting of generated documentation. 2005-02-22 12:10:43 -05:00
Brad King 39af9ee1e4 ENH: Updated implementation of custom commands. Multiple command lines are now supported effectively allowing entire scripts to be written. Also removed extra variable expansions and cleaned up passing of commands through to the generators. The command and individual arguments are now kept separate all the way until the generator writes them out. This cleans up alot of escaping issues. 2005-02-22 10:32:44 -05:00
Ken Martin 84a1d5e553 update docs 2004-04-22 13:37:04 -04:00
Ken Martin 072db6ad70 removed redundent includes 2003-08-10 18:30:54 -04:00
Brad King ac0911e08b ENH: Tweaked whitespace in documentation of command. 2003-08-06 15:18:58 -04:00
Bill Hoffman 3154a6649a command should nto be inherited 2003-06-04 11:46:18 -04:00
Ken Martin 3a4d2e248e better docs 2003-06-03 10:48:44 -04:00
Ken Martin 9c0aa78c0d better docs 2003-06-03 10:47:31 -04:00
Ken Martin ba68f771b3 yikes added new custom command support 2003-06-03 10:30:23 -04:00
Brad King ba56262ae2 Fix to documentation formatting: removed extra newline. 2003-02-18 20:40:56 -05:00
Brad King a02574158d ENH: Cleaned up documentation and formatted it for use by cmDocumentation. 2003-02-14 18:47:16 -05:00
Bill Hoffman 455b262cfe ENH: clean up docs some 2002-12-30 07:47:03 -05:00
Andy Cedilnik 3893ee72d2 Add comment support, so that you can see in build process what the custom command does 2002-12-10 16:47:37 -05:00
Brad King 1f6a3c67b1 ENH: Added reference to Copyright.txt. Removed old reference to ITK copyright. Changed program name to CMake instead of Insight in source file header. Also removed tabs. 2002-10-23 18:03:27 -04:00
Sebastien Barre 9b8926925b ENH: use target as source if source is empty 2002-04-11 10:05:47 -04:00
Will Schroeder a6a43d5320 ENH:Updated copyright 2002-01-21 15:30:43 -05:00
Andy Cedilnik 58ee855503 Fix add custom command so that it actually executes the code 2002-01-03 16:02:43 -05:00
Sebastien Barre bdf0241d2e SOURCE, COMMAND, TARGET are required now 2001-11-09 10:37:22 -05:00
Sebastien Barre 6b5e54744c Reimplement code. Since a custom command is very flexible and might be extended in the future, make all arguments prefixed with arg type, make ordering irrelevant and potentially all args optional. 2001-11-09 10:33:22 -05:00
Andy Cedilnik 39766efaaa Added accessor for add custom command 2001-11-07 16:47:38 -05:00