summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MSVC: Add properties to configure compiler PDB files (#14762)Brad King2014-02-2627-11/+262
| | | | | | | | | | 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.
* cmTarget: Add per-config compilation infoBrad King2014-02-242-0/+50
| | | | | | | Add a cmTarget::CompileInfo struct to hold per-configuration information about the compilation settings in a target. This is different than cmTarget::OutputInfo because it applies to any targets that can compile sources even if they do not link or archive.
* cmTarget: Refactor ComputePDBOutputDir interfaceBrad King2014-02-242-6/+7
| | | | | | Add a runtime parameter to specify the property name prefix. Update the call site to pass "PDB" to preserve the existing name for that call path.
* Help: Refactor PDB_NAME and PDB_OUTPUT_DIRECTORY docsBrad King2014-02-245-13/+9
| | | | | | | Move the note about VS 6 into the PDB_NOTE.txt common include file and include it from the per-config properties too. Also re-word the note to clarify the separate compiler and linker flags involved and state explicitly that compiler flags are not affected.
* Makefile: Fix per-config linker PDB output directoryBrad King2014-02-243-4/+4
| | | | | | Also, now that all call sites of cmTarget::GetPDBName and cmTarget::GetPDBDirectory pass the configuration, make the argument non-optional.
* Merge topic 'variable-expansion-tests'Brad King2014-02-2425-0/+130
|\ | | | | | | | | a9bdef2d tests: Add variable expansion tests
| * tests: Add variable expansion testsBen Boeckel2014-02-2125-0/+130
| | | | | | | | | | | | | | | | | | There are some corner cases in variable expansion which would be nice to capture before going and rewriting the variable expansion code. The majority of these are related to configuring files and strings with '@' in them in conjunction with @ONLY being specified. Another is testing for '(' usage inside of ENV variable references based on whether it is quoted or not.
* | Merge topic 'ExternalProject-BUILD_ALWAYS'Brad King2014-02-244-0/+65
|\ \ | | | | | | | | | | | | 73e5c6ae ExternalProject: Add option to always run the build step
| * | ExternalProject: Add option to always run the build stepBrad King2014-02-214-0/+65
| |/ | | | | | | | | | | | | Teach ExternalProject_Add a new BUILD_ALWAYS option to skip using the build step stamp file and execute the step on every build. Extend the BuildDepends test with a case to cover this option.
* | Merge topic 'fix-find_dependency-macro'Brad King2014-02-241-3/+1
|\ \ | | | | | | | | | | | | 5878c5d9 Always set version variable of find_dependency macro
| * | Always set version variable of find_dependency macroAlex Merry2014-02-231-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there is no ARGV1, that is fine; version will be made empty, and no version will be passed to find_package(). This is relevant when find_dependency is invoked multiple times, sometimes with a version specified and sometimes without. find_dependency(dep1 3.4) find_dependency(dep2) # version still set to 3.4.
* | | Merge topic 'install-FILES-genex'Brad King2014-02-2412-178/+288
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 6e89c8a5 install: Support generator expressions in FILES and PROGRAMS mode f11f7b34 cmInstallFilesGenerator: Add reference to calling cmMakefile e190236c Help: Format install() command documentation
| * | | install: Support generator expressions in FILES and PROGRAMS modeBrad King2014-02-2112-7/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach the install(FILES) and install(PROGRAMS) commands to evaluate generator expressions in the list of files. Extend the ExportImport test to cover installation cases involving generator expressions.
| * | | cmInstallFilesGenerator: Add reference to calling cmMakefileBrad King2014-02-215-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | Add a Makefile member to the cmInstallFilesGenerator class and populate it on construction. This will be useful in a following change to evaluate generator expressions with proper context.
| * | | Help: Format install() command documentationBrad King2014-02-211-161/+162
| | | | | | | | | | | | | | | | Add inline markup and explicit markup blocks as appropriate.
* | | | Merge topic 'doc-add_test-cleanup'Brad King2014-02-241-48/+38
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 8afa5fe8 Help: Revise and format add_test() command documentation
| * | | | Help: Revise and format add_test() command documentationBrad King2014-02-201-48/+38
| |/ / / | | | | | | | | | | | | | | | | Favor the add_test(NAME) signature and document the limitations of the plain signature.
* | | | CMake Nightly Date StampKitware Robot2014-02-241-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2014-02-231-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2014-02-221-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2014-02-211-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2014-02-201-1/+1
| | |
* | | Begin post-3.0 developmentBrad King2014-02-193-2/+11
| | |
* | | Merge branch 'release'Brad King2014-02-1919-67/+59
|\ \ \ | | |/ | |/|
| * | Change version scheme to use only two components for feature levelsBrad King2014-02-1913-42/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Historically CMake used three version components for the feature level. We released new features while incrementing only the third version component. Since commit v2.8.2~105^2~4 (New version scheme to support branchy workflow, 2010-04-23) we used the fourth version component for bug-fix releases and the development date: <major>.<minor>.<patch>[.<tweak>][-rc<n>] = Release <major>.<minor>.<patch>.<date>[-<id>] = Development This solidified use of three components for the feature level, and was necessary to continue releasing 2.x versions because: * Some existing projects performed floating-point comparisons of ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} to 2.x numbers so ``x`` could never be higher than 9. * Version 2.9.<date> was used briefly in post-2.8.0 development in CVS prior to the transition to Git, so using it in releases may have caused confusion. Now that we are moving to 3.x versions, these two restrictions go away. Therefore we now change to use only two components for the feature level and use the scheme: <major>.<minor>.<patch>[-rc<n>] = Release <major>.<minor>.<date>[-<id>] = Development
| * | CMake 3.0.0-rc1 version updateBrad King2014-02-194-8/+8
| |/
| * Help: Drop development topic notes to prepare releaseBrad King2014-02-192-9/+0
| | | | | | | | | | Release versions do not have the development topic section of the CMake Release Notes index page.
| * Help: Rename 3.0 release notes to 3.0.0Brad King2014-02-192-4/+4
| | | | | | | | | | Bug-fix releases 3.0.x may have their own notes so this will look more consistent.
| * Help: Consolidate remaining 3.0 release notesBrad King2014-02-192-5/+3
|/
* 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 'FindOpenSSL-prefer-root'Brad King2014-02-191-5/+5
|\ \ | | | | | | | | | | | | e346c47a FindOpenSSL: Prefer OPENSSL_ROOT_DIR first (#14764)
| * | FindOpenSSL: Prefer OPENSSL_ROOT_DIR first (#14764)Ho Cheung2014-02-181-5/+5
| |/ | | | | | | | | Use hints computed from this explicit variable before those computed by PkgConfig. They are more specific.
* | Merge topic 'FindJNI-ppc64le'Brad King2014-02-191-0/+2
|\ \ | | | | | | | | | | | | ac2527e1 FindJNI: Add ppc64le architecture
| * | FindJNI: Add ppc64le architectureDinar Valeev2014-02-181-0/+2
| | | | | | | | | | | | Signed-off-by: Dinar Valeev <dvaleev@suse.com>
* | | Merge topic 'FindBoost-namespace'Brad King2014-02-192-25/+42
|\ \ \ | | | | | | | | | | | | | | | | 17485e37 FindBoost: Add suport for custom namespaces
| * | | FindBoost: Add suport for custom namespacesChuck Atkins2014-02-172-25/+42
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | When building boost with an alternate namespace the libraries generated will have a different naming convention. This is often done to ensure no symbol conflicts with external libraries built against a different version of boost. If the namespace used is "myprivateboost::" instead of "boost::" then the libraries built will be named myprivateboost_foo instead of boost_foo. Add an option to specify a custom namespace used to alter the library names that get searched for.
* | | Merge topic 'doc-package-registry'Brad King2014-02-192-189/+300
|\ \ \ | | | | | | | | | | | | | | | | | | | | bf012e0c Help: Format find_package() command documentation bd6887e4 Help: Document the package registry in cmake-packages.7
| * | | Help: Format find_package() command documentationBrad King2014-02-171-189/+171
| | | | | | | | | | | | | | | | | | | | Add inline markup and explicit markup block syntax as needed. Add cross-references to other documentation as appropriate.
| * | | 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.
* | | Merge topic 'minor-cleanups'Brad King2014-02-196-7/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f6cae4ea Tests: Remove some trailing black lines. c0ea4c5c Makefile: Fix comment indentation. 5e0c73c7 cmGlobalGenerator: Remove unused variable. 907c09cd include_directory: Add missing include. a74d125a Help: Fix typo 317d8498 Small typo fix
| * | | Tests: Remove some trailing black lines.Stephen Kelly2014-02-171-2/+0
| | | |
| * | | Makefile: Fix comment indentation.Stephen Kelly2014-02-171-1/+1
| | | |
| * | | cmGlobalGenerator: Remove unused variable.Stephen Kelly2014-02-171-1/+0
| | | |
| * | | include_directory: Add missing include.Stephen Kelly2014-02-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cmGeneratorExpression is used here, but the header for it is not in the include heirarchy. This would be a compile error if the file were compiled as a standalone translation unit, but it is instead used in a mini-unity-build by inclusion in cmCommands.cxx. The header for cmGeneratorExpression happens to be included first, so the compilation works fine. IDEs do not know this however, and flag the use as an error.
| * | | Help: Fix typoStephen Kelly2014-02-171-2/+2
| | | | | | | | | | | | | | | | binary_find -> binary_search.
| * | | Small typo fixKevin Funk2014-02-171-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2014-02-191-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2014-02-181-1/+1
| |/ |/|
* | Merge topic 'windows-filesystem-retry-config'Brad King2014-02-173-8/+60
|\ \ | | | | | | | | | | | | 7b1f966a Windows: Make file delete/rename retry configurable