summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Help: Document the C++ subset permitted for CMake code.Stephen Kelly2014-01-061-0/+159
| | | | | This may be incomplete, but further limitations can be added when needed.
* Merge topic 'minor-cleanups'Brad King2014-01-0634-155/+581
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 84fac67 Don't allow include() of export(EXPORT) file at configure time. faedd2b cmTarget: Fix system include annotation propagation. 9eb06d0 add_library: Disallow invalid signatures for INTERFACE_LIBRARY. 10d65d5 cmTarget: Move a variable initialization closer to where it is used. 0f3e8e9 Undefine local preprocessor loop variables. 9ba47ee Genex: Reform error-checking for nullary/unary expressions. fa651c7 cmTarget: Remove some of the INTERFACE_LIBRARY whitelisted properties. 61d138a cmTarget: INTERFACE_LIBRARY is always EXCLUDE_FROM_ALL. 3429541 export: Rename some variables to reflect content type. 7461d67 cmTarget: Enable convenient include dir handling for INTERFACE_LIBRARY. 7fc6e3d cmTarget: Remove dead code. 2af966d Genex: Add EQUAL expression. 2d66380 cmTarget: Use strtol for numeric parsing.
| * Don't allow include() of export(EXPORT) file at configure time.Stephen Kelly2014-01-067-3/+37
| | | | | | | | | | | | | | | | | | As a new feature it does not need to participate in CMP0024. Store cmExportBuildFileGenerator instances which correspond to the export(EXPORT) signature in a second map which does not own the pointers. This avoids the need to add cmExportBuildFileGenerator and dependencies to the bootstrap system.
| * cmTarget: Fix system include annotation propagation.Stephen Kelly2014-01-066-84/+105
| | | | | | | | | | | | | | | | | | | | | | | | Direct users of IMPORTED targets treat INTERFACE_INCLUDE_DIRECTORIES as SYSTEM, after commit a63fcbcb (Always consider includes from IMPORTED targets to be SYSTEM., 2013-08-29). It was intended that transitive use of an IMPORTED target would have the same behavior, but that did not work. The implementation processed only direct dependencies in cmTarget::FinalizeSystemIncludeDirectories. Implement transitive evaluation of dependencies by traversing the link interface of each target in the link implementation.
| * add_library: Disallow invalid signatures for INTERFACE_LIBRARY.Stephen Kelly2014-01-068-5/+215
| | | | | | | | | | Document the valid signatures. Add a test for the IMPORTED GLOBAL signature.
| * cmTarget: Move a variable initialization closer to where it is used.Stephen Kelly2014-01-061-3/+1
| | | | | | | | This is more readable and easier to reason about.
| * Undefine local preprocessor loop variables.Stephen Kelly2014-01-064-1/+9
| | | | | | | | | | Most occurances of this pattern already contain the undef, so add it to the rest too.
| * Genex: Reform error-checking for nullary/unary expressions.Stephen Kelly2014-01-061-29/+10
| | | | | | | | | | | | The error messages were incorrect (reporting that the expression requires one or two parameters), and repeated. Remove the now-unused ZeroOrMoreParameters enum value.
| * cmTarget: Remove some of the INTERFACE_LIBRARY whitelisted properties.Stephen Kelly2014-01-062-9/+10
| | | | | | | | | | | | | | | | | | | | | | There is no need to allow EXCLUDE_* properties, because an INTERFACE_LIBRARY has no direct build output. IMPORTED_LINK_INTERFACE_LANGUAGES are relevant only to static libraries. VERSION is relevant only to the filename of direct build outputs, which INTERFACE_LIBRARY does not have.
| * cmTarget: INTERFACE_LIBRARY is always EXCLUDE_FROM_ALL.Stephen Kelly2014-01-061-1/+2
| |
| * export: Rename some variables to reflect content type.Stephen Kelly2014-01-062-10/+10
| | | | | | | | This method is used with a list of languages.
| * cmTarget: Enable convenient include dir handling for INTERFACE_LIBRARY.Stephen Kelly2014-01-066-3/+27
| | | | | | | | | | Make the CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE variable affect INTERFACE_LIBRARY targets.
| * cmTarget: Remove dead code.Stephen Kelly2014-01-061-1/+0
| | | | | | | | | | Whitelisting of properties already ensures that the LOCATION property will not be read from an INTERFACE_LIBRARY.
| * Genex: Add EQUAL expression.Stephen Kelly2014-01-065-2/+135
| | | | | | | | Support decimal, hex, octal and binary literals.
| * cmTarget: Use strtol for numeric parsing.Stephen Kelly2014-01-063-6/+22
|/ | | | | | On Windows apparently sscanf can not handle hex numbers. Test that numeric comparison works with hex numbers.
* Merge topic 'minor-cleanups'Brad King2014-01-0652-268/+433
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a55c70d cmTarget: Remove support for <CONFIG>_LOCATION property. c9f9b3c cmTarget: Test impliedByUse number-compatible properties. fbe1fa7 cmTarget: Don't repeat property origin debug information. 01c545c cmTarget: Fix debug report for interface-set compatibility types. c67e1a6 cmTarget: Fix reporting interface-set properties which are FALSE. 07b0f54 Qt Tests: Remove commented and unneeded line. 79db8ef cmTarget: Fix the property compatibility error message 43340a9 Help: Reformat Qt autogenerator documentation. d98ea6c Help: Mark some code blocks as containing cmake code. ea78935 GenerateExportHeader: Reformat docs. 272a20f cmTarget: Don't update IMPORTED target compilation properties 03d842a Run the add_compile_options command unit test. cd3d0b6 get_property: Fix testing ALIASED_TARGET target property (#14670) 6a62228 install: Ensure that install(TARGETS) works with no DESTINATION af3d3b8 export: Only generate and install configuration files if needed. 0de81bb Help: Workaround pygments reporting an error for genexes. ...
| * cmTarget: Remove support for <CONFIG>_LOCATION property.Stephen Kelly2014-01-041-19/+0
| | | | | | | | | | It is not documented, is very old, is compatibility code, is non-uniform and is not needed.
| * cmTarget: Test impliedByUse number-compatible properties.Stephen Kelly2014-01-044-0/+15
| | | | | | | | | | | | | | | | | | Test that it is an error to read a number-compatible property to determine the link implementation. An alternative would be to consider the value to be "0", however, that is too arbitrary given the use-cases of this feature. Values from this feature may be used in setting a define, where "0" may have special or invalid meaning and should be explicit.
| * cmTarget: Don't repeat property origin debug information.Stephen Kelly2014-01-043-8/+15
| |
| * cmTarget: Fix debug report for interface-set compatibility types.Stephen Kelly2014-01-043-32/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the dependent target sets the property to boolean false, ensure that that appears in the debug report. Previously, the report output contained whether the property was consistent among dependencies, displaying 'TRUE', instead of the content of the property, which may be 'FALSE'. Return a std::pair from the consistentProperty method. This makes it possible to make the return value for string types easier to reason about. The return value of consistentProperty was previously set to an empty static string to emulate a 'true' value for the caller in commit 816b4a8a (cmTarget: Make consistentProperty return consistent content., 2013-10-22). The pair makes the consistency result properly typed.
| * cmTarget: Fix reporting interface-set properties which are FALSE.Stephen Kelly2014-01-043-2/+11
| |
| * Qt Tests: Remove commented and unneeded line.Stephen Kelly2014-01-041-1/+0
| |
| * cmTarget: Fix the property compatibility error messageStephen Kelly2014-01-047-4/+23
| | | | | | | | | | | | | | Don't refer to 'both', but a 'mixture'. List all compatible interface property types possible. Add another test for a mixture of three compatibilities.
| * Help: Reformat Qt autogenerator documentation.Stephen Kelly2014-01-0418-81/+81
| |
| * Help: Mark some code blocks as containing cmake code.Stephen Kelly2014-01-043-8/+24
| |
| * GenerateExportHeader: Reformat docs.Stephen Kelly2014-01-041-64/+51
| |
| * cmTarget: Don't update IMPORTED target compilation propertiesStephen Kelly2014-01-045-24/+47
| | | | | | | | | | | | The include_directories() and add_compile_options() commands should not append to the corresponding target property for IMPORTED targets. This is already the case for add_definitions().
| * Run the add_compile_options command unit test.Stephen Kelly2014-01-041-0/+1
| | | | | | | | | | This has not been executed since it was added in commit a984f325 (Introduce add_compile_options command., 2013-06-04).
| * get_property: Fix testing ALIASED_TARGET target property (#14670)Stephen Kelly2014-01-042-1/+23
| | | | | | | | | | In the case where the argument is not an ALIAS, the variable should be set to a -NOTFOUND content.
| * install: Ensure that install(TARGETS) works with no DESTINATIONStephen Kelly2014-01-041-1/+4
| | | | | | | | | | INTERFACE_LIBRARY targets have no corresponding files, and so require no DESTINATION to install anything to.
| * export: Only generate and install configuration files if needed.Stephen Kelly2014-01-041-6/+15
| | | | | | | | | | | | | | | | | | | | The modern way to create configuration dependent content is using generator expressions in the main export file. The only non-deprecated property still generated in the configuration-specific files are IMPORTED_LOCATION_<CONFIG> INTERFACE_LIBRARY targets have no location, and no need for those files.
| * Help: Workaround pygments reporting an error for genexes.Stephen Kelly2014-01-041-0/+10
| | | | | | | | | | Without the workaround, CMake code snippets are not highlighted at all because pygments can not lex the generator expressions.
| * Help: Remove workaround for pre-CMake 2.8.4 code.Stephen Kelly2014-01-041-2/+1
| | | | | | | | | | | | The requirement was updated in commit 920ffbf5 (Require CMake 2.8.4 or greater to build CMake, 2013-10-11) and similar snippets were removed.
| * cmTarget: Rename container holding link implementation objects.Stephen Kelly2014-01-041-14/+14
| | | | | | | | | | Don't erroneously name it for the link implementation. That's something different.
| * install: Rename variable referencing cmake version.Stephen Kelly2014-01-041-3/+3
| | | | | | | | | | | | | | | | The next version is 3.0.0, not 2.8.13. The version generated in the export file should be updated in the release branch in both cmExportInstallFileGenerator and cmExportBuildFileGenerator.
| * Style: Use this-> when invoking member function.Stephen Kelly2014-01-041-1/+1
| |
| * add_dependencies: Disallow use with INTERFACE_LIBRARY.Stephen Kelly2014-01-045-0/+21
| |
* | Merge topic 'cmake-buildsystem-manual'Brad King2014-01-062-0/+795
|\ \ | | | | | | | | | | | | 0d9cdab Help: Add cmake-buildsystem.7 manual
| * | Help: Add cmake-buildsystem.7 manualStephen Kelly2014-01-062-0/+795
| | | | | | | | | | | | | | | | | | | | | Describe how to define a buildsystem of binary targets, how to express dependencies between them, how to add build specifications, how to specify usage requirements, transitive and compatible propagation and the various pseudo targets.
* | | Merge topic 'fix-text-typos'Brad King2014-01-064-5/+5
|\ \ \ | | | | | | | | | | | | | | | | 9e41eb6 Fix wording of "the the" typos throughout text
| * | | Fix wording of "the the" typos throughout textRuslan Baratov2014-01-034-5/+5
| | | |
* | | | Merge topic 'update-kwsys'Brad King2014-01-061-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | 196cee6 Merge branch 'upstream-kwsys' into update-kwsys 4709c7a KWSys 2014-01-02 (606d7d6f)
| * \ \ \ Merge branch 'upstream-kwsys' into update-kwsysBrad King2014-01-031-0/+1
| |\ \ \ \ | | |_|_|/ | |/| | |
| | * | | KWSys 2014-01-02 (606d7d6f)KWSys Robot2014-01-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extract upstream KWSys using the following shell commands. $ git archive --prefix=upstream-kwsys/ 606d7d6f | tar x $ git shortlog --no-merges --abbrev=8 --format='%h %s' e81f2a9e..606d7d6f Muli Baron (1): 606d7d6f Terminal: Add putty-256color as a VT100 color-capable terminal Change-Id: Ibd80e7b209c29947c384023d3ac1ce862648de01
* | | | | Merge topic 'EclipseUse64bitMachOParser'Brad King2014-01-062-1/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | e6b0f45 Eclipse: use MachO64 parser starting with Helios (#14380)
| * | | | | Eclipse: use MachO64 parser starting with Helios (#14380)Alex Neundorf2014-01-012-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With this patch, cmake now puts the MachO64 bit binary file parser into the config file if the detected Eclipse is at least Helios (7.0), otherwise with the old parser executables will not be recognized by Eclipse. Alex
* | | | | | CMake Nightly Date StampKitware Robot2014-01-061-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2014-01-051-1/+1
| |_|_|_|/ |/| | | |
* | | | | CMake Nightly Date StampKitware Robot2014-01-041-1/+1
| |/ / / |/| | |
* | | | CMake Nightly Date StampKitware Robot2014-01-031-1/+1
| | | |