This will allow us to add test cases which may hang. The timeout here
is taken from the value we use in the regular test suite (along with the
check for the timeout requirements).
This reverts commit 95102bc258.
This is actually a dead option that is relied upon for some configurations. I am
going to add a note to not touch the option.
I talked with compnerd about this and they are cool with this.
I think that we can redo this in a nicer way when we are further into the
build-script-impl refactoring.
I added a note to the code to explain that it isn't dead.
Support cross compile Xcode toolchain for Apple Silicon
* Add CMake flag DCMAKE_OSX_ARCHITECTURES to LLVM
* Add CMake flag DCMAKE_OSX_ARCHITECTURES to cmark
* Add CMake flag DCMAKE_OSX_ARCHITECTURES to lldb
* Add CMake flag DCMAKE_OSX_ARCHITECTURES to llbuild
* Add llbuild CMake options array to provide DCMAKE_OSX_ARCHITECTURES
* [Build System] Use one install package for cross compile hosts
* Remove Lipo before non-build-script-impl products
* Add support to only lipo without running installable package tests
* [Build System] Support cross compile install prefix for SwiftPM product in Swift Build Support
* Use cross compile toolchain path for indexstoredb and swift-driver
* Use cross compile toolchain path for swiftpm, swiftsyntax, swiftformat, and skstresstester
* Add cross compile toolchain support to Benchmarks, and fix the python lint issue in skstresstester.py
* [SwiftPM] Add support for cross-compile-hosts flag to build swiftpm using bootstrap script
Set those at the value pre #33388 -- this would avoid regressions
of disk space usage (in particular around building Swift LTO)
Addresses rdar://68091272
This allows us to homogenise the foundation build artifacts with
swift-tools-support-core, swift-driver, swift-package-manager,
swift-numerics, swift-argument-parser.
These flags have done nothing for awhile, as 26 of 31 have already been moved to
build-script. Only the flags related to haiku, maccatalyst, and external-benchmarks
are unrecognized by either build script after this removal.
Clang's driver started linking with libclang_rt.<os>sim.a when building for simulator.
Swift's build need to adapt to this clang change, by ensuring that the libclang_rt.<os>sim.a libraries are created during the build
clang and compiler-rt are rev-locked and should match. Currently, we build clang (and use it to bootstrap the rest) but don't build compiler-rt. We should.
This doesn't completely achieve that: this only makes us build compiler-rt for the local host.
This used to be pretty much impossible, but, since then, compiler-rt cmake support was rewritten.
We should build it for the other hosts as well, but that's trickier, because we'd need to make the cross-compiled compiler-rt build use a separate just-built clang (from the local host). We do that for the other projects, but compiler-rt is special (because it's cmake'd as a runtime part of clang/llvm).
Before this patch, we assumed that if LLVM_INSTALL_COMPONENTS was non-empty that
we wanted to install llvm. This is different than /every other/ product in
build-script-impl where INSTALL_$PRODUCT controls if an install is attempted. If
a components sort of thing is required, we force it to only be a configuration
of an option that is a no-op if INSTALL_$PRODUCT is set to true.
I went through build-presets and looked at every place we had an install
statement and added install-llvm when appropriate. This was generally when we
did an install-swift. The one special case is with the tsan_libdsipatch
test. That being said, if I was too aggressive with where I put these
install-llvm, no harm will result since in those cases LLVM_INSTALL_COMPONENTS
had to be empty previously anyways (since otherwise we would have attempted an
install).