summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/FileAPI/codemodel-v2-check.py
Commit message (Collapse)AuthorAgeFilesLines
* IBMClang: Add support for IBM Open XL C/C++Aaron Liu2022-01-271-1/+1
| | | | Fixes: #22929
* FileAPI: Add information on file set installersKyle Edwards2021-10-271-1/+30
|
* LCC: Add dedicated support for MCST LCC compilermakise-homura2021-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
* FileAPI: Add integration for runtime dependency installersKyle Edwards2021-06-041-0/+16
|
* FileAPI: Populate information for IMPORTED_RUNTIME_ARTIFACTSKyle Edwards2021-05-311-1/+1
|
* install: Implement new install(CODE|SCRIPT) option ALL_COMPONENTSNils Gladitz2021-05-191-0/+4
| | | | | | | | | | | In a per-component installation the generated installation scripts are invoked once for each component. Per default custom installation script code added by install(CODE|SCRIPT) only runs for one specific component in this context. The new ALL_COMPONENTS option allows custom script code to be run once for each component being installed.
* fileapi: Add installers to codemodel-v2 "directory" objectBrad King2021-03-161-1/+92
| | | | Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
* fileapi: Add backtraceGraph to codemodel-v2 "directory" objectBrad King2021-03-161-1/+3
| | | | Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
* fileapi: Add a "directory" object to codemodel-v2Brad King2021-03-161-2/+20
| | | | | | This object will contain more detailed directory-level information. Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
* fileapi: Re-organize backtrace infrastructureBrad King2021-03-161-3/+2
| | | | Make it available to more parts of the codemodel object.
* Tests: Update RunCMake.FileAPI for IntelLLVMBrad King2021-01-281-1/+1
|
* fileapi: Add INTERFACE libraries with SOURCES to codemodel-v2Brad King2020-08-071-0/+6
| | | | | | | | | | | | INTERFACE libraries with SOURCES now appear in the generated buildsystem, so include them in the codemodel output too. We do not need to bump the `codemodel-v2` object kind minor version because that was already done in post-3.18 development by commit 7d6861f367 (fileapi: Extend codemodel targets with language standard, 2020-06-18). Fixes: #18608
* fileapi: Extend codemodel targets with language standardJustin Goshi2020-06-261-1/+32
|
* fileapi: Extend codemodel targets with PRECOMPILE_HEADERSJustin Goshi2020-05-221-1/+18
|
* Tests: Add a PCH example to RunCMake.FileAPI codemodel-v2Justin Goshi2020-05-221-0/+15
|
* FileAPI test: Break gen_check_projects() into JSON filesKyle Edwards2020-02-071-120/+7
|
* FileAPI test: Break gen_check_targets() into JSON filesKyle Edwards2020-02-071-4422/+46
|
* FileAPI test: Break gen_check_directories() into JSON filesKyle Edwards2020-02-071-148/+9
|
* FileAPI test: Add infrastructure for reading JSON test dataKyle Edwards2020-02-071-0/+6
|
* Ninja: Add multi-config variantKyle Edwards2019-12-131-12/+12
| | | | Co-Authored-by: vector-of-bool <vectorofbool@gmail.com>
* fileapi: add some source property backtracesJustin Goshi2019-09-261-4/+61
| | | | | Support backtraces for COMPILE_DEFINITIONS, COMPILE_OPTIONS, and INCLUDE_DIRECTORIES source properties.
* fileapi: add backtraces for LINK_PATH and LINK_DIRECTORIESJustin Goshi2019-09-181-2/+38
|
* fileapi: add backtraces for compile/link optionsJustin Goshi2019-09-101-4/+126
|
* Merge topic 'fileapi-install-generators'Brad King2019-08-051-1/+34
|\ | | | | | | | | | | | | d70a0f8681 fileapi: Fix codemodel target install destination for cross-dir rules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3639
| * fileapi: Fix codemodel target install destination for cross-dir rulesBrad King2019-07-311-1/+34
| | | | | | | | | | | | | | | | | | | | | | | | Since commit e89ad0f94e (install: Allow installing targets created in another directory, 2018-06-18, v3.13.0-rc1~407^2) we support calling `install(TARGETS)` for targets created in another directory. However, install generators are associated with the directory in which the call to `install()` appears. This may not be the same directory in which the target is defined. Record in each target the list of install generators it has. Fixes: #19546
* | AIX: Create import library for executables with exportsBrad King2019-07-161-0/+9
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On AIX, plugins meant to be loaded into executables via `dlopen` must be linked with access to a list of symbols exported from the executable in order to use them (when not using runtime linking). The AIX linker supports specifying this list as an "import file" passed on the command line either via the `-bI:...` option or (with a leading `#! .` line) as a normal input file like any other library file. The linker import file plays the same role on AIX as import libraries do on Windows. Teach CMake to enable its import library abstraction on AIX for executables with the `ENABLE_EXPORTS` target property set. Teach our internal `ExportImportList` script to optionally generate a leading `#! .` line at the top of the generated export/import list. Update our rule for linking an executable with exports to generate a public-facing "import library" implemented as an AIX linker import file. With this approach, our existing infrastructure for handling import libraries on Windows will now work for AIX linker import files too: * Plugins that link to their executable's symbols will be automatically linked using the import file on the command line. * The executable's import file will be (optionally) installed and exported for use in linking externally-built plugins. This will allow executables and their plugins to build even if we later turn off runtime linking. Issue: #19163
* fileapi: extend codemodel v2 with directory detailsBrad King2018-12-121-0/+26
| | | | | Issue: #18398 Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
* fileapi: extend codemodel v2 with a project modelBrad King2018-12-121-3/+258
| | | | | | | | | Offer clients a `project()`-centric view of the build system. This is similar to the directory-centric view but consolidates subdirectories that do not call `project()` with a new project name. Issue: #18398 Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
* fileapi: Add test for codemodel v2Kyle Edwards2018-12-121-7/+4796
|
* fileapi: add codemodel v2Brad King2018-12-121-0/+15
Start with v2 to distinguish it from server-mode v1. Issue: #18398