summaryrefslogtreecommitdiff
path: root/Modules/CMakeASM_MASMInformation.cmake
Commit message (Collapse)AuthorAgeFilesLines
* ASM_MASM: Populate MSVC debug information format abstraction tableBrad King2022-12-151-0/+4
| | | | | | | | | | | | | | In commit 0e96a20478 (MSVC: Add abstraction for debug information format, 2022-08-25, v3.25.0-rc1~142^2~1) we overlooked populating the runtime library selection flags for the Microsoft assembler. Its compiler id is `MSVC`, so our generators expect the table to be populated. It only supports `Embedded` debug info. Use empty flags for the other formats. Without this fix, enabling the `ASM_MASM` language with policy `CMP0141` set to `NEW` causes an error due to the missing table entries. Fixes: #24249
* Use dashes for MASM flagsBradley Bell2021-08-201-1/+1
| | | | | | Microsoft's tools traditionally uses slashes, but accept dashes as well. If we use dashes, it becomes possible to use an alternative MASM-compatible assembler such as JWasm.
* Modules: Collapse consecutive whitespace in stringsDaan De Meyer2020-03-231-1/+1
|
* ASM_MASM: Populate MSVC runtime library abstraction tableBrad King2020-01-211-0/+6
| | | | | | | | | | | | | In commit fb3370b6a1 (MSVC: Add abstraction for runtime library selection, 2019-04-10, v3.15.0-rc1~229^2) we overlooked populating the runtime library selection flags for the Microsoft assembler. It does not actually have any such flags, but since its compiler id is `MSVC` our generators expect the table to be populated. Use empty values. Without this fix, enabling the `ASM_MASM` language with policy `CMP0091` set to `NEW` causes an error due to the missing table entries. Fixes: #20236, #19453
* 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.
* 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>.
* ASM_MASM: Add preprocessor definitions to compile linesBrad King2014-08-131-1/+1
| | | | | The MASM tools (ml, ml64) support -D preprocessor definition flags. Update our compilation rule variable to pass them.
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-5/+5
| | | | | | | | | | | | | | | | | 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
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* 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.
* ENH: add support for the MS masm and masm64 assemblers, works with nmake,Alexander Neundorf2008-11-051-0/+10
not (yet) with the Visual Studio generators Alex