Ensure that we link `swift_CompilerPluginSupport` into the compiler and
SourceKit, and set the rpath appropriately to find the library in its
installed location.
A number of driver tests copy the driver executable into a temporary
directory to isolate it from the build tree. Also copy the plugin
support library into its appropriate place near the driver executable
to ensure these tests keep working. To help with this, add a
`swift_swift_parser` lit feature, which we can use in tests that
involve the new parser's capabilities.
Adding build modes for libswift: off, hosttools, bootstrapping, bootstrapping-with-hostlibs
The two bootstrapping modes are new. For details see libswift/README.md
LLDB will automatically pick the host OS if no target is passed; a
later commit will teach immediate mode to do the same thing. For now,
they default to the same triple the Driver did in the past, which is
x86_64-apple-macosx10.9 on macOS and an arbitrary unversioned triple
compatible with the host elsewhere.
Part of rdar://problem/29433205.
Several of the swift repl tests assume that lldb does not exist next to the swift driver in the binary directory. This patch updates the tests to remove that assumption. This allows the swift tests to correctly pass if LLDB is built in-tree.
These tests are all checking for invocations of the legacy swift repl. If LLDB is in the directory next to swift they fail because it instead invokes the LLDB repl. This patch makes the tests pass by hard linking the swift driver into a temp directory before running those tests so that swift doesn't find LLDB sitting next to itself.