diff --git a/build.fsx b/build.fsx
index 04004cc1..632d2dbb 100644
--- a/build.fsx
+++ b/build.fsx
@@ -90,69 +90,33 @@ let mklSolution = solution "MKL" "MathNet.Numerics.MKL.sln" [mklWinProject; mklL
let mklWinPack =
{ NuGet = mklWinNuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Windows (x64 and x86)"
- Summary = ""
- Description = "Intel MKL native libraries for Math.NET Numerics on Windows."
- Tags = "math numeric statistics probability integration interpolation linear algebra matrix fft native mkl"
- Authors = [ "Christoph Ruegg"; "Marcus Cuda"; "Jurgen Van Gael" ]
- Dependencies = []
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Win.targets", None;
- @"..\..\out\MKL\Windows\x64\libiomp5md.dll", Some @"build\x64", None;
- @"..\..\out\MKL\Windows\x64\MathNet.Numerics.MKL.dll", Some @"build\x64", None;
- @"..\..\out\MKL\Windows\x86\libiomp5md.dll", Some @"build\x86", None;
- @"..\..\out\MKL\Windows\x86\MathNet.Numerics.MKL.dll", Some @"build\x86", None ] }
+ NuSpecFile = "build/MathNet.Numerics.MKL.Win.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Windows (x64 and x86)" }
let mklWin32Pack =
- { mklWinPack with
- NuGet = mklWin32NuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Windows (x86)"
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Win-x86.targets", None;
- @"..\..\out\MKL\Windows\x86\libiomp5md.dll", Some @"build\x86", None;
- @"..\..\out\MKL\Windows\x86\MathNet.Numerics.MKL.dll", Some @"build\x86", None ] }
+ { NuGet = mklWin32NuGetPackage
+ NuSpecFile = "build/MathNet.Numerics.MKL.Win-x86.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Windows (x86)" }
let mklWin64Pack =
- { mklWinPack with
- NuGet = mklWin64NuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Windows (x64)"
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Win-x64.targets", None;
- @"..\..\out\MKL\Windows\x64\libiomp5md.dll", Some @"build\x64", None;
- @"..\..\out\MKL\Windows\x64\MathNet.Numerics.MKL.dll", Some @"build\x64", None ] }
+ { NuGet = mklWin64NuGetPackage
+ NuSpecFile = "build/MathNet.Numerics.MKL.Win-x64.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Windows (x64)" }
let mklLinuxPack =
{ NuGet = mklLinuxNuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Linux (x64 and x86)"
- Summary = ""
- Description = "Intel MKL native libraries for Math.NET Numerics on Linux."
- Tags = "math numeric statistics probability integration interpolation linear algebra matrix fft native mkl"
- Authors = [ "Christoph Ruegg"; "Marcus Cuda"; "Jurgen Van Gael" ]
- Dependencies = []
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Linux.targets", None;
- @"..\..\out\MKL\Linux\x64\libiomp5.so", Some @"build\x64", None;
- @"..\..\out\MKL\Linux\x64\MathNet.Numerics.MKL.dll", Some @"build\x64", None;
- @"..\..\out\MKL\Linux\x86\libiomp5.so", Some @"build\x86", None;
- @"..\..\out\MKL\Linux\x86\MathNet.Numerics.MKL.dll", Some @"build\x86", None ] }
+ NuSpecFile = "build/MathNet.Numerics.MKL.Linux.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Linux (x64 and x86)" }
let mklLinux32Pack =
- { mklLinuxPack with
- NuGet = mklLinux32NuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Linux (x86)"
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Linux-x86.targets", None;
- @"..\..\out\MKL\Linux\x86\libiomp5.so", Some @"build\x86", None;
- @"..\..\out\MKL\Linux\x86\MathNet.Numerics.MKL.dll", Some @"build\x86", None ] }
+ { NuGet = mklLinux32NuGetPackage
+ NuSpecFile = "build/MathNet.Numerics.MKL.Linux-x86.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Linux (x86)" }
let mklLinux64Pack =
- { mklLinuxPack with
- NuGet = mklLinux64NuGetPackage
- Title = "Math.NET Numerics - MKL Native Provider for Linux (x64)"
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.MKL.Linux-x64.targets", None;
- @"..\..\out\MKL\Linux\x64\libiomp5.so", Some @"build\x64", None;
- @"..\..\out\MKL\Linux\x64\MathNet.Numerics.MKL.dll", Some @"build\x64", None ] }
+ { NuGet = mklLinux64NuGetPackage
+ NuSpecFile = "build/MathNet.Numerics.MKL.Linux-x64.nuspec"
+ Title = "Math.NET Numerics - MKL Native Provider for Linux (x64)" }
// CUDA NATIVE PROVIDER PACKAGES
@@ -165,18 +129,8 @@ let cudaSolution = solution "CUDA" "MathNet.Numerics.CUDA.sln" [cudaWinProject]
let cudaWinPack =
{ NuGet = cudaWinNuGetPackage
- Title = "Math.NET Numerics - CUDA Native Provider for Windows (x64)"
- Summary = ""
- Description = "Nvidia CUDA native libraries for Math.NET Numerics."
- Tags = "math numeric statistics probability integration interpolation linear algebra matrix fft native cuda gpu"
- Authors = [ "Matthew A Johnson"; "Christoph Ruegg" ]
- Dependencies = []
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.CUDA.Win.targets", None;
- @"..\..\out\CUDA\Windows\x64\cublas64_70.dll", Some "content", None;
- @"..\..\out\CUDA\Windows\x64\cudart64_70.dll", Some "content", None;
- @"..\..\out\CUDA\Windows\x64\cusolver64_70.dll", Some "content", None;
- @"..\..\out\CUDA\Windows\x64\MathNet.Numerics.CUDA.dll", Some "content", None ] }
+ NuSpecFile = "build/MathNet.Numerics.CUDA.Win.nuspec"
+ Title = "Math.NET Numerics - CUDA Native Provider for Windows (x64)" }
// OpenBLAS NATIVE PROVIDER PACKAGES
@@ -189,24 +143,8 @@ let openBlasSolution = solution "OpenBLAS" "MathNet.Numerics.OpenBLAS.sln" [open
let openBlasWinPack =
{ NuGet = openBlasWinNuGetPackage
- Title = "Math.NET Numerics - OpenBLAS Native Provider for Windows (x64 and x86)"
- Summary = ""
- Description = "OpenBLAS native libraries for Math.NET Numerics."
- Tags = "math numeric statistics probability integration interpolation linear algebra matrix fft native openblas"
- Authors = [ "Kuan Bartel"; "Christoph Ruegg"; "Marcus Cuda" ]
- Dependencies = []
- Files =
- [ @"..\..\build\NativeProvider.targets", Some "build\MathNet.Numerics.OpenBLAS.Win.targets", None;
- @"..\..\out\OpenBLAS\Windows\x64\libgcc_s_seh-1.dll", Some @"build\x64", None;
- @"..\..\out\OpenBLAS\Windows\x64\libgfortran-3.dll", Some @"build\x64", None;
- @"..\..\out\OpenBLAS\Windows\x64\libopenblas.dll", Some @"build\x64", None;
- @"..\..\out\OpenBLAS\Windows\x64\libquadmath-0.dll", Some @"build\x64", None;
- @"..\..\out\OpenBLAS\Windows\x64\MathNet.Numerics.OpenBLAS.dll", Some @"build\x64", None;
- @"..\..\out\OpenBLAS\Windows\x86\libgcc_s_sjlj-1.dll", Some @"build\x86", None;
- @"..\..\out\OpenBLAS\Windows\x86\libgfortran-3.dll", Some @"build\x86", None;
- @"..\..\out\OpenBLAS\Windows\x86\libopenblas.dll", Some @"build\x86", None;
- @"..\..\out\OpenBLAS\Windows\x86\libquadmath-0.dll", Some @"build\x86", None;
- @"..\..\out\OpenBLAS\Windows\x86\MathNet.Numerics.OpenBLAS.dll", Some @"build\x86", None ] }
+ NuSpecFile = "build/MathNet.Numerics.OpenBLAS.Win.nuspec"
+ Title = "Math.NET Numerics - OpenBLAS Native Provider for Windows (x64 and x86)" }
// ALL
diff --git a/build/MathNet.Numerics.CUDA.Win.nuspec b/build/MathNet.Numerics.CUDA.Win.nuspec
new file mode 100644
index 00000000..4a15ab97
--- /dev/null
+++ b/build/MathNet.Numerics.CUDA.Win.nuspec
@@ -0,0 +1,28 @@
+
+
+
+ MathNet.Numerics.CUDA.Win
+ @build.number@
+ Math.NET Numerics - CUDA Native Provider for Windows (x64)
+ Matthew A Johnson, Christoph Ruegg
+ Matthew A Johnson, Christoph Ruegg
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Nvidia CUDA native libraries for Math.NET Numerics.
+ Nvidia CUDA native libraries for Math.NET Numerics.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native cuda gpu
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Linux-x64.nuspec b/build/MathNet.Numerics.MKL.Linux-x64.nuspec
new file mode 100644
index 00000000..5f17b437
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Linux-x64.nuspec
@@ -0,0 +1,26 @@
+
+
+
+ MathNet.Numerics.MKL.Linux-x64
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Linux (x64)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Linux-x86.nuspec b/build/MathNet.Numerics.MKL.Linux-x86.nuspec
new file mode 100644
index 00000000..5ddd800b
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Linux-x86.nuspec
@@ -0,0 +1,26 @@
+
+
+
+ MathNet.Numerics.MKL.Linux-x86
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Linux (x86)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Linux.nuspec b/build/MathNet.Numerics.MKL.Linux.nuspec
new file mode 100644
index 00000000..76d52788
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Linux.nuspec
@@ -0,0 +1,28 @@
+
+
+
+ MathNet.Numerics.MKL.Linux
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Linux (x64 and x86)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ Intel MKL native libraries for Math.NET Numerics on Linux.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Win-x64.nuspec b/build/MathNet.Numerics.MKL.Win-x64.nuspec
new file mode 100644
index 00000000..b09c86a2
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Win-x64.nuspec
@@ -0,0 +1,26 @@
+
+
+
+ MathNet.Numerics.MKL.Win-x64
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Windows (x64)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Win-x86.nuspec b/build/MathNet.Numerics.MKL.Win-x86.nuspec
new file mode 100644
index 00000000..09c0bef4
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Win-x86.nuspec
@@ -0,0 +1,26 @@
+
+
+
+ MathNet.Numerics.MKL.Win-x86
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Windows (x86)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.MKL.Win.nuspec b/build/MathNet.Numerics.MKL.Win.nuspec
new file mode 100644
index 00000000..d77f181f
--- /dev/null
+++ b/build/MathNet.Numerics.MKL.Win.nuspec
@@ -0,0 +1,28 @@
+
+
+
+ MathNet.Numerics.MKL.Win
+ @build.number@
+ Math.NET Numerics - MKL Native Provider for Windows (x64 and x86)
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ Christoph Ruegg, Marcus Cuda, Jurgen Van Gael
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ Intel MKL native libraries for Math.NET Numerics on Windows.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native mkl
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/MathNet.Numerics.OpenBLAS.Win.nuspec b/build/MathNet.Numerics.OpenBLAS.Win.nuspec
new file mode 100644
index 00000000..093c6152
--- /dev/null
+++ b/build/MathNet.Numerics.OpenBLAS.Win.nuspec
@@ -0,0 +1,34 @@
+
+
+
+ MathNet.Numerics.OpenBLAS.Win
+ @build.number@
+ Math.NET Numerics - OpenBLAS Native Provider for Windows (x64 and x86)
+ Kuan Bartel, Christoph Ruegg, Marcus Cuda
+ Kuan Bartel, Christoph Ruegg, Marcus Cuda
+ false
+ https://numerics.mathdotnet.com/License.html
+ https://numerics.mathdotnet.com/
+ https://www.mathdotnet.com/images/MathNet128.png
+
+ OpenBLAS native libraries for Math.NET Numerics.
+ OpenBLAS native libraries for Math.NET Numerics.
+ @releaseNotes@
+ math numeric statistics probability integration interpolation linear algebra matrix fft native openblas
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build-framework.fsx b/build/build-framework.fsx
index ef5ba305..aa0c7ece 100644
--- a/build/build-framework.fsx
+++ b/build/build-framework.fsx
@@ -149,13 +149,8 @@ type Solution =
type NuGetSpecification =
{ NuGet: NuGetPackage
- Title: string
- Summary: string
- Description: string
- Tags: string
- Authors: string list
- Dependencies: NugetFrameworkDependencies list
- Files: (string * string option * string option) list }
+ NuSpecFile: string
+ Title: string }
let release title releaseNotesFile : Release =
@@ -242,23 +237,6 @@ let traceHeader (releases:Release list) =
trace ""
-// --------------------------------------------------------------------------------------
-// TARGET FRAMEWORKS
-// --------------------------------------------------------------------------------------
-
-let libnet35 = "lib/net35"
-let libnet40 = "lib/net40"
-let libnet45 = "lib/net45"
-let netstandard13 = "lib/netstandard1.3"
-let netstandard16 = "lib/netstandard1.6"
-let netstandard20 = "lib/netstandard2.0"
-let libpcl7 = "lib/portable-net45+netcore45+MonoAndroid1+MonoTouch1"
-let libpcl47 = "lib/portable-net45+sl5+netcore45+MonoAndroid1+MonoTouch1"
-let libpcl78 = "lib/portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1"
-let libpcl259 = "lib/portable-net45+netcore45+wpa81+wp8+MonoAndroid1+MonoTouch1"
-let libpcl328 = "lib/portable-net4+sl5+netcore45+wpa81+wp8+MonoAndroid1+MonoTouch1"
-
-
// --------------------------------------------------------------------------------------
// PREPARE
// --------------------------------------------------------------------------------------
@@ -301,6 +279,7 @@ let patchVersionInProjectFile (project:Project) =
| NativeVisualStudio _ -> ()
| NativeBashScript _ -> ()
+
// --------------------------------------------------------------------------------------
// BUILD
// --------------------------------------------------------------------------------------
@@ -436,21 +415,12 @@ let zip (package:ZipPackage) zipDir filesDir filesFilter =
// NUGET
-let updateNuspec (nuget:NuGetPackage) (pack:NuGetSpecification) outPath symbols updateFiles spec =
+let updateNuspec (nuget:NuGetPackage) outPath spec =
{ spec with ToolPath = "packages/build/NuGet.CommandLine/tools/NuGet.exe"
OutputPath = outPath
WorkingDir = "obj/NuGet"
Version = nuget.Release.PackageVersion
ReleaseNotes = nuget.Release.ReleaseNotes
- Project = nuget.Id
- Title = pack.Title
- Summary = pack.Summary
- Description = pack.Description
- Tags = pack.Tags
- Authors = pack.Authors
- DependenciesByFramework = pack.Dependencies
- SymbolPackage = symbols
- Files = updateFiles pack.Files
Publish = false }
let nugetPackManually (solution:Solution) (packages:NuGetSpecification list) =
@@ -458,8 +428,7 @@ let nugetPackManually (solution:Solution) (packages:NuGetSpecification list) =
for pack in packages do
provideLicense "obj/NuGet"
provideReadme (sprintf "%s v%s" pack.Title pack.NuGet.Release.PackageVersion) pack.NuGet.Release "obj/NuGet"
- let withLicenseReadme f = [ "license.txt", None, None; "readme.txt", None, None; ] @ f
- NuGet (updateNuspec pack.NuGet pack solution.OutputNuGetDir NugetSymbolPackage.None withLicenseReadme) "build/MathNet.Numerics.Extension.nuspec"
+ NuGet (updateNuspec pack.NuGet solution.OutputNuGetDir) pack.NuSpecFile
CleanDir "obj/NuGet"
DeleteDir "obj/NuGet"