diff --git a/source/Cosmos.Build.Common/BinFormat.cs b/source/Cosmos.Build.Common/BinFormat.cs
new file mode 100644
index 000000000..7fa59f03a
--- /dev/null
+++ b/source/Cosmos.Build.Common/BinFormat.cs
@@ -0,0 +1,11 @@
+namespace Cosmos.Build.Common
+{
+ ///
+ /// Format for the images produced.
+ ///
+ public enum BinFormat
+ {
+ Elf,
+ Bin,
+ }
+}
diff --git a/source/Cosmos.Build.Common/BuildProperties.cs b/source/Cosmos.Build.Common/BuildProperties.cs
index dafc98181..ee83d2556 100644
--- a/source/Cosmos.Build.Common/BuildProperties.cs
+++ b/source/Cosmos.Build.Common/BuildProperties.cs
@@ -221,5 +221,19 @@ namespace Cosmos.Build.Common {
get { return GetProperty(EnableBochsDebugString, false); }
set { SetProperty(EnableBochsDebugString, value); }
}
+
+ ///
+ /// Name of the configuration property in the project file.
+ ///
+ public const string BinFormatString = "BinFormat";
+
+ ///
+ /// Gets or sets binary format which is used for producing kernel image.
+ ///
+ public BinFormat BinFormat
+ {
+ get { return GetProperty(BinFormatString, BinFormat.Bin); }
+ set { SetProperty(BinFormatString, value); }
+ }
}
}
diff --git a/source/Cosmos.Build.Common/Cosmos.Build.Common.csproj b/source/Cosmos.Build.Common/Cosmos.Build.Common.csproj
index 5c6683bf4..80391dbb7 100644
--- a/source/Cosmos.Build.Common/Cosmos.Build.Common.csproj
+++ b/source/Cosmos.Build.Common/Cosmos.Build.Common.csproj
@@ -76,6 +76,7 @@
+