                        finished: "Pulled dependency \(dependency.shortName)")
   }// pullDependency
 
-  private func compileDependency(dependency: Roostfile.Dependency, _ directory: String) {
+  private func compileDependency(dependency: Roostfile.Dependency, _ directory: String) -> CompilationResult {
     let path = "\(directory)/Roostfile.yaml"
     let contents = readFile(path)
 

      case .Module:
        let swiftModuleTarget = modulePathForPackage()

        if !modulesCompiled && !needsRecompilation(sourceFiles, swiftModuleTarget) {
          break
        }
        // Do need to recompile
        compileStaticLibrary(arguments)

import Foundation
import Tasker

enum CompilationResult {
  case Skipped
  case Compiled

  var description: String {
    switch self {
      case .Skipped:  return "Skipped"
      case .Compiled: return "Compiled"
    }
  }
}

extension Package {

  var fileManager: NSFileManager     { get { return NSFileManager.defaultManager() } }
  var vendorDirectory: String        { get { return "\(roostfile.directory)/vendor" } }
  var frameworkSearchPaths: [String] { get { return roostfile.frameworkSearchPaths } }

  var mustRecompile: Bool {
    get {
      let environment = NSProcessInfo.processInfo().environment
