anchor.diff:              OutputPath = "out/api/" }))
   
   "Build" ==> "CleanApi" ==> "Api"
  +
  +
  +// ZIP
  +
  +Target "Zip" (fun _ ->
  +    CleanDir "out/packages/Zip"
  +    CleanDir "obj/Zip"
  +    if not (hasBuildParam "signed") || hasBuildParam "release" then
  +        CopyDir "obj/Zip/MathNet.Numerics" "out/lib" (fun f -> f.Contains("MathNet.Numerics."))
  +        Zip "obj/Zip/" (sprintf "out/packages/Zip/MathNet.Numerics-%s.zip" packageVersion) !! "obj/Zip/MathNet.Numerics/**/*.*"
  +    if hasBuildParam "signed" || hasBuildParam "release" then
  +        CopyDir "obj/Zip/MathNet.Numerics.Signed" "out/lib-signed" (fun f -> f.Contains("MathNet.Numerics."))
  +        Zip "obj/Zip/" (sprintf "out/packages/Zip/MathNet.Numerics.Signed-%s.zip" packageVersion) !! "obj/Zip/MathNet.Numerics.Signed/**/*.*"
  +    CleanDir "obj/Zip")
  +
  +"Build" ==> "Zip"
   
   
   // NUGET
  
positive.code: Target "All" DoNothing
  
  "Build" ==> "All"
  "NuGet" ==> "All"
  "Docs" ==> "All"
  "Api" ==> "All"
  
negative.code:     executeFSIWithArgs "docs/tools" "build-docs.fsx" [] [] |> ignore
  )
  
  "Build" ==> "CleanDocs" ==> "Docs"
  
  "Start"
    =?> ("CleanDocs", not (hasBuildParam "incremental"))
  