Commit Graph

1156 Commits

Author SHA1 Message Date
Saleem Abdulrasool
9c3ec0eae4 build: remove NOSWIFTRT from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
e7889f178a build: remove TARGET_LIBRARY from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
1503cde071 build: remove IS_STDLIB from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
fe1cd23cb3 build: remove IS_STDLIB_CORE from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
2a10a9f938 build: remove IS_SDK_OVERLAY from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
c28e3fab94 build: remove DEPLOYMENT_VERSION_MACCATALYST from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
b6ac8ec7c4 build: remove MACCATALYST_BUILD_FLAVOR from _add_swift_host_library_single 2020-02-16 13:53:37 -08:00
Saleem Abdulrasool
42b3017224 build: duplicate _add_swift_library_single
This duplicates and renames the function `_add_swift_library_single`
into `_add_swift_host_library_single` and
`_add_swift_target_library_single`.  This will allow for splitting up of
the two paths from the functions.
2020-02-14 08:25:17 -08:00
Saleem Abdulrasool
e5a1d69c69 Merge pull request #29824 from compnerd/planned-obsolecense
build: obsolete options which have long been deprecated
2020-02-14 08:16:50 -08:00
Daniel Rodríguez Troitiño
59bf0862df [windows] Move ENABLE_EXTENDED_ALIGN_STORAGE into AddSwiftUnittest
It will apply to everything that uses add_swift_unittest and hopefully it will avoid all the problems.
2020-02-13 20:49:07 -08:00
Saleem Abdulrasool
66627d8037 build: obsolete options which have long been deprecated
This is simply dropping the error that would be presented for any
existing usage.  These have been rooted out for some time now.  Remove
the obsoleted checks.
2020-02-13 14:19:12 -08:00
Saleem Abdulrasool
202ee5b020 build: help pave the road for a mixed Python build
LLDB requires python3, however, gyb is a python2 tool.  Use the fact
that we have a newer CMake at our disposal and use the `Python2` package
in CMake to locate a viable python interpreter.  This allows us to have
references to both versions of python simultaneously.
2020-02-12 19:07:01 -08:00
Saleem Abdulrasool
b46ddbe982 build: make building with VS2017 15.8+ work again
This causes an ABI break on VS2017, but it is acceptable as there is no
guaranteed stability.
2020-02-12 11:15:56 -08:00
Saleem Abdulrasool
97df90fbf1 Merge pull request #29581 from drexin/wip-fix-atomics
Remove dependency on libatomic on Linux
2020-02-11 20:03:10 -08:00
Dario Rexin
29749e64d7 Update AddSwiftUnittests.cmake 2020-02-05 08:51:00 -08:00
swift-ci
fd9a388db9 Merge remote-tracking branch 'origin/master' into master-rebranch 2020-02-05 07:43:43 -08:00
Eric Miotto
8a76358b88 [build] avoid use generator expression to add linker parameter (#29636)
* [build] use generator expression only on CMake > 3.15

In CMake < 3.16, Generator expressions seem not to allow the `LINKER:` prefix to be
expanded correctly when used in `target_link_options`.

To account for this, account for two code paths according to CMake version -- use the generator expression when detecting we are on 3.16 and resort to an if statement otherwise

Addresses rdar://problem/59117166
2020-02-05 07:26:58 -08:00
swift-ci
782b4e1bfa Merge remote-tracking branch 'origin/master' into master-rebranch 2020-02-03 15:42:56 -08:00
Dario Rexin
62a5ebb6a2 Update AddSwift.cmake 2020-02-03 13:45:47 -08:00
Dario Rexin
ddd003fd4d Update AddSwiftUnittests.cmake 2020-02-03 13:44:27 -08:00
Xi Ge
51d6243d24 cmake: avoid emitting .swiftsourceinfo files for overlays
rdar://problem/58611222
2020-02-03 13:27:10 -08:00
Dario Rexin
525f408445 Update AddSwiftUnittests.cmake 2020-02-03 11:28:22 -08:00
swift-ci
075242f30c Merge remote-tracking branch 'origin/master' into master-rebranch 2020-02-03 10:43:51 -08:00
Saleem Abdulrasool
f300b80665 build: prevent FILE_DEPENDS from being used
The `FILE_DEPENDS` option is used in exactly one location: swiftCore.
This prevention sets the groundwork for removing the option.
Dependencies should be tracked at the target level.
2020-02-02 20:32:52 -08:00
swift-ci
2d9227da4c Merge remote-tracking branch 'origin/master' into master-rebranch 2020-02-02 13:23:57 -08:00
Dario Rexin
feb7bb1a06 one more try 2020-02-02 09:53:18 -08:00
Saleem Abdulrasool
c5c7ed17b8 build: hoist LINK_LIBRARIES out of _add_swift_executable_single
Hoist the responsibility for adding the linked libraries out of
`_add_swift_executable_single` to the invoker.  This impacts only
`swift_add_target_executable`.  This continues to bring the computation
of the properties nearer the site of definition.
2020-02-02 08:58:41 -08:00
Dario Rexin
34a331eb4d Fix march flag in unittest 2020-02-02 00:29:09 -08:00
Dario Rexin
6db05fdbca Set march for unittest on Linux 2020-02-01 23:25:31 -08:00
Dario Rexin
d913eefcc9 Remove dependency on libatomic on Linux
Due to some unfortunate interplay between clang and libstdc++, clang was
not able to correctly identify to alignment of PoolRange and
SideTableRefCountBits, causing it to emit library calls instead of
inlining atomic operations. This was fixed by adding the appropriate
alignment to those types. In addition to that the march for the Linux
target was set to 'core2', which is the earliest architecture to support
cx16, which is necessary for the atomic operations on PoolRange.
2020-01-31 15:59:54 -08:00
swift-ci
b5c8853f3f Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-29 10:23:57 -08:00
Eric Miotto
0bd1e61a20 [build][gardening] adjust one more framework path (#29529)
This is a follow to #29507 addressing one more place in which we need to
collate -F with the framework path

Addresses rdar://problem/58934566
2020-01-29 10:09:32 -08:00
swift-ci
e6085cb5cb Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-28 11:23:21 -08:00
Saleem Abdulrasool
1fff12f663 Merge pull request #29511 from compnerd/cohabitation
build: move `compute_library_subdir` to where it is used
2020-01-28 11:08:16 -08:00
swift-ci
10cc7cfcfc Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-28 09:24:15 -08:00
Eric Miotto
5428060ca8 [build][gardening] adjust framework paths (#29507)
Collate -F with the framework path to avoid unwanted deduplication of options by `target_compile_options` (which is the case after #29451) -- this way no undesired side effects are introduced should a new search path be added.

Addresses rdar://problem/58934566
2020-01-28 09:23:46 -08:00
Saleem Abdulrasool
049e384436 build: move compute_library_subdir to where it is used
This function is only used in SwiftSource.cmake.  Locate the function
there to make it easier to find.
2020-01-28 09:22:12 -08:00
swift-ci
0373bc26c1 Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-28 08:03:20 -08:00
Saleem Abdulrasool
02b6161aef Merge pull request #29483 from compnerd/duplication-is-good-for-you
build: repair the Windows build
2020-01-28 07:58:12 -08:00
Daniel Rodríguez Troitiño
8777a873a5 Merge pull request #29502 from drodriguez/android-escape-include-paths-correctly
[android] Escape include paths in Android.
2020-01-28 07:53:13 -08:00
swift-ci
e4f3574c7f Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-27 23:04:17 -08:00
Daniel Rodríguez Troitiño
3e42a0f1ca [android] Escape include paths in Android.
Before the result of `_add_variant_c_compile_flags` was a string, so appending several "-isystem" was not a problem. With #29451 the rules have changed since the list is now handled by CMake, and it deduplicates the repeated members in the list. Thanks, CMake.

Should fix the Android CI builds that were failing since the merging of #29451.
2020-01-27 22:51:25 -08:00
Saleem Abdulrasool
a1c971907b build: repair the Windows build
This should repair the Windows build after #29451.  The quoting
behaviour was incorrect and was constructing an invalid compiler
invocation.  Solve the issue by using `target_include_directories`
instead.  However, since this needs the target, hoist the flag
computation to the local sites.  This replicates more logic because of
the custom build trying to replicate the CMake build logic in CMake.
2020-01-27 22:35:28 -08:00
Yuta Saito
68730053f5 Fix mismatch use of target_link_options 2020-01-28 03:58:25 +00:00
swift-ci
91799178d3 Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-27 15:43:24 -08:00
Saleem Abdulrasool
fbcb41facf build: simplify the ICU include handling
This simplifies the ICU flags handling.  This inlines the use into just
the library case, as the ICU usage is for the standard library targets
only.  It uses CMake to properly add the include paths as a system
search path.  This should fix the Linux builds as the include flags were
being de-duplicated as we are now using CMake more than we were
previously.
2020-01-27 13:48:09 -08:00
swift-ci
8c23dec23e Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-27 09:04:20 -08:00
Saleem Abdulrasool
efa526ea71 Merge pull request #29451 from compnerd/someone-else-can-do-it
build: use modern target property handling
2020-01-27 08:49:20 -08:00
swift-ci
3137a0acab Merge remote-tracking branch 'origin/master' into master-rebranch 2020-01-27 08:44:11 -08:00
Saleem Abdulrasool
e80bb6717c build: remove a hack for clang dependencies
This was introduced in 2014.  This should not be needed any longer,
especially with the use of the clang dependencies being satisfied by
export targets through `Clang_DIR`.
2020-01-26 12:25:46 -08:00