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 @@
+
+
+
+