summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'pch-tv90'Brad King2020-09-091-8/+20
|\ | | | | | | | | | | | | ce7c100545 PCH: Fix 30s wait for VS2008 when used via -Tv90 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5199
| * PCH: Fix 30s wait for VS2008 when used via -Tv90Cristian Adam2020-09-071-8/+20
| | | | | | | | | | Fixes: #21142 Backport: release
* | ISPC: Support generation for multiple instruction setsRobert Maynard2020-09-041-2/+60
| |
* | cmMakefile::GetDefinition: return cmPropVitaly Stakhovsky2020-09-021-91/+91
| |
* | Merge topic 'ispc_lang_support'Brad King2020-09-011-0/+32
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5ece12b7e4 gitlab-ci: add ISPC to the Fedora CI image 8976817d6d ISPC: Update help documentation to include ISPC 2368f46ba4 ISPC: Support building with the MSVC toolchain e783bf8aa6 ISPC: Support ISPC header generation byproducts and parallel builds 34cc6acc81 Add ISPC compiler support to CMake 419d70d490 Refactor some swift only logic to be re-used by other languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5065
| * | ISPC: Support ISPC header generation byproducts and parallel buildsRobert Maynard2020-08-281-0/+32
| | |
* | | Merge topic 'osx_asm_architectures'Brad King2020-08-251-2/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 940fc62962 macOS: Respect OSX_ARCHITECTURES for ASM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5152
| * | | macOS: Respect OSX_ARCHITECTURES for ASMRaul Tambre2020-08-221-2/+3
| | | | | | | | | | | | | | | | Fixes #20771.
* | | | WIN32_EXECUTABLE: Add support for generator expressionsKyle Edwards2020-08-211-1/+1
|/ / /
* | | Merge topic 'clang-cl-vfs'Brad King2020-08-101-4/+21
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | 20ebaed972 Clang: Add support for passing VFS arguments d993ebd4ca clang-cl: Add '--' before source file a94672b919 cmake: Change cmake_llvm_rc separator from -- to ++ to avoid conflict Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5087
| * | Clang: Add support for passing VFS argumentsThomas Bernard2020-08-071-4/+21
| | |
* | | Merge topic 'reuse_pch_no_delay'Brad King2020-08-061-1/+1
|\ \ \ | |/ / |/| / | |/ | | | | | | ef97fbe6c2 PCH: Avoid unnecessary 30s delay on MSBuild Generator with REUSE_FROM Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5102
| * PCH: Avoid unnecessary 30s delay on MSBuild Generator with REUSE_FROMCristian Adam2020-08-051-1/+1
| | | | | | | | | | | | | | Fix logic added by commit 1f791eb160 (Multi-Ninja: Fix reusable PCHs for MSVC, 2020-05-24, v3.18.0-rc1~72^2) to avoid an unnecessary delay. Fixes: #21054
* | Merge topic 'unity_no_skip_autogen'Brad King2020-07-301-1/+0
|\ \ | |/ | | | | | | | | | | 7051250a6c Unity Builds: Do not set SKIP_AUTOGEN to source files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5081
| * Unity Builds: Do not set SKIP_AUTOGEN to source filesCristian Adam2020-07-291-1/+0
| | | | | | | | Fixes: #21028
* | Source: use cmNonempty()Vitaly Stakhovsky2020-07-281-8/+7
| |
* | Factor out generator checks for filtering on non-compiling targetsBrad King2020-07-231-1/+1
| | | | | | | | | | Add a `cmGeneratorTarget::CanCompileSources` helper method to tell generators whether a target might compile anything.
* | Factor out generator checks for filtering out interface librariesBrad King2020-07-231-2/+2
| | | | | | | | | | | | Add a `cmGeneratorTarget::IsInBuildSystem` helper method to tell generators whether a target should participate in the generated build system.
* | Fix typos identified using codespellJean-Christophe Fillion-Robin2020-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/codespell-project/codespell#readme The following command was used: ``` codespell -q6 --skip="\ .git,\ *.json,\ ./Copyright.txt,\ ./Help/command/foreach.rst,\ ./Help/prop_test/REQUIRED_FILES.rst,\ ./Help/variable/CTEST_COVERAGE_COMMAND.rst,\ ./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\ ./Modules/CMakeRCInformation.cmake,\ ./Modules/Internal/CPack/NSIS.template.in,\ ./Modules/FindMatlab.cmake,\ ./Modules/MatlabTestsRedirect.cmake,\ ./Modules/Platform/Windows-Clang.cmake,\ ./Modules/Platform/Windows-Intel-Fortran.cmake,\ ./Modules/Platform/Windows-MSVC.cmake,\ ./Source/CMakeVersion.cmake,\ ./Source/cmConvertMSBuildXMLToJSON.py,\ ./Source/cmCreateTestSourceList.cxx,\ ./Source/cmGlobalVisualStudio10Generator.cxx,\ ./Source/cmExportBuildFileGenerator.cxx,\ ./Source/cmExportInstallAndroidMKGenerator.cxx,\ ./Source/cmExportInstallFileGenerator.cxx,\ ./Source/cmExportSet.cxx,\ ./Source/cmExportTryCompileFileGenerator.cxx,\ ./Source/cmFindPackageCommand.cxx,\ ./Source/cmInstallCommand.cxx,\ ./Source/cmGeneratorExpressionLexer.cxx,\ ./Source/cmLocalVisualStudio7Generator.cxx,\ ./Source/cmOrderDirectories.cxx,\ ./Source/cmTarget.cxx,\ ./Source/kwsys/*,\ ./Source/QtDialog/CMakeSetupDialog.ui,\ ./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\ ./Source/CTest/cmParseCoberturaCoverage.h,\ ./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\ ./Tests/RunCMake/GoogleTest/xml_output.cpp,\ ./Tests/RunCMake/Make/TargetMessages*,\ ./Utilities/*,\ " \ -L "\ dependees,\ endwhile,\ fo,\ filetest,\ helpfull,\ nd,\ objext,\ stoll,\ supercedes,\ superceded,\ vas,\ varn,\ " ```
* | Merge topic 'move_more_queries_to_cmStandardLevelResolver'Brad King2020-07-161-141/+6
|\ \ | | | | | | | | | | | | | | | | | | 56cf509a72 Move AddCompilerRequirementFlag to cmStandardLevelResolver Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4989
| * | Move AddCompilerRequirementFlag to cmStandardLevelResolverRobert Maynard2020-07-151-141/+6
| | | | | | | | | | | | | | | | | | | | | The cmLocalGenerator::AddCompilerRequirementFlag was another source of truth on what standard levels existed per language, so fold that into cmStandardLevelResolver to make updating CMake easier
* | | Merge topic 'cmnonempty'Kyle Edwards2020-07-151-5/+3
|\ \ \ | |/ / |/| | | | | | | | | | | | | | eaad8072ee cmNonempty: Convenience inlines to check for non-empty string Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5017
| * | cmNonempty: Convenience inlines to check for non-empty stringVitaly Stakhovsky2020-07-141-5/+3
| | |
* | | cmIsOn: add overload accepting const std::string*Vitaly Stakhovsky2020-07-141-4/+3
|/ /
* | GetFeature(): return cmPropVitaly Stakhovsky2020-07-111-3/+3
| |
* | Merge topic 'refactor-generator-configs'Brad King2020-07-061-22/+13
|\ \ | | | | | | | | | | | | | | | | | | 7a969fe21d cmMakefile: Refactor API to better handle empty config values Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4957
| * | cmMakefile: Refactor API to better handle empty config valuesRobert Maynard2020-07-031-22/+13
| | |
* | | cmStandardLevelResolver: Added to handle standard level queriesRobert Maynard2020-07-011-1/+3
|/ / | | | | | | Refactored out of cmMakefile
* | configure_file: Add option to control file permissions transfer to copyRahul Gottipati2020-06-301-2/+2
| | | | | | | | Issue: #20866
* | Merge topic 'languageStandardRefactor'Brad King2020-06-181-42/+10
|\ \ | |/ |/| | | | | | | | | | | 742ff97f80 Refactor language standard computation 0892c798f7 cmMakefile: Change CompileFeatureKnown to take target name instead of target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4803
| * Refactor language standard computationJustin Goshi2020-06-161-42/+10
| | | | | | | | | | Instead of mutating the configure-time cmTarget's properties at generate time, compute and store it in a cmGeneratorTarget field.
* | CUDA: Add issue number to Clang separable compilation errorRaul Tambre2020-06-161-1/+2
|/
* CUDA: Pass toolkit path to ClangRaul Tambre2020-06-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Clang isn't very good at finding the installed CUDA toolkit. The upstream recommendation is that we should pass the toolkit explicitly. Additionally: * Avoids Clang having to search for the toolkit on every invocation. * Allows the user to use a toolkit from a non-standard location by simply setting CUDAToolkit_ROOT. The same way as with FindCUDAToolkit. Clang wants the directory containing the device library and version.txt as the toolkit path. We thus pass the newly introduced CUDAToolkit_LIBRARY_ROOT as the toolkit path. We save CUDAToolkit_ROOT_DIR and CUDAToolkit_LIBRARY_ROOT on Clang to have them available in try_compile() and avoid unnecessary re-searching or a possibly different installation being found in FindCUDAToolkit. This however means that the selected toolkit can't be changed after the initial language enablement. We now determine CUDA compiler ID before doing actual detection, as we don't want to spend time finding the CUDA toolkit for NVIDIA. Implements #20754.
* Merge topic 'cuda_clang_separable_error'Brad King2020-06-051-0/+13
|\ | | | | | | | | | | | | | | b1243201e7 CUDA: Don't RunCMake generate separable compilation tests on Clang 1b4c690543 CUDA: Throw error if CUDA_SEPARABLE_COMPILATION is ON when using Clang Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4827
| * CUDA: Throw error if CUDA_SEPARABLE_COMPILATION is ON when using ClangRaul Tambre2020-06-021-0/+13
| | | | | | | | | | Separable compilation isn't supported yet on Clang. Let's throw a helpful error instead of confusing errors during the build.
* | add_library/add_executable: allow local alias to imported targetsMarc Chevrier2020-06-021-7/+18
|/ | | | Fixes: #20641
* Merge topic 'getdef-expand'Brad King2020-06-021-5/+4
|\ | | | | | | | | | | | | 7ed8c9ebe3 cmMakefile: add GetDefExpandList() that splits value into std::vector Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4819
| * cmMakefile: add GetDefExpandList() that splits value into std::vectorVitaly Stakhovsky2020-05-301-5/+4
| | | | | | | | Combines cmMakefile:GetDefinition() and cmExpandList()
* | Single location for cmProp typedefVitaly Stakhovsky2020-06-011-0/+1
|/
* Multi-Ninja: Fix reusable PCHs for MSVCCristian Adam2020-05-271-95/+145
| | | | Fixes: #20721
* AutoMoc: Configure AutoMoc after generated sources (PCH, Unity)Cristian Adam2020-05-261-1/+7
| | | | Fixes: #20119
* Multi-Ninja: Fix PCHs for Visual C++Cristian Adam2020-05-201-1/+3
| | | | Fixes: #20711
* Merge topic 'unity_explicit_groups'Brad King2020-05-111-44/+134
|\ | | | | | | | | | | | | | | 9f4eb352fe Unity Builds: Support explicit specification of sources to groups b00585adcc Unity: Refactor implementation to make it easier to extend Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4716
| * Unity Builds: Support explicit specification of sources to groupsRobert Maynard2020-05-071-3/+64
| | | | | | | | | | Instead of having CMake determine which files should go into each unity file, the user can now use explicitly state the mapping.
| * Unity: Refactor implementation to make it easier to extendRobert Maynard2020-05-061-45/+74
| |
* | PCH: Fix REUSE_FROM in multi-config generatorsAndreas Schönle2020-05-071-1/+3
|/ | | | | | | | | Since commit a55df20499 (Multi-Ninja: Add precompile headers support, 2020-01-10, v3.17.0-rc1~136^2) the re-used PCH file object is added once for each configuration to flags used for all configurations. Put it in the flags for only the corresponding configuration instead. Fixes: #20680
* GetSafeProperty: return std::string const&Vitaly Stakhovsky2020-04-301-1/+2
|
* cmGeneratorTarget::GetProperty: return cmPropVitaly Stakhovsky2020-04-291-71/+76
|
* Merge topic 'apple-merge-same-sysroot'Brad King2020-04-221-1/+22
|\ | | | | | | | | | | | | 3a7d1e9592 Apple: Merge per-arch sysroot parameters if all are the same Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4647
| * Apple: Merge per-arch sysroot parameters if all are the sameGregor Jasny2020-04-211-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit a9b41195d2 (Handle multi-arch sysroots on Apple platforms, 2019-07-26, v3.17.0-rc1~287^2), CMake supports "fat" builds with different sysroots. Those are passed to the compiler with the `-Xarch_<xyz>` parameter. Unfortunately this breaks the Compiler Cache (ccache) because it does not support those compiler flags: https://github.com/ccache/ccache/blob/v3.7.9/src/ccache.c#L2700-L2705 Restore the caching ability for certain "fat" build configurations (e.g. `arm64` and `armv7`) where the sysroot is the same for all selected architectures and thus a plain `-isysroot` parameter could be used.