summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cmELF: Fix check for TagMipsRldMapRelAlex Richardson2021-06-243-2/+19
| | | | | | | DT_MIPS_RLD_MAP_REL is a machine-speicific dynamic tag, so other architectures could re-use the value of 0x70000035 to mean something else. Before using DT_MIPS_RLD_MAP_REL, we have to check that the ELF file is actually has a e_machine of EM_MIPS.
* cmELF: Open file explicitly in binary modeBrad King2021-06-241-1/+1
| | | | ELF is a binary format.
* Merge branch 'upstream-elf' into import-elfBrad King2021-06-234-0/+2027
|\ | | | | | | | | | | # By FreeBSD Upstream * upstream-elf: elf 2021-06-23 (f13da247)
| * elf 2021-06-23 (f13da247)FreeBSD Upstream2021-06-234-0/+2027
| | | | | | | | Code extracted from: https://github.com/freebsd/freebsd-src.git at commit f13da24715a75ce0fdac31062866877d980aa908 (main).
* cmelf: Add script to import the FreeBSD ELF headersBrad King2021-06-231-0/+28
| | | | | | | | | These headers will be used to provide the ELF parsing code on all host operating systems (including those that don't have an ELF header, e.g. macOS). This will also allow removing various OS-dependent #ifdefs from the cmELF code. Add a script that was used to automate this import. Co-authored-by: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
* Merge topic 'clang-compiler-warnings'Brad King2021-06-232-11/+12
|\ | | | | | | | | | | | | | | 88e56c2e5a Enable compiler warnings when compiling CMake with Clang cadf2b632e Fix -Wpessimizing-move warnings in QCMake::loadPresets() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6252
| * Enable compiler warnings when compiling CMake with ClangAlex Richardson2021-06-221-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I noticed that I wasn't getting any compiler warnings when testing my merge requests locally. Turns out this happens because I am compiling using Clang rather than GCC, so no warning flags are added to the build. d06a9bdf3ab47231cc91b78dac77bd50de390565 enabled warnings by default for GCC > 4.2, but Clang supports them too. This has been the case since at least Clang 3.0 (I couldn't test any older versions on godbolt.org). For AppleClang, we can also assume that the warning flags are supported. According to Wikipedia Clang became the default compiler starting with Xcode 4.2, and the table on https://trac.macports.org/wiki/XcodeVersionInfo, states that XCode 4.2 Clang was based on upstream Clang 3.0, which supports all the warning flags. The warning flags are currently not added when compiling with clang-cl since this exposes some pre-existing warnings that need to be fixed first.
| * Fix -Wpessimizing-move warnings in QCMake::loadPresets()Alex Richardson2021-06-221-9/+6
| |
* | Merge branch 'release-3.21'Brad King2021-06-230-0/+0
|\ \
| * \ Merge topic 'cuda-rules-override' into release-3.21Brad King2021-06-231-0/+19
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | 1d9009c27a CUDA: Implement CMAKE_USER_MAKE_RULES_OVERRIDE[_CUDA] Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6253
* | \ \ Merge topic 'cuda-rules-override'Brad King2021-06-231-0/+19
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 1d9009c27a CUDA: Implement CMAKE_USER_MAKE_RULES_OVERRIDE[_CUDA] Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6253
| * | | CUDA: Implement CMAKE_USER_MAKE_RULES_OVERRIDE[_CUDA]Seth R Johnson2021-06-221-0/+19
| |/ / | | | | | | | | | | | | This is implemented by other languages, and is documented for all languages. This was accidentally left out of CUDA.
* | | CMake Nightly Date StampKitware Robot2021-06-231-1/+1
| |/ |/|
* | Merge topic 'cmsystemtools-multiple-formats'Brad King2021-06-221-76/+139
|\ \ | | | | | | | | | | | | | | | | | | 2e1149874d cmSystemTools: Support multiple binary formats Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6239
| * | cmSystemTools: Support multiple binary formatsAlex Richardson2021-06-211-76/+139
| | | | | | | | | | | | | | | This prepares the code to handle both the ELF and XCOFF being enabled by trying to parse an ELF file first and if that fails falling back to XCOFF.
* | | CMake Nightly Date StampKitware Robot2021-06-221-1/+1
| | |
* | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ | | |/ | |/|
| * | Merge branch 'release-3.20' into release-3.21Brad King2021-06-211-0/+7
| |\ \
* | \ \ Merge branch 'release-3.20'Brad King2021-06-211-0/+7
|\ \ \ \ | | |/ / | |/| |
| * | | CMake 3.20.5v3.20.5Brad King2021-06-211-1/+1
| | | |
| * | | Help: Add 3.20 release note section for 3.20.{3,4,5}Brad King2021-06-211-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Make it clear that the notes for these patch releases were not forgotten, and that there were simply no changes to documented features or interfaces.
* | | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge branch 'release-3.20' into release-3.21Brad King2021-06-210-0/+0
| |\ \ \ | | |/ /
* | | | Merge branch 'release-3.20'Brad King2021-06-210-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge branch 'test-xcode-13' into release-3.20Brad King2021-06-212-2/+2
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !6248
| * \ \ \ Merge branch 'ep-git-update-commit-ref' into release-3.20Brad King2021-06-211-1/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !6249
* | \ \ \ \ Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ \ \ | | |_|_|/ / | |/| | | |
| * | | | | Merge topic 'ep-git-update-commit-ref' into release-3.21Brad King2021-06-211-1/+1
| |\ \ \ \ \ | | | |/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 360ff17dc6 ExternalProject: Use ${ref}^0 to avoid MSYS/Cygwin shell substitutions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6249
* | | | | | Merge topic 'ep-git-update-commit-ref'Brad King2021-06-211-1/+1
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 360ff17dc6 ExternalProject: Use ${ref}^0 to avoid MSYS/Cygwin shell substitutions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6249
| * | | | | ExternalProject: Use ${ref}^0 to avoid MSYS/Cygwin shell substitutionsCraig Scott2021-06-201-1/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 5e941a545b (ExternalProject: Ensure git fetch if updating to hash we don't have yet, 2021-05-09), the form ${ref}^{commit} was used to ensure the ref was treated as a commit. When running under a MSYS2 or Cygwin shell, the {commit} part can be translated by the shell, leaving it as ${ref}^commit, which git doesn't understand. Use the equivalent but safer form ${ref}^0, since it won't be subject to the shell substitution issue. Fixes: #22299
* | | | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'test-xcode-13' into release-3.21Brad King2021-06-212-2/+2
| |\ \ \ \ | | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | 1dd0eae4fc Tests: Fix xcode version detection for Xcode 13 on ARM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6248
* | | | | Merge topic 'test-xcode-13'Brad King2021-06-212-2/+2
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | 1dd0eae4fc Tests: Fix xcode version detection for Xcode 13 on ARM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6248
| * | | | Tests: Fix xcode version detection for Xcode 13 on ARMBrad King2021-06-182-2/+2
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running `xcode -version` on an ARM box prints content to stderr: objc[...]: Class ... is implemented in both... One of the two will be used. Which one is undefined. Capture and parse only stdout. Otherwise we might configure test behavior for the wrong version of Xcode.
* | | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ | | |/ / | |/| |
| * | | Merge topic 'tutorial-sphinx-targets' into release-3.21Brad King2021-06-2112-0/+52
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 73898c4922 Tutorial: Make code snippets linkable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6247
* | \ \ \ Merge topic 'tutorial-sphinx-targets'Brad King2021-06-2112-0/+52
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | 73898c4922 Tutorial: Make code snippets linkable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6247
| * | | | Tutorial: Make code snippets linkableBrad King2021-06-1812-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the change from commit 9e5bbb69ea (Tutorial: Add captions for code blocks, 2021-06-11) to also add a Sphinx named target to code blocks. Name each target after the change the code block makes.
* | | | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'doc-source_group-scope' into release-3.21Brad King2021-06-211-0/+3
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2abce79409 Help: Clarify the usage scope of source_group Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6246
* | \ \ \ \ Merge topic 'doc-source_group-scope'Brad King2021-06-211-0/+3
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2abce79409 Help: Clarify the usage scope of source_group Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6246
| * | | | | Help: Clarify the usage scope of source_groupHeiko Thiel2021-06-181-0/+3
| | |/ / / | |/| | | | | | | | | | | | | Fixes: #18856
* | | | | Merge branch 'release-3.21'Brad King2021-06-210-0/+0
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge topic 'GNUInstallDirs-alpine' into release-3.21Brad King2021-06-211-0/+1
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 37b24e0bed GNUInstallDirs: don't use lib64 on Alpine Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6244
* | \ \ \ \ Merge topic 'GNUInstallDirs-alpine'Brad King2021-06-211-0/+1
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 37b24e0bed GNUInstallDirs: don't use lib64 on Alpine Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6244
| * | | | | GNUInstallDirs: don't use lib64 on Alpine LinuxNatanael Copa2021-06-181-0/+1
| | |/ / / | |/| | | | | | | | | | | | | Fixes: #22318
* | | | | Merge topic 'FindPkgConfig-PKG_CONFIG-args'Brad King2021-06-216-5/+93
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 35d3e00e4e FindPkgConfig: split args if loaded from environment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6222
| * | | | | FindPkgConfig: split args if loaded from environmentChristopher Degawa2021-06-186-5/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's common for some people to use the PKG_CONFIG environment variable to not only load a custom pkg-config/pkgconf but also to load some default arguments such as `--static` or `--keep-system-libs` which often worked since shell scripts would call `$PKG_CONFIG --libs pkg` without quotes, but this breaks FindPkgConfig since it uses the full string as `argv[0]` and might try looking for a binary called `pkgconf --static`, instead of looking for `pkgconf` and adding `--static` as the `argv[1]` Additionally adds RunCMake.FindPkgConfig ARGN test case Fixes: #22305 Signed-off-by: Christopher Degawa <ccom@randomderp.com>
* | | | | | Merge topic 'ctest_runtime_labels'Brad King2021-06-217-0/+83
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bd38749fd4 ctest: allow test output to add labels Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6234
| * | | | | | ctest: allow test output to add labelsZack Galbreath2021-06-177-0/+83
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Parse test output for <CTestLabel>...</CTestLabel>. If found, add this value to the list of labels associated with this test.