[xctest] New dependency upon corelibs-foundation


(Brian Gesiak) #1

Hello all!

Just now I pushed support for asynchronous test expectations to
corelibs-xctest. Yay!

This adds a new dependency, between corelibs-xctest and
corelibs-foundation. What does this mean for you?

- If you're a contributor to corelibs-xctest: Please use the new
'--foundation-build-dir' parameter when invoking the project
build_script.py directly. See the README for details. The Swift
utils/build-script works just as before.

- If you're a contributor to swift-package-manager: Please use the new
'--foundation' parameter when invoking Utilities/bootstrap to test the
project. The Swift utils/build-script works just as before.

- If you're using corelibs-xctest via the swift-package-manager: The 'swift
test' command works just as before.

- If you're using corelibs-xctest outside of the swift-package-manager:
When invoking executables that run XCTMain(), you'll need to (1) link
XCTest, (2) link Foundation, and (3) include the Foundation and
CoreFoundation public headers. For example, here's the swiftc invocation we
use to compile and run the corelibs-xctest functional tests:

    swiftc \
        -Xlinker -rpath -Xlinker /path/to/xctest-linux-x86_64 \
        -L /path/to/xctest-linux-x86_64 \
        -I /path/to/xctest-linux-x86_64 \
        -Xlinker -rpath -Xlinker
/path/to/foundation-linux-x86_64/Foundation \
        -L /path/to/foundation-linux-x86_64/Foundation \
        -I /path/to/foundation-linux-x86_64/Foundation \
        -I /path/to/foundation-linux-x86_64/Foundation/usr/lib/swift

Please email this list or file issues on https://bugs.swift.org if you have
any comments, questions, or problems. Thanks--and enjoy asynchronous
testing! :slight_smile:

- Brian Gesiak