summaryrefslogtreecommitdiffstats
path: root/clang/cmake
Commit message (Collapse)AuthorAgeFilesLines
...
* [Driver] Support XRay on FuchsiaPetr Hosek2018-11-221-0/+1
| | | | | | | | This enables support for XRay in Fuchsia Clang driver. Differential Revision: https://reviews.llvm.org/D52160 llvm-svn: 347444
* [CMake] Use lld and llvm-objcopy for first stage compiler in FuchsiaPetr Hosek2018-11-161-0/+4
| | | | | | | | | | | When cross-compiling the second stage to a different target, we need to make sure that the first-stage compiler can produce binaries for that target. Using lld and llvm-objcopy as the default linker and objcopy tool eliminates some of the dependencies on the host toolchain. Differential Revision: https://reviews.llvm.org/D54655 llvm-svn: 347108
* [CMake] Support cross-compiling with Fuchsia toolchain buildPetr Hosek2018-11-161-1/+32
| | | | | | | | | | When second stage is being cross-compiled for a different platform we need to build enough of first stage runtimes to get a working compiler. Differential Revision: https://reviews.llvm.org/D54463 llvm-svn: 347026
* [CMake] Use the correct spelling for armv7 in Fuchsia's toolchainPetr Hosek2018-11-161-1/+1
| | | | | | | | We need to explicitly specify the architecture version. Differential Revision: https://reviews.llvm.org/D54613 llvm-svn: 347021
* [CMake] Explicitly list Linux targets for Fuchsia toolchainPetr Hosek2018-11-151-31/+31
| | | | | | | | | Not all Linux targets use the ${arch}-linux-gnu spelling, so instead specify the list of Linux explicitly. Differential Revision: https://reviews.llvm.org/D54598 llvm-svn: 346997
* [CMake] Include clang-apply-replacements in Fuchsia toolchainPetr Hosek2018-11-141-0/+1
| | | | | | | | This is needed for run-clang-tidy.py. Differential Revision: https://reviews.llvm.org/D54505 llvm-svn: 346827
* [CMake][Fuchsia] Set -fuse-ld=lld explicitly for Linux runtimesPetr Hosek2018-11-021-13/+19
| | | | | | | | | | We set lld as the default linker on non-Darwin platforms, but we still need to set -fuse-ld=lld explicitly in to support cross-compiling Linux runtimes on Darwin. Differential Revision: https://reviews.llvm.org/D54026 llvm-svn: 346056
* [CMake][Fuchsia] Don't restrict Linux runtimes to UNIXPetr Hosek2018-11-011-32/+32
| | | | | | | | | This allows building Linux runtimes on any platform if the correct sysroot is provided via CMake option. Differential Revision: https://reviews.llvm.org/D53970 llvm-svn: 345889
* [CMake][Fuchsia] Drop the LIBCXX_HIDE_FROM_ABI_PER_TU_BY_DEFAULTPetr Hosek2018-10-291-4/+0
| | | | | | | | | Now that libc++ uses __exclude_from_explicit_instantiation__ attribute, this is no longer needed. Differential Revision: https://reviews.llvm.org/D53839 llvm-svn: 345552
* [Driver] Support direct split DWARF emission for FuchsiaPetr Hosek2018-10-151-0/+1
| | | | | | | | | This enables the driver support for direct split DWARF emission for Fuchsia in addition to Linux. Differential Revision: https://reviews.llvm.org/D53248 llvm-svn: 344556
* [analyzer] Improved cmake configuration for Z3Enrico Steffinlongo2018-10-131-2/+25
| | | | | | | | | | | | | | | | | | | | | | Summary: Enhanced support for Z3 in the cmake configuration of clang; now it is possible to specify any arbitrary Z3 install prefix (CLANG_ANALYZER_Z3_PREFIX) to cmake with lib (or bin) and include folders. Before the patch only in cmake default locations were searched (https://cmake.org/cmake/help/v3.4/command/find_path.html). Specifying any CLANG_ANALYZER_Z3_PREFIX will force also CLANG_ANALYZER_BUILD_Z3 to ON. Removed also Z3 4.5 version requirement since it was not checked, and now Clang works with Z3 4.7 Reviewers: NoQ, george.karpenkov, mikhail.ramalho Reviewed By: george.karpenkov Subscribers: rnkovacs, NoQ, esteffin, george.karpenkov, delcypher, ddcc, mgorny, xazax.hun, szepet, a.sidorin, Szelethus Tags: #clang Differential Revision: https://reviews.llvm.org/D50818 llvm-svn: 344464
* [CMake][Fuchsia] Use libc++ ABIv2 for Fuchsia toolchainPetr Hosek2018-10-031-0/+4
| | | | | | | | We don't need to provide stable ABI and hence we can use the v2. Differential Revision: https://reviews.llvm.org/D52660 llvm-svn: 343652
* Build clang-headers when building clang tools.Haojian Wu2018-10-011-0/+1
| | | | | | | | | | | | | | | | | Summary: clang tools require clang headers to work on real project, e.g. when we build clangd via `ninja clangd`, we expect the binary can run on real-world project (without running another command `ninja clang-headers`). Reviewers: sammccall Reviewed By: sammccall Subscribers: mgorny, ilya-biryukov, ioeric, kadircet, cfe-commits Differential Revision: https://reviews.llvm.org/D52714 llvm-svn: 343459
* [CMake] Use internal_linkage rather than always_inline for libc++Petr Hosek2018-09-231-0/+2
| | | | | | | | | | This is a workaround for PR39053 which was uncovered by D50652 when the default attribute has been changed from internal_linkage to always_inline. Differential Revision: https://reviews.llvm.org/D52402 llvm-svn: 342833
* [CMake] Link static libunwind and libc++abi into libc++ in Fuchsia toolchainPetr Hosek2018-07-251-0/+6
| | | | | | | | | | | When building libc++ for Fuchsia, we want to distribute shared libc++, libc++abi and libunwind as separate libraries, but for static versions we would like to link all of them into libc++ so -lc++ flag has the same effect whether shared or static library is being used. Differential Revision: https://reviews.llvm.org/D49628 llvm-svn: 337877
* [CMake] Use libc++ and compiler-rt for sanitizersPetr Hosek2018-07-151-1/+3
| | | | | | | | | When building runtimes for Linux as part of Fuchsia toolchain, use libc++ and compiler-rt for sanitizers. Differential Revision: https://reviews.llvm.org/D49331 llvm-svn: 337117
* [CMake] Don't build Linux targets on Darwin in Fuchsia toolchainPetr Hosek2018-06-282-29/+29
| | | | | | | | | This is currently breaking because Linux target sysroots rely on case sensitive filesystem which is not by default enabled on macOS. Differential Revision: https://reviews.llvm.org/D48710 llvm-svn: 335919
* [CMake] Build static runtimes for host in Fuchsia first stagePetr Hosek2018-06-281-0/+12
| | | | | | | | | | First stage build is only a minimal build where we don't need a complete multiarch support, but we need enough to build the second stage. Differential Revision: https://reviews.llvm.org/D48707 llvm-svn: 335917
* [CMake] Use explicit targets for building Linux runtimesPetr Hosek2018-06-282-58/+76
| | | | | | | | | | | | Previously we were using default logic when building Linux runtimes in Fuchsia toolchain, but that leads to various issues due to how the CMake logic in compiler-rt for determining the platform support is implemented. With this change, we will use explicit target for every provided Linux sysroot. Differential Revision: https://reviews.llvm.org/D48563 llvm-svn: 335812
* [CMake] Support passing FUCHSIA_SDK as the only variablePetr Hosek2018-06-271-8/+16
| | | | | | | | | | | | Now that the structure of Fuchsia SDK has been formalized, we no longer need to pass all the different CFLAGS/LDFLAGS to the CMake build separately, we can simply set the FUCHSIA_SDK variable and derive all the necessary variables from that one inside the cache file. Differential Revision: https://reviews.llvm.org/D48564 llvm-svn: 335708
* [CMake] Provide direct support for building sanitized runtimesPetr Hosek2018-06-271-6/+3
| | | | | | | | This avoids having to rely on magic separators and special parsing. Differential Revision: https://reviews.llvm.org/D48061 llvm-svn: 335704
* Revert "[CMake][Darwin] Match cxx-headers -> cxx_headers libcxx target rename."Francis Visoiu Mistrih2018-06-261-1/+1
| | | | | | | | | This reverts commit r334550. Try to fix the stage2 build failing on Green Dragon for a while. http://green.lab.llvm.org/green/job/clang-stage2-Rthinlto/11124/console llvm-svn: 335628
* [Fuchsia] Enable static libc++, libc++abi, libunwindPetr Hosek2018-06-231-3/+0
| | | | | | | | This is needed for building Fuchsia drivers. Differential Revision: https://reviews.llvm.org/D48208 llvm-svn: 335410
* [CMake][Darwin] Match cxx-headers -> cxx_headers libcxx target rename.Ahmed Bougacha2018-06-121-1/+1
| | | | | | This was changed in r334477. llvm-svn: 334550
* [CMake] Use libc++ and compiler-rt for bootstrap Fuchsia ClangPetr Hosek2018-06-111-0/+7
| | | | | | | | | | We want to build the second stage compiler with libc++ and compiler-rt, also include builtins and runtimes into extra bootstrap components to ensure these get built. Differential Revision: https://reviews.llvm.org/D47356 llvm-svn: 334445
* [Fuchsia] Include install-distribution-stripped in bootstrap targetsPetr Hosek2018-06-061-0/+1
| | | | | | | | | This enables the use of install-distribution-stripped target in the 2-stage builds. Differential Revision: https://reviews.llvm.org/D47758 llvm-svn: 334063
* Set CMAKE_BUILD_WITH_INSTALL_RPATH for Fuchsia runtimesPetr Hosek2018-05-091-0/+1
| | | | | | | | | | This doesn't make any difference since we don't use RPATH/RUNPATH on Fuchsia but it avoids the CMake error when re-linking libraries while building with Ninja. Differntial Revision: https://reviews.llvm.org/D46610 llvm-svn: 331833
* [CMake] Include llvm-strip in Fuchsia toolchain distributionPetr Hosek2018-05-091-0/+1
| | | | | | | | Now that llvm-strip is available, include it in the Fuchsia toolchain. Differential Revision: https://reviews.llvm.org/D46612 llvm-svn: 331826
* [CMake] Pass additional CMake flags in Fuchsia cache filesPetr Hosek2018-05-082-6/+26
| | | | | | | | | This allows passing additional CMake flags to builtins and runtimes build through Fuchsia cache files. Differential Revision: https://reviews.llvm.org/D45997 llvm-svn: 331717
* [CMake][Cache] Stop pretending that Fuchsia is UNIXPetr Hosek2018-05-031-1/+0
| | | | | | | | | This changes some aspects of the build that are not relevant or useful for Fuchsia like setting the RPATH/RUNPATH. Differential Revision: https://reviews.llvm.org/D46361 llvm-svn: 331425
* [CMake] Enable libc++ for Fuchsia toolchain on DarwinPetr Hosek2018-04-251-10/+1
| | | | | | | | | This is necessary in order to get a working C++ compiler on Darwin since Clang expects libc++ headers to be part of the toolchain. Differential Revision: https://reviews.llvm.org/D46075 llvm-svn: 330855
* [CMake][Fuchsia] Don't specify libc++ ABI version for FuchsiaPetr Hosek2018-04-131-1/+0
| | | | | | | | This is now set automatically in libc++ config header. Differential Revision: https://reviews.llvm.org/D45511 llvm-svn: 329984
* Fix typos in clangAlexander Kornienko2018-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Found via codespell -q 3 -I ../clang-whitelist.txt Where whitelist consists of: archtype cas classs checkk compres definit frome iff inteval ith lod methode nd optin ot pres statics te thru Patch by luzpaz! (This is a subset of D44188 that applies cleanly with a few files that have dubious fixes reverted.) Differential revision: https://reviews.llvm.org/D44188 llvm-svn: 329399
* [Fuchsia] Don't install libc++, libc++abi or libunwind on DarwinPetr Hosek2018-03-211-11/+22
| | | | | | | | | | The Clang driver doesn't currently know how to use the libraries that are shipped as part of the toolchain so there's no reason to ship them at all. Differential Revision: https://reviews.llvm.org/D44724 llvm-svn: 328114
* [CMake] Use libc++ and compiler-rt as default libraries in Fuchsia toolchainPetr Hosek2018-03-191-1/+19
| | | | | | | | | Fuchsia already defaults to libc++ and compiler-rt, but we want to use these as default runtimes even on the host platform. Differential Revision: https://reviews.llvm.org/D39930 llvm-svn: 327860
* [dsymutil] Rename llvm-dsymutil -> dsymutilJonas Devlieghere2018-03-184-4/+4
| | | | | | | | | | | Now that almost all functionality of Apple's dsymutil has been upstreamed, the open source variant can be used as a drop in replacement. Hence we feel it's no longer necessary to have the llvm prefix. Differential revision: https://reviews.llvm.org/D44527 llvm-svn: 327790
* [Fuchsia] Include libClang and clang-include-fixer in the toolchainPetr Hosek2018-02-211-0/+2
| | | | | | | | | libClang is used by other Clang based tools such as cquery while clang-include-fixer is generally a useful tool. Differential Revision: https://reviews.llvm.org/D43404 llvm-svn: 325665
* Revert r323051 "[cmake] Use CLANG_BINARY_DIR to determine the build directory."Vassil Vassilev2018-01-241-1/+1
| | | | | | | | This broke swift builds. Thanks for the post-commit review of Chris Bieneman and Davide Italiano! llvm-svn: 323368
* [cmake] Use CLANG_BINARY_DIR to determine the build directory.Vassil Vassilev2018-01-201-1/+1
| | | | | | | The patch puts the ClangConfig.cmake in the expected location when clang is embedded into a framework. llvm-svn: 323051
* [Fuchsia] Remove LLDB from the toolchain distributionPetr Hosek2018-01-111-6/+0
| | | | | | | | This is currently not being used so disable it to reduce toolchain size. Differential Revision: https://reviews.llvm.org/D41929 llvm-svn: 322253
* [Fuchsia] Use llvm-objcopy as objcopy on non-Darwin hostsPetr Hosek2018-01-111-0/+1
| | | | | | | | llvm-objcopy already supports all the necessary functionality for ELF. Differential Revision: https://reviews.llvm.org/D41930 llvm-svn: 322252
* [CMake][Fuchsia] Enable assertionsPetr Hosek2017-12-212-0/+2
| | | | | | | | | | | | | | | | Enable assertions in both stages. Release+Asserts is fast enough. No need to let insanity through. Patch By: mcgrathr Reviewers: phosek Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D41471 llvm-svn: 321316
* Update Clang CMake cache to use cxx-headers, NFCDuncan P. N. Exon Smith2017-12-091-1/+1
| | | | | | Apparently libcxx-headers is going away. Fixes PR35584. llvm-svn: 320271
* [clang] Use add_llvm_install_targetsShoaib Meenai2017-11-301-10/+6
| | | | | | | | | | Use this function to create the install targets rather than doing so manually, which gains us the `-stripped` install targets to perform stripped installations. Differential Revision: https://reviews.llvm.org/D40675 llvm-svn: 319489
* [CMake][Fuchsia] Disable terminfo database in Fuchsia toolchainPetr Hosek2017-11-272-2/+4
| | | | | | | | | | | | | It's used to determine whether terminal supports colors, but within LLVM it's only used in handful of places and in Clang it's only used in AST dumper, otherwise Clang relies on the -fcolor-diagnostics flag which we pass explicitly from our build system anyway. This eliminates one of the shared libraries dependencies making the toolchain less reliant on the host environment. Differential Revision: https://reviews.llvm.org/D40329 llvm-svn: 319088
* [Driver] Make the use of relax relocations a per target optionPetr Hosek2017-11-221-7/+0
| | | | | | | | | | | | | The support for relax relocations is dependent on the linker and different toolchains within the same compiler can be using different linkers some of which may or may not support relax relocations. Give toolchains the option to control whether they want to use relax relocations in addition to the existing (global) build system option. Differential Revision: https://reviews.llvm.org/D39831 llvm-svn: 318816
* [clang-fuzzer] Fix incremental builds of the fuzzerVitaly Buka2017-10-311-11/+6
| | | | | | | | | | | | | | | Summary: Don't use BUILD_IN_SOURCE keep git checkout clean Don't forward CMAKE_GENERATOR as ExternalProject_Add should do it already Reset UPDATE_COMMAND to avoid git checkout updates on each build Reviewers: kcc, morehouse Subscribers: cfe-commits, mgorny Differential Revision: https://reviews.llvm.org/D39445 llvm-svn: 317035
* [CMake] Build host builtins in Fuchsia toolchain even on DarwinPetr Hosek2017-10-251-5/+1
| | | | | | | | | This is nedeeded for the toolchain to be actually usable as a host toolchain on Darwin. Differential Revision: https://reviews.llvm.org/D39273 llvm-svn: 316542
* [CMake] Include clang-refactor in Fuchsia toolchainPetr Hosek2017-10-251-0/+1
| | | | | | | | This includes the clang-refactor in the toolchain distribution. Differential Revision: https://reviews.llvm.org/D39270 llvm-svn: 316541
* [clang-proto-fuzzer] Use ToT protobuf-mutator.Matt Morehouse2017-10-181-1/+1
| | | | llvm-svn: 316103
OpenPOWER on IntegriCloud