From a352d23e1a1e53ff0778d187ab4d50176390859a Mon Sep 17 00:00:00 2001 From: Trung Nguyen <57174311+trungnt2910@users.noreply.github.com> Date: Sat, 22 Jul 2023 18:32:25 +1000 Subject: [PATCH] build: Pack Haiku API as standalone package This package would be useful for users who do not wish to install the full workload. --- build.cake | 19 +++++++++++++++---- src/Haiku/Haiku.csproj | 6 ++++++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/build.cake b/build.cake index dc812b0..cb347e7 100644 --- a/build.cake +++ b/build.cake @@ -132,25 +132,36 @@ Task("GenerateBindings") DotNetRun($"generator/HaikuApiGenerator/HaikuApiGenerator.csproj", runSettings); }); -Task("BuildCoreLibraries") +Task("BuildAndPackCoreLibraries") .IsDependentOn("GenerateBindings") .Does(() => { - var settings = new DotNetBuildSettings + var buildSettings = new DotNetBuildSettings { Configuration = configuration, MSBuildSettings = msbuildsettings, NoRestore = true }; + var packSettings = new DotNetPackSettings + { + Configuration = configuration, + MSBuildSettings = msbuildsettings, + OutputDirectory = "out/nuget", + NoRestore = true, + NoBuild = true, + NoDependencies = true + }; + foreach (var name in coreLibraryNames) { - DotNetBuild($"src/{name}/{name}.csproj", settings); + DotNetBuild($"src/{name}/{name}.csproj", buildSettings); + DotNetPack($"src/{name}/{name}.csproj", packSettings); } }); Task("BuildAndPackageWorkload") - .IsDependentOn("BuildCoreLibraries") + .IsDependentOn("BuildAndPackCoreLibraries") .Does(() => { var buildSettings = new DotNetBuildSettings diff --git a/src/Haiku/Haiku.csproj b/src/Haiku/Haiku.csproj index fb5cfff..82ae351 100644 --- a/src/Haiku/Haiku.csproj +++ b/src/Haiku/Haiku.csproj @@ -30,6 +30,12 @@ + + + +