summaryrefslogtreecommitdiffstats
path: root/Modules/Platform
Commit message (Collapse)AuthorAgeFilesLines
* MSVC,Clang,Flang: Add IPO supportxoviat2018-02-231-0/+28
| | | | Fixes: #17692
* GNU: Use -fvisibility on AIX when supportedBrad King2018-01-121-1/+3
| | | | | | | | | Revise the logic from commit v3.7.0-rc1~173^2~2 (GNU: Do not use -fvisibility on AIX or HP-UX, 2016-09-03) to add a version check. The GCC 7 release notes [1] state that visibility support has been added for AIX 7.1 and above. [1] https://gcc.gnu.org/gcc-7/changes.html
* Darwin: Emit deployment target that matches the SDKGregor Jasny2017-12-221-0/+15
| | | | Closes: #17431
* Merge topic 'cuda_darwin_proper_install_names_flags'Brad King2017-12-081-0/+19
|\ | | | | | | | | | | | | ce3874b3 CUDA: Shared libraries on Darwin properly setup @rpath install_names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1570
| * CUDA: Shared libraries on Darwin properly setup @rpath install_namesRobert Maynard2017-12-071-0/+19
| | | | | | | | | | | | Shared libraries linked with CUDA now properly setup booth the correct install_name but also specify headerpad_max_install_names so that the names can be changed post build.
* | Merge topic 'cuda-implicit-include-dirs'Brad King2017-11-291-0/+3
|\ \ | | | | | | | | | | | | | | | | | | 2f72573a CUDA: Treat /usr/include as an implicit include directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1528
| * | CUDA: Treat /usr/include as an implicit include directoryBrad King2017-11-271-0/+3
| |/ | | | | | | | | | | We already do this for C and C++. Fixes: #17512
* | MSVC: Fix MSVC_VERSION when mixing MSVC C/C++ with Intel FortranBrad King2017-11-151-1/+5
| | | | | | | | | | | | | | | | When using a real MSVC compiler for `C` or `CXX`, use the version of that compiler for `MSVC_VERSION`. This is preferred over the MSVC version that a non-MSVC compiler "simulates". Fixes: #17468
* | Flang: Add support for compiling sources on WindowsIsuru Fernando2017-10-311-0/+1
| | | | | | | | Define `CMAKE_Fortran_COMPILE_OBJECT` for Flang on Windows.
* | Merge topic 'clang-cl-TP'Brad King2017-10-262-0/+2
|\ \ | |/ | | | | | | | | | | 7077a554 Clang: Use -TP flag for C++ sources with clang-cl Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1407
| * Clang: Use -TP flag for C++ sources with clang-clBrad King2017-10-252-0/+2
| | | | | | | | | | | | We do this for `cl`, so we should do it for `clang-cl`. Fixes: #17394
* | Flang: Add partial support on WindowsIsuru Fernando2017-10-241-0/+2
|/ | | | | | | Add minimal changes needed to help Flang itself build on Windows using CMake. Additional work will be required for full support. Issue: #17384
* Merge topic 'midipix-support'Brad King2017-09-211-0/+1
|\ | | | | | | | | | | | | 0df43496 Midipix: Add minimal platform file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1294
| * Midipix: Add minimal platform filemidipix2017-09-201-0/+1
| | | | | | | | Add Midipix.cmake (UnixPaths, no overrides, no special cases).
* | FreeBSD prefers to call the C++ compiler c++ (just like Linux, Darwin, ..)Adriaan de Groot2017-09-201-0/+3
|/
* Merge topic 'remove-nmcl'Brad King2017-09-141-4/+0
|\ | | | | | | | | | | | | c2cc91a4 Platforms: Remove Windows-NMcl Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1255
| * Platforms: Remove Windows-NMclChristian Pfeiffer2017-09-131-4/+0
| | | | | | | | | | | | Since commit v2.8.10~148^2~2 (Modernize MSVC compiler information files, 2012-08-23), the Windows-NMcl platform has been broken. It's most likely not needed anymore.
* | Merge topic 'MsvcArm64'Brad King2017-09-131-3/+9
|\ \ | |/ |/| | | | | | | | | bc7c94fe MSVC: Add support for ARM64 architecture Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1215
| * MSVC: Add support for ARM64 architectureMinmin Gong2017-09-121-3/+9
| | | | | | | | | | | | Visual Studio 15.4 adds support for this architecture. Fixes: #17213
* | VS: Update support for LLVM-vs* toolsets from LLVM 5.0Konstantin Ivlev2017-09-111-2/+2
|/ | | | | | | | | Revert commit v3.7.0-rc1~25^2 (VS: Recognize VS/LLVM toolset names as Clang, 2016-09-28). Since at least LLVM 5.0 the VS integration of the LLVM toolchain now mimics cl and accepts MSVC-style command-line arguments (unlike Microsoft Clang/C2). Fixes: #17193, #17235
* Merge topic 'android-ndk-r16'Brad King2017-09-061-1/+1
|\ | | | | | | | | | | | | | | 5a1a1177 Android: Update for NDK r16 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Daniel Seither <d@fdseither.de> Merge-request: !1237
| * Android: Update for NDK r16Brad King2017-09-051-1/+1
| | | | | | | | | | | | | | | | | | Since NDK commit 90ec78ffd96b87cd75d82575587ead14d6494df1 (Remove Clang toolchain path from setup.mk, 2017-05-31) the `setup.mk` files for Clang no longer hold the path to the `toolchains/llvm` directory. It has been the same since NDK r11, so use that as the default. Fixes: #17253
* | GNUToMS: Tolerate existence of a %USERPROFILE%/source directoryAlbert Ziegenhagel2017-08-251-0/+1
| | | | | | | | | | | | The VS environment script we load changes the working directory to `%USERPROFILE%/source` if it exists. Set `VSCMD_START_DIR` to tell the script to retain the current working directory.
* | gitattributes: prefer `eol=crlf` to `-crlf`Ben Boeckel2017-08-231-3/+3
| | | | | | | | | | | | The `crlf` attribute is deprecated in Git. This also changes the given files to be in the index using LF newlines, but they will be checked out with CRLF newlines due to the attribute.
* | Merge topic 'android-plain-sysroot'Brad King2017-08-041-3/+9
|\ \ | |/ | | | | | | | | | | 68d67c82 Android: Fix support for CMAKE_SYSROOT without CMAKE_SYSROOT_COMPILE Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1101
| * Android: Fix support for CMAKE_SYSROOT without CMAKE_SYSROOT_COMPILEBrad King2017-08-031-3/+9
| | | | | | | | | | | | | | | | | | If `CMAKE_SYSROOT` is set by the user (e.g. via the toolchain file) then we do not set `CMAKE_SYSROOT_COMPILE` to our default. Fix our references to the sysroot's `/usr/include` directory to use `CMAKE_SYSROOT_COMPILE` only if it is set and else `CMAKE_SYSROOT`. Fixes: #17096
* | GHS: Correct the regex for the intXXXX directory detection.Roman Wüger2017-07-171-1/+1
| | | | | | | | | | The int directory does not only need to contain digits. E.g. C:\GHS\int409a is a valid Green Hills installation
* | Merge topic 'android-system-include-last'Brad King2017-07-131-1/+0
|\ \ | |/ | | | | | | | | | | 4bafa392 Android: Always add standard include directories last Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1052
| * Android: Always add standard include directories lastBrad King2017-07-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic added in commit v3.6.0-rc1~30^2 (Add a variable to specify language-wide system include directories, 2016-05-24) to use `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES` incorrectly filters them by `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES`. Rather than recognizing this, commit v3.8.0-rc1~60^2 (Android: Pass sysroot include directory explicitly, 2017-01-20) worked around the problem by incorrectly removing `/usr/include` from `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` so it worked in `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES`. By not filtering out `/usr/include` from user-specified include directories, we allow the code include_directories(${CMAKE_SYSROOT}/usr/include) to place the include directory too early on the command line. Fix support for standard include directories to not be filtered by implicit include directories, and do not remove `/usr/include` from the list of implicit include directories for Android builds. Add a test case to verify that an explicit `/usr/include` is ignored in favor of the standard directory at the end. Fixes: #17059
* | Merge topic 'android-fix-c++_shared'Brad King2017-07-121-0/+1
|\ \ | |/ | | | | | | | | | | e0fb3f31 Android: Link to android_support with c++_shared Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1048
| * Android: Link to android_support with c++_sharedBrad King2017-07-121-0/+1
| | | | | | | | | | The NDK has done this in `build/core/definitions.mk` since r13 (r12 and below do so only for c++_static).
| * Merge branch 'android-unified-headers' into release-3.9Brad King2017-06-221-2/+6
| |\
| * \ Merge branch 'ipo-per-lang' into release-3.9Brad King2017-06-141-4/+4
| |\ \
| * \ \ Merge branch 'cuda-dlink-no-deprecated-gpu' into release-3.9Brad King2017-06-131-2/+10
| |\ \ \
* | \ \ \ Merge topic 'android-unified-headers'Brad King2017-06-221-2/+6
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | 5d317930 Android: Fix include path for unified headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !997
| * | | | Android: Fix include path for unified headersBrad King2017-06-221-2/+6
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.9.0-rc3~3^2 (Android: Add support for unified headers, 2017-06-12) we accidentally constructed the unified header include directories from the linking sysroot. Construct them from the compiling sysroot instead. Fixes: #16584
* | | | Merge topic 'ipo-per-lang'Brad King2017-06-151-4/+4
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | ba247cca IPO: Consider support for each language separately Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !964
| * | | IPO: Consider support for each language separatelyBrad King2017-06-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only define `INTERPROCEDURAL_OPTIMIZATION` behavior for C, CXX, and Fortran languages. Do not try to enable support for other languages. Furthermore, each language builds with a different compiler, so check for support by CMake and the compiler for each language independently. Fixes: #16944
* | | | Merge topic 'android-unified-headers'Brad King2017-06-134-16/+52
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 3d00be13 Android: Add support for unified headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !956
| * | | Android: Add support for unified headersBrad King2017-06-124-16/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The unified headers are preferred as of NDK r15, so use them by default if available and provide an option to use the deprecated headers. Inspired-by: Florent Castelli <florent.castelli@gmail.com> Fixes: #16584
| * | | Merge branch 'android-standalone-no-sysroot-include' into release-3.9Brad King2017-06-091-2/+7
| |\ \ \
* | \ \ \ Merge topic 'cuda-dlink-no-deprecated-gpu'Brad King2017-06-131-2/+10
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | 7368ade2 CUDA: When linking device code suppress CUDA 8.0+ deprecation warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !951
| * | | | CUDA: When linking device code suppress CUDA 8.0+ deprecation warningsRobert Maynard2017-06-131-2/+10
| | |_|/ | |/| | | | | | | | | | | | | | | | | | The CUDA compiler automatic deprecation warnings are pure noise when doing device linking, and should be suppressed to reduce the amount of confusion from users.
* | | | Merge topic 'android-standalone-no-sysroot-include'Brad King2017-06-121-2/+7
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 22f8a465 Android: Do not pass sysroot include for standalone toolchain Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !952
| * | | Android: Do not pass sysroot include for standalone toolchainBrad King2017-06-091-2/+7
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | The change in commit v3.8.0-rc1~60^2 (Android: Pass sysroot include directory explicitly, 2017-01-20) does not make sense when compiling with a standalone toolchain which is tied to a single API version. Drop the explicit include directory so that the compiler uses its default system include order. Fixes: #16954
* | | Merge topic 'android-standalone-unified-api-level'Brad King2017-06-121-5/+28
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 5f93bf78 Android: Detect API version of standalone toolchain with unified headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !950
| * | Android: Detect API version of standalone toolchain with unified headersBrad King2017-06-091-5/+28
| |/ | | | | | | | | | | | | A standalone toolchain with unified headers keeps the `__ANDROID_API__` macro in the `bin/clang` launcher instead of in `api-level.h`. Issue: #16954
* | SDCC: Remove superfluous whitespace from link lineReto Schneider2017-06-081-1/+1
| |
* | SDCC: Do not explicitly ask linker to generate Intel Hex filesReto Schneider2017-06-081-1/+1
|/ | | | | | | The `--out-fmt-ihx` option added by commit v2.6.0~1253 (...use --out-fmt-ihx to enforce .ihx files, 2007-08-15) may interfere with options requested by the user. Also, when no linker output is specified, SDCC outputs Intel Hex by default anyway.
* Merge topic 'vs15-GNUtoMS'Brad King2017-05-241-0/+15
|\ | | | | | | | | | | | | abe8a623 GNUtoMS: Add search path for VS 2017 environment scripts Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !875