diff --git a/build.fsx b/build.fsx index 366ee640..61603f02 100644 --- a/build.fsx +++ b/build.fsx @@ -26,42 +26,70 @@ Target "Prepare" DoNothing Target "BuildMain" (fun _ -> !! "MathNet.Numerics.sln" |> MSBuildRelease "" "Rebuild" |> ignore) Target "BuildNet35" (fun _ -> !! "MathNet.Numerics.Net35Only.sln" |> MSBuildRelease "" "Rebuild" |> ignore) -Target "BuildAll" (fun _ -> !! "MathNet.Numerics.Portable.sln" |> MSBuildRelease "" "Rebuild" |> ignore) +Target "BuildFull" (fun _ -> !! "MathNet.Numerics.Portable.sln" |> MSBuildRelease "" "Rebuild" |> ignore) +Target "Build" DoNothing -Target "Main" DoNothing -Target "Net35" DoNothing -Target "All" DoNothing - -"Prepare" ==> "BuildMain" ==> "Main" -"Prepare" ==> "BuildNet35" ==> "Net35" -"Prepare" ==> "BuildAll" ==> "All" +"Prepare" + =?> ("BuildNet35", hasBuildParam "net35") + =?> ("BuildFull", hasBuildParam "full") + =?> ("BuildMain", not (hasBuildParam "full" || hasBuildParam "net35")) + ==> "Build" // TEST -Target "RunTests" (fun _ -> +Target "Test" (fun _ -> !! "out/test/*/*UnitTests*.dll" |> NUnit (fun p -> { p with DisableShadowCopy = true - TimeOut = TimeSpan.FromMinutes 20. + TimeOut = TimeSpan.FromMinutes 30. OutputFile = "TestResults.xml" }) ) -"RunTests" ==> "Main" -"RunTests" ==> "Net35" -"RunTests" ==> "All" +"Build" ==> "Test" // DOCUMENTATION -Target "BuildDocs" DoNothing +Target "Docs" DoNothing + +"Build" ==> "Docs" + +// NUGET -// RELEASE +Target "NuGetPackage" DoNothing + +"BuildFull" ==> "NuGetPackage" + + +// RUN Target "Release" DoNothing -"All" ==> "BuildDocs" ==> "Release" +"Test" ==> "Release" +"Docs" ==> "Release" +"NuGetPackage" ==> "Release" + +Target "All" DoNothing +"Build" ==> "Test" ==> "All" + +RunTargetOrDefault "All" + + +// EXAMPLES + +// * build.cmd: normal build (.Net 4.0), run unit tests + +// * build.cmd All: normal build (.Net 4.0), run unit tests +// * build.cmd All full: full build (.Net 3.5, 4.0, PCL), run all unit tests +// * build.cmd All net35: build (.Net 3.5), run unit tests + +// * build.cmd Build: normal build (.Net 4.0) +// * build.cmd Build full: full build (.Net 3.5, 4.0, PCL) +// * build.cmd Build net35: build (.Net 3.5) +// * build.cmd Clean: cleanup build artifacts +// * build.cmd Docs: generate documentation, normal build +// * build.cmd NuGetPackage: generate NuGet packages, full build -RunTargetOrDefault "Main" diff --git a/build/NuGet/FSharp/MathNet.Numerics.FSharp.nuspec b/build/NuGet/FSharp/MathNet.Numerics.FSharp.nuspec index 6b76fecc..b9b54552 100644 --- a/build/NuGet/FSharp/MathNet.Numerics.FSharp.nuspec +++ b/build/NuGet/FSharp/MathNet.Numerics.FSharp.nuspec @@ -4,7 +4,7 @@ MathNet.Numerics.FSharp 1.0.0 Math.NET Numerics for F# - F# Modules for Math.NET Numerics, providing methods and algorithms for numerical computations in science, engineering and every day use. F# 3.0 on .Net 4, SL5, Win8, WP8, PCL 47 & 136, Mono, Xamarin Andoid/iOS. + F# Modules for Math.NET Numerics, providing methods and algorithms for numerical computations in science, engineering and every day use. F# 3.0 on .Net 4, SL5, Win8, WP8, PCL 47 and 136, Mono, Xamarin Andoid/iOS. F# Modules for Math.NET Numerics, the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Numerics is the result of merging dnAnalytics with Math.NET Iridium and is intended to replace both. Supports .Net 4.0 and Mono (Windows, Linux, Mac), PCL Portable Profiles 47 and 136 (Silverlight 5, Windows Phone 8, .NET for Windows Store Apps), and Andoid/iOS via Xamarin. Christoph Ruegg, Marcus Cuda, Jurgen Van Gael Christoph Ruegg diff --git a/build/NuGet/Numerics/MathNet.Numerics.nuspec b/build/NuGet/Numerics/MathNet.Numerics.nuspec index b003bdd6..222adb0a 100644 --- a/build/NuGet/Numerics/MathNet.Numerics.nuspec +++ b/build/NuGet/Numerics/MathNet.Numerics.nuspec @@ -4,7 +4,7 @@ MathNet.Numerics 1.0.0 Math.NET Numerics - Math.NET Numerics, providing methods and algorithms for numerical computations in science, engineering and every day use. .Net 4, .Net 3.5, SL5, Win8, WP8, PCL 47 & 136, Mono, Xamarin Andoid/iOS. + Math.NET Numerics, providing methods and algorithms for numerical computations in science, engineering and every day use. .Net 4, .Net 3.5, SL5, Win8, WP8, PCL 47 and 136, Mono, Xamarin Andoid/iOS. Math.NET Numerics is the numerical foundation of the Math.NET project, aiming to provide methods and algorithms for numerical computations in science, engineering and every day use. Numerics is the result of merging dnAnalytics with Math.NET Iridium and is intended to replace both. Supports .Net 4.0, .Net 3.5 and Mono (Windows, Linux, Mac), PCL Portable Profiles 47 and 136 (Silverlight 5, Windows Phone 8, .NET for Windows Store Apps), and Andoid/iOS via Xamarin. Christoph Ruegg, Marcus Cuda, Jurgen Van Gael Christoph Ruegg