summaryrefslogtreecommitdiffstats
path: root/llvm/cmake/modules
Commit message (Collapse)AuthorAgeFilesLines
* [CMake] Use PUBLIC link mode for static librariesPetr Hosek2020-03-021-1/+1
| | | | | | | | | | | | Using INTERFACE prevents the use of imported libraries as we've done in 00b3d49 because these aren't linked against the target, they're only made part of the interface. This doesn't affect the output since static libraries aren't being linked into, but it enables the use of imported libraries. Differential Revision: https://reviews.llvm.org/D74106 (cherry picked from commit 50a6d3a6486d81d21a2c31ce8522321e19bed35e)
* [CMake] Default to static linking for subprojects.Michael Kruse2020-02-261-2/+13
| | | | | | | | | | | | | | | | Pass plugins introduced in D61446 do not support dynamic linking on Windows, hence the option LLVM_${name_upper}_LINK_INTO_TOOLS can only work being set to "ON". Currently, it defaults to "OFF" such that such plugins are inoperable by default on Windows. Change the default for subprojects to follow LLVM_ENABLE_PROJECTS. Reviewed By: serge-sans-paille, MaskRay Differential Revision: https://reviews.llvm.org/D72372 (cherry picked from commit 6369b9bf31188bdd472299252deb6db3f650864b) This is for PR45001.
* Add llvm-cov to LLVM_TOOLCHAIN_TOOLSHans Wennborg2020-02-251-0/+1
| | | | | | See https://github.com/llvm/llvm-project/issues/141 (cherry picked from commit dcd89b3de6de891bfcc59189cda1ea059fbdcdb5)
* Revert "[CMake] CheckAtomic.cmake: catch false positives in RISC-V"Hans Wennborg2020-02-201-5/+1
| | | | | | | This reverts commit a572a8a147c76b9d31585c2d4257a5db566c9a9d. Apparently it was part of a larger series, and I'm not planning on merging that; see https://reviews.llvm.org/D68964
* [CMake] CheckAtomic.cmake: catch false positives in RISC-VGokturk Yuksek2020-02-201-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | The check for 'HAVE_CXX_ATOMICS_WITHOUT_LIB' may create false positives in RISC-V. This is reproducible when compiling LLVM natively using GCC on a rv64gc (rv64imafdgc) host. Due to the 'A' (atomic) extension, g++ replaces calls to libatomic operations on the std::atomic<int> type with the native hardware instructions. As a result, the compilation succeeds and the build system thinks it doesn't need to pass '-latomic'. Improve the reliability of the 'HAVE_CXX_ATOMICS_WITHOUT_LIB' test in two steps: 1. Force a pre-increment on x (++x), which should force a call to a libatomic function; 2. Because step 1 would resolve the increment to 'amoadd.w.aq' under the 'A' extension, force the same operation on sub-word types, for which there is no hardware support. Reviewers: jfb, hintonda, smeenai, mgorny, JDevlieghere, jyknight Reviewed By: jfb Tags: #llvm Differential Revision: https://reviews.llvm.org/D68964 (cherry picked from commit cef85193b2cc1817ca43199a0ae9c6f25723997d)
* [windows] Add /Gw to compiler flagsNico Weber2020-02-201-0/+4
| | | | | | | | | | | | This is like -fdata-sections, and it's not part of /O2 by default for some reason. In the cmake build, reduces the size of clang.exe from 70,358,016 bytes to 69,982,720 bytes. clang-format.exe goes from 3,703,296 bytes to 3,331,072 bytes. Differential Revision: https://reviews.llvm.org/D74573 (cherry picked from commit 09153ab9d267a86d6e9bce18d5074617de5879a5)
* MSVC Buggy version detection: turn pre-processor error into CMake ↵Mehdi Amini2020-02-031-0/+14
| | | | | | | | | | | | | | | | | configuration time check This allows consumer to override in a cleaner way while still prevent them from hitting bug without knowing they run an unsupported configuration. Recommit after fix by Christopher Tetreault to add parens and ${} to cmake check to work around CMake configure time "unknown arguments specified" issue Differential Revision: https://reviews.llvm.org/D73677 Differential Revision: https://reviews.llvm.org/D73751 (cherry picked from commit 5f940220bf9438e95ffa4a627ac1591be1e1ba6e)
* Fix several issues with compiler extensionsserge-sans-paille2020-01-101-14/+22
| | | | | | | | | | | | | | | | - Update documentation now that the move to monorepo has been made - Do not tie compiler extension testing to LLVM_BUILD_EXAMPLES - No need to specify LLVM libraries for plugins - Add NO_MODULE option to match Polly specific requirements (i.e. building the module *and* linking it statically) - Issue a warning when building the compiler extension with LLVM_BYE_LINK_INTO_TOOLS=ON, as it modifies the behavior of clang, which only makes sense for testing purpose. Still mark llvm/test/Feature/load_extension.ll as XFAIL because of a ManagedStatic dependency that's going to be fixed in a seperate commit. Differential Revision: https://reviews.llvm.org/D72327
* [cmake] Use relative cmake binary dir for processing pass plugins.Michael Kruse2020-01-071-10/+12
| | | | | | | | | | | | | https://reviews.llvm.org/D61446 introduced a new function to process pass plugins that used CMAKE_BINARY_DIR. This is problematic when LLVM is a subproject. Instead use LLVM_BINARY_DIR to get the right relative directory for cmake. Patch by Alan Baker <alanbaker@google.com> Reviewed By: Meinersbur Differential Revision: https://reviews.llvm.org/D72109
* [CMake] Pass symlink dependency to add_llvm_install_targets explicitlyPetr Hosek2020-01-061-5/+12
| | | | | | | | | | | | | | | | | | | | The install-${name}-stripped targets don't strip when ${name} is being symlinked, e.g. llvm-ar or llvm-objcopy. The problem is that llvm_install_symlink passes install-${dest} as a dependency of install-${name}, e.g. install-llvm-ar becomes a dependency of both install-llvm-ranlib and install-llvm-ranlib-stripped. What this means is that when installing a distribution that contains both llvm-ar and llvm-ranlib is that first the stripped version of llvm-ar is installed (by the install-llvm-ar-stripped target) and then it's overwritten by an unstripped version of llvm-ar bnecause install-llvm-ranlib-stripped has install-llvm-ranlib as a dependency as mentioned earlier. To avoid this issue, rather than passing the install-${dest} as dependency, we introduce a new argument to add_llvm_install_targets for symlink target which expands it into an appropriate dependency, i.e. install-${dest} for install-${name} target and install-${dest}-stripped for install-${name}-stripped. Differential Revision: https://reviews.llvm.org/D71951
* [cmake] Remove install from add_llvm_example_library.Florian Hahn2020-01-041-4/+3
| | | | | This should fix http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/30086
* Re-apply "[Examples] Add IRTransformations directory to examples."Florian Hahn2020-01-041-0/+12
| | | | | | This reverts commit 19fd8925a4afe6efd248688cce06aceff50efe0c. Should include a fix for PR44197.
* Generalize the pass registration mechanism used by Polly to any third-party toolserge_sans_paille2020-01-021-2/+73
| | | | | | | | | | | | | | | | | | | | | | | | There's quite a lot of references to Polly in the LLVM CMake codebase. However the registration pattern used by Polly could be useful to other external projects: thanks to that mechanism it would be possible to develop LLVM extension without touching the LLVM code base. This patch has two effects: 1. Remove all code specific to Polly in the llvm/clang codebase, replaicing it with a generic mechanism 2. Provide a generic mechanism to register compiler extensions. A compiler extension is similar to a pass plugin, with the notable difference that the compiler extension can be configured to be built dynamically (like plugins) or statically (like regular passes). As a result, people willing to add extra passes to clang/opt can do it using a separate code repo, but still have their pass be linked in clang/opt as built-in passes. Differential Revision: https://reviews.llvm.org/D61446
* [llvm] Add llvm-lipo dependency to runtimesXin-Xin Wang2019-12-161-1/+4
| | | | | | | | | | | | | | Summary: Currently, llvm-lipo is not specified as a dependency, but it is needed when building Darwin-x86_64 runtimes, so I'm adding it to the dependencies lists. Reviewers: alexshap, beanz, phosek, compnerd, smeenai, mtrent, plotfi, xiaobai Reviewed By: phosek, smeenai Subscribers: smeenai, mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D71429
* Don't call export_symbols.py with duplicate libsDavid Tenty2019-12-111-0/+1
| | | | | | | | | | | | | | | | Summary: export_symbols.py discards duplicate symbols, assuming they have public definitions, so if we end up calling it with duplicate libraries we will end up with an inaccurate export list. Reviewers: jasonliu, stevewan, john.brawn Reviewed By: john.brawn Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70918
* [cmake] Disable GCC 9's -Wredundant-movePavel Labath2019-12-091-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This new warning (enabled by -Wextra) fires when a std::move is redundant, as the default compiler behavior would be to select a move operation anyway (e.g., when returning a local variable). Unlike -Wpessimizing-move, it has no performance impact -- it just adds noise. Currently llvm has about 1500 of these warnings. Unfortunately, the suggested fix -- removing std::move -- does not work because of some older compilers we still support. Specifically clang<=3.8 will not use a move operation if an implicit conversion is needed (Core issue 1579). In code like "A f(ConvertibleToA a) { return a; }" it will prefer a copy, or fail to compile if a copy is not possible. This patch disables that warning to get a meaningful signal out of a GCC 9 build. Reviewers: rnk, aaron.ballman, xbolva00 Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70963
* [compiler-rt] Disable fuzzer large.test when LLVM_ENABLE_EXPENSIVE_CHECKS=ONAlex Lorenz2019-12-031-0/+2
| | | | | | | | | | | | | This test is timing out on Green Dragon http://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-expensive/ and looks like it's not executed on other bots with expensive checks enabled http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-ubuntu http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win The test times out at the C++ source file takes too long to build (2+ hours on my machine), as clang spends a lot of time in IR/MIR verifiers. Differential Revision: https://reviews.llvm.org/D70024
* [CMake] Fix LLVM build non-determinism on RHELAmy Kwan2019-11-211-0/+22
| | | | | | | | | On RHEL, the OS tooling (ar, ranlib) is not deterministic by default. Therefore, we cannot get bit-for-bit identical builds. The goal of this patch is that it adds the flags required to force determinism. Differential Revision: https://reviews.llvm.org/D64817
* [cmake] Explicitly mark libraries defined in lib/ as "Component Libraries"Tom Stellard2019-11-212-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: Most libraries are defined in the lib/ directory but there are also a few libraries defined in tools/ e.g. libLLVM, libLTO. I'm defining "Component Libraries" as libraries defined in lib/ that may be included in libLLVM.so. Explicitly marking the libraries in lib/ as component libraries allows us to remove some fragile checks that attempt to differentiate between lib/ libraries and tools/ libraires: 1. In tools/llvm-shlib, because llvm_map_components_to_libnames(LIB_NAMES "all") returned a list of all libraries defined in the whole project, there was custom code needed to filter out libraries defined in tools/, none of which should be included in libLLVM.so. This code assumed that any library defined as static was from lib/ and everything else should be excluded. With this change, llvm_map_components_to_libnames(LIB_NAMES, "all") only returns libraries that have been added to the LLVM_COMPONENT_LIBS global cmake property, so this custom filtering logic can be removed. Doing this also fixes the build with BUILD_SHARED_LIBS=ON and LLVM_BUILD_LLVM_DYLIB=ON. 2. There was some code in llvm_add_library that assumed that libraries defined in lib/ would not have LLVM_LINK_COMPONENTS or ARG_LINK_COMPONENTS set. This is only true because libraries defined lib lib/ use LLVMBuild.txt and don't set these values. This code has been fixed now to check if the library has been explicitly marked as a component library, which should now make it easier to remove LLVMBuild at some point in the future. I have tested this patch on Windows, MacOS and Linux with release builds and the following combinations of CMake options: - "" (No options) - -DLLVM_BUILD_LLVM_DYLIB=ON - -DLLVM_LINK_LLVM_DYLIB=ON - -DBUILD_SHARED_LIBS=ON - -DBUILD_SHARED_LIBS=ON -DLLVM_BUILD_LLVM_DYLIB=ON - -DBUILD_SHARED_LIBS=ON -DLLVM_LINK_LLVM_DYLIB=ON Reviewers: beanz, smeenai, compnerd, phosek Reviewed By: beanz Subscribers: wuzish, jholewinski, arsenm, dschuff, jyknight, dylanmckay, sdardis, nemanjai, jvesely, nhaehnle, mgorny, mehdi_amini, sbc100, jgravelle-google, hiraditya, aheejin, fedor.sergeev, asb, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27, MaskRay, zzheng, edward-jones, atanasyan, steven_wu, rogfer01, MartinMosbeck, brucehoult, the_o, dexonsmith, PkmX, jocewei, jsji, dang, Jim, lenary, s.egerton, pzheng, sameer.abuasal, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70179
* Extends the tblgen macro to allow mlir-tblgen to be installedEric Schweitz2019-11-191-1/+1
| | | | | | | The mlir-tblgen tool was not getting installed. This change allows the MLIR project to be installed along with llvm-tblgen. Differential Revision: https://reviews.llvm.org/D69824
* Fix use of add_llvm_tool in projects that build no targetsKevin Petit2019-11-141-1/+1
| | | | | | | | | | | | | Projects that set LLVM_TARGETS_TO_BUILD to an empty list can't use add_llvm_tool (and probably other macros). Here's the error that this change fixes: list sub-command REMOVE_ITEM requires two or more arguments. https://reviews.llvm.org/D70167 Signed-off-by: Kevin Petit <kevin.petit@arm.com>
* [cmake] Remove confusing condition argument from else() NFCTom Stellard2019-11-131-1/+1
| | | | | | | | | | | | | | | | Summary: This makes it look like an elseif and also the variable referenced in the condition was removed from this function in r366622. Reviewers: dsanders, beanz, smeenai, compnerd, phosek Reviewed By: beanz Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70159
* Don't set LLVM_NO_DEAD_STRIP on AIXDavid Tenty2019-11-131-1/+1
| | | | | | | | | | | | | | | | | Summary: when building plugins, as AIX has symbols in it's standard library that must be garbage collected or we will see link errors. Export lists will handle this instead on AIX. Reviewers: stevewan, sfertile, jasonliu, xingxue, DiggerLin Reviewed By: DiggerLin Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70130
* [cmake] Remove SVN support from VersionFromVCS.cmakeTom Stellard2019-11-081-74/+29
| | | | | | | | | | Reviewers: phosek Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D69682
* [cmake] Enable thin lto cache when building with lld-linkRussell Gallop2019-11-081-0/+3
| | | | | | This was enabled for other platforms. Added option for Windows/lld-link. Differential Revision: https://reviews.llvm.org/D69941
* [NFC] Add SUPPORT_PLUGINS to add_llvm_executable()David Tenty2019-11-061-1/+6
| | | | | | | | | | | | | | | | | | | Summary: this allows us to move logic about when it is appropriate set LLVM_NO_DEAD_STRIP out of each tool and into add_llvm_executable, which will enable future platform specific handling. This is a follow on to the reverted D69356 Reviewers: hubert.reinterpretcast, beanz, lhames Reviewed By: beanz Subscribers: mgorny, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D69638
* Add more binutils tools to LLVM_INSTALL_TOOLCHAIN_ONLY targetSam Clegg2019-11-041-0/+16
| | | | | | | | Also add the aliases for these tools so that LLVM_INSTALL_BINUTILS_SYMLINKS and LLVM_INSTALL_TOOLCHAIN_ONLY can work together. Differential Revision: https://reviews.llvm.org/D69635
* Revert "[NFC] Rename LLVM_NO_DEAD_STRIP"David Tenty2019-10-302-3/+3
| | | | This reverts commit 11c2a85db8849db1a5907e80d9966592248ef825.
* build: remove `LLVM_CXX_STD` extension pointSaleem Abdulrasool2019-10-251-28/+0
| | | | | | This extension point is not needed. Provide the equivalent option through `CMAKE_CXX_STANDARD` which mirrors the previous extension point. Rely on CMake to provide the check for the compiler instead.
* [NFC] Rename LLVM_NO_DEAD_STRIPDavid Tenty2019-10-252-3/+3
| | | | | | | | | | | | | | | | | Summary: The variable LLVM_NO_DEAD_STRIP is set in LLVM cmake files when building executables that might make use of plugins .The name of the variable does not convey the actual intended usage (i.e. for use with tools that have plugins), just what the eventual effect of setting in on some (i.e. not garbage collecting unused symbols). This patch renames it to LLVM_SUPPORT_PLUGINS to convey the intended usage, which will allow subsequent patches to add behavior to support that in different ways without confusion about whether it will do on, for example, non-gnu platforms. Reviewers: hubert.reinterpretcast, stevewan Reviewed By: stevewan Subscribers: cfe-commits, mgorny, llvm-commits Tags: #llvm, #clang Differential Revision: https://reviews.llvm.org/D69356
* [cmake] Pass external project source directories to sub-configuresShoaib Meenai2019-10-171-0/+9
| | | | | | | | | | We're passing LLVM_EXTERNAL_PROJECTS to cross-compilation configures, so we also need to pass the source directories of those projects, otherwise configuration can fail from not finding them. Differential Revision: https://reviews.llvm.org/D69076 llvm-svn: 375157
* [llvm] [ocaml] Support linking against dylibMichal Gorny2019-10-111-14/+18
| | | | | | | | | Support linking OCaml modules against LLVM dylib when requested, rather than against static libs that might not be installed at all. Differential Revision: https://reviews.llvm.org/D68452 llvm-svn: 374556
* Reland r349624: Let TableGen write output only if it changed, instead of ↵Nico Weber2019-10-031-16/+14
| | | | | | | | | | | doing so in cmake Move the write-if-changed logic behind a flag and don't pass it with the MSVC generator. msbuild doesn't have a restat optimization, so not doing write-if-change there doesn't have a cost, and it should fix whatever causes PR43385. llvm-svn: 373664
* [llvm] [cmake] Add install targets for missing distribution componentsMichal Gorny2019-10-022-0/+17
| | | | | | | | | | Add install targets as necessary to include all files normally installed in LLVM_DISTRIBUTION_COMPONENTS. This includes targets for Sphinx docs, opt-viewer Python modules and TableGens. Differential Revision: https://reviews.llvm.org/D68339 llvm-svn: 373482
* Revert rL349624 : Let TableGen write output only if it changed, instead of ↵Simon Pilgrim2019-10-011-4/+16
| | | | | | | | | | doing so in cmake, attempt 2 Differential Revision: https://reviews.llvm.org/D55842 ----------------- As discussed on PR43385 this is causing Visual Studio msbuilds to perpetually rebuild all tablegen generated files llvm-svn: 373338
* build: serialise `LLVM_ENABLE_UNWIND_TABLES` into LLVMConfigSaleem Abdulrasool2019-09-301-0/+2
| | | | | | | | | Serialize the value of the configuration option into the configuration so that builds which integrate LLVM can identify the value of the flag that was used to build the libraries. This is intended to be used by Swift to control tests which rely on the unwind information. llvm-svn: 373253
* Use double quotes for LDFLAGS in -DLLVM_BUILD_INSTRUMENTED_COVERAGEJustin Bogner2019-09-241-1/+1
| | | | | | | | Mimics the changes in r372209 to handle the change of quotes in r372226. Probably isn't sufficient for windows, but unbreaks the cmake flag at least. llvm-svn: 372791
* [llvm] [cmake] Add possibility to use ChooseMSVCCRT.cmake when include LLVM ↵Simon Pilgrim2019-09-231-0/+5
| | | | | | | | | | | | library Modify LLVMConfig to produce LLVM_USE_CRT variables in build-directory. It helps to set the same compiler debug options like in builded library. Committed on behalf of @igorban (Igor) Differential Revision: https://reviews.llvm.org/D67175 llvm-svn: 372610
* [cmake] Changes to get Windows self-host working with PGORussell Gallop2019-09-181-17/+33
| | | | | | | | | | | | | Fixes quoting of profile arguments to work on Windows Suppresses adding profile arguments to linker flags when using lld-link Avoids -fprofile-instr-use being added to rc.exe flags Removes duplicated adding of -fprofile-instr-use to linker flags (since r355541) Move handling LLVM_PROFDATA_FILE to HandleLLVMOptions.cmake Differential Revision: https://reviews.llvm.org/D62063 llvm-svn: 372209
* [CMake] Don't pass all LLVM_COMPILE_FLAGS to the C compilerDavid Zarzycki2019-09-101-1/+8
| | | | | | | | GCC (unlike clang!) warns about C++ flags when compiling C. https://reviews.llvm.org/D67171 llvm-svn: 371521
* [CMake] LLVM_COMPILE_FLAGS also applies to C filesDavid Zarzycki2019-09-061-1/+1
| | | | | | | | | LLVM_COMPILE_FLAGS also applies to C files, otherwise tuning flags, etc. won't be picked up. https://reviews.llvm.org/D67171 llvm-svn: 371173
* [cmake] Remove MSVC C4180 overrideSimon Pilgrim2019-09-041-1/+0
| | | | | | | | Tested on VS2017 and VS2019 llvm/clang builds with WX enabled - its no longer necessary to disable this warning. Differential Revision: https://reviews.llvm.org/D67103 llvm-svn: 370871
* [cmake] Remove MSVC C4258 overrideSimon Pilgrim2019-09-041-1/+0
| | | | | | | | Tested on VS2017 and VS2019 llvm/clang builds with WX enabled - its no longer necessary to disable this warning. Differential Revision: https://reviews.llvm.org/D67047 llvm-svn: 370866
* [cmake] Improve comment describing the C4245 warning. NFCI.Simon Pilgrim2019-09-031-1/+1
| | | | llvm-svn: 370772
* [lit] Only set DYLD_LIBRARY_PATH for shared buildsJonas Devlieghere2019-08-301-0/+1
| | | | | | | | | | | | In r370135 I committed a temporary workaround for the sanitized bot to not set (DY)LD_LIBRARY_PATH when (DY)LD_INSERT_LIBRARIES was set. Setting (DY)LD_LIBRARY_PATH is only necessary for (standalone) shared-library builds, so a better solution is to only set the environment variable when necessary. Differential revision: https://reviews.llvm.org/D67012 llvm-svn: 370549
* [CMake] Update C4324 MSVC warning comment to explain its still broken at VS2019Simon Pilgrim2019-08-201-3/+1
| | | | | | As promised, I've updated the comment for the C4324 MSVC warning that was re-disabled at rL367409 / rG8f823e63e3edf87ab029ba32b68f3eb5d2f392b5 to put it in terms of currently supported VS versions llvm-svn: 369368
* [cmake] Move blocks out of redundant else( MSVC ); NFCHubert Tong2019-08-181-61/+60
| | | | | | | | Address post-commit comment on D66256 regarding the `else( MSVC )` block containing only blocks guarded with `LLVM_COMPILER_IS_GCC_COMPATIBLE`, which would imply `NOT MSVC`. llvm-svn: 369221
* [AIX] For XL, pick GCC-compatible std & default warning optionsHubert Tong2019-08-151-18/+31
| | | | | | | | | | | | | | | | | | | | Summary: LLVM now requires C++14. For IBM XL compilers with C++14 support, this can be done with the GCC-style options. The relevant block in the CMake file is split up into smaller parts as part of this patch to allow the common cases to be shared. Reviewers: jfb, jasonliu, daltenty, xingxue Reviewed By: jfb, xingxue Subscribers: mstorsjo, mgorny, dexonsmith, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D66256 llvm-svn: 369058
* [cmake] install_symlink should obey DESTDIR unconditionallyJustin Bogner2019-08-151-1/+1
| | | | | | | Setting DESTDIR was erroneously buried under a condition here - if it's set it should always be used. llvm-svn: 369011
* Add support in CMake to statically link the C++ standard library.Erich Keane2019-08-141-0/+20
| | | | | | | | | | | | | | | It is sometimes useful to have the C++ standard library linked into the assembly when compiling clang, particularly when distributing a compiler onto systems that don't have a copy of stdlibc++ or libc++ installed. This functionality should work with either GCC or Clang as the host compiler, though statically linking libc++ (as may be required for licensing purposes) is only possible if the host compiler is Clang with a copy of libc++ available. Differential Revision: https://reviews.llvm.org/D65603 llvm-svn: 368907
OpenPOWER on IntegriCloud