Skip to content

Commit b8f5715

Browse files
committed
Wire libdispatch build path through CMake
Wire libdispatch build path through CMake `build-script-impl -> lit.site.cfg.in -> lit.cfg` instead of computing it in lit.cfg.
1 parent 02688df commit b8f5715

File tree

4 files changed

+13
-11
lines changed

4 files changed

+13
-11
lines changed

test/lit.cfg

+10-11
Original file line numberDiff line numberDiff line change
@@ -910,19 +910,18 @@ elif run_os in ['linux-gnu', 'linux-gnueabihf', 'freebsd', 'windows-cygnus', 'wi
910910
config.target_runtime = "native"
911911
config.target_swift_autolink_extract = inferSwiftBinary("swift-autolink-extract")
912912

913-
libdispatch_build_dir = make_path(config.swift_obj_root, os.pardir,
914-
'libdispatch%s' % config.variant_suffix, 'src')
915-
libdispatch_build_artifacts = [
916-
make_path(libdispatch_build_dir, 'libdispatch.so'),
917-
make_path(libdispatch_build_dir, 'libswiftDispatch.so'),
918-
make_path(libdispatch_build_dir, 'swift', 'Dispatch.swiftmodule')]
919-
if (all(os.path.exists(p) for p in libdispatch_build_artifacts)):
913+
libdispatch_artifact_dir = make_path(config.libdispatch_build_path, 'src')
914+
libdispatch_artifacts = [
915+
make_path(libdispatch_artifact_dir, 'libdispatch.so'),
916+
make_path(libdispatch_artifact_dir, 'libswiftDispatch.so'),
917+
make_path(libdispatch_artifact_dir, 'swift', 'Dispatch.swiftmodule')]
918+
if (all(os.path.exists(p) for p in libdispatch_artifacts)):
920919
config.available_features.add('libdispatch')
921-
config.libdispatch_build_dir = libdispatch_build_dir
920+
config.libdispatch_artifact_dir = libdispatch_artifact_dir
922921
libdispatch_source_dir = make_path(config.swift_src_root, os.pardir, 'swift-corelibs-libdispatch')
923-
libdispatch_swift_module_dir = make_path(libdispatch_build_dir, 'swift')
922+
libdispatch_swift_module_dir = make_path(libdispatch_artifact_dir, 'swift')
924923
config.import_libdispatch = ('-I %s -I %s -L %s'
925-
% (libdispatch_source_dir, libdispatch_swift_module_dir, libdispatch_build_dir))
924+
% (libdispatch_source_dir, libdispatch_swift_module_dir, libdispatch_artifact_dir))
926925

927926
config.target_build_swift = (
928927
'%s -target %s %s %s %s %s %s'
@@ -1331,7 +1330,7 @@ if os.path.exists(static_libswiftCore_path):
13311330
# default Swift tests to use the just-built libraries
13321331
target_stdlib_path = platform_module_dir
13331332
if not kIsWindows:
1334-
libdispatch_path = getattr(config, 'libdispatch_build_dir', '')
1333+
libdispatch_path = getattr(config, 'libdispatch_artifact_dir', '')
13351334
if 'use_os_stdlib' not in lit_config.params:
13361335
lit_config.note('Testing with the just-built libraries at ' + target_stdlib_path)
13371336
config.target_run = (

test/lit.site.cfg.in

+1
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ config.android_ndk_gcc_version = "@SWIFT_ANDROID_NDK_GCC_VERSION@"
3535

3636
config.coverage_mode = "@SWIFT_ANALYZE_CODE_COVERAGE@"
3737
config.lldb_build_root = "@LLDB_BUILD_DIR@"
38+
config.libdispatch_build_path = "@SWIFT_PATH_TO_LIBDISPATCH_BUILD@"
3839

3940
# Please remember to handle empty strings and/or unset variables correctly.
4041

utils/build-script-impl

+1
Original file line numberDiff line numberDiff line change
@@ -2385,6 +2385,7 @@ for host in "${ALL_HOSTS[@]}"; do
23852385
-DSWIFT_PATH_TO_CMARK_SOURCE:PATH="${CMARK_SOURCE_DIR}"
23862386
-DSWIFT_PATH_TO_CMARK_BUILD:PATH="$(build_directory ${host} cmark)"
23872387
-DSWIFT_PATH_TO_LIBDISPATCH_SOURCE:PATH="${LIBDISPATCH_SOURCE_DIR}"
2388+
-DSWIFT_PATH_TO_LIBDISPATCH_BUILD:PATH="$(build_directory ${host} libdispatch)"
23882389
)
23892390

23902391
if [[ ! "${SKIP_BUILD_LIBICU}" ]] ; then

validation-test/lit.site.cfg.in

+1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ config.android_ndk_gcc_version = "@SWIFT_ANDROID_NDK_GCC_VERSION@"
3333

3434
config.coverage_mode = "@SWIFT_ANALYZE_CODE_COVERAGE@"
3535
config.lldb_build_root = "@LLDB_BUILD_DIR@"
36+
config.libdispatch_build_path = "@SWIFT_PATH_TO_LIBDISPATCH_BUILD@"
3637

3738
if "@SWIFT_ASAN_BUILD@" == "TRUE":
3839
config.available_features.add("asan")

0 commit comments

Comments
 (0)