summaryrefslogtreecommitdiffstats
path: root/Source/cmFindCommon.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Introduce CMAKE_STAGING_PREFIX variable.Stephen Kelly2013-11-211-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | This variable can be useful in cross-compiling contexts where the sysroot is read-only or where the sysroot should otherwise remain pristine. If the new CMAKE_STAGING_PREFIX variable is set, it is used instead of CMAKE_INSTALL_PREFIX when generating the installation rules in cmake_install.cmake. This way, the CMAKE_INSTALL_PREFIX variable always refers to the installation prefix on the target device, regardless of whether host==target. If any -rpath paths passed to the linker contain the CMAKE_STAGING_PREFIX, the matching path fragments are replaced with the CMAKE_INSTALL_PREFIX. Matching paths in the -rpath-link are not transformed. The cross-prefix usr-move workaround is assumed not to require extension regarding CMAKE_STAGING_PREFIX. The staging area is a single prefix, so there is no scope for cross-prefix symlinks. The CMAKE_INSTALL_PREFIX is still used to determine the workaround path, and that variable remains the relevant one even if CMAKE_STAGING_PREFIX is used. If the generated export files are deployed to the target, the workaround will still be in place, and still be employed if required.
* Add CMAKE_SYSROOT variable to set --sysroot when cross compiling.Stephen Kelly2013-11-191-2/+13
| | | | | | | | | | As CMAKE_ROOT_FIND_PATH can be a list, a new CMAKE_SYSROOT is introduced, which is never a list. The contents of this variable is passed to supporting compilers as --sysroot. It is also accounted for when processing implicit link directories reported by the compiler, and when generating RPATH information.
* cmFindCommon: Revert accidental changeBrad King2013-11-021-13/+2
| | | | | | | In commit c4373b33 (cmTarget: Make GetProperty() const, 2013-10-29) we accidentally changed the cmFindCommon.cxx logic in a way that looks like a local experiment leftover that went unnoticed due to the size of the other changes in the commit. Revert it.
* cmTarget: Make GetProperty() const.Stephen Kelly2013-10-311-2/+13
| | | | | | This has follow-on effects for other methods and classes. Further work on making the use of const cmTarget pointers common can be done, particularly with a view to generate-time methods.
* Drop builtin command documentationBrad King2013-10-161-49/+0
| | | | | Drop all GetTerseDocumentation and GetFullDocumentation methods from commands. The command documentation is now in Help/command/*.rst files.
* Revert "Use --sysroot when cross compiling."Stephen Kelly2013-07-121-20/+4
| | | | | | | This reverts commit de4da665d3205afa239749c41513a315c3831f51. This feature is not yet ready for release. It needs to be merged with the CMAKE_OSX_SYSROOT feature.
* Use --sysroot when cross compiling.Stephen Kelly2013-06-071-4/+20
| | | | | | | | | | As CMAKE_ROOT_FIND_PATH can be a list, a new CMAKE_SYSROOT is introduced, which is never a list. The contents of this variable is passed to supporting compilers as --sysroot. It is also accounted for when processing implicit link directories reported by the compiler, and when generating RPATH information.
* Refactor find_* command final path list computationBrad King2011-09-231-1/+6
| | | | | | | All find_* commands re-root the list of paths and then add trailing slashes. Factor this pair of calls out into a dedicated method. The new method would be the only caller to AddTrailingSlashes, so subsume that method into it.
* Speedup find_* commands (#11412)Brad King2010-11-121-0/+4
| | | | | | | Delay computation of the command documentation until it is needed. It is wasteful to do it in the constructor on every call. Inspired-By: Christian Ehrlicher <Ch.Ehrlicher@gmx.de>
* Teach find_* commands to ignore some pathsTodd Gamblin2010-08-131-0/+57
| | | | | | | | Add platform configuration variable CMAKE_SYSTEM_IGNORE_PATH and user configuration variable CMAKE_IGNORE_PATH. These specify a set of directories that will be ignored by all the find commands. Update FindPackageTest so that several cases will fail without a functioning CMAKE_IGNORE_PATH.
* -improve crosscompiling from Linux to iphone (#10526)Alex Neundorf2010-05-011-0/+14
| | | | | | Patch by Karol Krizka Alex
* Create cmMakefile::PlatformIs64Bit helper methodBrad King2009-09-301-7/+3
| | | | This method centralizes tests for whether CMAKE_SIZEOF_VOID_P is 8.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* some white space fixes for the bookKen Martin2009-09-031-2/+2
|
* ENH: undo bad checkinBill Hoffman2008-10-031-9/+0
|
* STYLE: fix line length issuesBill Hoffman2008-10-021-1/+9
|
* ENH: Add HINTS option to find_* commands.Brad King2008-06-091-9/+10
| | | | | | - Hints are searched after user locations but before system locations - The HINTS option should have paths provided by system introspection - The PATHS option should have paths that are hard-coded guesses
* ENH: In find_* implementation centralize addition of trailing slashesBrad King2008-06-091-0/+15
| | | | | | - Create cmFindCommon::AddTrailingSlashes - Use it in cmFindBase and cmFindPackageCommand - Remove duplication from other find commands
* ENH: Refactor cmFindCommon, cmFindBase, and cmFindPackageCommandBrad King2008-06-051-93/+33
| | | | | | | | | | | - Add each part of the search order in a separate method. - Collect added paths in an ivar in cmFindCommon. - Move user path storage up to cmFindCommon and share between cmFindBase and cmFindPackageCommand. - Expand user path registry values up in cmFindCommon - Enables 32-/64-bit registry view for find_package - Disables registry expansion for paths not specified with the PATHS argument, which is not expected.
* ENH: Major improvements to the FIND_PACKAGE command. See bug #3659.Brad King2008-01-171-0/+479
- Use CMAKE_PREFIX_PATH and CMAKE_SYSTEM_PREFIX_PATH among other means to locate package configuration files. - Create cmFindCommon as base for cmFindBase and cmFindPackageCommand - Move common functionality up to cmFindCommon - Improve documentation of FIND_* commands. - Fix FIND_* commands to not add framework/app paths in wrong place.