Commit Graph

662 Commits

Author SHA1 Message Date
Xi Ge
ced5044991 build-script: add a flag to separately install SwiftSyntax artifacts.
This flag '--swiftsyntax-install-prefix' could be used in the preset mode
to specify an installation dir. If we are building SwiftSyntax without building
the rest of the compiler, we'll install the SwiftSyntax modules and dylibs
with lib_InternalSwiftSyntaxParser.dylib to the given directory directly, ignoring
the conventional toolchain locations.
2019-01-22 11:59:39 -08:00
Xi Ge
eefa0b1595 build-script: add a flag to build libSwiftSyntaxParser only. 2019-01-17 16:05:46 -08:00
Ben Langmuir
d685728d4a Merge pull request #21886 from benlangmuir/install-components-default
Set a reasonable default for SWIFT_INSTALL_COMPONENTS
2019-01-17 10:12:44 -08:00
adrian-prantl
6914e6e411 Merge pull request #21935 from adrian-prantl/speedup-compat
Add a lit regex filter for the compatibility tests
2019-01-16 16:05:44 -08:00
Ben Langmuir
aac60468a2 Set a reasonable default for SWIFT_INSTALL_COMPONENTS
Previously, build-script-impl would set this to "" by default, resulting
in nothing being installed with --install-swift unless you explicitly
set --swift-install-components as well.  Now we defer to cmake by
default.

On the cmake side, change the default value to exclude
* dev - uses a lot of disk space and usually not something you want to
  install into a toolchain
* clang-resource-dir-symlink & clang-builtin-headers-in-clang-resource-dir -
  these are mutually exclusive with clang-builtin-headers
* sourcekit inproc/xpc - these are currently mutually exclusive, so pick
  the best one for the current platform.
