diff --git a/images/linux/scripts/installers/swift.sh b/images/linux/scripts/installers/swift.sh index ac8e87c6..f482d602 100644 --- a/images/linux/scripts/installers/swift.sh +++ b/images/linux/scripts/installers/swift.sh @@ -16,13 +16,18 @@ swift_tar_url="https://swift.org/builds/swift-$swift_version-release/ubuntu${ima download_with_retries $swift_tar_url "/tmp" "$swift_tar_name" tar xzf /tmp/$swift_tar_name -mv swift-$swift_version-RELEASE-ubuntu$image_label /usr/share/swift -SWIFT_PATH="/usr/share/swift/usr/bin" -SWIFT_BIN="$SWIFT_PATH/swift" -SWIFTC_BIN="$SWIFT_PATH/swiftc" -ln -s "$SWIFT_BIN" /usr/local/bin/swift -ln -s "$SWIFTC_BIN" /usr/local/bin/swiftc -echo "SWIFT_PATH=$SWIFT_PATH" | tee -a /etc/environment +SWIFT_INSTALL_ROOT="/usr/share/swift" +SWIFT_BIN_ROOT="$SWIFT_INSTALL_ROOT/usr/bin" +SWIFT_LIB_ROOT="$SWIFT_INSTALL_ROOT/usr/lib" + +mv swift-$swift_version-RELEASE-ubuntu$image_label $SWIFT_INSTALL_ROOT +mkdir -p /usr/local/lib + +ln -s "$SWIFT_BIN_ROOT/swift" /usr/local/bin/swift +ln -s "$SWIFT_BIN_ROOT/swiftc" /usr/local/bin/swiftc +ln -s "$SWIFT_LIB_ROOT/libsourcekitdInProc.so" /usr/local/lib/libsourcekitdInProc.so + +echo "SWIFT_PATH=$SWIFT_BIN_ROOT" | tee -a /etc/environment invoke_tests "Common" "Swift" diff --git a/images/linux/scripts/tests/Common.Tests.ps1 b/images/linux/scripts/tests/Common.Tests.ps1 index c4bf5897..b396f5b0 100644 --- a/images/linux/scripts/tests/Common.Tests.ps1 +++ b/images/linux/scripts/tests/Common.Tests.ps1 @@ -37,6 +37,10 @@ Describe "Swift" -Skip:(Test-IsUbuntu22) { It "swiftc" { "swiftc --version" | Should -ReturnZeroExitCode } + + It "libsourcekitd" { + "/usr/local/lib/libsourcekitdInProc.so" | Should -Exist + } } Describe "PipxPackages" {