Commit Graph

1731 Commits

Author SHA1 Message Date
John McCall
1cc3a57e91 Test the just-built dylibs when building unittests on Darwin 2020-10-15 00:36:36 -04:00
Erik Eckstein
290b9170a5 Merge remote-tracking branch 'origin/main' into next 2020-10-05 10:06:46 +02:00
Saleem Abdulrasool
563c99bc7c Merge pull request #34160 from buttaface/arm
[android] Add support for building the toolchain for ARMv7
2020-10-04 14:40:44 -07:00
Erik Eckstein
69edd5020a Merge remote-tracking branch 'origin/main' into next 2020-10-03 21:10:11 +02:00
Butta
f7576a7bef [android] Add support for building the toolchain for ARMv7 2020-10-03 18:55:23 +05:30
John McCall
e1004499c4 [NFC] Split ProtocolDispatchStrategy out of MetadataValues.h.
This allows us to avoid rebuilding most of the compiler
whenever we add a new ABI constant.
2020-10-03 02:26:17 -04:00
Butta
69d04aad08 [linux] remove absolute rpath of /usr/lib/swift/linux added to many shared libraries
This was presumably added as a backup, in case the libraries in a toolchain
couldn't be found, but will not work well, so take it out.
2020-09-25 23:07:14 +05:30
Varun Gandhi
37efac9ff8 Manually merge origin/main into origin/next.
Resolved conflict in lib/ClangImporter/ImportType.cpp.
2020-09-23 08:10:08 -07:00
Kuba (Brecka) Mracek
41f91d5365 Add a SWIFT_FREESTANDING_MODULE_NAME CMake option (#34018) 2020-09-22 15:14:44 -07:00
swift_jenkins
5d4b23757d Merge remote-tracking branch 'origin/master' into master-next 2020-09-11 21:27:51 -07:00
Kuba (Brecka) Mracek
d9d929a594 Revert "Start using optimization (-O0/-O2/-O3/-Os) and debug (-g) flags from CMAKE_CXX_FLAGS_${CFLAGS_BUILD_TYPE} (#33388)" (#33924) 2020-09-11 21:06:05 -07:00
swift_jenkins
f364c54d6a Merge remote-tracking branch 'origin/master' into master-next 2020-09-09 20:15:17 -07:00
Saleem Abdulrasool
a6a1f8f2c1 caches: add a cache for building just the runtime on Windows
This allows configuration of a build for just the runtime/SDK components
rather than a complete toolchain.  It allows for more effective
iteration when working on just the runtime aspect of the toolchain.
2020-09-07 14:19:19 -07:00
swift_jenkins
a2a0b7edbf Merge remote-tracking branch 'origin/master' into master-next 2020-08-17 19:52:45 -07:00
Kuba (Brecka) Mracek
28a2826ef4 Start using optimization (-O0/-O2/-O3/-Os) and debug (-g) flags from CMAKE_CXX_FLAGS_${CFLAGS_BUILD_TYPE} (#33388) 2020-08-17 19:26:24 -07:00
Nathan Hawes
c453ddf758 Manually merge remote-tracking branch 'upstream/master' into HEAD
Conflicts:
	include/swift/AST/PrettyStackTrace.h
2020-08-17 09:45:56 -07:00
Kuba (Brecka) Mracek
f91fe9c0c1 Use SWIFT_SDK_${prefix}_USE_ISYSROOT to select which SDKs should be building with -isysroot (#33469) 2020-08-14 14:33:28 -07:00
Nathan Hawes
be31ea4438 Manually merge remote-tracking branch 'upstream/master' into HEAD
Conflicts:
	test/DebugInfo/modulecache.swift
2020-08-13 15:27:21 -07:00
Kuba (Brecka) Mracek
ef89b0dc51 Add a 'standalone_minimal' preset to build a minimal, static, OS independent, self-contained binaries of stdlib. (#33286) 2020-08-12 07:28:34 -07:00
swift_jenkins
4632ac5ad1 Merge remote-tracking branch 'origin/master' into master-next 2020-07-31 13:41:11 -07:00
Saleem Abdulrasool
644b700d62 build: remove python fallback in overlay builds
Remove the Python 2 fallback from the standalone overlay build.  This
is part of the migration to Python 3.
2020-07-28 16:55:24 +00:00
Nathan Hawes
5b6c137586 [cmake] Fix zlib cmake issue: Target <X> links to target "ZLIB::ZLIB" but the target was not found...
...after the changes in https://reviews.llvm.org/D79219.

Resolves rdar://problem/66057385
2020-07-24 17:28:03 -07:00
Robert Widmann
1db4120f48 Merge pull request #32731 from compnerd/sealed
docs: make Windows build instructions fully self-contained
2020-07-17 12:54:55 -07:00
Eric Miotto
6fdcfb0ebf [build] remove support for embedding bitcode in host libraries (#32730)
We are more interested in generating bitcode for the standard library.

Addresses rdar://64952135
2020-07-07 13:46:19 -07:00
Saleem Abdulrasool
b8d9e3b9c7 docs: make Windows build instructions fully self-contained
Remove the extra repository dependency for the single cache file.
Update the build examples to simplify the cmake invocation
appropriately.
2020-07-06 23:14:00 +00:00
Davide Italiano
ca3d37f114 [CMake] Remove a redundant and potentially incorrect check.
There's a more robust check for which SDK to support already.
This also misses `arm64` as architecture.
2020-07-06 09:43:20 -07:00
Mishal Shah
a930b51494 [Apple Silicon] Simulator support for arm64 2020-07-02 19:17:29 -07:00
Mishal Shah
83c57f3e58 [Apple Silicon] [Build] Filter out any architectures that are unsupported by the SDKs 2020-07-02 19:05:45 -07:00
Mishal Shah
587ce889e1 [Apple Silicon] Don't set native llvm tools path when cross compiling swift 2020-07-02 18:14:39 -07:00
Mishal Shah
ee1ea6e514 [Apple Silicon] Support building for macOS arm64/arm64e 2020-07-02 18:03:39 -07:00
Eric Miotto
e80b188213 [build] Add LTO flag to link options (#32683)
Following the refactoring in #31612, LTO flag was only added to compile
flags -- we need to pass this only when linking.

Addresses rdar://65037856
2020-07-02 14:44:37 -07:00
Eric Miotto
d285123c0a [build] Pass target to linker for host tools for Apple SDKs (#32618)
As part of this refactor some code touched as part of #31794 to better fit into the work done in #32120 -- in detail

* `_add_host_variant_c_compile_link_flags` is now invoked by both add_swift_host_library and add_swift_host_library
* `_add_host_variant_c_compile_link_flags` now sets the target in linker arguments when building against Apple SDKs

Addresses rdar://64911978
2020-07-01 11:01:14 -07:00
Mishal Shah
bbfcc62221 Merge pull request #32127 from compnerd/python-is-dead-long-live-python
build: switch gyb to Python3
2020-06-25 17:33:07 -07:00
Saleem Abdulrasool
b9476ce72a build: correct handling of argument generation
This adjusts the target specific argument handling to use the same logic
as the toolchain, and in doing so, silences the spurious warnings when
building with a MSVC toolchain.
2020-06-22 11:07:23 -07:00
Saleem Abdulrasool
10d15b8bad build: switch gyb to Python3
Change the build system to invoke gyb with python3 instead of python2.
2020-06-19 11:03:31 -07:00
Saleem Abdulrasool
dc1624dee0 build: style updates (NFC)
Adjust the CMakeLists.txt to match the rest of the usage.
2020-06-06 14:00:50 -07:00
Saleem Abdulrasool
f9128bac81 build: use the same pattern for detecting Darwin platforms
The host platform should be using `CMAKE_SYSTEM_NAME STREQUAL Darwin`.
However, we currently drive the host side of the compilation against
custom variables.  This makes the migration simpler by ensuring that the
entire file uses the same pattern.

Since `is_darwin_based_sdk` is now used only in the standard library
build, sink it to the standard library build.
2020-06-04 08:39:59 -07:00
Saleem Abdulrasool
ec60746b99 Merge pull request #32120 from compnerd/macOS-cl
build: simplify macOS path (NFC)
2020-06-02 07:36:21 -07:00
Michael Gottesman
21ca9d4519 Merge pull request #32111 from gottesmm/pr-846f5396754c136c8adbf30b79b0b1c4b33ff9e5
[cmake] Move ar linking optimization rule into UnixCompileRules.cmake and only run it on Unix-like platforms.
2020-06-01 11:37:00 -07:00
Saleem Abdulrasool
f5a75dcefd build: simplify macOS path (NFC)
It does not make sense to use the `cl` frontend to clang to build for
macOS.  Remove the unnecessary condition and always perform the
operation.
2020-06-01 08:40:03 -07:00
Michael Gottesman
72d8d9be6b [cmake] Move ar linking optimization rule into UnixCompileRules.cmake and only run it on Unix-like platforms.
This doesn't make sense on Windows and from what compnerd has said it doesnt
even appear in the ninja rules file. This also moves this rule out of the main
flow of the top level CMakeLists.txt file so I can reuse it when compiling the
stdlib using a sub-cmake invocation.
2020-05-30 21:29:04 -07:00
Saleem Abdulrasool
1cc6698ae6 build: remove unnecessary CXX_STANDARD for Windows
The entire project is now at C++14.  Windows had to adopt C++14 earlier
to support processing the Windows SDK headers.  This is no longer
necessary, adopt the global settings instead.
2020-05-30 15:26:02 -07:00
David Zarzycki
3767ece85c [CMake] Simplify two binary variables into one tri-state variable
Also remove some ancient logic to detect and ignore requests to use LLD.
If people want to explicitly use LLD, they probably have a reason and we
shouldn't second guess them.
2020-05-28 06:08:03 -04:00
Saleem Abdulrasool
756bc505f7 build: correct variable in SDK configuration
The variable was supported to be set to the triple, except it was set to
the variable itself, effectively setting the variable to nothing.  This
is needed to clear the path to directory style installation for
non-Apple targets.
2020-05-23 16:45:10 -07:00
Saleem Abdulrasool
79bed6c4a7 Merge pull request #31481 from compnerd/not-everything-that-glitters-is-gold
build: default the lld/gold enabling as per reality
2020-05-23 19:42:24 -04:00
Dmitri Gribenko
b6d0ef5c81 Remove support for a broken std::regex in libstdc++ 4.8
Out of all operating systems ever supported by Swift, only Ubuntu 14.04
had libstdc++ 4.8, and Swift has sunset support for Ubuntu 14.04 for a
while now.
2020-05-19 17:20:55 +02:00
Eric Miotto
0c403fe766 [build] Pass target argument to the linker if needed (#31794)
Following #31125 and #31612, `-target` is not added automatically to
linker flags when that's needed (e.g. when building for Apple SDKs) --
mimic the logic used to add it for compiler flags.

Addresses rdar://63138761
2020-05-18 08:14:59 -07:00
Dario Rexin
32a189c281 Merge pull request #31329 from compnerd/host-library-handling
`add_swift_host_library` cleanup
2020-05-12 12:23:38 -07:00
Dario Rexin
a554f088d6 Merge pull request #31612 from compnerd/out-in
build: convert out parameter to target
2020-05-11 21:50:12 -07:00
Saleem Abdulrasool
f3da784843 Merge pull request #31672 from swiftwasm/maxd/wasi-sdk
build: Add support for WASI in CMake files
2020-05-11 09:32:12 -07:00