summaryrefslogtreecommitdiffstats
path: root/llvm/utils/gn
Commit message (Collapse)AuthorAgeFilesLines
...
* gn build: Merge r353072Nico Weber2019-02-051-0/+1
| | | | llvm-svn: 353175
* gn build: Fix Python 3 write_vcsrevision script compatibilitySerge Guelton2019-02-051-1/+1
| | | | | | | | | | Trivial fix: decode was not called for all subprocess.check_output calls. Commited on behalf of Andrew Boyarshin Differential Revision: https://reviews.llvm.org/D57505 llvm-svn: 353168
* gn build: Upgrade to NDK r19.Peter Collingbourne2019-02-055-27/+7
| | | | | | | | | | NDK r19 includes a sysroot that can be used directly by the compiler without creating a standalone toolchain, so we just need a handful of flags to point Clang there. Differential Revision: https://reviews.llvm.org/D57733 llvm-svn: 353139
* gn build: Windows: use a more standard format for PDB filenamesDavid Major2019-02-041-7/+13
| | | | | | | | The current build was producing names like llvm-undname.exe.pdb, which looks unusual to me at least. This switches them to the more common llvm-undname.pdb style. Differential Revision: https://reviews.llvm.org/D57613 llvm-svn: 353099
* gn build: Revert r353094 (bad merge)David Major2019-02-041-14/+8
| | | | llvm-svn: 353098
* gn build: Windows: use a more standard format for PDB filenamesDavid Major2019-02-041-8/+14
| | | | | | | | The current build was producing names like llvm-undname.exe.pdb, which looks unusual to me at least. This switches them to the more common llvm-undname.pdb style. Differential Revision: https://reviews.llvm.org/D57613 llvm-svn: 353094
* gn build: Windows: write PDBs when is_debugDavid Major2019-02-041-2/+6
| | | | | | | | | | Without /DEBUG, the /Zi doesn't on its own create PDB files. And since ninja runs multiple compilations in parallel, we need /FS to prevent contention on PDBs. Differential Revision: https://reviews.llvm.org/D57612 llvm-svn: 353093
* gn build: Merge r352944Nico Weber2019-02-041-0/+3
| | | | llvm-svn: 353063
* gn build: Create regular archives for the sanitizer runtimes.Peter Collingbourne2019-02-014-3/+18
| | | | | | | | | | We'll need to do this eventually if we create an installable package. For now, this lets me use the archives to build Android, whose build system wants to copy the archives to another location. Differential Revision: https://reviews.llvm.org/D57607 llvm-svn: 352907
* gn build: Add a missing dependency from llvm/test to llvm-litNico Weber2019-02-011-0/+1
| | | | | | | | check-llvm already listed llvm-lit as script which counts as a dep, so running check-llvm worked fine, but `ninja -C out/gn llvm/test` didn't build llvm-lit before if it wasn't already there. llvm-svn: 352893
* gn build: Merge r352483Nico Weber2019-01-311-0/+7
| | | | llvm-svn: 352759
* gn build: Merge r352681, r352739Nico Weber2019-01-312-1/+1
| | | | llvm-svn: 352758
* Reland "gn build: Add BPF target."Peter Collingbourne2019-01-317-0/+241
| | | | | | Differential Revision: https://reviews.llvm.org/D57436 llvm-svn: 352705
* gn build: Set executable bit on get.pyNico Weber2019-01-301-0/+0
| | | | llvm-svn: 352659
* Revert "gn build: Add BPF target."Yonghong Song2019-01-307-241/+0
| | | | | | | | | This reverts commit r352638. The change in this patch is not trivial and it is merged without component owner approval. llvm-svn: 352649
* gn build: Add BPF target.Peter Collingbourne2019-01-307-0/+241
| | | | | | Differential Revision: https://reviews.llvm.org/D57436 llvm-svn: 352638
* gn build: Merge r352444, r352431, r352430Nico Weber2019-01-293-0/+3
| | | | llvm-svn: 352502
* gn build: Add get.py script to download prebuilt gn, make gn.py run ↵Nico Weber2019-01-284-3/+99
| | | | | | | | | | | downloaded gn if gn is not on PATH Prebuilts are available for x86_64 Linux, macOS, Windows. The script always pulls the latest GN version. Differential Revision: https://reviews.llvm.org/D57256 llvm-svn: 352420
* gn build: Make cmake sync script work on Windows if git is a bat fileNico Weber2019-01-281-2/+3
| | | | | | Differential Revision: https://reviews.llvm.org/D57338 llvm-svn: 352419
* gn build: Fix `lld-link: unknown flag: -fuse-ld=lld` warnings on WindowsNico Weber2019-01-282-2/+5
| | | | | | | | | | Fixes a minor regression from r351248. While here, also make it possible to opt out of lld by saying use_lld=false when clang_base_path is set. (use_lld still defaults to true if clang_base_path is set.) llvm-svn: 352415
* gn build: Merge r352149Nico Weber2019-01-253-2/+1
| | | | llvm-svn: 352202
* gn build: Revert r352200, commit message was wrongNico Weber2019-01-253-1/+2
| | | | llvm-svn: 352201
* gn build: Merge r352148Nico Weber2019-01-253-2/+1
| | | | llvm-svn: 352200
* gn build: Set is_clang to true in stage2 toolchains.Peter Collingbourne2019-01-251-0/+2
| | | | | | Differential Revision: https://reviews.llvm.org/D57202 llvm-svn: 352146
* gn build: Build clang with -fno-strict-aliasing, make building with gcc much ↵Nico Weber2019-01-251-5/+23
| | | | | | | | | | | | | quieter - gcc doesn't understand -Wstring-conversion, so pass that only to clang - disable a few gcc warnings that are noisy and also disabled in the cmake build - -Wstrict-aliasing pointed out that the cmake build builds clang with -fno-strict-aliasing, so do that too Differential Revision: https://reviews.llvm.org/D57191 llvm-svn: 352141
* gn build: Merge r351990Nico Weber2019-01-242-0/+2
| | | | llvm-svn: 352096
* gn build: Merge r351320 (the 9.0.0 version bump)Nico Weber2019-01-241-1/+1
| | | | llvm-svn: 352002
* gn build: Merge r351820.Peter Collingbourne2019-01-231-0/+1
| | | | llvm-svn: 351919
* gn build: Merge r351880Nico Weber2019-01-231-0/+1
| | | | llvm-svn: 351918
* gn build: Stop passing -DLLVM_LIBXML2_ENABLED to some targetsNico Weber2019-01-211-1/+0
| | | | | | | | | | | | | | | | This is a remnant from before the gn build had a working config.h. Defining LLVM_LIBXML2_ENABLED only for targets that depend on build/libs/xml is nice in that only some of the codebase needs to be rebuilt when llvm_enable_libxml2 changes -- but config.h already defines it and defining it there and then redundantly a second time for some targets is worse than having it just in config.h. No behavior change. Differential Revision: https://reviews.llvm.org/D56908 llvm-svn: 351758
* gn build: Merge r351627, r351548, r351701Nico Weber2019-01-213-0/+3
| | | | llvm-svn: 351757
* Use llvm_canonicalize_cmake_booleans for LLVM_LIBXML2_ENABLED [llvm]Nico Weber2019-01-193-4/+2
| | | | | | | | | | | | | | | r291284 added a nice mechanism to consistently pass CMake on/off toggles to lit. This change uses it for LLVM_LIBXML2_ENABLED too (which was added around the same time and doesn't use the new system yet). Also alphabetically sort the list passed to llvm_canonicalize_cmake_booleans() in llvm/test/CMakeLists.txt. No intended behavior change. Differential Revision: https://reviews.llvm.org/D56912 llvm-svn: 351615
* gn build: unbreak mac (and maybe win) after r351258, r351277Nico Weber2019-01-182-3/+9
| | | | | | | | | | | | | The check-hwasan build files assert that current_os == "linux" || current_os == "android", so pull it in only there. ar is unused on mac, so don't set it in the stage2 toolchain. (It'd be nicer to use llvm-libtool on mac instead of host libtool, but llvm-libtool doesn't seem to understand the -no_warning_for_no_symbols flag.) Differential Revision: https://reviews.llvm.org/D56898 llvm-svn: 351519
* gn build: Merge r351499Nico Weber2019-01-181-0/+1
| | | | llvm-svn: 351516
* mac: Correctly disable tools/lto tests when building with LLVM_ENABLE_PIC=OFFNico Weber2019-01-181-1/+0
| | | | | | | | | | | | | | | | llvm/tools sets LLVM_TOOL_LTO_BUILD to Off if LLVM_ENABLE_PIC=OFF, but that's not visible in llvm/test. r289662 added the llvm_tool_lto_build lit parameter, there the intent was to use it with an explicit -DLLVM_TOOL_LTO_BUILD=OFF, which is visible globally. On the review for that (D27739), a mild preference was expressed for using a lit parameter over checking the existence of libLTO.dylib. Since that works with the LLVM_ENABLE_PIC=OFF case too and since it matches what we do for the gold plugin, switch to that approach. Differential Revision: https://reviews.llvm.org/D56805 llvm-svn: 351515
* llvm build: Merge r351448Nico Weber2019-01-172-0/+2
| | | | llvm-svn: 351469
* gn build: Add headers to compiler-rt build files.Peter Collingbourne2019-01-165-1/+104
| | | | | | Also fix sort order in llvm/lib/CodeGen/GlobalISel/BUILD.gn. llvm-svn: 351367
* gn build: Merge r351283.Peter Collingbourne2019-01-162-0/+3
| | | | llvm-svn: 351293
* gn build: Add check-hwasan target.Peter Collingbourne2019-01-166-14/+231
| | | | | | | | | | | | | | | | | | | | The Android sanitizer tests are currently some of the most difficult to run correctly, requiring at least 3 build directories which have to be configured in just the right way and built in the correct order (see e.g. [1] and the functions that it calls). This patch adds a check-hwasan target which greatly simplifies running the hwasan tests for gn users, taking advantage of its support for multiple toolchains. With this the tests can be run simply by setting an NDK path and running "ninja check-hwasan" with a compatible Android device connected. The Linux/x86_64 and Android/aarch64 targets are tested in parallel. [1] https://github.com/llvm/llvm-zorg/blob/master/zorg/buildbot/builders/sanitizers/buildbot_android.sh Differential Revision: https://reviews.llvm.org/D56713 llvm-svn: 351277
* gn build: Add a stage2 host toolchain and make the hwasan runtime buildable ↵Peter Collingbourne2019-01-155-20/+65
| | | | | | | | on x86_64 Linux. Differential Revision: https://reviews.llvm.org/D56711 llvm-svn: 351258
* gn build: Add a resource_dir.gni file.Peter Collingbourne2019-01-153-7/+8
| | | | | | | | | | | The path to the resource directory will end up being used in several more places once the support for running check-hwasan lands. This moves the definition to a central location so that it can be used from those places. Differential Revision: https://reviews.llvm.org/D56700 llvm-svn: 351255
* gn build: Move target flags from toolchain to a .gni file.Peter Collingbourne2019-01-154-29/+54
| | | | | | | | | While here, add a use_lld flag and default it to true when using clang on non-mac. Differential Revision: https://reviews.llvm.org/D56710 llvm-svn: 351248
* gn build: Add build files for ↵Peter Collingbourne2019-01-156-1/+235
| | | | | | | | | | compiler-rt/lib/{hwasan,interception,sanitizer_common,ubsan}. This allows the hwasan runtime to be built for Android aarch64. Differential Revision: https://reviews.llvm.org/D56628 llvm-svn: 351246
* gn build: Merge r351216, r351228.Peter Collingbourne2019-01-152-0/+2
| | | | llvm-svn: 351242
* [Nios2] Remove Nios2 backendCraig Topper2019-01-151-1/+0
| | | | | | | | As mentioned here http://lists.llvm.org/pipermail/llvm-dev/2019-January/129121.html This backend is incomplete and has not been maintained in several months. Differential Revision: https://reviews.llvm.org/D56691 llvm-svn: 351231
* gn build: Don't assume valgrind.h exists on LinuxHans Wennborg2019-01-151-6/+1
| | | | | | | | It didn't on my machine, so defaulting it to off seems better. Differential revision: https://reviews.llvm.org/D56727 llvm-svn: 351202
* gn build: Rename llvm_host_triple to llvm_current_triple and have it use ↵Peter Collingbourne2019-01-156-13/+29
| | | | | | | | | | | | | | | | | | current_{cpu,os}. This makes e.g. ToolChain::isCrossCompiling() in clang/lib/Driver/ToolChain.cpp return the correct result if the compiler was cross-compiled. This change also affects llvm_default_target_triple, so cross-compiled compilers default to targeting the cross-compilation target, which makes more sense than the host that the compiler was compiled on. This change will also be necessary in order for the correct triples to appear in generated lit files for non-native targets. Differential Revision: https://reviews.llvm.org/D56696 llvm-svn: 351168
* gn build: Make a couple of improvements to the unix toolchain.Peter Collingbourne2019-01-151-2/+12
| | | | | | | | | | Add an asm tool (will be required for building sanitizer_common on x64) and set a soname for DSOs so that anything that links against them gets the correct DT_NEEDED. Differential Revision: https://reviews.llvm.org/D56705 llvm-svn: 351167
* gn build: Switch to using current_os in lib/Support/BUILD.gn.Peter Collingbourne2019-01-151-1/+1
| | | | | | Differential Revision: https://reviews.llvm.org/D56704 llvm-svn: 351166
* gn build: Split no-RTTI flag into a config.Peter Collingbourne2019-01-152-5/+10
| | | | | | | | | Some of the sanitizer runtime code needs to be built with RTTI; this allows that code to opt in to RTTI. Differential Revision: https://reviews.llvm.org/D56627 llvm-svn: 351155
OpenPOWER on IntegriCloud