diff --git a/Build.props b/Build.props
new file mode 100644
index 0000000..2d7fd55
--- /dev/null
+++ b/Build.props
@@ -0,0 +1,19 @@
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+
+
+
+
+ $(MSBuildThisFileDirectory.TrimEnd('\'))
+
+
+
+
+
+
+ $(IntermediateOutputPath.TrimEnd('\'))\$(TargetFrameworkFolderName)
+
+
+
diff --git a/build.root b/build.root
new file mode 100644
index 0000000..a781e32
--- /dev/null
+++ b/build.root
@@ -0,0 +1 @@
+Marker file indicating root of build system.
\ No newline at end of file
diff --git a/src/AssemblyInfo/AssemblyInfoCommon.cs b/src/AssemblyInfo/AssemblyInfoCommon.cs
new file mode 100644
index 0000000..c84aff8
--- /dev/null
+++ b/src/AssemblyInfo/AssemblyInfoCommon.cs
@@ -0,0 +1,75 @@
+//---------------------------------------------------------------------
+//
+// Copyright (C) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
+//
+//---------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+using System.Resources;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Runtime.Versioning;
+using System.Security;
+
+[assembly: AssemblyCompany("Microsoft Corporation")]
+// If you want to control this metadata globally but not with the VersionProductName property, hard-code the value below.
+// If you want to control this metadata at the individual project level with AssemblyInfo.cs, comment-out the line below.
+// If you leave the line below unchanged, make sure to set the property in the root build.props, e.g.: Your Product Name
+// [assembly: AssemblyProduct("%VersionProductName%")]
+[assembly: AssemblyCopyright("Copyright (c) Microsoft Corporation. All rights reserved.")]
+[assembly: AssemblyTrademark("Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the U.S. and/or other countries.")]
+[assembly: AssemblyCulture("")]
+#if (DEBUG || _DEBUG)
+[assembly: AssemblyConfiguration("Debug")]
+#endif
+
+#if ASSEMBLY_ATTRIBUTE_PRODUCT_VS
+[assembly: AssemblyProduct("Microsoft (R) Visual Studio (R) 2010")]
+#else
+[assembly: AssemblyProduct("Microsoft® .NET Framework")]
+#endif
+
+// disable CLSCompliant as the common extensions library decided not to support this
+// see https://github.com/aspnet/AspNetCore/issues/2689#issuecomment-354693946
+[assembly: CLSCompliant(false)]
+
+#if ASSEMBLY_ATTRIBUTE_COM_VISIBLE
+[assembly: ComVisible(true)]
+#else
+[assembly: ComVisible(false)]
+#endif
+
+#if ASSEMBLY_ATTRIBUTE_COM_COMPATIBLE_SIDEBYSIDE
+[assembly:ComCompatibleVersion(1,0,3300,0)]
+#endif
+
+#if ASSEMBLY_ATTRIBUTE_ALLOW_PARTIALLY_TRUSTED_CALLERS
+[assembly: AllowPartiallyTrustedCallers]
+#else
+#if ASSEMBLY_ATTRIBUTE_CONDITIONAL_APTCA_L2
+[assembly:AllowPartiallyTrustedCallers(PartialTrustVisibilityLevel=PartialTrustVisibilityLevel.NotVisibleByDefault)]
+#endif
+#endif
+
+#if ASSEMBLY_ATTRIBUTE_TRANSPARENT_ASSEMBLY
+[assembly: SecurityTransparent]
+#endif
+
+#if !SUPPRESS_SECURITY_RULES
+#if SECURITY_MIGRATION && !ASSEMBLY_ATTRIBUTE_CONDITIONAL_APTCA_L2
+#if ASSEMBLY_ATTRIBUTE_SKIP_VERIFICATION_IN_FULLTRUST
+[assembly: SecurityRules(SecurityRuleSet.Level1, SkipVerificationInFullTrust = true)]
+#else
+[assembly: SecurityRules(SecurityRuleSet.Level1)]
+#endif
+#else
+#if ASSEMBLY_ATTRIBUTE_SKIP_VERIFICATION_IN_FULLTRUST
+[assembly: SecurityRules(SecurityRuleSet.Level2, SkipVerificationInFullTrust = true)]
+#else
+[assembly: SecurityRules(SecurityRuleSet.Level2)]
+#endif
+#endif
+#endif
+
+[assembly:NeutralResourcesLanguageAttribute("en-US")]
diff --git a/src/AssemblyInfo/AssemblyKeys.cs b/src/AssemblyInfo/AssemblyKeys.cs
new file mode 100644
index 0000000..eb98d48
--- /dev/null
+++ b/src/AssemblyInfo/AssemblyKeys.cs
@@ -0,0 +1,43 @@
+//---------------------------------------------------------------------
+//
+// Copyright (C) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
+//
+//---------------------------------------------------------------------
+
+///
+/// Sets public key string for friend assemblies.
+///
+internal static class AssemblyRef
+{
+#if DelaySignKeys
+ /// ProductPublicKey is an official MS supported public key for external releases.
+ internal const string ProductPublicKey = ", PublicKey=0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9";
+
+ /// TestPublicKey is an unsupported strong key for testing purpose only.
+ internal const string TestPublicKey = ", PublicKey=0024000004800000940000000602000000240000525341310004000001000100197c25d0a04f73cb271e8181dba1c0c713df8deebb25864541a66670500f34896d280484b45fe1ff6c29f2ee7aa175d8bcbd0c83cc23901a894a86996030f6292ce6eda6e6f3e6c74b3c5a3ded4903c951e6747e6102969503360f7781bf8bf015058eb89b7621798ccc85aaca036ff1bc1556bb7f62de15908484886aa8bbae";
+
+ /// Product public key token.
+ internal const string ProductPublicKeyToken = "31bf3856ad364e35";
+
+#elif TestSignKeys
+ /// Dont know what this is
+ internal const string TestPublicKey = ", PublicKey=0024000004800000940000000602000000240000525341310004000001000100197c25d0a04f73cb271e8181dba1c0c713df8deebb25864541a66670500f34896d280484b45fe1ff6c29f2ee7aa175d8bcbd0c83cc23901a894a86996030f6292ce6eda6e6f3e6c74b3c5a3ded4903c951e6747e6102969503360f7781bf8bf015058eb89b7621798ccc85aaca036ff1bc1556bb7f62de15908484886aa8bbae";
+
+ /// Dont know what this is
+ internal const string ProductPublicKey = TestPublicKey;
+
+ /// Dont know what this is
+ internal const string ProductPublicKeyToken = "69c3241e6f0468ca";
+
+#else
+ /// No signing
+ internal const string ProductPublicKey = "";
+
+ /// No signing
+ internal const string TestPublicKey = "";
+
+ /// No signing
+ internal const string ProductPublicKeyToken = "";
+
+#endif
+}
diff --git a/src/AssemblyInfo/AssemblyMetadataAttribute.cs b/src/AssemblyInfo/AssemblyMetadataAttribute.cs
new file mode 100644
index 0000000..a436c0d
--- /dev/null
+++ b/src/AssemblyInfo/AssemblyMetadataAttribute.cs
@@ -0,0 +1,21 @@
+//---------------------------------------------------------------------
+//
+// Copyright (C) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
+//
+//---------------------------------------------------------------------
+
+namespace System.Reflection
+{
+ [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true, Inherited = false)]
+ internal sealed class AssemblyMetadataAttribute : Attribute
+ {
+ public AssemblyMetadataAttribute(string key, string value)
+ {
+ Key = key;
+ Value = value;
+ }
+
+ public string Key { get; set; }
+ public string Value { get; set; }
+ }
+}
diff --git a/src/AssemblyInfo/AssemblyRefs.cs b/src/AssemblyInfo/AssemblyRefs.cs
new file mode 100644
index 0000000..8a0e1c3
--- /dev/null
+++ b/src/AssemblyInfo/AssemblyRefs.cs
@@ -0,0 +1,201 @@
+//---------------------------------------------------------------------
+//
+// Copyright (C) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
+//
+//---------------------------------------------------------------------
+
+using System;
+using System.Runtime.InteropServices;
+
+/// Current assembly reference
+/// DO NOT FORGET TO ALSO UPDATE AssemblyRefs.vb
+internal static class DataFxAssemblyRef
+{
+ /// Current assembly names
+ internal static class Name
+ {
+ internal const string mscorlib = "mscorlib";
+ internal const string System = "System";
+ internal const string SystemCore = "System.Core";
+ internal const string SystemData = "System.Data";
+ internal const string SystemDataDataSetExtensions = "System.Data.DataSetExtensions";
+ internal const string SystemDataEntity = "System.Data.Entity";
+ internal const string SystemDataLinq = "System.Data.Linq";
+ internal const string SystemDrawing = "System.Drawing";
+ internal const string SystemNumerics = "System.Numerics";
+ internal const string SystemRuntimeRemoting = "System.Runtime.Remoting";
+ internal const string SystemRuntimeSerialization = "System.Runtime.Serialization";
+ internal const string SystemServiceModel = "System.ServiceModel";
+ internal const string SystemWeb = "System.Web";
+ internal const string SystemWebEntity = "System.Web.Entity";
+ internal const string SystemWebEntityDesign = "System.Web.Entity.Design";
+ internal const string SystemXml = "System.Xml";
+ internal const string SystemXmlLinq = "System.Xml.Linq";
+
+ internal const string DataEntity = "System.Data.Entity";
+ internal const string EntityFramework = "EntityFramework";
+ internal const string DataEntityDesign = "System.Data.Entity.Design";
+ internal const string DataServices = "Microsoft.OData.Service";
+ internal const string DataServicesClient = "Microsoft.OData.Client";
+ internal const string DataSvcUtil = "DataSvcUtil";
+ internal const string OData = "Microsoft.OData.Core";
+ internal const string Spatial = "Microsoft.Spatial";
+ internal const string EntityDataModel = "Microsoft.OData.Edm";
+ }
+
+ /// Current assembly file names
+ internal static class File
+ {
+ /// base version for data framework
+ internal const string DS_BaseVersion = VersionConstants.ReleaseVersion;
+
+ /// where to find desktop reference client sku reference assemblies
+ internal const string DotNetFrameworkV4_ClientReferenceAssemblyPath = @"%ProgramFiles%\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client";
+
+ /// where to find desktop reference extended sku reference assemblies
+ internal const string DotNetFrameworkV4_ReferenceAssemblyPath = @"%ProgramFiles%\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0";
+
+ /// where find executable binaries
+ internal const string DotNetFrameworkV4_InstallPath = @"%SystemRoot%\Microsoft.NET\Framework\v4.0.30319";
+
+ internal const string SilverlightV5_ReferenceAssemblyPath = @"%ProgramFiles%\Microsoft Silverlight\5.1.20913.0";
+ internal const string SilverlightV5_SdkClientReferenceAssemblyPath = @"%ProgramFiles%\Microsoft SDKs\Silverlight\v5.0\Libraries\Client";
+ internal const string SilverlightV5_SdkServerReferenceAssemblyPath = @"%ProgramFiles%\Microsoft SDKs\Silverlight\v5.0\Libraries\Server";
+
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DE_InstallPath
+ {
+ get { return GetDE_InstallPath(); }
+ }
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DS_InstallPath
+ {
+ get { return GetDS_InstallPath(); }
+ }
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DS_PortableInstallPath
+ {
+ get { return GetDS_PortableInstallPath(); }
+ }
+
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DS_Tools_InstallPath
+ {
+ get { return GetDS_Tools_InstallPath(); }
+ }
+
+ /// where to find desktop reference assemblies
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DE_ReferenceAssemblyPath
+ {
+ get { return GetDE_InstallPath(); }
+ }
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal static string DS_ReferenceAssemblyPath
+ {
+ get { return GetDS_InstallPath(); }
+ }
+
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ private static string GetDE_InstallPath()
+ {
+ return RuntimeEnvironment.GetRuntimeDirectory();
+ }
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ private static string GetDS_InstallPath()
+ {
+ return Environment.ExpandEnvironmentVariables(Environment.Is64BitOperatingSystem
+ ? @"%ProgramFiles(x86)%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\.NetFramework"
+ : @"%ProgramFiles%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\.NetFramework");
+ }
+
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ private static string GetDS_PortableInstallPath()
+ {
+ return Environment.ExpandEnvironmentVariables(Environment.Is64BitOperatingSystem
+ ? @"%ProgramFiles(x86)%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\.NetPortable"
+ : @"%ProgramFiles%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\.NetPortable");
+ }
+
+ [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ private static string GetDS_Tools_InstallPath()
+ {
+ return Environment.ExpandEnvironmentVariables(Environment.Is64BitOperatingSystem
+ ? @"%ProgramFiles(x86)%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\tools"
+ : @"%ProgramFiles%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\tools");
+ }
+
+ /// where to find silverlight reference assemblies
+ internal const string DS_SilverlightReferenceAssemblyPath = @"%ProgramFiles%\Microsoft WCF Data Services\" + DS_BaseVersion + @"\bin\Silverlight";
+
+ internal const string EntityDataModel = "Microsoft.OData.Edm.dll";
+ internal const string DataEntity = "System.Data.Entity.dll";
+ internal const string EntityFramework = "EntityFramework.dll";
+ internal const string DataEntityDesign = "System.Data.Entity.Design.dll";
+
+ internal const string DataServices = "Microsoft.OData.Service.dll";
+ internal const string DataServicesClient = "Microsoft.OData.Client.dll";
+ internal const string DataServicesSilverlightClient = "Microsoft.OData.Client.SL.dll";
+ internal const string DataSvcUtil = "DataSvcUtil.exe";
+ internal const string ODataLib = "Microsoft.OData.Core.dll";
+ internal const string SpatialCore = "Microsoft.Spatial.dll";
+
+ internal const string System = "System.dll";
+ internal const string SystemCore = "System.Core.dll";
+ internal const string SystemIO = "System.IO.dll";
+ internal const string SystemRuntime = "System.Runtime.dll";
+ internal const string SystemXml = "System.Xml.dll";
+ internal const string SystemXmlReaderWriter = "System.Xml.ReaderWriter.dll";
+ }
+
+ internal const string DataFxAssemblyVersion = VersionConstants.AssemblyVersion;
+ internal const string FXAssemblyVersion = "4.0.0.0";
+
+ internal const string EcmaPublicKey = "b77a5c561934e089";
+ internal const string EcmaPublicKeyToken = EcmaPublicKey;
+ internal const string EcmaPublicKeyFull = "00000000000000000400000000000000";
+
+ internal const string MicrosoftPublicKey = "b03f5f7f11d50a3a";
+ internal const string MicrosoftPublicKeyToken = MicrosoftPublicKey;
+ internal const string MicrosoftPublicKeyFull = "002400000480000094000000060200000024000052534131000400000100010007D1FA57C4AED9F0A32E84AA0FAEFD0DE9E8FD6AEC8F87FB03766C834C99921EB23BE79AD9D5DCC1DD9AD236132102900B723CF980957FC4E177108FC607774F29E8320E92EA05ECE4E821C0A5EFE8F1645C4C0C93C1AB99285D622CAA652C1DFAD63D745D6F2DE5F17E5EAF0FC4963D261C8A12436518206DC093344D5AD293";
+
+ internal const string SharedLibPublicKey = "31bf3856ad364e35";
+ internal const string SharedLibPublicKeyToken = SharedLibPublicKey;
+ internal const string SharedLibPublicKeyFull = "0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9";
+
+ internal const string SilverlightPublicKey = "31bf3856ad364e35";
+ internal const string SilverlightPublicKeyToken = SilverlightPublicKey;
+ internal const string SilverlightPublicKeyFull = "0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9";
+
+ internal const string SilverlightPlatformPublicKey = "7cec85d7bea7798e";
+ internal const string SilverlightPlatformPublicKeyToken = SilverlightPlatformPublicKey;
+ internal const string SilverlightPlatformPublicKeyFull = "00240000048000009400000006020000002400005253413100040000010001008D56C76F9E8649383049F383C44BE0EC204181822A6C31CF5EB7EF486944D032188EA1D3920763712CCB12D75FB77E9811149E6148E5D32FBAAB37611C1878DDC19E20EF135D0CB2CFF2BFEC3D115810C3D9069638FE4BE215DBF795861920E5AB6F7DB2E2CEEF136AC23D5DD2BF031700AEC232F6C6B1C785B4305C123B37AB";
+
+ private const string DataFxFramework = ", Version=" + DataFxAssemblyVersion + ", Culture=neutral, PublicKeyToken=" + SharedLibPublicKey;
+ private const string MicrosoftFramework = ", Version=" + FXAssemblyVersion + ", Culture=neutral, PublicKeyToken=" + MicrosoftPublicKey;
+ private const string NetFxFramework = ", Version=" + FXAssemblyVersion + ", Culture=neutral, PublicKeyToken=" + EcmaPublicKey;
+
+ internal const string Mscorlib = Name.mscorlib + NetFxFramework;
+ internal const string System = Name.System + NetFxFramework;
+ internal const string SystemCore = Name.SystemCore + NetFxFramework;
+ internal const string SystemData = Name.SystemData + NetFxFramework;
+ internal const string SystemDataDataSetExtensions = Name.SystemDataDataSetExtensions + NetFxFramework;
+ internal const string SystemDataEntity = Name.SystemDataEntity + NetFxFramework;
+ internal const string SystemDataLinq = Name.SystemDataLinq + NetFxFramework;
+ internal const string SystemDrawing = Name.SystemDrawing + NetFxFramework;
+ internal const string SystemNumerics = Name.SystemNumerics + NetFxFramework;
+ internal const string SystemRuntimeRemoting = Name.SystemRuntimeRemoting + NetFxFramework;
+ internal const string SystemRuntimeSerialization = Name.SystemRuntimeSerialization + NetFxFramework;
+ internal const string SystemServiceModel = Name.SystemServiceModel + NetFxFramework;
+ internal const string SystemWeb = Name.SystemWeb + MicrosoftFramework;
+ internal const string SystemWebEntity = Name.SystemWebEntity + NetFxFramework;
+ internal const string SystemWebEntityDesign = Name.SystemWebEntityDesign + NetFxFramework;
+ internal const string SystemXml = Name.SystemXml + NetFxFramework;
+ internal const string SystemXmlLinq = Name.SystemXmlLinq + NetFxFramework;
+
+ internal const string DataServices = Name.DataServices + DataFxFramework;
+ internal const string DataServicesClient = Name.DataServicesClient + DataFxFramework;
+ internal const string EntityDataModel = Name.EntityDataModel + DataFxFramework;
+ internal const string OData = Name.OData + DataFxFramework;
+ internal const string Spatial = Name.Spatial + DataFxFramework;
+}
diff --git a/src/Build.props b/src/Build.props
new file mode 100644
index 0000000..e63c26d
--- /dev/null
+++ b/src/Build.props
@@ -0,0 +1,13 @@
+
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), build.root))\
+
+
+
+
+
+
diff --git a/src/Microsoft.OpenApi.OData.Reader/Microsoft.OpenAPI.OData.Reader.csproj b/src/Microsoft.OpenApi.OData.Reader/Microsoft.OpenAPI.OData.Reader.csproj
index b11f91d..49fd78e 100644
--- a/src/Microsoft.OpenApi.OData.Reader/Microsoft.OpenAPI.OData.Reader.csproj
+++ b/src/Microsoft.OpenApi.OData.Reader/Microsoft.OpenAPI.OData.Reader.csproj
@@ -19,8 +19,10 @@
false
+
+
-
+
diff --git a/src/OoasGui/OoasGui.csproj b/src/OoasGui/OoasGui.csproj
index 708e739..c14e7a9 100644
--- a/src/OoasGui/OoasGui.csproj
+++ b/src/OoasGui/OoasGui.csproj
@@ -32,8 +32,8 @@
4
-
- ..\..\packages\Microsoft.OData.Edm.7.6.1-beta\lib\portable-net45+win8+wpa81\Microsoft.OData.Edm.dll
+
+ ..\..\packages\Microsoft.OData.Edm.7.6.1\lib\portable-net45+win8+wpa81\Microsoft.OData.Edm.dll
..\..\packages\Microsoft.OpenApi.1.1.4\lib\net46\Microsoft.OpenApi.dll
diff --git a/src/OoasGui/packages.config b/src/OoasGui/packages.config
index 24edad7..5c39632 100644
--- a/src/OoasGui/packages.config
+++ b/src/OoasGui/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/tool/After.Common.targets b/tool/After.Common.targets
new file mode 100644
index 0000000..ae17c8b
--- /dev/null
+++ b/tool/After.Common.targets
@@ -0,0 +1,188 @@
+
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+
+
+
+
+ GenerateTextStringResources;
+ GenerateAssemblyAttributeFile;
+ GenerateVersionConstantsFile;
+ ExcludeAssemblyFilesFromSourceAnalysis;
+ $(BuildDependsOn);
+
+
+
+
+
+
+
+
+
+
+ PrepareForBuild;
+ GenerateStringResources;
+
+
+
+
+
+
+
+
+
+
+ Resx
+ false
+ %(Filename)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ UNDEFINED_GenerateAssemblyAttributeTemplate
+
+using System.Reflection;
+using System.Resources;
+
+[assembly: AssemblyDescription("%AssemblyNameFull%")]
+[assembly: AssemblyTitle("%AssemblyNameFull%")]
+[assembly: AssemblyDefaultAlias("%AssemblyNameFull%")]
+[assembly: AssemblyFileVersion("%VersionFull%")]
+[assembly: AssemblyInformationalVersion("%VersionFull%")]
+[assembly: AssemblyVersion("%VersionFullSemantic%")]
+[assembly: SatelliteContractVersion("%VersionFull%")]
+[assembly: AssemblyMetadata("Serviceable", "True")]
+
+
+
+
+ $(GenerateAssemblyAttributeTemplateCSharp)
+ $(VersionOutputPath)\AssemblyMetadataAttribute$(DefaultLanguageSourceExtension)
+ true
+
+
+
+ $(IntermediateOutputPath.TrimEnd("\\"))\AssemblyAttributes$(DefaultLanguageSourceExtension)
+ $(AssemblyName)$(TargetExt)
+ $([System.String]::Copy('$(GenerateAssemblyAttributeTemplate)').Replace("%25AssemblyNameFull%25",$(AssemblyNameFull)).Replace("%25VersionFull%25",$(VersionFull)).Replace("%25VersionFullSemantic%25",$(VersionFullSemantic)))
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ UNDEFINED_GenerateVersionConstantsTemplate
+
+internal static class VersionConstants
+{
+ internal const string ReleaseVersion = "%VersionFullSemantic%";
+ internal const string AssemblyVersion = "%VersionFullSemantic%";
+}
+
+
+Friend Class VersionConstants
+ Friend Shared ReleaseVersion As String = "%VersionFullSemantic%"
+ Friend Shared AssemblyVersion As String = "%VersionFullSemantic%"
+End Class
+
+
+
+
+ $(GenerateVersionConstantsTemplateCSharp)
+
+
+
+ $(GenerateVersionConstantsTemplateVB)
+
+
+
+ $(IntermediateOutputPath.TrimEnd("\\"))\VersionConstants$(DefaultLanguageSourceExtension)
+ $([System.String]::Copy('$(GenerateVersionConstantsTemplate)').Replace("%25VersionFull%25",$(VersionFull)).Replace("%25VersionFullSemantic%25",$(VersionFullSemantic)))
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tool/Before.Common.targets b/tool/Before.Common.targets
new file mode 100644
index 0000000..28d90d6
--- /dev/null
+++ b/tool/Before.Common.targets
@@ -0,0 +1,21 @@
+
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+
+
+
+ $(VersionRunBeforeTargets);CoreCompile
+ $(EnlistmentRoot)\src\AssemblyInfo
+ AssemblyInfoCommon$(DefaultLanguageSourceExtension)
+
+
+
+
+ true
+ $(AssemblyInfoCommonFile)
+
+
+
+
diff --git a/tool/Build.props b/tool/Build.props
new file mode 100644
index 0000000..a8df6b6
--- /dev/null
+++ b/tool/Build.props
@@ -0,0 +1,20 @@
+
+
+
+
+ $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
+
+
+
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), build.root))
+ $(EnlistmentRoot.TrimEnd({'\\'}))
+ $(EnlistmentRoot)\tool
+
+
+
+
+ $(MSBuildThisFileDirectory)Before.Common.targets
+ $(MSBuildThisFileDirectory)After.Common.targets
+
+
+
diff --git a/tool/PoliCheck/RunPoliCheck.ps1 b/tool/PoliCheck/RunPoliCheck.ps1
new file mode 100644
index 0000000..92bb179
--- /dev/null
+++ b/tool/PoliCheck/RunPoliCheck.ps1
@@ -0,0 +1,34 @@
+param(
+ [string]$BuildSourceDir,
+ [string]$folderName,
+ [string]$branchName,
+ [string]$resultRoot,
+ [string]$PoliCheckPath
+)
+
+#
+#Example:
+# RunPoliCheck.ps1 -BuildSourceDir "C:\BuildAgent\_work\32\s"
+# -folderName "src"
+# -branchName "odata.net-master"
+# -resultRoot "C:\Users\ODatabld\Documents\PoliCheck\LatestRunResult"
+# -PoliCheckPath "C:\Program Files (x86)\Microsoft\PoliCheck\"
+#
+
+$targetPath= "${BuildSourceDir}\${folderName}"
+Write-Output "targetPath: ${targetPath}"
+$result="${resultRoot}\${branchName}\poli_result_${folderName}.xml"
+
+cd "${PoliCheckPath}"
+
+.\Policheck.exe /F:$targetPath /T:9 /Sev:"1|2" /PE:2 /O:$result
+
+$FileContent = Get-Content $result
+$PassResult = Select-String -InputObject $FileContent -Pattern ""
+
+If ($PassResult.Matches.Count -eq 0) {
+ Write-Error "PoliCheck failed for target ${targetPath}. For details, please check this result file on build machine: ${result}: section ."
+ exit 1
+}
+
+Write-Output "PoliCheck pass for target ${targetPath}"
\ No newline at end of file
diff --git a/tool/UpdateDocs/UpdateDocs.csproj b/tool/UpdateDocs/UpdateDocs.csproj
index 1bd833a..a6fdfc7 100644
--- a/tool/UpdateDocs/UpdateDocs.csproj
+++ b/tool/UpdateDocs/UpdateDocs.csproj
@@ -32,8 +32,8 @@
4
-
- packages\Microsoft.OData.Edm.7.6.1-beta\lib\portable-net45+win8+wpa81\Microsoft.OData.Edm.dll
+
+ packages\Microsoft.OData.Edm.7.6.1\lib\portable-net45+win8+wpa81\Microsoft.OData.Edm.dll
packages\Microsoft.OpenApi.1.1.4\lib\net46\Microsoft.OpenApi.dll
diff --git a/tool/UpdateDocs/packages.config b/tool/UpdateDocs/packages.config
index 24edad7..5c39632 100644
--- a/tool/UpdateDocs/packages.config
+++ b/tool/UpdateDocs/packages.config
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/tool/WebStack.versions.settings.targets b/tool/WebStack.versions.settings.targets
index bff9cac..4c4876d 100644
--- a/tool/WebStack.versions.settings.targets
+++ b/tool/WebStack.versions.settings.targets
@@ -5,14 +5,14 @@
1
0
- 0
+ 1
[1.1.4, 2.0.0)
- [7.6.0, 8.0.0)
+ [7.6.1, 8.0.0)
+
+ 1
+ 0
+ 1
+
+
+
+
+
+ [1.1.4, 2.0.0)
+ [7.6.1, 8.0.0)
+
+
+
+
+ 2017
+ $([System.Convert]::ToInt16('$([MSBuild]::Add(1, $([MSBuild]::Subtract($([System.DateTime]::Now.Year), $(VersionStartYear)))))$([System.DateTime]::Now.ToString("MMdd"))'))
+ $([System.Convert]::ToString($(VersionDateCode)))
+
+
+
+
+ $(VersionMajor).$(VersionMinor).$(VersionBuild)
+ $(VersionFullSemantic).$(VersionRevision)
+
+
+
+
+ $(VersionFullSemantic)
+ $(VersionFullSemantic)-$(VersionRelease)
+
+
+