summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Drop definition of internal propertyBrad King2013-10-151-5/+0
| | | | | The property __CMAKE_DELETE_CACHE_CHANGE_VARS_ is not meant for public exposure.
* Drop CMAKE_STRICT modeBrad King2013-10-155-168/+0
| | | | | | | With our modern development workflow it is less likely a property will be added to C++ code without documentation. This mode only existed to support the DocTest which had very limited coverage of the properties anyway.
* cmDocumentation: Drop version output from usage and text helpBrad King2013-10-151-8/+1
| | | | | Drop the "cmake version ..." line from the top of usage and text help formats. Print it only when requested with --version or similar option.
* cmake: Add --help-policy-list optionBrad King2013-10-153-1/+16
| | | | | All the other --help-<item> options have a corresponding option --help-<item>-list. Add one for --help-policy.
* Cleanup use of CMake version in install destinationsBrad King2013-10-151-0/+36
| | | | | | | | | | | | | | | | | Factor the CMAKE_DATA_DIR, CMAKE_DOC_DIR, and CMAKE_MAN_DIR selection out of CMakeLists.txt and into a Source/CMakeInstallDestinations.cmake script. Load the script from the original location of the code. Cache the destination values as empty strings so we know if the user sets them explicitly. If not, then compute defaults based on the platform and full CMake version string. By not caching the versioned defaults, we can change them in a single build tree as the version changes. Remove duplication of the install destination defaults from the bootstrap script. Cache empty defaults there too. Parse from the CMake code the default values to report in the help output. Keep the CMake code in a structured format to make this reliable.
* Factor CMake version logic into dedicated moduleBrad King2013-10-151-0/+23
| | | | | | Move logic to compute CMake_VERSION out of the top-level CMakeLists.txt file to a dedicated Source/CMakeVersionCompute.cmake module and include it from the original location. This will allow it to be re-used.
* Merge topic 'doc-list-append-nothing'Brad King2013-10-151-1/+1
|\ | | | | | | | | eec7834 list: Fix docs for APPEND to show that elements are optional
| * list: Fix docs for APPEND to show that elements are optionalРоман Донченко2013-10-141-1/+1
| | | | | | | | | | | | | | list(APPEND) has been able to append nothing since commit a06dcdba (Allow LIST(APPEND) command to append nothing, 2008-01-16) but the documentation still used to imply that at least one argument is required.
* | Merge topic 'wix-extra-sources'Brad King2013-10-152-0/+32
|\ \ | | | | | | | | | | | | 2e6cadd CPackWiX: allow user supplied extra sources, objects and libraries
| * | CPackWiX: allow user supplied extra sources, objects and librariesNils Gladitz2013-10-132-0/+32
| | |
* | | Merge topic 'wix-deterministic-ids'Brad King2013-10-152-23/+150
|\ \ \ | | | | | | | | | | | | | | | | 3a4a748 CPackWiX: generate deterministic ids for directories, components and files
| * | | CPackWiX: generate deterministic ids for directories, components and filesNils Gladitz2013-10-122-23/+150
| | | |
* | | | Merge topic 'target-LOCATION-policy'Brad King2013-10-154-0/+75
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | e4e5b28 cmTarget: Deprecate the LOCATION target property with a policy.
| * | | | cmTarget: Deprecate the LOCATION target property with a policy.Stephen Kelly2013-10-114-0/+75
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The final location and name of a build-target is not determined until generate-time. However, reading the LOCATION property from a target is currently allowed at configure time. Apart from creating possibly-erroneous results, this has an impact on the implementation of cmake itself, and prevents some major cleanups from being made. Disallow reading LOCATION from build-targets with a policy. Port some existing uses of it in CMake itself to use the TARGET_FILE generator expression.
* | | | Merge topic 'deprecate-COMPILE_FLAGS'Brad King2013-10-151-1/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 3507d5a Deprecate COMPILE_FLAGS target property.
| * | | | Deprecate COMPILE_FLAGS target property.Stephen Kelly2013-10-111-1/+4
| | |_|/ | |/| | | | | | | | | | | | | | | | | | It is succeeded by COMPILE_OPTIONS, which supports generator expressions, is a list rather than a string, and is properly escaped.
* | | | Merge topic 'export-at-generate-time'Brad King2013-10-1510-107/+205
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a4263c9 export(): Handle multiple dependent export sets. 66b290e export(): Process the export() command at generate time. 5fe5c32 export(): Set a Makefile on the cmExportBuildFileGenerator. e383555 cmExportInstallFileGenerator: Fix comment to match reality.
| * | | | export(): Handle multiple dependent export sets.Stephen Kelly2013-10-112-10/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The export-sets topic, merged in commit 49c7b649 (Merge topic 'export-sets', 2012-10-01) changed install(EXPORT) to allow exporting targets whose dependents are exported separately to different locations. Doing the same for export() was not possible because the export() command was executed at configure-time. Now that export() is also executed at generate-time, make it possible to export to multiple dependent export sets.
| * | | | export(): Process the export() command at generate time.Stephen Kelly2013-10-119-79/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the API for adding targets string based so that it can easily use cmGeneratorTarget. Teach the cmIncludeCommand to generate the exported file at configure-time instead if it is to be include()d. The RunCMake.ExportWithoutLanguage test now needs a dummy header.h file as expected error from export() is now reported after the missing file error.
| * | | | export(): Set a Makefile on the cmExportBuildFileGenerator.Stephen Kelly2013-10-103-17/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is better than the cmCommand, because the lifetime of that is not as useful, and it is only used to report an error anyway. In the next commit, the cmExportBuildFileGenerator will outlive the cmCommand.
| * | | | cmExportInstallFileGenerator: Fix comment to match reality.Stephen Kelly2013-10-101-2/+2
| | | | | | | | | | | | | | | | | | | | It was copied from cmExportBuildFileGenerator.
* | | | | Merge topic 'fix-CMP0024-multiple-directories'Brad King2013-10-154-15/+19
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | af1f698 CMP0024: Store the fact of included export in global generator.
| * | | | CMP0024: Store the fact of included export in global generator.Stephen Kelly2013-10-104-15/+19
| | |/ / | |/| | | | | | | | | | | | | | Storing it in the makefile means that the policy does not trigger when include and export are in differing directories.
* | | | Merge topic 'osx-framework-search-flag'Brad King2013-10-154-13/+37
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 2e13c36 OS X: Encode -F framework search flag in per-language platform variable
| * | | | OS X: Encode -F framework search flag in per-language platform variableBrad King2013-10-104-13/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compilers for languages other than C and C++ on OS X may not understand the -F framework search flag. Create a new platform information variable CMAKE_<LANG>_FRAMEWORK_SEARCH_FLAG to hold the flag, and set it for C and CXX lanugages in the Platform/Darwin module. Reported-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | | | | CMake Nightly Date StampKitware Robot2013-10-151-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2013-10-141-1/+1
| |_|_|/ |/| | |
* | | | CMake Nightly Date StampKitware Robot2013-10-131-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2013-10-121-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2013-10-111-1/+1
|/ /
* | CMake Nightly Date StampKitware Robot2013-10-101-1/+1
|/
* Merge topic 'osx-cmake-app-info-plist'Brad King2013-10-092-1/+38
|\ | | | | | | | | dcf1b64 OS X: Set CMake.app bundle Info.plist fields (#11694)
| * OS X: Set CMake.app bundle Info.plist fields (#11694)Brad King2013-10-082-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the Apple Info.plist reference documentation: Core Foundation Keys https://developer.apple.com/library/mac/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html Launch Services Keys https://developer.apple.com/library/mac/documentation/general/Reference/InfoPlistKeyReference/Articles/LaunchServicesKeys.html Cocoa Keys https://developer.apple.com/library/mac/documentation/general/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html modify the Info.plist we create for cmake-gui to add/set fields CFBundleShortVersionString = The release-version-number string LSApplicationCategoryType = UTI that categorizes the app for the App Store NSHumanReadableCopyright = Specifies the copyright notice and drop fields CFBundleGetInfoString CFBundleLongVersionString LSRequiresCarbon Also prepare to set CFBundleVersion = The build-version-number string but leave it commented out as TBD (To Be Determined) for now. The version fields must have form <major>.<minor>.<patch> with integer components. While at it, rename the bundle to end in ".<patch>" instead of "-<patch>" so that it is consistent with the version number and does not look like a packaging increment suffix.
* | Merge topic 'deprecation-message'Brad King2013-10-094-4/+34
|\ \ | | | | | | | | | | | | | | | | | | f973737 GenerateExportHeader: Port to use message(DEPRECATION) f69606d Qt4Macros: Port to use message(DEPRECATION) 509c142 message: Add a DEPRECATION mode
| * | message: Add a DEPRECATION modeStephen Kelly2013-10-084-4/+34
| | | | | | | | | | | | | | | | | | By default, the message is not issued. If CMAKE_ERROR_DEPRECATED is on, the message is fatal. If CMAKE_WARN_DEPRECATED is on, the message is a warning.
* | | Merge topic 'haiku-updates'Brad King2013-10-095-28/+33
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 54ef2be Haiku: Include files cleanup in cmCTest 38d5555 Haiku: Remove outdated preprocessor checks 1dc61f8 Haiku: Remove use of B_COMMON_DIRECTORY 7ebc1cb Haiku: Several fixes to platform module
| * | | Haiku: Include files cleanup in cmCTestAdrien Destugues2013-10-081-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | * No need to use a different path from the BeOS one, which still works. Applied-by: Rolf Eike Beer <eike@sf-mail.de>
| * | | Haiku: Remove use of B_COMMON_DIRECTORYAdrien Destugues2013-10-084-23/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The common directory was removed in Haiku. Applications are now installed in the system directory. Applied-by: Rolf Eike Beer <eike@sf-mail.de>
* | | | Merge topic 'update-kwsys'Brad King2013-10-093-13/+5
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | f59693b Merge branch 'upstream-kwsys' into update-kwsys 1a39f85 KWSys 2013-10-08 (96b2f6f4)
| * | | Merge branch 'upstream-kwsys' into update-kwsysBrad King2013-10-083-13/+5
| | | |
* | | | Merge topic 'unset-PARENT_SCOPE'Brad King2013-10-092-2/+11
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 261c248 unset: Add PARENT_SCOPE option
| * | | | unset: Add PARENT_SCOPE optionBrad King2013-10-082-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an unset() command option to remove a variable from the calling scope, just like the set() command's PARENT_SCOPE option. Teach the Unset test to cover such cases.
* | | | | Merge topic 'apple-clang-id'Brad King2013-10-096-0/+65
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1763c31 Set policy CMP0025 to NEW while building CMake itself aa53ee5 Add policy CMP0025 for Apple Clang compiler id compatibility ab65862 Clang: Add separate "AppleClang" compiler id
| * | | | | Set policy CMP0025 to NEW while building CMake itselfBrad King2013-10-081-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CMake is aware of the policy's NEW behavior and the AppleClang compiler id. Set the policy to NEW explicitly to avoid the warning and get the NEW behavior. Also teach the RunCMake test infrastructure to build tests with -DCMAKE_POLICY_DEFAULT_CMP0025=NEW to avoid the policy warning in test output that must match specific regular expressions.
| * | | | | Add policy CMP0025 for Apple Clang compiler id compatibilityBrad King2013-10-084-0/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parent commit introduced a separate "AppleClang" compiler id for Apple's Clang distribution. Add a policy in order to support projects that expect this compiler's id to be just "Clang". When the policy is OLD or not set, map AppleClang back to Clang. Continue to use the AppleClang id internally while enabling the language, but set the CMAKE_<LANG>_COMPILER_ID after project() or enable_language() to the compatible value for use by project code.
| * | | | | Clang: Add separate "AppleClang" compiler idBrad King2013-10-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apple distributes their own Clang build with their own version numbers that differ from upstream Clang. Use the __apple_build_version__ symbol to identify the Apple Clang compiler and report the Apple Build Version as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION. Add Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules that simply include the upstream equivalents. Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own source and tests to account for AppleClang.
* | | | | | CMake Nightly Date StampKitware Robot2013-10-091-1/+1
| |_|_|/ / |/| | | |
* | | | | Merge topic 'export-policy'Brad King2013-10-085-1/+74
|\ \ \ \ \ | |/ / / / | | | | | | | | | | | | | | | 904ff9f export: Add policy CMP0024 to disallow include() of export files
| * | | | export: Add policy CMP0024 to disallow include() of export filesStephen Kelly2013-10-075-1/+74
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, export() is executed at configure-time. One problem with this is that certain exported properties like the link interface may not be complete at the point the export() is encountered leading to an incorrect or incomplete exported representation. Additionally, the generated IMPORTED_LOCATION property may even be incorrect if commands following the export() have an effect on it. Another problem is that it requires the C++ implementation of cmake to be capable of computing the exported information at configure time. This is a limitation on the cleanup and maintenance of the code. At some point in the future, this limitation will be dropped and more implementation will be moved from cmTarget to cmGeneratorTarget.
* | | | Merge topic 'clang-cl-compiler'Brad King2013-10-081-0/+22
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3d8356d Clang: Support Windows variants for GNU and MSVC (#13035, #14458) 51ab85c CMakeDetermineCompilerId: Add notion of "simulated" id/version be10826 CMakeDetermineCompilerId: Fix local var init