summaryrefslogtreecommitdiffstats
path: root/Modules/Platform
Commit message (Collapse)AuthorAgeFilesLines
* Swift: Exclude SDK include pathsYauheni Khnykin2020-02-101-1/+1
| | | | | | | | Populate `CMAKE_Swift_IMPLICIT_INCLUDE_DIRECTORIES` with the macOS SDK's include directory so that we filter such implicit directories out of Swift targets. Fixes: #19845
* Merge topic 'llvm-rc-preprocess'Brad King2020-02-051-0/+17
|\ | | | | | | | | | | | | 1c2d031cbd Add -E cmake_llvm_rc to preprocess files for llvm-rc Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4219
| * Add -E cmake_llvm_rc to preprocess files for llvm-rcThomas Bernard2020-02-041-0/+17
| | | | | | | | | | | | | | | | | | llvm-rc requires preprocessed rc files. The CMake command line tool cmake_llvm_rc enables channing the preprocessor call and the resource compiler and make this appear as single compilation step. When llvm-rc is detected as resource compiler, the RC compilation step is set to use this command.
* | Merge topic 'sdcc-no-default-target'Brad King2020-02-051-11/+0
|\ \ | | | | | | | | | | | | | | | | | | 18d2e6fc8f SDCC: Remove default flags for a specific target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4321
| * | SDCC: Remove default flags for a specific targetfruit2020-02-041-11/+0
| |/ | | | | | | | | | | | | Remove defaults for a specific target (8051) because they are incorrect for other targets. Fixes: #20308
* | Merge topic 'android-ndk-r19-binutils'Brad King2020-02-041-0/+1
|\ \ | |/ |/| | | | | | | | | e3d3b7ddeb Android: Fix binutils selection with NDK r19+ unified toolchain Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4318
| * Android: Fix binutils selection with NDK r19+ unified toolchainBrad King2020-02-031-0/+1
| | | | | | | | | | | | | | | | | | | | In commit 97bca2f9fa (Android: Use unified toolchain in NDK r19+, 2019-07-26, v3.16.0-rc1~342^2) we hard-coded use of the unified toolchain for NDK r19+ and skipped most of the old detection logic. However, in that fast path we left out setting `_CMAKE_TOOLCHAIN_PREFIX` for `CMakeFindBinutils` to select the matching binutils. Add it. Fixes: #20038
* | Merge topic 'windows-gnu-asm'Brad King2020-02-037-16/+28
|\ \ | | | | | | | | | | | | | | | | | | | | | 97de48b528 Tests: Update Assembler code generation to select MSVC runtime library 6348ffb9e5 ASM: Hook up Windows-specific GNU/Clang compiler information modules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4287
| * | ASM: Hook up Windows-specific GNU/Clang compiler information modulesMartin Storsjö2020-01-317-16/+28
| | | | | | | | | | | | | | | | | | This allows building .s/.S assembly code, and makes sure that the `-fPIC` option isn't passed to the compiler (as it errors out on Clang and causes a loud warning on GCC).
* | | AIX: Add an option to disable automatic exports from shared librariesBrad King2020-01-312-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 0f150b69d3 (AIX: Explicitly compute shared object exports for both XL and GNU, 2019-07-11, v3.16.0-rc1~418^2~2) we always export all symbols from shared libraries by default. Add a new target property called `AIX_EXPORT_ALL_SYMBOLS` that can be explicitly set to OFF to suppress this behavior and export no symbols by default. Fixes: #20290
* | | AIX: Improve name of internal symbol export list fileBrad King2020-01-312-4/+4
| | |
* | | AIX: Add ExportImportList option to skip the object filesBrad King2020-01-311-14/+18
| | |
* | | AIX: Revise ExportImportList to build output more incrementallyBrad King2020-01-311-2/+5
|/ / | | | | | | This will allow more steps to be added.
* | Merge topic 'aix-skip-exports'Brad King2020-01-311-1/+11
|\ \ | | | | | | | | | | | | | | | | | | a17f6eff43 AIX: Restore pre-3.16 undocumented method to suppress exports with XL Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4303
| * | AIX: Restore pre-3.16 undocumented method to suppress exports with XLBrad King2020-01-301-1/+11
| |/ | | | | | | | | | | | | | | | | | | | | In commit 0f150b69d3 (AIX: Explicitly compute shared object exports for both XL and GNU, 2019-07-11, v3.16.0-rc1~418^2~2) we dropped use of the old `CMAKE_XL_CreateExportList` cache entry for XL exports. However, some people were setting the value to an empty string as a way to disable automatic export of symbols. Restore this behavior when the option is explicitly set to an empty string. Issue: #20290
| * Merge topic 'macOS-Xcode-11-frameworks' into release-3.16Brad King2020-01-131-0/+4
| |\ | | | | | | | | | | | | | | | | | | | | | fcde42751a FindPython: ensure new Xcode framework for Python3 is detected dd7b741b81 macOS: Add support for new Xcode 11 frameworks directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4198
* | | CUDA: Add abstraction for cuda runtime selectionRobert Maynard2020-01-271-0/+5
| | | | | | | | | | | | | | | Fixes #17559 Replace our hard-coded default of cudart=static with a first-class abstraction to select the runtime library from an enumeration of logical names.
* | | MinGW: Update find_library to not find plain .dll filesBrad King2020-01-202-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Modern distributions of packages built with MinGW tools provide `.dll.a` import libraries. Prefer those instead of finding plain `.dll` files. This avoids accidentally finding unrelated Windows `.dll` files. Fixes: #20019
* | | Ninja: Add a separate job pool for PCH creationDan Johnston2020-01-161-1/+2
| | | | | | | | | | | | | | | | | | | | | Add a `JOB_POOL_PRECOMPILE_HEADER` target property to specify the pool name, and its associated `CMAKE_JOB_POOL_PRECOMPILE_HEADER` variable. Fixes: #20217
* | | Merge topic 'macOS-Xcode-11-frameworks'Brad King2020-01-131-0/+4
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | fcde42751a FindPython: ensure new Xcode framework for Python3 is detected dd7b741b81 macOS: Add support for new Xcode 11 frameworks directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4198
| * | macOS: Add support for new Xcode 11 frameworks directoryMarc Chevrier2020-01-101-0/+4
| | | | | | | | | | | | Update CMAKE_SYSTEM_FRAMEWORK_PATH with new Xcode 11 frameworks directory
* | | Merge topic 'GNUtoMS-vs2019'Brad King2020-01-101-1/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 08c5b3eff0 GNUtoMS: Add search path for VS 2019 environment scripts Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4197
| * | GNUtoMS: Add search path for VS 2019 environment scriptsBrad King2020-01-091-1/+1
| |/ | | | | | | | | | | | | | | Extend the logic from commit abe8a623d9 (GNUtoMS: Add search path for VS 2017 environment scripts, 2017-05-19, v3.8.2~1^2) to consider VS 2019 paths too. Fixes: #20162
* | Swift: move windows handling into platform file (NFC)Saleem Abdulrasool2019-12-221-0/+1
| | | | | | | | | | | | | | This moves the definition of the import library flags for Windows into a platform specific file (much like the Darwin `-sdk` flag). This is in preparation for re-use of the flag to make the flags handling for executables more precise.
* | Merge topic 'fat-ios'Brad King2019-12-171-11/+94
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | a9b41195d2 Handle multi-arch sysroots on Apple platforms 372c89ea38 Refactor -arch and -isysroot code usage 7a44e16d7f Refactor SDK name to path into a function 777d364913 Use xcrun instead of xcodebuild for resolving SDK path Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4125
| * | Handle multi-arch sysroots on Apple platformsTor Arne Vestbø2019-12-131-0/+79
| | |
| * | Refactor SDK name to path into a functionCristian Adam2019-12-111-11/+15
| | |
| * | Use xcrun instead of xcodebuild for resolving SDK pathTor Arne Vestbø2019-12-091-1/+1
| | | | | | | | | | | | It's much cheaper to run.
* | | MSVC: Fixed missing import library for Windows 10 ARM64 (Desktop)shibayan2019-12-101-1/+1
| | | | | | | | | | | | | | | | | | Add the same import library as x86/x64 by default for Windows 10 ARM64 (Desktop, not UWP). Fixes: #20077
* | | CUDA: forward unknown flags to host compiler when possible.Robert Maynard2019-11-291-12/+5
|/ / | | | | | | | | | | | | | | | | | | Starting with CUDA 10.2 the nvcc compiler has gained support to automatically forward unknown flags to the host compiler. This behavior is highly desired as projcts that mix CUDA, C, C++ run into situation where flags such as `-pthread` which aren't supported by nvcc, are being applied to all source files and therefore break CUDA compilation.
* | SDCC compiler: use sdar instead of sdcclib as librarian for recent versionsJohnny Jazeix2019-11-181-10/+24
| | | | | | | | Fixes: #19988
* | Merge topic 'cmake-e-rm'Kyle Edwards2019-11-152-2/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | 2d0100fac7 replace remove and remove_directory with rm in tests 5239fc5c75 cmake -E: Add rm with improved semantics over remove and remove_directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3949
| * | replace remove and remove_directory with rm in testsJohnny Jazeix2019-11-132-2/+2
| | |
* | | Merge topic 'objc-link-main'Brad King2019-11-111-50/+26
|\ \ \ | |/ / |/| / | |/ | | | | | | db91c5f776 ObjC: Set same settings for all languages supported on Darwin Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4012
| * ObjC: Set same settings for all languages supported on DarwinCristian Adam2019-11-071-50/+26
| | | | | | | | Fixes: #19928
* | Merge topic 'objc-pch'Brad King2019-11-051-3/+0
|\ \ | |/ | | | | | | | | | | e331367a89 PCH: Add support for OBJC/OBJCXX languages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3983
| * PCH: Add support for OBJC/OBJCXX languagesCristian Adam2019-11-031-3/+0
| |
* | Merge topic 'message-check-types'Craig Scott2019-11-041-6/+6
|\ \ | | | | | | | | | | | | | | | | | | | | | 7b2dd9dedc Refactor: Use added message types in various modules 949a1e120a message: New message types to mark checks performed by CMake Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3689
| * | Refactor: Use added message types in various modulesAlex Turbov2019-11-021-6/+6
| | | | | | | | | | | | Co-Authored-By: Craig Scott <craig.scott@crascit.com>
* | | Merge topic 'swift-sdk-on-mac'Brad King2019-10-291-0/+1
|\ \ \ | | |/ | |/| | | | | | | | | | | | | c10c9f839a Swift: Honor CMAKE_OSX_SYSROOT on Apple platforms Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3957
| * | Swift: Honor CMAKE_OSX_SYSROOT on Apple platformsBrad King2019-10-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Pass the value to the Swift compiler driver via `-sdk`. We already do this for C/C++ via `-isysroot`. This fixes command-line builds on macOS 10.15 with Xcode 11 Swift tools. Fixes: #19880
| * | Apple: Set Clang ASM compiler featuresGregor Jasny2019-10-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The same is done for the C and CXX language. This initializes compiler flags like the sysroot path or deployment target. Closes: #19794 Suggested-by: Kyle Fleming
* | | Android: add support for native compilation, such as with the Termux appButta2019-10-155-0/+35
| |/ |/| | | | | | | | | | | | | | | The CMake support for Android assumes cross-compilation using the NDK, so stub out that Android NDK support and use the Linux support that's already invoked. Set CMAKE_HOST_SYSTEM_NAME to "Android", rather than "Linux". Issue: #19840
* | Apple: Set Clang ASM compiler featuresGregor Jasny2019-10-071-0/+2
|/ | | | | | | | The same is done for the C and CXX language. This initializes compiler flags like the sysroot path or deployment target. Closes: #19794 Suggested-by: Kyle Fleming
* PCH: Use clang's own pch functionality instead of the GCC emulationCristian Adam2019-10-031-3/+4
| | | | Fixes: #19786
* Languages: Add support for Objective-C++Steve Wilson2019-09-284-3/+18
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C++ compiler determination and identification. Add Modules to check Objective-C++ compiler flags, source compilations, program checks, etc... Use OBJCXX as the designator of the language, eg: project(foo OBJCXX) Add various tests for Objective-C++ language features. Add tests to preserve C++ handling of .M and .mm files when Objective-C++ is not a configured language. Co-authored-by: Cristian Adam <cristian.adam@gmail.com>
* Languages: Add support for Objective-CSteve Wilson2019-09-284-1/+18
| | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C compiler determination and identification. Add Modules to check Objective-C compiler flags, source compilations, program checks, etc... Use OBJC as the designator of the language, eg: project(foo OBJC) Add various tests for Objective-C language features. Add tests to preserve C++ handling of .m and .mm files when OBJC is not a configured language. Co-Authored-By: Cristian Adam <cristian.adam@gmail.com>
* Precompile Headers: Add REUSE_FROM signatureCristian Adam2019-09-171-3/+10
| | | | | | | Add the ability to share precompiled headers artifacts between targets. Fixes: #19659
* Merge topic 'clang-ipo-support'Brad King2019-09-031-2/+9
|\ | | | | | | | | | | | | | | | | | | dca9c33abc Tests: Remove old IPO test c856d4556b bindexplib: supporting llvm bitcode formats using llvm-nm 079b8e2916 Clang: prefer lld-link over link.exe 6e3655db2c Clang: add LTO support for GNU-command line clang on windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3527
| * Clang: add LTO support for GNU-command line clang on windowsZsolt Parragi2019-08-271-2/+9
| |