summaryrefslogtreecommitdiff
path: root/Modules/CMakeSystemSpecificInformation.cmake
Commit message (Collapse)AuthorAgeFilesLines
* LINUX: Set CMAKE_HOST_LINUX variable when running on a Linux hostCristian Adam2022-09-091-0/+1
| | | | Relates: #23840
* BSD: Set CMAKE_HOST_BSD variable on a BSD hostCristian Adam2022-09-061-0/+1
| | | | | | Also the BSD variable will be set in CMake scripting mode (-P). Relates: #23853
* CMAKE_FIND_USE_INSTALL_PREFIX considers CMAKE_STAGING_PREFIXRobert Maynard2022-08-301-3/+9
| | | | Fixes #23900
* Find: Support per call disabling of CMAKE_INSTALL_PREFIXRobert Maynard2022-04-151-0/+10
| | | | Fixes #23359
* MSYS: Add support for running under MSYS runtime environmentOrgad Shaneh2021-04-261-0/+1
| | | | Detect MSYS as CYGWIN, with the required adaptations.
* CMakeSystemSpecificInformation: Replace mailing list with Discourse ForumBrad King2019-11-061-3/+3
| | | | | | On unknown platforms we issue a message instructing users to post to our mailing list to add support for the platform. Refer them to the CMake Discourse Forum instead.
* Modules: Consistently use 2 space indentationKitware Robot2019-05-141-1/+1
|
* Unhardcode the CMAKE_CONFIGURATION_TYPES valuesBeren Minor2018-01-081-1/+0
| | | | | | | | | | | | This removes duplicated code for per-config variable initialization by providing a `cmake_initialize_per_config_variable(<PREFIX> <DOCSTRING>)` function. This function initializes a `<PREFIX>` cache variable from `<PREFIX>_INIT` and unless the `CMAKE_NOT_USING_CONFIG_FLAGS` variable is defined, does the same with `<PREFIX>_<CONFIG>` from `<PREFIX>_<CONFIG>_INIT` for every `<CONFIG>` in `CMAKE_CONFIGURATION_TYPES` for multi-config generators or `CMAKE_BUILD_TYPE` for single-config generators.
* Simplify CMake per-source license noticesBrad King2016-09-271-12/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* Remove CMake-language block-end command argumentsKitware Robot2012-08-131-4/+4
| | | | | | | | | | | | | | | | | Ancient versions of CMake required else(), endif(), and similar block termination commands to have arguments matching the command starting the block. This is no longer the preferred style. Run the following shell code: for c in else endif endforeach endfunction endmacro endwhile; do echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | egrep -z -v 'Tests/CMakeTests/While-Endwhile-' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-23/+23
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-1/+1
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* Remove CMAKE_SHARED_MODULE_RUNTIME_${lang}_FLAGBrad King2009-12-021-2/+0
| | | | | This platform configuration variable is unused. Modules are built using the value of CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG.
* Convert CMake non-find modules to BSD LicenseBrad King2009-09-281-0/+13
| | | | | | | This adds copyright/license notification blocks CMake's non-find modules. Most of the modules had no notices at all. Some had notices referring to the BSD license already. This commit normalizes existing notices and adds missing notices.
* STYLE: rename the files from CMake<GENERATOR>.cmake toAlexander Neundorf2009-05-121-2/+2
| | | | | | | CMakeFind<GENERATOR>.cmake, so it is more consistent e.g. with CMakeFindXcode.cmake Alex
* ENH: move the code which queries gcc for the system include dirs fromAlexander Neundorf2009-05-101-36/+6
| | | | | | | | | | | | | | | CMakeSystemSpecificInformation.cmake into a separate file, CMakeEclipseCDT4.cmake -if CMAKE_EXTRA_GENERATOR is set, i.e. either CodeBlocks or KDevelop3 or EclipseCDT4, load a matching cmake script file, which can do things specific for this generator - added such files for Eclipse, KDevelop and CodeBlocks, one thing they all do is they try to find the respective IDE and store it in the CMAKE_(KDEVELOP3|CODEBLOCKS|ECLIPSE)_EXECUTABLE variable. This could be used by cmake-gui to open the project it just generated with the gui (not sure this is possible with eclipse). Alex
* ENH: when using the Eclipse project generator, run gcc so that it tells usAlexander Neundorf2009-03-131-0/+38
| | | | | | | | | | its system include directories. These are catched in CMakeSystemSpecificInformation.cmake (only with the Eclipse generator) and then written by the Eclipse generator in the Eclipse project file. This way Eclipse can find the standard headers (#7585) Not sure CMakeSystemSpecificInformation.cmake is the best place to do this. Alex
* STYLE: fix typoAlexander Neundorf2009-01-091-1/+1
| | | | Alex
* ENH: set UNIX, WIN32 and APPLE in cmMakefile.cxx as it was before, so itAlexander Neundorf2007-08-101-5/+5
| | | | | | | works for scripts, then reset them in CMakeSystemSpecificInformation.cxx, so the platform modules can set them again for the target system Alex
* ENH: UNIX, CYGWIN, WIN32, APPLE, QNXNTO and BEOS are not longer set inAlexander Neundorf2007-08-091-0/+11
| | | | | | | | | | | | | | cmMakefile.cxx, but now in the platform files and are now valid for the target platform, not the host platform. New variables CMAKE_HOST_WIN32, CMAKE_HOST_UNIX, CMAKE_HOST_APPLE and CMAKE_HOST_CYGWIN have been added in cmMakefile.cxx (...and have now to be used in all cmake files which are executed before CMakeSystemSpecificInformation.cmake is loaded). For compatibility the old set is set to the new one in CMakeDetermineSystem.cmake and reset before the system platform files are loaded, so custom language or compiler modules which use these should still work. Alex
* ENH: remove support for presetting CMAKE_SYSTEM_INFO_FILE,Alexander Neundorf2007-07-021-3/+1
| | | | | | | | | | | | | | | | CMAKE_SYSTEM_AND_C_COMPILER_INFO_FILE, CMAKE_SYSTEM_AND_CXX_COMPILER_INFO_FILE, CMAKE_SYSTEM_AND_C_COMPILER_AND_PROCESSOR_INFO_FILE and CMAKE_SYSTEM_AND_CXX_COMPILER_AND_PROCESSOR_INFO_FILE Instead of presetting these variables to arbitrary filenames, users should set up CMAKE_SYSTEM_NAME and the compilers correctly and also create a Platform/ directory so these files will all follow the official cmake style, which should make it easier to understand and debug project which have their own platform/toolchain support files. -remove support for a suffix to MS crosscompilers, since this is not (yet) supported by cmake and might confuse users Alex
* ENH: merge CMake-CrossCompileBasic to HEADAlexander Neundorf2007-05-171-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | -add a RESULT_VARIABLE to INCLUDE() -add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain -have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system) -use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to run the executables if they have a different suffix because they are probably crosscompiled, but nevertheless it should be able to find them -make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE -support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.) -move ranlib on OSX from the file command to a command in executed in cmake_install.cmake -add support for stripping during install in cmake_install.cmake -split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools -remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms -create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these -add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a list of directories which will be prepended to all search directories, right now as a cmake variable, turning it into a global cmake property may need some more work -remove cmTestTestHandler::TryExecutable(), it's unused -split cmFileCommand::HandleInstall() into slightly smaller functions Alex
* ENH: Adding support to link specifically to an archive or a shared library ↵Brad King2006-09-151-1/+0
| | | | based on the file name specified. This fixes the problem of having -lfoo linking to libfoo.so even when it came from libfoo.a being specified.
* BUG: When copying the module variables from shared library variables use ↵Brad King2006-03-161-2/+2
| | | | double quotes for the required definitions ...PREFIX and ...SUFFIX to make sure a value is set even if it is empty.
* ENH: add documentation support for modulesBill Hoffman2005-12-141-0/+1
|
* BUG: LINK_FLAGS are now all LINK_(LANG)_FLAGSBill Hoffman2004-09-241-1/+1
|
* ENH: major changes to support addition of languages from cmake modules ↵Bill Hoffman2004-09-221-3/+3
| | | | directory.
* ENH: more uniform approach to enable language, one step closer to being able ↵Bill Hoffman2004-08-261-306/+8
| | | | to enable a language without modifing cmake source code
* BUG: Unly set gcc flags for C compiler if CMAKE_COMPILER_IS_GNUCC is setAndy Cedilnik2004-08-181-1/+3
|
* ENH: minor fortran fixesBill Hoffman2004-08-111-0/+6
|
* ENH: initial fortran supportBill Hoffman2004-08-061-0/+47
|
* BUG: fix for bug 998, fix spelling errorsBill Hoffman2004-07-261-1/+1
|
* ENH: add verbose make abilility to visual studio 7Bill Hoffman2004-04-231-1/+1
|
* ENH: add the unix makefile generator as an option from the windows GUI, this ↵Bill Hoffman2003-08-211-2/+2
| | | | builds with mingw, cygwin, and combinations of make cl, bcc32
* ENH: add LDFLAGS as an initial value for all linker flags, good for -64Bill Hoffman2003-05-231-3/+3
|
* move cmake install out of advancedBill Hoffman2003-02-041-2/+4
|
* Remove extra quoteAndy Cedilnik2003-01-301-1/+1
|
* better docsBill Hoffman2002-12-191-2/+2
|
* ENH: use CMAKE_ROOT and not PROJECT_ for try compile stuff, this allows ↵Bill Hoffman2002-12-171-4/+4
| | | | projects within projects to have different languages
* ENH: unify EnableLanguage across all generatorsBill Hoffman2002-12-051-40/+48
|
* determine CMAKE_MAKE_PROGRAM in EnableLanguageBill Hoffman2002-12-031-2/+0
|
* FUX: those vars need to be ADVANCEDSebastien Barre2002-11-211-0/+7
|
* ENH: fix for module run time flagBill Hoffman2002-11-211-1/+1
|
* allow flags to be in the CC and CXX environment variablesBill Hoffman2002-11-191-2/+2
|
* BUG: fix CFLAGSBill Hoffman2002-11-191-2/+2
|
* If system detection fails, make copy of CMakeCacheAndy Cedilnik2002-11-181-0/+6
|
* ENH: add back install prefixBill Hoffman2002-11-151-0/+4
|
* ENH: add CFLAGS and CXXFLAGSBill Hoffman2002-11-151-2/+2
|
* BUG: fix flags for c compiler on windowsAndy Cedilnik2002-11-141-0/+8
|