summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'remove-TARGET_DEFINED-genex'Brad King2013-03-047-37/+8
|\ | | | | | | | | | | | | | | cbf0756 Revert "Add the TARGET_DEFINED generator expression" 21a342c Remove use of TARGET_DEFINED from the target_link_libraries test. 47b8d32 Remove use of TARGET_DEFINED from the ExportImport test. 2e39d21 Remove use of TARGET_DEFINED from target_include_directories test.
| * Revert "Add the TARGET_DEFINED generator expression"Stephen Kelly2013-02-254-29/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2bee6f5ba5b3f33817cc00e056a7df60d05c9399. This expression is not used, and has a semantic which is not completely optimal (namely considering utility targets to be targets, though usually we are interested in linkable targets). Remove it so that we have more freedom to define better expressions in the future. Conflicts: Source/cmGeneratorExpressionEvaluator.cxx Tests/CMakeCommands/target_compile_definitions/CMakeLists.txt Tests/CMakeCommands/target_compile_definitions/consumer.cpp
| * Remove use of TARGET_DEFINED from the target_link_libraries test.Stephen Kelly2013-02-251-4/+4
| | | | | | | | | | | | Update the unit test introduced in commit 57175d55 (Only use early evaluation termination for transitive properties., 2013-02-07) to not use the expression, but still test the appropriate code.
| * Remove use of TARGET_DEFINED from the ExportImport test.Stephen Kelly2013-02-251-1/+1
| | | | | | | | | | | | Update the unit test introduced in commit 5daaa5c4 (Fix TARGET_PROPERTY target extractions., 2013-01-26) to not use the expression, but still test the appropriate code.
| * Remove use of TARGET_DEFINED from target_include_directories test.Stephen Kelly2013-02-251-3/+3
| | | | | | | | | | | | | | Change the unit test introduced in commit 24dcf0c0 (Make sure generator expressions can be used with target_include_directories., 2013-01-16) to not use the expression, but still test the appropriate code.
* | CMake Nightly Date StampKitware Robot2013-03-041-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-03-031-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-03-021-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-03-011-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-02-281-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-02-271-1/+1
| |
* | CMake Nightly Date StampKitware Robot2013-02-261-1/+1
| |
* | Merge topic 'memoize-link-iface-includes-defines'Brad King2013-02-251-44/+88
|\ \ | | | | | | | | | | | | 42ebb18 Memoize includes and defines from interface libraries.
| * | Memoize includes and defines from interface libraries.Stephen Kelly2013-02-241-44/+88
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is similar in spirit to commit e48d8420 (Cache context-independent includes on evaluation., 2013-02-03), but it is needed since commit a1c4905f (Use the link information as a source of compile definitions and includes., 2013-02-12), which changed how includes and defines are determined. As they are now determined through the link interface, we need to cache the result of evaluating them through that. In the case of the includes, the result was already being cached and then immediately disposed. Store the result as a member variable instead to make use of the caching.
* | | Merge topic 'interface-property-external-read'Brad King2013-02-258-47/+113
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8dfdf1c Fix the tests for evaluating includes and defines. 98a6725 Fix constness of accessors. 7e70744 Expand includes and defines transitively in 'external' genexes. d1a2729 Fix DAG checker finding cycling dependencies. e72eaad Workaround broken code where a target has itself in its link iface. ec2c67b Strip stray semicolons when evaluating generator expressions.
| * | | Fix the tests for evaluating includes and defines.Stephen Kelly2013-02-232-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We should also check whether the INTERFACE_ variant of a property is being read, and in the case of the compile definitions, we should test the _<CONFIG> suffixed variants. That is already available through the use of the methods. This way, we use the ALREADY_SEEN optimization when evaluating the includes of a target in 'external' generator expressions, ie, those used in a add_custom_command invokation, as opposed to evaluating the INCLUDE_DIRECTORIES of a target itself via GetIncludeDirectories.
| * | | Fix constness of accessors.Stephen Kelly2013-02-232-4/+4
| | | |
| * | | Expand includes and defines transitively in 'external' genexes.Stephen Kelly2013-02-234-37/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This means that we can use expressions of the form $<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES> to get a list of the interface include directories of foo, including those coming from dependencies. We can't have a test of a target which has a single include directory in its INCLUDE_DIRECTORIES because the shell on the MSYS platforms transforms a single include directory to include a prefix, which is not what the test expects. We test a target with two directories instead as a means to test a target with no link dependencies.
| * | | Fix DAG checker finding cycling dependencies.Stephen Kelly2013-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this patch, the following is reported falsely as a self-reference: target_link_libraries(empty2 LINK_PUBLIC empty3) target_link_libraries(empty3 LINK_PUBLIC empty2) add_custom_target(... -DINCLUDES=$<TARGET_PROPERTY:empty2,INTERFACE_INCLUDE_DIRECTORIES> ) The reason is that the existing code assumed that all reading of include directories would be done through cmTarget::GetIncludeDirectories() and would therefore be initialized with a DagChecker. That is not the case if reading the property with an 'external' generator expression.
| * | | Workaround broken code where a target has itself in its link iface.Stephen Kelly2013-02-231-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a test for this since commit 8e756d2b (Tolerate cycles in shared library link interfaces (#12647), 2012-01-12), so make sure it continues to pass, even as we require no self-references in new INTERFACE_ property generator expressions.
| * | | Strip stray semicolons when evaluating generator expressions.Stephen Kelly2013-02-183-3/+8
| | | |
* | | | Merge topic 'ide-compiler-vars-Fortran'Brad King2013-02-251-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 9f94181 VS: Restore CMAKE_GENERATOR_FC variable
| * | | | VS: Restore CMAKE_GENERATOR_FC variableBrad King2013-02-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit bed6c388 (VS,Xcode: Remove unused CMAKE_GENERATOR_* variables, 2013-02-19) we removed this variable among others from the VS generator claiming they were all not used. In fact the Fortran compiler detection module CMakeDetermineFortranCompiler.cmake uses CMAKE_GENERATOR_FC even for the Visual Studio IDE generators because it does not use the full IDE compiler id detection like the C and C++ language files do.
* | | | | Merge topic 'FPHSA_FOUND_VAR_OPTION'Brad King2013-02-2511-23/+90
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f17711c FPHSA: Convert FOUND_VAR failure test to RunCMake c1f5780 FPHSA: improve documentation 7bb1abe FPHSA: Add FOUND_VAR option to specify _FOUND variable name
| * | | | | FPHSA: Convert FOUND_VAR failure test to RunCMakeBrad King2013-02-228-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the Tests/FPHSA_InvalidFOUND_VAR test case over to a new RunCMake.FPHSA test with a BadFoundVar case. The RunCMake tests are built to cover failure cases easily and robustly.
| * | | | | FPHSA: improve documentationAlex Neundorf2013-02-221-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | Alex
| * | | | | FPHSA: Add FOUND_VAR option to specify _FOUND variable nameAlex Neundorf2013-02-227-15/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the new mode FPHSA now accepts a FOUND_VAR option, which can be set either to ExactCase_FOUND or UPPERCASE_FOUND, no other values are accepted. Also add tests for that, including failure. Alex
* | | | | | Merge topic 'try_compile-targets'Brad King2013-02-2524-69/+338
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 236133e Handle targets in the LINK_LIBRARIES of try_compile. 1c0597c Add a new Export generator for IMPORTED targets. f2ab17d Keep track of all targets seen while evaluating a genex.
| * | | | | | Handle targets in the LINK_LIBRARIES of try_compile.Stephen Kelly2013-02-2215-64/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Imported targets are re-exported so that they can be used by the try_compile generated code with target_link_libraries. This makes the use of the cmake_expand_imported_targets macro obsolete. The macro is not able to expand the generator expressions which may appear in the IMPORTED_LINK_INTERFACE_LIBRARIES content. Instead it just sees them as 'not a target'.
| * | | | | | Add a new Export generator for IMPORTED targets.Stephen Kelly2013-02-225-0/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to be used during try_compile using LINK_LIBRARIES in the srcfile signature and, in the future, TARGETS in the binary dir signature.
| * | | | | | Keep track of all targets seen while evaluating a genex.Stephen Kelly2013-02-224-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As dependencies of the generator expression, these will re-exported in try_compile generated code.
* | | | | | | Merge topic 'fix-automoc-linker-language'Brad King2013-02-256-12/+42
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 79568f9 automoc: Add source file to target early to set the linker language
| * | | | | | | automoc: Add source file to target early to set the linker languageStephen Kelly2013-02-226-12/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, GetIncludeDirectories was called before calling target->AddSourceFile(mocCppSource). Since commit a1c4905f (Use the link information as a source of compile definitions and includes., 2013-02-12), the include directories are determined by the link information. Valid link information requires that the linker language can be determined, which depends on the source files languages and the dependent targets languages. In the case of the no_link_languages target in the unit test, there are no dependencies and the additional source file no_link_languages_automoc.cpp is added to the target at generate-time. That file can be used to determine the linker language, but it must be added to the target before calling GetIncludeDirectories.
* | | | | | | | Merge topic 'ExternalData-spaces'Brad King2013-02-254-19/+37
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 55f0148 ExternalData: Test content link with a space in its name d45eb35 Tests: Generalize decision for 'make' tool supporting spaces ef8b2fd Tests: Replace exec_program with execute_process
| * | | | | | | | ExternalData: Test content link with a space in its nameBrad King2013-02-224-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the Module.ExternalData test to cover a DATA{} reference whose name contains a space. Skip the case when the native build tool does not support spaces.
| * | | | | | | | Tests: Generalize decision for 'make' tool supporting spacesBrad King2013-02-221-16/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some make tools do not support spaces inside the source tree paths. Decide early whether to add tests that depend on support for spaces so we can use the result in a decision for any test.
| * | | | | | | | Tests: Replace exec_program with execute_processBrad King2013-02-221-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop use of the old exec_program command from CMake's own CMakeLists.txt files.
* | | | | | | | | Merge topic 'ExportFileGenerator_GenerateNicerErrorCheckingCode'Brad King2013-02-251-13/+30
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 11d0c66 export files: rewrite the code for checking required targets
| * | | | | | | | | export files: rewrite the code for checking required targetsAlex Neundorf2013-02-201-13/+30
| | |_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of generating a whole bunch of repeated if-statements now a foreach()-loop is generated in the targets-file. Also now a comment is inserted in the generated file if no targets from other export sets are used, so if somebody looks at the file he can see whether the information about missing imported targets has been generated or not. Alex
* | | | | | | | | Merge topic 'cmLocalGenerator_RemoveVirtuals'Brad King2013-02-251-5/+5
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f497dbc cmLocalGenerator: remove "virtual" where not used
| * | | | | | | | | cmLocalGenerator: remove "virtual" where not usedAlex Neundorf2013-02-201-5/+5
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes several functions of cmLocalGenerator which are marked as virtual non-virtual, since they are not reimplemented anywhere. Alex
* | | | | | | | | Merge topic 'generate-export-header-warnings'Brad King2013-02-251-4/+0
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1e0891e Removed GenerateExportHeader warnings about old compilers
| * | | | | | | | | Removed GenerateExportHeader warnings about old compilersMarcus D. Hanwell2013-02-201-4/+0
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These warnings tend to flood the dashboard submissions, and it is doing what it should (degrade gracefully with older compilers).
* | | | | | | | | Merge topic 'fix-GEH-docs'Brad King2013-02-251-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0ebf332 Fix GenerateExportHeader documentation #13936
| * | | | | | | | | Fix GenerateExportHeader documentation #13936Stephen Kelly2013-02-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no CMAKE_CURRENT_BUILD_DIR. CMAKE_CURRENT_BINARY_DIR is the correct variable here.
* | | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-251-1/+1
| |_|_|_|_|_|_|_|/ |/| | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-241-1/+1
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-231-1/+1
| |_|/ / / / / / |/| | | | | | |
* | | | | | | | CMake Nightly Date StampKitware Robot2013-02-221-1/+1
| |_|_|_|_|_|/ |/| | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2013-02-211-1/+1
| |/ / / / / |/| | | | |