if 'sourcekit' not in config.available_features:
    config.unsupported = True

elif 'OS=linux-gnu' in config.available_features and 'LinuxDistribution=Ubuntu-14.04' in config.available_features:
    config.unsupported = True

elif 'swift_evolve' in config.available_features:
    # A lot of tests necessarily depend on standard library source order.
    config.unsupported = True

else:
    sed_clean = r"grep -v 'key.hash: \"0\"'"
    sed_clean += r" | sed -e 's/key.filepath: \".*[/\\\\]\\(.*\\)\\.swiftmodule[/\\\\].*\\.swiftmodule\"/key.filepath: \\1.swiftmodule/g'"
    sed_clean += r" | sed -e 's/key.filepath: \".*[/\\\\]\\(.*\\)\\.swiftmodule\"/key.filepath: \\1.swiftmodule/g'"
    sed_clean += r" | sed -e 's/key.filepath: \".*[/\\\\]\\(.*\\)\\.swift\"/key.filepath: \\1.swift/g'"
    sed_clean += r" | sed -e 's/key.filepath: \".*[/\\\\]\\(.*\\)-[0-9A-Z]*\\.pcm\"/key.filepath: \\1.pcm/g'"
    sed_clean += r" | sed -e 's/ file=\\\\\".*[/\\\\]\\(.*\\)\\.h\\\\\"/ file=\\1.h/g'"
    sed_clean += r" | sed -e 's/key.hash: \".*\"/key.hash: <hash>/g'"

    config.substitutions.append( ('%sourcekitd-test', config.sourcekitd_test) )
    config.substitutions.append( ('%complete-test', config.complete_test) )
    config.substitutions.append( ('%swiftlib_dir', config.swiftlib_dir) )
    config.substitutions.append( ('%sed_clean', sed_clean) )
