summaryrefslogtreecommitdiffstats
path: root/Help/manual
Commit message (Collapse)AuthorAgeFilesLines
* Export: Disallow exported interface includes in src/build tree (#14592).Stephen Kelly2014-04-091-0/+1
| | | | | | | | | | | Allow directories in the source tree or build tree only if the install tree is a subdirectory of the source tree or build tree, as appropriate. Re-use the test files in the RunCMake.include_directories test to run in multiple scenarios. Bump the required CMake version in the test to 3.0 to ensure that the new policy warnings are emitted correctly.
* Merge topic 'target-transitive-sources'Brad King2014-04-032-0/+2
|\ | | | | | | | | | | | | | | | | | | | | 9407174b target_sources: New command to add sources to target. 81ad69e0 Make the SOURCES target property writable. 6e636f2e cmTarget: Make the SOURCES origin tracable. 3676fb49 cmTarget: Allow transitive evaluation of SOURCES property. e6971df6 cmTarget: Make the source files depend on the config. df753df9 cmGeneratorTarget: Don't add computed sources to the target. 869328aa cmComputeTargetDepends: Use valid config to compute target depends.
| * target_sources: New command to add sources to target.Stephen Kelly2014-04-021-0/+1
| |
| * cmTarget: Allow transitive evaluation of SOURCES property.Stephen Kelly2014-04-021-0/+1
| | | | | | | | | | | | | | Extend the cmGeneratorExpressionDAGChecker with an interface returning the name of the top target. Use that to determine when there is a DAG violation, as required by the RunCMake.Languages tests.
* | Merge topic 'target-sources-refactor'Brad King2014-04-032-0/+6
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5de63265 Genex: Only evaluate TARGET_OBJECTS to determine target sources. aa0a3562 cmGeneratorTarget: Compute target objects on demand 042c1c83 cmTarget: Compute languages from object libraries on demand. fdcefe3c cmGeneratorTarget: Compute consumed object libraries on demand. c355d108 cmComputeTargetDepends: Track object library depends. e5da9e51 cmTarget: Allow any generator expression in SOURCES property. 5702e106 cmTarget: Include TARGET_OBJECTS genex in target SOURCES property. 857d30b5 cmGlobalGenerator: Add interface to call ForceLinkerLanguages 28e1d2f8 cmStringCommand: Add GENEX_STRIP subcommand. bf98cc25 Genex: Evaluate TARGET_OBJECTS as a normal expression. 8cd113ad cmTarget: Store strings instead of cmSourceFile* to represent SOURCES. 4959f341 cmSourceFileLocation: Collapse full path for directory comparisons. fcc92878 cmSourceFileLocation: Remove unused Update method. 59e8740a cmTarget: Remove AddSourceFile method 26d494ba cmTarget: Use string API to add sources to cmTarget objects. d38423ec cmTarget: Add a method to obtain list of filenames for sources. ...
| * | Genex: Only evaluate TARGET_OBJECTS to determine target sources.Stephen Kelly2014-04-021-1/+3
| |/ | | | | | | | | | | | | | | | | | | The output of this expression may contain macros for IDEs to replace such as $(Configuration), $(CURRENT_ARCH) etc. To avoid generating content which is not usable in other contexts, report an error if there is an attempt to use it in other contexts. This commit may be reverted in the future if a solution to the above difference is implemented.
| * cmTarget: Include TARGET_OBJECTS genex in target SOURCES property.Stephen Kelly2014-04-021-0/+1
| | | | | | | | Add policy CMP0051 to control this behavior.
| * Genex: Evaluate TARGET_OBJECTS as a normal expression.Stephen Kelly2014-03-311-0/+3
| |
* | Merge topic 'revise-compiler-id-policies'Brad King2014-04-031-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 13684e2b cmMakefile: Port PolicyOptionalWarningEnabled to string APIs 8018fcca Merge branch 'master' into revise-compiler-id-policies a41c0a9d Do not warn by default when policy CMP0025 or CMP0047 is not set d339653e Help: Revise and format policy CMP0025 and CMP0047 docs
| * \ Merge branch 'master' into revise-compiler-id-policiesBrad King2014-04-025-7/+14
| |\ \ | | |/
| * | Do not warn by default when policy CMP0025 or CMP0047 is not setBrad King2014-04-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These policies are triggered by the use of a particular compiler rather than outdated CMake code in a project. Avoid warning in every project that enables a language by not displaying the policy warning by default. Add variable CMAKE_POLICY_WARNING_CMP<NNNN> to control the warning explicitly; otherwise enable the warning with --debug-output or --trace. This breaks with strict policy convention because it does not provide developers with any warning about the behavior change by default. Existing projects will continue to build without a warning or change in behavior. When a developer changes the minimum required version of CMake in a project to a sufficiently high value (3.0), the project will suddenly get the new compiler id and may break, but at least the breakage comes with a change to the project rather than the version of CMake used to build it. Breaking strict policy convention is worthwhile in this case because very few projects will be affected by the behavior change but every project would have to see the warning if it were enabled by default.
* | | Help: Rewrite the cmake-developer.7 find module documentationAlex Merry2014-04-021-175/+370
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | As well as the traditional variables, providing imported targets is suggested, and the relative advantages and disadvantages briefly discussed. A mini-tutorial walking through creating a simple find module is provided. This changes the recommended version variable from Foo_VERSION_STRING to Foo_VERSION, because there is really no need to have different variable names for package version files vs. find modules. It notes the old variable name, though, and suggests setting it for compatibility.
* | Merge topic 'fix-Qt-manual-typo'Brad King2014-03-261-1/+1
|\ \ | | | | | | | | | | | | dcfbbe87 Help: Fix typo in cmake-qt manual.
| * | Help: Fix typo in cmake-qt manual.Stephen Kelly2014-03-261-1/+1
| |/ | | | | | | Do -> To.
| * Merge branch 'doc-osx-path-variables' into releaseBrad King2014-03-101-0/+2
| |\
* | | Help: Drop cmStdString from cmake-developer(7) examplesBrad King2014-03-131-6/+6
| | | | | | | | | | | | The type no longer exists within CMake.
* | | Merge topic 'doc-osx-path-variables'Brad King2014-03-101-0/+2
|\ \ \ | | |/ | |/| | | | | | | 764e977a Help: Document variables CMAKE_APPBUNDLE_PATH and CMAKE_FRAMEWORK_PATH
| * | Help: Document variables CMAKE_APPBUNDLE_PATH and CMAKE_FRAMEWORK_PATHBrad King2014-03-101-0/+2
| | |
* | | Merge topic 'add-FindOpenCL'Brad King2014-02-281-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | 1b08e609 Help: Add release notes for topic 'add-FindOpenCL' 041485bc Add FindOpenCL module
| * | | Add FindOpenCL moduleMatthäus G. Chajdas2014-02-261-0/+1
| |/ /
* | | Merge topic 'INTERFACE-property-docs'Brad King2014-02-261-0/+10
|\ \ \ | | |/ | |/| | | | | | | ad75afbf Help: List the whitelist of properties for INTERFACE libraries.
| * | Help: List the whitelist of properties for INTERFACE libraries.Stephen Kelly2014-02-261-0/+10
| |/
* | MSVC: Add properties to configure compiler PDB files (#14762)Brad King2014-02-262-0/+6
|/ | | | | | | | | | Since commit v2.8.12~437^2~2 (VS: Separate compiler and linker PDB files 2013-04-05) we no longer set /Fd with the PDB_NAME or PDB_OUTPUT_DIRECTORY properties. Those properties now exclusively handle linker PDB files. Since STATIC libraries do not link their compiler PDB file becomes more important. Add new target properties "COMPILE_PDB_NAME[_<CONFIG>]" and "COMPILE_PDB_OUTPUT_DIRECTORY[_<CONFIG>]" to specify the compiler PDB file location and pass the value to the MSVC /Fd option.
* Merge topic 'doc-usage-requirements'Brad King2014-02-191-0/+6
|\ | | | | | | | | 0c54b775 Help: Document the purpose of usage requirements clearly.
| * Help: Document the purpose of usage requirements clearly.Stephen Kelly2014-02-181-0/+6
| | | | | | | | | | | | | | | | | | | | People will be tempted to put things there for convenience, thereby causing conflicts similar to http://thread.gmane.org/gmane.comp.compilers.clang.devel/35162/focus=35169 where it is conceivable that the LLVM developers could put a flag on a target for convenience, which would cause conflicts for some downstreams.
* | Merge topic 'doc-package-registry'Brad King2014-02-191-0/+129
|\ \ | | | | | | | | | | | | | | | bf012e0c Help: Format find_package() command documentation bd6887e4 Help: Document the package registry in cmake-packages.7
| * | Help: Document the package registry in cmake-packages.7Brad King2014-02-171-0/+129
| |/ | | | | | | | | | | | | | | Port documentation from the CMake Wiki page at: http://www.cmake.org/Wiki/CMake/Tutorials/Package_Registry as of 2014-02-17 into our main documentation.
* | Help: Fix typoStephen Kelly2014-02-171-2/+2
|/ | | | binary_find -> binary_search.
* add_custom_command: Disallow use of SOURCE signatures.Stephen Kelly2014-02-121-0/+1
| | | | Add CMP0050 to control this behavior.
* Add policy CMP0049 to avoid variable expansion in source listsStephen Kelly2014-02-121-0/+1
|
* Merge topic 'extend-docs'Brad King2014-02-103-4/+17
|\ | | | | | | | | | | | | 0b3e98d9 Help: Don't list debuggable properties in cmake-buildsystem manual. 39d08b92 Help: Add additional hyperlink targets ef17e293 Help: Document SYSTEM treatment of IMPORTED target INTERFACE_INCLUDE_DIRS
| * Help: Don't list debuggable properties in cmake-buildsystem manual.Stephen Kelly2014-02-101-4/+2
| |
| * Help: Add additional hyperlink targetsStephen Kelly2014-02-093-0/+7
| |
| * Help: Document SYSTEM treatment of IMPORTED target INTERFACE_INCLUDE_DIRSStephen Kelly2014-02-091-0/+8
| | | | | | | | Document how the behavior can be controlled.
* | Help: Add hyperlink targets for argument types in cmake-language(7)Brad King2014-02-071-0/+6
|/ | | | | Add reStructuredText hyperlink targets for the bracket, quoted, and unquoted argument sections.
* Help: Note that the compatible interface properties must not intersect.Stephen Kelly2014-02-061-0/+4
|
* Help: Specify how to order and modify transitively set property values.Stephen Kelly2014-02-061-1/+21
|
* Help: Add hyperlink targets to some manual sections.Stephen Kelly2014-02-061-0/+9
| | | | | These can be refered to from the command documentation and other relevant locations.
* Help: Mark up references to NEW and OLD policy settings properly.Stephen Kelly2014-02-061-4/+4
|
* Help: Add a style guide.Stephen Kelly2014-02-061-2/+167
|
* Help: Fix typosStephen Kelly2014-02-062-2/+2
| | | | | | | | Psuedo -> Pseudo behaviour -> behavior CMake uses American spelling.
* Merge topic 'cmake-qt-manual'Brad King2014-02-031-0/+184
|\ | | | | | | | | | | | | 4271a4ed Help: Add information about INTERFACE_AUTOUIC_OPTIONS. 7935f4de Help: Note that AUTOMOC consumes the defines and includes from targets. 2739a6f9 Help: Move Qt tool invocation information to a generic cmake-qt manual.
| * Help: Add information about INTERFACE_AUTOUIC_OPTIONS.Stephen Kelly2014-02-021-0/+40
| |
| * Help: Note that AUTOMOC consumes the defines and includes from targets.Stephen Kelly2014-02-021-0/+4
| |
| * Help: Move Qt tool invocation information to a generic cmake-qt manual.Stephen Kelly2014-02-021-0/+140
| | | | | | | | | | | | | | | | Add an introduction about the use of different package types, and the ability to use Qt 4 and 5 versions together in a single buildsystem. Add a section about automatic linking of the qtmain.lib library and how to disable it.
* | project: Manage VERSION variablesBrad King2014-01-292-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the project() command to set variables {PROJECT,<PROJECT-NAME>}_VERSION{,_MAJOR,_MINOR,_PATCH,_TWEAK} holding the project version number and its components. Add project() command option "VERSION" to specify the version explicitly, and default to the empty string when it is not given. Since this clears variables when no VERSION is given, this may change behavior for existing projects that set the version variables themselves prior to calling project(). Add policy CMP0048 for compatibility. Suggested-by: Alex Neundorf <neundorf@kde.org>
* | Help: Format project command and variable documentationBrad King2014-01-291-0/+1
|/ | | | Also add document for CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE variable.
* Help: Note that std::string::clear may not be used.Stephen Kelly2014-01-271-4/+6
| | | | | As found in commit 519c0a5d (Can't use std::string::clear() in cmake., 2012-09-15).
* Help: Document non-use of std::set::insert.Stephen Kelly2014-01-271-0/+23
| | | | | As found in commit 8e7c207e (Use a manual loop to insert into set::set., 2012-09-15).
* Merge topic 'cmake-rerun-depends'Brad King2014-01-221-0/+1
|\ | | | | | | | | | | 82d43175 Allow projects to specify extra inputs to CMake 1ef444d6 Add test case to verify CMake does not re-run on first build