summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cmStateDirectory: Clarify relative path top selection logicBrad King2021-05-171-38/+18
| | | | | Re-implement the same algorithm using direct iteration without collecting a vector first.
* cmStateDirectory: Remove network path logic from relative path top selectionBrad King2021-05-171-12/+1
| | | | | | | | | | | | The logic skipping relative paths for build trees on network paths came from commit b5035770bc (BUG: On Windows network paths do not really work..., 2003-12-24, v2.4.0~3517). However, since commit ad4055f3e2 (ENH: Set RelativePathTopSource and RelativePathTopBinary independently ..., 2007-03-07, v2.6.0~2061) we effectively ignore this logic if the build tree is inside the source tree on a network path. Also, it is not clear that logic using `RelativePathTopBinary` is prepared for it to be empty. Remove the logic for now. If a problem comes up, we can choose a new approach.
* cmStateDirectory: Fix comment on relative path top directory selectionBrad King2021-05-171-4/+2
| | | | | | Fix the comment added by commit f6d4fa63f8 (cmStateDirectory: Comment relative path top directory selection approach, 2021-05-13) to describe the actual behavior.
* Makefiles: Remove non-functioning relative path conversionBrad King2021-05-171-19/+0
| | | | | | | | | | | | | | | | | | | | | In CMake 3.6 and below, running cmake --build . --target "$(pwd)/SomeTarget" with a Makefiles generator automatically converted the target name and invoked `make SomeTarget`. This made the build command work even though make "$(pwd)/SomeTarget" would fail. This behavior was not implemented for any other generators, and does not make sense because `cmake --build` is supposed to be a thin wrapper around the native build tool. It has also been broken since commit 8d47a20f13 (cmOutputConverter: use new ConvertToRelativePath signature internally, 2016-06-16, v3.7.0-rc1~90^2~1) because cmState's relative path conversion logic is not initialized in `cmake --build`. Remove the non-functioning code.
* Merge topic 'doc-ep-configure-build-passthrough'Brad King2021-05-171-3/+20
|\ | | | | | | | | | | | | cf3bc271d1 Help: Clarify details passed to ExternalProject configure and build Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6135
| * Help: Clarify details passed to ExternalProject configure and buildCraig Scott2021-05-161-3/+20
| | | | | | Fixes: #22116
* | Merge topic 'doc-cmake_minimum_version'Brad King2021-05-172-3/+9
|\ \ | | | | | | | | | | | | | | | | | | b00a171b2b Help: Clarify calling cmake_minimum_required() inside a function Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6129
| * | Help: Clarify calling cmake_minimum_required() inside a functionCraig Scott2021-05-152-3/+9
| |/ | | | | Fixes: #21519
* | Merge topic 'OBJECT-lib-PIC-transitive'Brad King2021-05-172-7/+3
|\ \ | | | | | | | | | | | | | | | | | | 929c8a7860 INTERFACE_POSITION_INDEPENDENT_CODE must be transitive for OBJECT library Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6127
| * | INTERFACE_POSITION_INDEPENDENT_CODE must be transitive for OBJECT libraryMarc Chevrier2021-05-142-7/+3
| | | | | | | | | | | | Fixes: #22174
* | | Merge topic 'IncludeInfo-var-expand'Brad King2021-05-171-25/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | caea48eec9 CMakeParseImplicitIncludeInfo: remove needless variable expansions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6125
| * | | CMakeParseImplicitIncludeInfo: remove needless variable expansionsRolf Eike Beer2021-05-131-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They seem to actually cause trouble, like an error reported on IRC where some but not all CMake invocations may end up with an error like this: CMake Warning (dev) at /usr/share/cmake/Modules/CMakeParseImplicitIncludeInfo.cmake:74 (if): Policy CMP0054 is not set: Only interpret if() arguments as variables or keywords when unquoted. Run "cmake --help-policy CMP0054" for policy details. Use the cmake_policy command to set the policy and suppress this warning. Quoted keywords like ")" will no longer be interpreted as keywords when the policy is set to NEW. Since the policy is not set the OLD behavior will be used. Call Stack (most recent call first): /usr/share/cmake/Modules/CMakeParseImplicitIncludeInfo.cmake:179 (cmake_parse_implicit_include_line) /usr/share/cmake/Modules/CMakeDetermineCompilerABI.cmake:119 (cmake_parse_implicit_include_info) /usr/share/cmake/Modules/CMakeTestCXXCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI) CMakeLists.txt:24 (project) This warning is for project developers. Use -Wno-dev to suppress it. CMake Error at /usr/share/cmake/Modules/CMakeParseImplicitIncludeInfo.cmake:74 (if): if given arguments: "GNU" "STREQUAL" "SunPro" "AND" "(" ")" "MATCHES" "-D__SUNPRO_C" "OR" ")" "MATCHES" "-D__SUNPRO_F" ")" I suspect that the line ends up being just ")", which then causes this error.
* | | | CMake Nightly Date StampKitware Robot2021-05-171-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2021-05-161-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2021-05-151-1/+1
| | |
* | | Merge branch 'release-3.20'Brad King2021-05-140-0/+0
|\ \ \
| * \ \ Merge topic 'sphinx-4' into release-3.20Brad King2021-05-141-0/+1
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bb9c69ed70 Utilities/Sphinx: Update man page config for Sphinx 4 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6126
* | \ \ \ Merge topic 'sphinx-4'Brad King2021-05-141-0/+1
|\ \ \ \ \ | | |/ / / | |/| | / | |_|_|/ |/| | | | | | | | | | | bb9c69ed70 Utilities/Sphinx: Update man page config for Sphinx 4 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6126
| * | | Utilities/Sphinx: Update man page config for Sphinx 4Brad King2021-05-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sphinx 4 by default generates `man/#/foo.#`, but older versions generate `man/foo.#` as our install rules expect. Update our Sphinx config file to tell Sphinx 4 to use the old layout. Fixes: #22192
* | | | Merge topic 'relative-paths'Brad King2021-05-1433-376/+277
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f6d4fa63f8 cmStateDirectory: Comment relative path top directory selection approach f0ffb1e2d4 cmGlobalGenerator: Simplify relative path conversion in AddRuleHash d346805e41 cmLocalCommonGenerator: Select work directory semantically 15fa320071 cmLocalGenerator: Factor out relative path conversion helpers 1879f1bcbc cmLocalCommonGenerator: Factor out relative path conversion helper 1d1d88d3c8 cmMakefileTargetGenerator: Clarify name of relative path conversion helper ec1ea13066 cmDependsFortran: Simplify relative path conversion helper ba7b939831 cmStateDirectory: Rename ConvertToRelPathIf{Not => }Contained ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6122
| * | | | cmStateDirectory: Comment relative path top directory selection approachBrad King2021-05-131-0/+6
| | | | |
| * | | | cmGlobalGenerator: Simplify relative path conversion in AddRuleHashBrad King2021-05-131-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 204aecdf82 (cmGlobalGenerator: Port configure-time code to cmMakefile., 2015-08-02, v3.4.0-rc1~234^2~8). `AddRuleHash` is generate-time code.
| * | | | cmLocalCommonGenerator: Select work directory semanticallyBrad King2021-05-134-10/+30
| | | | |
| * | | | cmLocalGenerator: Factor out relative path conversion helpersBrad King2021-05-1323-326/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most calls to `MaybeConvertToRelativePath` use one of our common work directories (e.g. top of the build tree) as the local path. Add helpers for each of the common cases to simplify and clarify call sites.
| * | | | cmLocalCommonGenerator: Factor out relative path conversion helperBrad King2021-05-133-4/+10
| | | | |
| * | | | cmMakefileTargetGenerator: Clarify name of relative path conversion helperBrad King2021-05-131-6/+6
| | | | |
| * | | | cmDependsFortran: Simplify relative path conversion helperBrad King2021-05-131-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 8377d9e00b (Fortran: Inline conversion to relative path, 2016-10-04, v3.8.0-rc1~494^2~4). The inline implementation is still identical to what was previously called. Restore the call again.
| * | | | cmStateDirectory: Rename ConvertToRelPathIf{Not => }ContainedBrad King2021-05-127-8/+8
| | | | | | | | | | | | | | | | | | | | The "Not" in the method name is backward from its logic.
| * | | | cmGlobalGhsMultiGenerator: Simplify relative path conversion logicBrad King2021-05-122-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Our call to `MaybeConvertToRelativePath` uses paths that always pass the "maybe" checks. Use `ForceToRelativePath` directly.
| * | | | cmGlobalXCodeGenerator: Simplify relative path conversion under project rootBrad King2021-05-122-12/+5
| | | | |
* | | | | Merge topic 'VS-include_external_msproject-CSharp-targets-references'Brad King2021-05-144-4/+50
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c7aa3bdefc Tests/include_external_msproject: Check C# project reference 65b58b0316 VS Generator: Properly reference included external C# projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6123
| * | | | | Tests/include_external_msproject: Check C# project referenceDario Passet2021-05-133-0/+47
| | | | | |
| * | | | | VS Generator: Properly reference included external C# projectsDario Passet2021-05-131-4/+3
| | | | | |
* | | | | | Merge topic 'FetchContent-local-vars'Brad King2021-05-141-15/+21
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5d32ce320b FetchContent: Use private local variables in FetchContent_MakeAvailable Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Craig Scott <craig.scott@crascit.com> Merge-request: !6114
| * | | | | | FetchContent: Use private local variables in FetchContent_MakeAvailableArcturus Arcturus2021-05-131-15/+21
| | |_|_|_|/ | |/| | | |
* | | | | | Merge branch 'release-3.20'Brad King2021-05-140-0/+0
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | |
| * | | | | Merge topic 'cmake_build_and_install_command_error_when_given_bad_arguments' ↵Brad King2021-05-1415-11/+60
| |\ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into release-3.20 f78b167a23 cmCommandLineArgument: Provide more information syntax error messages 5aa0dec6b0 cmake: `--build` and `--install` error out when encountering bad flags 928cdb17c5 cmCommandLineArgument: Correctly record parsing failures Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6119
* | | | | | Merge topic 'cmake_build_and_install_command_error_when_given_bad_arguments'Brad King2021-05-1415-11/+60
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f78b167a23 cmCommandLineArgument: Provide more information syntax error messages 5aa0dec6b0 cmake: `--build` and `--install` error out when encountering bad flags 928cdb17c5 cmCommandLineArgument: Correctly record parsing failures Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6119
| * | | | | cmCommandLineArgument: Provide more information syntax error messagesRobert Maynard2021-05-133-5/+6
| | | | | |
| * | | | | cmake: `--build` and `--install` error out when encountering bad flagsRobert Maynard2021-05-1314-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | Fixes #22186
| * | | | | cmCommandLineArgument: Correctly record parsing failuresRobert Maynard2021-05-121-6/+2
| | | | | |
* | | | | | Merge topic 'scandep-format'Brad King2021-05-145-52/+40
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | db8e0beeac cmGlobalNinjaGenerator: Clarify semantics of Fortran scanning info bd12b97d05 cmScanDepFormat: Drop unused "outputs", "inputs", and "depends" fields Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6115
| * | | | | | cmGlobalNinjaGenerator: Clarify semantics of Fortran scanning infoBrad King2021-05-131-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `optional<>` instead of `unique_ptr<>` to hold optional value.
| * | | | | | cmScanDepFormat: Drop unused "outputs", "inputs", and "depends" fieldsBrad King2021-05-135-46/+32
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These fields are specified by our `P1689r3` paper, but are not actually needed. The dependencies of the scanning results themselves can be captured via normal depfile logic. Avoid saving this possibly-large information in the scanning results. It is not needed by later steps.
* | | | | | CMake Nightly Date StampKitware Robot2021-05-141-1/+1
|/ / / / /
* | | | | Merge topic 'find_item-consistent-behavior-cache-variables'Brad King2021-05-1337-112/+596
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 08db1341a6 find_*: ensure consistent behavior for cache variables f5fa6d53b0 class cmake: Store working directory at cmake launch b1729200c3 find_*: refactor cache variable handling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6110
| * | | | | find_*: ensure consistent behavior for cache variablesMarc Chevrier2021-05-1229-10/+485
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #22121
| * | | | | class cmake: Store working directory at cmake launchMarc Chevrier2021-05-112-1/+11
| | | | | |
| * | | | | find_*: refactor cache variable handlingMarc Chevrier2021-05-117-110/+109
| | | | | |
* | | | | | Merge branch 'release-3.20'Brad King2021-05-130-0/+0
|\ \ \ \ \ \ | | |_|/ / / | |/| | | |