2019-01-16 14:48:02 -08:00
Adrian Prantl
7967ec19b6 Add a lit regex filter for the compatibility tests
This speeds up the invocation since only a single test matches the
category and otherwise non-dotest.py tests would be run twice.
2019-01-16 14:40:53 -08:00
Argyrios Kyrtzidis
7a383f4b1d [build-script-impl] Pass search paths for the syntax parser library to the stress-tester build
Fixes rdar://47265256
2019-01-14 16:52:33 -08:00
Adrian Prantl
622753daa4 Fix more shell syntax errors in the LLDB asan configuration 2019-01-14 09:48:50 -08:00
swift-ci
41ac9ca002 Merge pull request #21806 from adrian-prantl/LLVM_LIT_ARGS 2019-01-11 18:34:57 -08:00
Adrian Prantl
94c2e467fb Simplify build-script: LLVM_LIT_ARGS is already being added to cmake_options. 2019-01-11 15:06:11 -08:00
adrian-prantl
908646f9ca Merge pull request #21801 from adrian-prantl/lit
[build-script] Pass LLVM_LIT_ARGS to llvm-lit
2019-01-11 12:59:50 -08:00
Adrian Prantl
a7f2f1b497 [build-script] Pass LLVM_LIT_ARGS to llvm-lit 2019-01-11 12:07:51 -08:00
Argyrios Kyrtzidis
9c0403761d Merge pull request #21762 from akyrtzi/syntax-parser-clib
Introduce C parser library
2019-01-11 11:19:50 -08:00
Adrian Prantl
59ddf34cee Fix a syntax error in build script 2019-01-11 08:20:31 -08:00
Argyrios Kyrtzidis
70c954e1ea [utils/build-script-impl] Pass header/lib paths to the syntax parser library for the build-script invocation of SwiftSyntax 2019-01-10 18:52:37 -08:00
Adrian Prantl
1db8e37f0d Limit the number of concurrent LLDB tests running in the asan configuration. 2019-01-10 12:38:50 -08:00
Brent Royal-Gordon
9dd5d1293c Rework swift-stress-tester repo building (#21523)
This change makes build-script-impl use a new, shared version of swift-stress-tester’s build-script-helper.py which also supports building swift-evolve. It also adds the necessary flags and variables to build swift-evolve from build-script.
2019-01-09 14:03:35 -08:00
Mishal Shah
ba2233d248 Update the toolchain plist by moving SWIFT_USE_DEVELOPMENT_TOOLCHAIN_RUNTIME into OverrideBuildSettings 2018-12-18 18:14:52 -08:00
Saleem Abdulrasool
69e2018806 build-script: build static version of Foundation
Build and install Foundation static.  We now build Foundation using
CMake, which does not easily generate static and shared versions of
libraries.  Create two builds to populate the toolchain
distribution.
2018-11-28 10:12:19 -08:00
Saleem Abdulrasool
81321b57a4 build-script: build static version of libdispatch
build and install libdispatch static.  We now build libdispatch using
CMake, which does not easily generate static and shared versions of
libraries.  Create two builds to populate the toolchain distribution.
2018-11-27 11:51:26 -08:00
swift-ci
ac8b89abb5 Merge pull request #20082 from drodriguez/android-aarch64-build-script 2018-11-26 19:34:24 -08:00
Mishal Shah
e7481cc0cd Update the plist to use DefaultBuildSettings not OverrideBuildSettings for SWIFT_USE_DEVELOPMENT_TOOLCHAIN_RUNTIME 2018-11-14 13:44:46 -08:00
Mishal Shah
cfd3c52b6f Update the plist information for swift toolchains
rdar://45197621
2018-11-14 12:43:48 -08:00
Mishal Shah
bae265e308 Revert "Revert "[build-script] Update build-script to support building and installing the SourceKit stress tester"" 2018-11-12 11:08:36 -08:00
Mishal Shah
e7d501c2bd Revert "[build-script] Update build-script to support building and installing the SourceKit stress tester" 2018-11-11 17:49:35 -08:00
Nathan Hawes
506307c626 [build-script] Update build-script with a new --skstresstester flag to support building and installing the SourceKit stress tester
This makes use of a helper script in the stress tester repo to do the actual
build and install: https://github.com/apple/swift-stress-tester/blob/master/SourceKitStressTester/Utilities/build-script-helper.py
2018-11-07 09:14:39 -08:00
Saleem Abdulrasool
14dbc9ae14 Merge pull request #20329 from compnerd/frameworks
build: pass the framework path to the importer
2018-11-06 00:11:20 -08:00
swift-ci
2c9616f9c0 Merge pull request #20330 from nkcsgexi/install-swiftsyntax 2018-11-05 21:56:42 -08:00
Saleem Abdulrasool
a94f317857 build: adjust rpath, don't pass -F to the link
Pass the framework only to the importer as `-F` on ELF is used for the
`DT_FILTER`.  Adjust the `DT_RUNPATH` so that the dependent libraries are found.
2018-11-05 14:25:12 -08:00
Xi Ge
d471a5905a build-script: teach the script to optionally install swiftsyntax. 2018-11-05 12:32:02 -08:00
Simon Evans
8609c1e41a cmake: Enable CTEST_OUTPUT_ON_FAILURE to show corelibs-foundation test failure 2018-11-04 17:12:54 +00:00
Simon Evans
6188980324 SR-8876: Update for CMake build for Foundation
- Copy ICU licence into final install.
2018-11-02 17:37:12 +00:00
Simon Evans
3b2ebeecf4 SR-8876: Always build libicu on Linux
- Uses version 61.1 from ICU Github unicode-org/icu repository.

- Updates mixin_linux_installation to add libicu option.

- Use -j when building libicu.

- When buiding ICU, use --with-library-suffix=swift
  This suffixes the ICU symbols with _swift.

  The libaries are now named libicuucswift, libicui18nswift
  and libicudataswift.

- Add the contents of uconfig.h.prepend into uconfig.h. This avoids
  passing the renaming CFLAGS to swift and swift-corelibs-foundation.

Also resolves:

SR-5618: libicu compilation should happen in parallel respecting -j.
2018-11-02 17:37:12 +00:00
Saleem Abdulrasool
679fc7d792 Merge pull request #20032 from compnerd/cmake-foundation
build: switch swift-corelibs-foundation to CMake
2018-11-01 20:10:27 -07:00
Xi Ge
f5dca09a66 build-script: infer swiftpm executables if swiftpm isn't built. 2018-11-01 15:26:26 -07:00
Saleem Abdulrasool
58a4f0deaf build: switch swift-corelibs-foundation to CMake
swift-corelibs-foundation has had a CMake based build system for a while
now.  Switch the official builds over to it.
2018-10-31 13:58:08 -07:00
Adrian Prantl
023ac85383 Enable verbose logging for LLDB tests when building with Xcode 2018-10-26 16:48:55 -07:00
Daniel Rodríguez Troitiño
555e085d78 [build-script] Support for Android aarch64
Support for Android aarch64 in many parts of the build-script. Most of
the changes are reuse variables/parameters that already existed for
Android ARMv7. There is also a new parameter to specify the ICU
data library, which is used by #19503.

With this one can build either armv7 or aarch64, since building both
at the same time requires more changes like #19432 (and probably
more work to support two set of paths).
2018-10-26 12:24:40 -07:00
Ross Bayer
c3a9498f03 Removed the use of bash subshells to execute the test commands per project in build-script-impl. The original reasoning seems to have been to disable Ninja's output buffering which was causing the lit progress bar to behave oddly, however local (parallel) testing does not show any peculiarities now. (#20025) 2018-10-25 15:00:36 -07:00
Saleem Abdulrasool
9c92317ce6 build: do not consult the legacy location for libraries
Update the commands to use the CMake based output directory locations instead of
the legacy staging location.  This will allow us to stop copying the files for
compatibility.
2018-10-23 14:12:34 -07:00
mishal_shah
b44feabefc Codesign dylibs after stripping the debug symbols 2018-10-18 16:28:13 -07:00
Saleem Abdulrasool
b99a0f4af5 build: use the exported config for libdispatch
Pass along the configuration through the exported target for the standard
library.  Still pass the compiler by hand to allow building libdispatch against
just a build of the standard library.
2018-10-11 12:37:26 -07:00
Adam Thayer
965f6190f3 [i686 Linux] Bootstrap the build
Prior to this, the swift build didn’t understand what i686 is, or what to do about building it. This unblocks building, but will still run into build breaks.
2018-09-28 10:14:44 -07:00
Saleem Abdulrasool
ab56873dd5 build-script: always rebuild XCTest on non-Darwin
This should resolve SR-8826!  Ideally, we would be using CMake to tie together
all the dependent packages and get proper dependency tracking.  Currently,
change to the swift runtime do not get tracked properly, and can result in
undefined references to symbols.
2018-09-24 15:03:43 -07:00
Saleem Abdulrasool
bcbe16057f build: update the build-script-impl to limit android to ARM
Update the build-script-impl to only build the armv7 variant by default.  This
should prevent the community buildbots from failing which may not have the arm64
ICU available.
2018-09-24 10:00:27 -07:00
Saleem Abdulrasool
30a4853177 build: remove SWIFT_ANDROID_SDK_PATH
The path to the SDK can be computed from the NDK.  Do so to reduce the
parameters needed to pass to CMake.  More importantly, this will allow building
with multiple architectures simultaneously.
2018-09-24 09:54:45 -07:00
Saleem Abdulrasool
f8d27456ec Merge pull request #17180 from compnerd/xctest-cmake
build: switch to CMake for XCTest
2018-09-21 10:01:50 -07:00
Adrian Prantl
398856557e build-script: Add -t (tracing) to the dotest args. 2018-09-20 17:35:52 -07:00
Vedant Kumar
1cf16ab1f1 [build-script] Teach the lldb-xcode build how to find FileCheck (#19400) 2018-09-20 11:59:32 -07:00
mishal_shah
e14757e91e Update xcodebuild command for playground to use 'call' to support --dry-run in build-script 2018-09-19 15:30:55 -07:00