From 331843bd8b4166f0ceafeb9e14b970af3fdefbaa Mon Sep 17 00:00:00 2001 From: Kyle Fuller Date: Tue, 11 Oct 2016 21:42:40 +0100 Subject: [PATCH] Check for toolchains with `-RELEASE` Fixes #68 --- libexec/swiftenv-prefix | 28 +++++++++++++++++----------- libexec/swiftenv-versions | 2 +- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/libexec/swiftenv-prefix b/libexec/swiftenv-prefix index 136895f..bcf95b5 100755 --- a/libexec/swiftenv-prefix +++ b/libexec/swiftenv-prefix @@ -25,18 +25,24 @@ if [ -d "$SWIFTENV_ROOT/versions/swift-$SWIFT_VERSION" ]; then fi # OS X Swift Toolchain -TOOLCHAIN_DIR="/Library/Developer/Toolchains" -if [ -d "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" ]; then - echo "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" - exit -fi -# OS X User Swift Toolchain -TOOLCHAIN_DIR="$HOME/Library/Developer/Toolchains" -if [ -d "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" ]; then - echo "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" - exit -fi +check_toolchain() { + local TOOLCHAIN_DIR + TOOLCHAIN_DIR=$1 + + if [ -d "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION-RELEASE.xctoolchain" ]; then + echo "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION-RELEASE.xctoolchain" + exit + fi + + if [ -d "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" ]; then + echo "$TOOLCHAIN_DIR/swift-$SWIFT_VERSION.xctoolchain" + exit + fi +} + +check_toolchain "$HOME/Library/Developer/Toolchains" +check_toolchain "/Library/Developer/Toolchains" # OS X Xcode Swift's if command -v "mdfind" >/dev/null 2>&1; then diff --git a/libexec/swiftenv-versions b/libexec/swiftenv-versions index 4e9e4c5..61323d3 100755 --- a/libexec/swiftenv-versions +++ b/libexec/swiftenv-versions @@ -61,7 +61,7 @@ check_toolchains() { if [[ "$path" == *".xctoolchain" ]] && [ -d "$path" ]; then version="$(basename ${path##*/} .xctoolchain)" if [ "$version" != "swift-latest" ]; then - print_version "$version" "toolchain" + print_version "${version%-RELEASE}" "toolchain" fi fi done