summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge topic 'fix-test-macOS-case-sensitive'Brad King2016-08-101-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 677e73cb Tests: Fix RunCMake.Framework on case sensitive file systems.
| * | | | Tests: Fix RunCMake.Framework on case sensitive file systems.Chaoren Lin2016-08-091-1/+1
| |/ / / | | | | | | | | | | | | The file is lowercase: Tests/RunCMake/Framework/osx.cmake
* | | | Merge topic 'ninja-directory-targets'Brad King2016-08-105-0/+17
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | 02789894 Ninja: Add `$subdir/{test,install,package}` targets a88c99f1 Ninja: Simplify computation of GLOBAL_TARGET outputs
| * | | | Ninja: Add `$subdir/{test,install,package}` targetsBrad King2016-08-095-0/+17
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the Makefile generator one can use `cd $subdir; make install` to build and install targets associated with a given subdirectory. This is not possible to do with the Ninja generator since there is only one `build.ninja` file at the top of the build tree. However, we can approximate it by allowing one to run `ninja $subdir/install` at the top of the tree to build the targets in the corresponding subdirectory and install them. This also makes sense for `test`, `package`, and other GLOBAL_TARGET targets. It was already done for `all` by commit v3.6.0-rc1~240^2~2 (Ninja: Add `$subdir/all` targets, 2016-03-11).
* | | | Merge topic 'add-extra-boolean-comparisons'Brad King2016-08-107-39/+535
|\ \ \ \ | |/ / / |/| | | | | | | | | | | 02d177c9 Add additional <= and >= comparison operators
| * | | Add additional <= and >= comparison operatorsChuck Atkins2016-08-097-39/+535
| |/ / | | | | | | | | | | | | This adds the LESS_EQUAL, GREATER_EQUAL, and associated STR and VERSION equivalents to use the combined <= and >= functionality.
* | | prefer list(APPEND) over string(APPEND) where appropriateDaniel Pfeifer2016-08-083-6/+6
|/ /
* | Merge topic 'use-string-append'Brad King2016-08-0147-108/+108
|\ \ | | | | | | | | | | | | | | | 7a649111 Use string(APPEND) in Tests 5d0d980d Use string(APPEND) in Modules
| * | Use string(APPEND) in TestsDaniel Pfeifer2016-07-2747-108/+108
| | | | | | | | | | | | | | | | | | | | | Automate with: find Tests -type f -print0 | xargs -0 perl -i -0pe \ 's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
* | | Merge topic 'app-framework-bundle-extension'Brad King2016-08-013-4/+64
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | f951d0ad Add tests for BUNDLE_EXTENSION c63380b1 Update documentation about bundle extensions 134d5c1f Honor BUNDLE_EXTENSION also for Frameworks (#14742) 2b909c08 Honor BUNDLE_EXTENSION also for App Bundles (#16148)
| * | | Add tests for BUNDLE_EXTENSIONGregor Jasny2016-07-223-4/+64
| | | |
* | | | Merge topic 'aliased-target-properties'Brad King2016-08-011-7/+6
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | ea647533 Do not report ALIASED_TARGET as always set (#15783)
| * | | Do not report ALIASED_TARGET as always set (#15783)Gregor Jasny2016-07-161-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cmGetPropertyCommand::StoreResult expects NULL for unset properties. Make ALIASED_TARGET align with that expectation. Additional corrections to the unit tests are necessary because get_property removes variables for unset properties (in contrast to get_target_property which stores a -NOTFOUND value).
* | | | Merge topic 'tests-hide-ldd-check-errors'Brad King2016-07-221-1/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | d6a6024e Tests: Hide errors from `ldd --help` output check
| * | | | Tests: Hide errors from `ldd --help` output checkBrad King2016-07-211-1/+2
| | |/ / | |/| | | | | | | | | | | | | | If `--help` is not a valid option then it may print content to stderr, so we need to capture that.
* | | | Merge topic 'windows-export-all-fix-objlib'Brad King2016-07-223-1/+9
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 13a6ff31 VS: Fix WINDOWS_EXPORT_ALL_SYMBOLS for object libraries
| * | | | VS: Fix WINDOWS_EXPORT_ALL_SYMBOLS for object librariesBrad King2016-07-213-1/+9
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach Visual Studio generators to include object files from object libraries in the list of objects whose symbols are to be exported. The Makefile and Ninja generators already did this. Update the test to cover this case. Reported-by: Bertrand Bellenot <Bertrand.Bellenot@cern.ch>
* | | | Merge topic 'revert-autogen-subdirs'Brad King2016-07-2219-218/+0
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/| 5e55d87b Autogen: Revert changes to generate moc/rcc in subdirectories
| * | Autogen: Revert changes to generate moc/rcc in subdirectoriesBrad King2016-07-2119-218/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert these commits: * v3.6.0-rc1~134^2 Tests: QtAutogen: Same source name in different directories test, 2016-04-13 * v3.6.0-rc1~134^2~1 Autogen: Generate qrc_NAME.cpp files in subdirectories, 2016-04-19 * v3.6.0-rc1~134^2~2 Autogen: Generate not included moc files in subdirectories, 2016-04-19 They regress existing builds that depend on the paths/symbols generated previously. Another approach will be needed to solve the name collision problem they were intended to solve. Leave the error diagnostics for the colliding cases that were added in the same topic as the above commits because they provide a useful early failure in relevant cases. Fixes #16209.
| * | Merge branch 'revert-try_compile-config-flags' into releaseBrad King2016-06-283-21/+0
| |\ \
* | | | Ninja: Fix inter-target order-only dependencies of custom commandsBrad King2016-07-202-0/+45
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Custom command dependencies are followed for each target's source files and add their transitive closure to the corresponding target. This means that when a custom command in one target has a dependency on a custom command in another target, both will appear in the dependent target's sources. For the Makefile, VS IDE, and Xcode generators this is not a problem because each target gets its own independent build system that is evaluated in target dependency order. By the time the dependent target is built the custom command that belongs to one of its dependencies will already have been brought up to date. For the Ninja generator we need to generate a monolithic build system covering all targets so we can have only one copy of a custom command. This means that we need to reconcile the target-level ordering dependencies from its appearance in multiple targets to include only the least-dependent common set. This is done by computing the set intersection of the dependencies of all the targets containing a custom command. However, we previously included only the direct dependencies so any target-level dependency not directly added to all targets into which a custom command propagates was discarded. Fix this by computing the transitive closure of dependencies for each target and then intersecting those sets. That will get the common set of dependencies. Also add a test to cover a case in which the incorrectly dropped target ordering dependencies would fail.
* | | Merge topic 'toolchain-flag-init'Brad King2016-07-154-0/+73
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8a98cf64 Honor CMAKE_*_LINKER_FLAGS[_<CONFIG>]_INIT set in toolchain files 37d15c39 MSVC: Set all CMAKE_*_LINKER_FLAGS_INIT directly 55c884ed Embarcadero: Set all CMAKE_*_LINKER_FLAGS_INIT directly aec3c79a Strip CMAKE_*_LINKER_FLAGS[_<CONFIG>] initializer whitespace
| * | | Honor CMAKE_*_LINKER_FLAGS[_<CONFIG>]_INIT set in toolchain filesBrad King2016-07-144-0/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document these variables. Change our convention for setting these variables from: set(CMAKE_EXE_LINKER_FLAGS_INIT "...") to string(APPEND CMAKE_EXE_LINKER_FLAGS_INIT " ...") so that any value previously set by a toolchain file will be used.
* | | | Merge topic 'no-implicit-link-clang-rt'Brad King2016-07-141-0/+6
|\ \ \ \ | |/ / / |/| | | | | | | | | | | 35322226 CMakeParseImplicitLinkInfo: Exclude libclang_rt libraries
| * | | CMakeParseImplicitLinkInfo: Exclude libclang_rt librariesBrad King2016-07-111-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These libraries are used for Clang runtime analysis support with flags like `-fsanitize=memory` and are not actually implicitly linked libraries. Fixes #16194.
* | | | Merge topic 'findicu'Brad King2016-07-131-8/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 0e9e6aa8 Tests: Run clang-format on FindICU test code
| * | | | Tests: Run clang-format on FindICU test codeBrad King2016-07-131-8/+7
| | | | |
* | | | | Merge topic 'findicu'Brad King2016-07-134-0/+53
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | | | | | | e3bff7b3 Help: Add notes for topic 'findicu' 4a63be15 FindICU: New module
| * | | | FindICU: New moduleRoger Leigh2016-07-134-0/+53
| | | | |
* | | | | Merge topic 'windows-export-all-from-exe'Brad King2016-07-133-0/+22
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9da725cb Windows: Honor WINDOWS_EXPORT_ALL_SYMBOLS for executables with exports 2005b960 Makefile: Factor out WINDOWS_EXPORT_ALL_SYMBOLS helper
| * | | | | Windows: Honor WINDOWS_EXPORT_ALL_SYMBOLS for executables with exportsYury Zhuravlev2016-07-113-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For executables with ENABLE_EXPORTS set, export all symbols when instructed to do so by WINDOWS_EXPORT_ALL_SYMBOLS.
* | | | | | Merge topic 'cmake-spelling'Brad King2016-07-131-1/+1
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | | | | | | | | | | | | | 56608618 Fix typos.
| * | | | | Fix typos.Felix Geyer2016-07-101-1/+1
| | |/ / / | |/| | |
* | | | | Merge topic 'tiff-typo'Brad King2016-07-111-7/+7
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 7959d518 FindTIFF: Correct variable names in unit test
| * | | | | FindTIFF: Correct variable names in unit testRoger Leigh2016-07-101-7/+7
| |/ / / /
* | | | | Source: Remove long-unused .cvsignore fileBrad King2016-07-082-2/+2
|/ / / /
* | | | Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT set in toolchain filesBrad King2016-07-064-0/+45
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document these variables. Change our convention for setting these variables from: set(CMAKE_C_FLAGS_INIT "...") to string(APPEND CMAKE_C_FLAGS_INIT " ...") so that any value previously set by a toolchain file will be used. Automate the conversion with: sed -i 's/set *(\(CMAKE_\(C\|CXX\|Fortran\|RC\|ASM\|${[^}]\+}\)_FLAGS\(_[^_]\+\)\?_INIT \+"\)/string(APPEND \1 /' \ Modules/Compiler/*.cmake Modules/Platform/*.cmake and follow up with some manual fixes (e.g. to cases that already meant to append). Also revert the automated changes to contexts that are not protected from running multiple times.
* | | try_compile: Add policy CMP0066 to honor CMAKE_<LANG>_FLAGS_<CONFIG>Brad King2016-06-295-0/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the `try_compile` source file signature we propagate the caller's value of `CMAKE_<LANG>_FLAGS` into the test project. Extend this to propagate `CMAKE_<LANG>_FLAGS_<CONFIG>` too instead of always using the default value in the test project. This will be useful, for example, to allow the MSVC runtime library to be changed (e.g. `-MDd` => `-MTd`). However, some projects may currently depend on this not being done, so we need to activate the behavior using a policy. This change was originally made by commit v3.6.0-rc1~160^2 (try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes, 2016-04-11) but without the policy and so had to be reverted during the 3.6 release candidate cycle. Fixes #16174.
* | | Merge topic 'GenerateExportHeader-custom-content'Brad King2016-06-291-1/+1
|\ \ \ | | | | | | | | | | | | | | | | a9252441 Tests: Run clang-format on GenerateExportHeader code
| * | | Tests: Run clang-format on GenerateExportHeader codeBrad King2016-06-291-1/+1
| | | |
* | | | Merge topic 'GenerateExportHeader-custom-content'Brad King2016-06-292-0/+7
|\ \ \ \ | |/ / / | | | | | | | | | | | | 843402b0 GenerateExportHeader: Add option to specify custom content
| * | | GenerateExportHeader: Add option to specify custom contentBrad King2016-06-282-0/+7
| | | |
* | | | Merge topic 'revert-try_compile-config-flags'Brad King2016-06-293-21/+0
|\ \ \ \ | |/ / / |/| | / | | |/ | |/| 943fe6e3 Revert "try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes"
| * | Revert "try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes"Brad King2016-06-283-21/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit v3.6.0-rc1~160^2 (try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes, 2016-04-11). The behavior it introduced can break projects that depend on the lack of such behavior. We will have to introduce a policy or other mechanism to enable the behavior in a compatible way. Simply revert it for now. See issue #16174.
* | | Merge topic 'ninja-no-rsp-for-rc'Brad King2016-06-285-0/+24
|\ \ \ | | |/ | |/| | | | | | | 15b3f6f0 ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC files
| * | ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC filesBen Boeckel2016-06-275-0/+24
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.6.0-rc1~174^2 (Ninja: Honor CMAKE_NINJA_FORCE_RESPONSE_FILE for compile rules, 2016-04-06), Ninja learned to look for `CMAKE_NINJA_FORCE_RESPONSE_FILE` in the current scope or the environment in order to force response file usage for all compilation rules. However, on Windows, the RC compiler goes through cmcldeps which does a `replace(output, output + ".dep.obj")` on the command line. However, with a response file (which we name `output + ".rsp"`), the response file path is replaced instead causing the compiler to (correctly) complain that the response file `output + ".dep.obj.rsp"` does not exist. What needs to happen is for cmcldeps to look through the response file, replace *its* contents and place it in the `output + ".dep.obj.rsp"` file. Also add a test which actually compiles an RC file into a library and executable for all generators on Windows and additionally test `CMAKE_NINJA_FORCE_RESPONSE_FILE` for Ninja generators. Fixes #16167.
* | Merge topic 'vs-tool-override'Brad King2016-06-232-1/+128
|\ \ | | | | | | | | | | | | ed05f11d VS: Add a VS_TOOL_OVERRIDE source file property
| * | VS: Add a VS_TOOL_OVERRIDE source file propertyGilles Khouzam2016-06-202-1/+128
| | | | | | | | | | | | | | | | | | | | | | | | This property allow to specify a specific Visual Studio tool for a source file overriding the default tool behavior. For example, a `.resw` file being processed as a `PriResource` file. This has the advantage of being able to teach CMake to process new file types without code modifications.
* | | Merge topic 'vs-sdk-refs'Brad King2016-06-231-0/+3
|\ \ \ | | | | | | | | | | | | | | | | 35a6cac2 VS: Add VS_SDK_REFERENCES target property to reference external SDKs
| * | | VS: Add VS_SDK_REFERENCES target property to reference external SDKsGilles Khouzam2016-06-221-0/+3
| |/ / | | | | | | | | | | | | Allow one to specify external SDK references such as `Microsoft.AdMediatorWindows81, Version=1.0`.