[Build][Runtime] Replace SWIFT_STDLIB_SINGLE_THREADED_RUNTIME.

SWIFT_STDLIB_SINGLE_THREADED_RUNTIME is too much of a blunt instrument here.
It covers both the Concurrency runtime and the rest of the runtime, but we'd
like to be able to have e.g. a single-threaded Concurrency runtime while
the rest of the runtime is still thread safe (for instance).

So: rename it to SWIFT_STDLIB_SINGLE_THREADED_CONCURRENCY and make it just
control the Concurrency runtime, then add a SWIFT_STDLIB_THREADING_PACKAGE
setting at the CMake/build-script level, which defines
SWIFT_STDLIB_THREADING_xxx where xxx depends on the chosen threading package.

This is especially useful on systems where there may be a choice of threading
package that you could use.

rdar://90776105
This commit is contained in:
Alastair Houghton
2022-03-25 16:10:39 +00:00
parent 3c0b1ab03f
commit dadcb04ae2
44 changed files with 547 additions and 204 deletions

View File

@@ -45,7 +45,7 @@ TEST(ConcurrentReadableArrayTest, SingleThreaded) {
check();
}
#ifndef SWIFT_STDLIB_SINGLE_THREADED_RUNTIME
#ifndef SWIFT_STDLIB_SINGLE_THREADED_CONCURRENCY
TEST(ConcurrentReadableArrayTest, MultiThreaded) {
const int insertCount = 100000;
@@ -544,4 +544,4 @@ TEST(ConcurrentReadableHashMapTest, MultiThreaded4) {
runTest(16, 1);
runTest(16, 8);
}
#endif // !SWIFT_STDLIB_SINGLE_THREADED_RUNTIME
#endif // !SWIFT_STDLIB_SINGLE_THREADED_CONCURRENCY