Commit Graph

744 Commits

Author SHA1 Message Date
Adrian Prantl
9b6ff03f9e On Linux build LLVM and subprojects with -gsplit-dwarf which is more space/time
efficient than -g on that platform. This improves time spent to link products
built with debug info quite a bit.
2019-09-27 13:41:02 -07:00
Adrian Prantl
85ccfe103d build-script: Throttle the number of parallel tests run acording to -j.
This patch propagates the number of parallel jobs from build-script to
llvm-lit. Due to the way how build-script-impl is implemented, changing this
number needs a reconfigure for the Swift tests and can be done on the fly for
LLDB tests, since build-script-impl directly invokes llvm-lit in the latter
case.

rdar://problem/52062631
2019-06-26 15:18:05 -07:00
Jordan Rose
b951eedbd3 [build-script] Fix e11e127db4 to handle Xcode-based builds (#25769)
Xcode puts the bin/ and lib/ directories in a subdirectory based on
configuration; account for this when copying over compiler-rt for
non-host Apple platforms using one of the existing helpers in
build-script-impl.
2019-06-25 19:14:07 -07:00
Alex Lorenz
1cf12f93d9 Do not copy the compiler-rt builtins if the destination directory doesn't exist
rdar://51963563
2019-06-20 15:58:03 -07:00
Alex Lorenz
d66caf0c10 build-script-impl: do not copy the darwin compiler-rt builtin archives when using --build-llvm 0 2019-06-19 16:47:15 -07:00
Alex Lorenz
e11e127db4 [darwin][build] Copy the libclang_rt.{ios/tvos/watchos}.a from toolchain to the build dir so that swift-clang can use them when building for ios/tvos/watchos 2019-06-18 13:49:14 -07:00
Julian Lettner
1f08ed458f Wire libdispatch build path through CMake
Wire libdispatch build path through CMake `build-script-impl ->
lit.site.cfg.in -> lit.cfg` instead of computing it in lit.cfg.
2019-06-10 14:28:01 -07:00
swift-ci
65bb06c067 Merge pull request #25287 from akyrtzi/build-script-cmake-file-api 2019-06-06 13:00:46 -07:00
Argyrios Kyrtzidis
b8dec80f95 [build-script-impl] Use cmake-file-api in case the CMake used supports it 2019-06-06 10:03:03 -07:00
Joe Groff
14f9dc6e15 Do not try to dsymutil .a files, which is unsupported 2019-06-03 20:18:53 -07:00
Arnold Schwaighofer
b33b40b587 Another fix 2019-05-31 11:28:13 -07:00
Arnold Schwaighofer
959a6acc28 Fix build-script's handling of --test-optimize-none-with-implicit-dynamic 2019-05-31 11:22:09 -07:00
swift-ci
a21cc813b1 Merge pull request #25085 from spevans/pr_sr_7039 2019-05-30 01:58:05 -07:00
Ross Bayer
490488851b Merge pull request #25125 from gottesmm/pr-48e197f1a90eee298906aab36af439cbbbbd5ad2
[build-script-impl] When skipping building LLVM in toolchain only mod…
2019-05-29 16:01:37 -07:00
Michael Gottesman
ec1ab21325 [build-script-impl] When skipping building LLVM in toolchain only mode, do not include FileCheck and not.
The reason why is that we will not generate targets for them causing the build
to fail.
2019-05-29 14:25:11 -07:00
Michael Gottesman
a870baaeed Merge pull request #25083 from gottesmm/pr-0c1aafb289fc4b6cb18d300b49e910c67d72caa8
[build-script] Add an option to only run executable tests. Off by def…
2019-05-28 17:06:54 -07:00
Simon Evans
976c1f9de9 SR-7039: Build and install libdispatch static libraries 2019-05-28 15:42:07 +01:00
Michael Gottesman
4b7a4f5b4e [build-script-impl] When building parts of Swift without LLVM, always at least build FileCheck/not from LLVM.
These are common utilities used when testing with lit, so it makes sense to
always include them so in these cases we can use them for testing purposes.
2019-05-27 13:52:05 -07:00
Michael Gottesman
e8807296ae [build-script] Add an option to only run executable tests. Off by default. 2019-05-27 13:51:13 -07:00
Julian Lettner
9631700d9e [build][Linux] Create preset to run LLVM's TSan libdispatch tests
Build a separate compiler-rt instance for running the tests. It is built
and tested against an installed toolchain instead of the llvm-build-dir.

Install everything we need to run tests (CMake modules, FileCheck, etc.)
into the toolchain directory.

Add synthetic target 'all' for llvm-install-components. Also we must set
LLVM_INSTALL_UTILS=ON, so the utilities required by tests (e.g.,
FileCheck) are included in the install target.
2019-05-16 13:17:30 -07:00
Davidino Italiano
ebb197930c [build-script] Use a regex to match all the swift tests. 2019-04-26 10:37:42 -07:00
Davidino Italiano
d6d918983c [lldb] Switch PR testing and build to use CMake by default. 2019-04-25 14:12:36 -07:00
Davidino Italiano
96abd3dcff [build-script] Use --filter to implement --lldb-test-only-swift.
<rdar://problem/50211354>
2019-04-25 14:10:45 -07:00
Davide Italiano
12a472c656 Revert "[lldb] Switch PR testing and build to use CMake by default."
This reverts commit 5dec537173.
2019-04-24 11:30:21 -07:00
Davide Italiano
c38894612c Merge pull request #23908 from dcci/lldb-me
[lldb] Switch PR testing and build to use CMake by default.
2019-04-23 17:08:00 -07:00
Adrian Prantl
013b9bcf31 [build-script] Pass the just-built dsymutil to dotest.py 2019-04-23 13:23:28 -07:00
Fred Riss
98daff3cbf [build-script] Pass llvm_build_dir to the LLDB build 2019-04-15 13:42:58 -07:00
Saleem Abdulrasool
77a79f236b Merge pull request #23967 from compnerd/cleanup-corefoundation-paths
build: remove unnecessary CoreFoundation path passing
2019-04-12 07:47:14 -07:00
Saleem Abdulrasool
8e365b5bfb build: remove unnecessary CoreFoundation path passing
Passing these paths around is no longer needed.  Simplify the build
rules.
2019-04-11 13:32:23 -07:00
Adrian Prantl
eba5cf4784 Make LLDB_USE_SYSTEM_DEBUGSERVER also configurable in CMake builds. 2019-04-11 10:07:36 -07:00
Davide Italiano
5dec537173 [lldb] Switch PR testing and build to use CMake by default. 2019-04-10 15:01:07 -07:00
Saleem Abdulrasool
5911a73801 build: do not reset DOTEST_EXTRA
We were clobbering the existing flags when appending breaking the staging route.
2019-04-08 15:13:31 -07:00
Alex Langford
2d1c2be8c1 [build-script] Add to default LLDB CMake variables on MacOS
LLDB's CMake build forces these values when building on MacOS. It seems
saner to me to set them in build-script than to force them in the CMake
configuration.
2019-04-06 17:21:13 -07:00
swift-ci
9a0d6e8aff Merge pull request #23781 from dcci/build-script-new 2019-04-05 17:01:38 -07:00
Davide Italiano
16d04c8838 [build-script] Hoist LLVM_LIT_ARGS computation. 2019-04-05 13:53:17 -07:00
Davide Italiano
06ffc9d03b [build-script] Add --time-test to build-script invocation for lldb tests.
<rdar://problem/48986159>
2019-04-03 16:15:10 -07:00
Saleem Abdulrasool
cc026880f1 build-script: adjust the path for the new layout
Merging the CoreFoundation build into the Foundation build results in
the build tree layout to change.  Adjust the parameters for that to
allow a migration.
2019-04-03 13:23:14 -07:00
Daniel Rodríguez Troitiño
9cec482ef3 [android] Allow executing only Android compiler tests.
The manipulation of host-test and skip-android-host was a little
different than the equivalent skip-ios-host and similar variables. These
changes make them closer and allows executing only the compiler tests,
but skip the test that need an Android device to run.

- Disables the upload command of the tests if the subset is the
  non-executable tests. The non-executable test do not need to be
  uploaded, and in the case of Android, a device doesn't need to be
  connected, so trying to connect to one will fail.
- Fix a problem where the swift_interpreter feature was removed without
  first checking if it was really added.
- Only enable the host tests (the compiler tests) in the Android CI
  preset (there's no device attached to that server, but currently only
  the Linux tests were being executed, which doesn't make a lot of
  sense).
- Move the decision about which platform support device/host tests into
  the platform themselves, which allows Android to have device/host
  tests. Also modify a little bit the logic around enabling/disabling
  the test suite to allow running only the host tests of a platform.
- Fix the suffix name for the target of non-executable tests in a couple
  of places.
2019-03-22 14:43:00 -07:00
Arnold Schwaighofer
a67f3b919d Merge pull request #23452 from aschwaighofer/add_test_optimize_none_implicit_dynamic
Add a test mode to exercise implicit dynamic
2019-03-22 06:24:14 -07:00
Julian Lettner
8ed0ebe5f3 Merge pull request #23455 from apple/build-compile_rt-with-libdispatch-support
Build compiler-rt with TSan interception for libdispatch on non-Apple platforms
2019-03-21 12:11:41 -07:00
Julian Lettner
552ab0c467 Build compile-rt with libdispatch interception to support TSan on Linux
I recently enabled TSan interceptors for libdispatch on non-Apple
platforms in upstream. This is on by default on Apple platforms. Let's
try to switch it on for other platforms too.
2019-03-20 17:39:35 -07:00
Arnold Schwaighofer
54aff1eec4 Add --test-optimize-none-implicit-dynamic to build-script 2019-03-20 14:34:02 -07:00
Daniel Rodríguez Troitiño
bc786c9e73 [build-script] Respect dry-run when building/testing ICU
Some shell commands when building ICU weren't using call which handles
the dry-run parameter, and were trying to execute.

NOTE: there's some invocations to xcrun inside $() which are not using
dry-run, but since those are mostly query commands, and left them alone
(they don't work on Linux, but nobody should use those codepaths in
Linux).
2019-03-19 08:34:09 -07:00
Michael Gottesman
9e7c2e7aa3 [build-script-impl] We do not support building libdispatch on macOS. Error if we are asked to do so. 2019-03-14 16:01:15 -07:00
Daniel Rodríguez Troitiño
29ec87e030 [build-script-impl] Remove three FIXME which removed build products.
Dispatch, Foundation and XCTest build using CMake since a couple of
months ago, so there's no need to remove the partial results before
building anymore. This should make rebuilding a little bit faster.
2019-03-13 10:09:24 -07:00
Saleem Abdulrasool
350cf67788 utils: attempt to replace custom variables
CMake defaults to using a special <package>_DIR for finding packages.
Prefer this to import the CMake package for LLVM/Clang/Swift rather than
custom paths.
2019-02-22 18:47:26 -08:00
Slava Pestov
1d8928425a Revert "utils: attempt to replace custom variables" 2019-02-22 19:21:13 -05:00
Saleem Abdulrasool
46cbfef03a Merge pull request #22258 from compnerd/integrating-variables
utils: attempt to replace custom variables
2019-02-22 13:22:51 -08:00
Jonas Devlieghere
24aa024be9 Rename lldb-test-depends -> lldb-test-deps
This matches the change in upstream LLDB. I've also aligned the
invocations to improve the readability and make it clear that they're
separate commands executed after each other.

(cherry picked from commit 5b1d826e9e)
2019-02-17 10:24:02 -08:00
Saleem Abdulrasool
817597c7f9 utils: attempt to replace custom variables
CMake defaults to using a special <package>_DIR for finding packages.
Prefer this to import the CMake package for LLVM/Clang/Swift rather than
custom paths.
2019-02-14 20:19:08 -08:00