summaryrefslogtreecommitdiffstats
path: root/Modules/CMakeASMInformation.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Modules: Introduce CMAKE_EFFECTIVE_SYSTEM_NAME to lookup compiler infoGregor Jasny2018-04-181-4/+4
| | | | | | | | | Create a `CMAKE_EFFECTIVE_SYSTEM_NAME` variable to use for looking up compiler information modules instead of using `CMAKE_SYSTEM_NAME` directly. This will allow multiple platforms to share the same set of compiler information modules without spelling out all of them. Issue: #17870
* Unhardcode the CMAKE_CONFIGURATION_TYPES valuesBeren Minor2018-01-081-32/+1
| | | | | | | | | | | | 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.
* Do not initialize CMAKE_BUILD_TYPE on multi-config generatorsBastien Schatt2017-04-061-2/+4
| | | | | | Use the `GENERATOR_IS_MULTI_CONFIG` global property to reliably detect multi-config generators regardless of what variables the project or user have set.
* 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.
* Strip CMAKE_<LANG>_FLAGS[_<CONFIG>] initializer whitespaceBrad King2016-07-011-4/+5
|
* Factor an <INCLUDES> placeholder out of <FLAGS> in rule variablesBrad King2015-07-131-1/+1
| | | | | | | | | | | Teach the Makefile and Ninja generators to substitute for an <INCLUDES> placeholder instead of putting -I in <FLAGS>. Update our values for CMAKE_<LANG>_COMPILE_OBJECT, CMAKE_<LANG>_CREATE_ASSEMBLY_SOURCE, and CMAKE_<LANG>_CREATE_PREPROCESSED_SOURCE to place <INCLUDES> just before <FLAGS>.
* Load CMAKE_USER_MAKE_RULES_OVERRIDE[_ASM] for assembler (#15108)Mikhail Nikonov2014-08-271-0/+18
| | | | This is already done for C, CXX, and Fortran.
* Remove CMake-language block-end command argumentsKitware Robot2012-08-131-18/+18
| | | | | | | | | | | | | | | | | 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-76/+76
| | | | | | | | | | | | | | | | | 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
* Fix #12358: make optionally enabling ASM work againAlex Neundorf2011-08-161-1/+1
| | | | Alex
* Initialize ASM rpath flags for executables with those for shared libsBrad King2011-03-021-0/+12
| | | | | | | Since the flags for executables are almost always the same as those for shared libraries each language information file just uses the latter for the former by default. This reduces duplication in the compiler and platform flag information files.
* Fix the default CMAKE_ASM_COMPILE_OBJECT, make XL-ASM use itAlex Neundorf2011-02-231-1/+1
| | | | Alex
* Change the default rules so they fit better to the new ASM handlingAlex Neundorf2011-02-231-4/+2
| | | | | | | | CMAKE_ASM_COMPILE_OBJECT is now so that it fits for GNU, Intel, HP and Sun ASM_ATT had to be adjusted. Also adjusted the default CMAKE_ASM_LINK_EXECUTABLE Alex
* Rework the way assembler is handled, use the C/CXX compiler by defaultAlex Neundorf2011-01-301-0/+3
| | | | | | | | | | | | | | | This commit changes the way how the assembler support works in cmake. The language "ASM" now always uses the C/Cxx compiler instead of the assembler directly. This fixes #8392, assembler files are not preprocessed. If one wants to use the assembler directly, the specific assembler "dialect" has to be enabled. I.e. to get as/gas, you have to use now ASM-ATT, the same way for ASM_MASM and ASM_NASM. Implemented this now for gcc. SunStudio, IBM, HP and Intel still todo. Alex
* Detect a COMPILER_ID also for ASM.Alex Neundorf2010-08-151-7/+14
| | | | | | | | | | | | | | | For assembler, the "compiler ID" cannot be detected by "compiling" a source file, since there is not source file all assemblers understand. Instead the function CMAKE_DETERMINE_COMPILER_ID_VENDOR() is used to run the assembler and check its output. For this the CMAKE_DETERMINE_COMPILER_ID_VENDOR() function had to be extended so that it creates the run directory if it doesn't exist yet. In CMakeASMInformation.cmake now also CMAKE_ASM_COMPILER_ID is used (but there are no such files yet, will come with the support for the IAR toolchain). Alex
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* -make CMAKE_ASM_FLAGS_INIT and friends work (#10577)Alex Neundorf2010-05-121-0/+35
| | | | Alex
* Convert CMake non-find modules to BSD LicenseBrad King2009-09-281-0/+14
| | | | | | | 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.
* BUG: Fix ASM source file extension default listBrad King2009-02-271-3/+3
| | | | | This replaces @ASM_DIALECT@ syntax with ${ASM_DIALECT} syntax so it will be replaced correctly. Patch from Derek Bruening. See issue #8639.
* ENH: fix problem where rc language recursively included itself because ↵Bill Hoffman2008-10-141-1/+1
| | | | CMAKE_BASE_NAME was used from c compiler, do the same fix for other uses of CMAKE_BASE_NAME
* STYLE: Remove trailing whitespace.Brad King2008-03-041-1/+1
|
* ENH: add CMAKE_INCLUDE_FLAG_ASM${ASM_DIALECT} and don't allow presetAlexander Neundorf2007-07-111-13/+12
| | | | | | CMAKE_xxx_INFORMATION files Alex
* ENH: initial support for assembler in cmake, needs testing by our usersAlexander Neundorf2007-06-281-0/+62
Alex