Unify projects in SDK-style and PackageReference (#54)

* Unify projects in SDK-style and PackageReference

* Add a note on the known issue about dlls not being copied

* Bump CI to a more recent stable version of Mono

This adds support for .net472, the first version of .NET
with full support for netstandard2.0
This commit is contained in:
Daniel Cazzulino
2019-10-25 16:43:04 -04:00
committed by Miguel de Icaza
parent 4e85b5117e
commit 00c5997daa
10 changed files with 29 additions and 144 deletions

View File

@@ -5,6 +5,6 @@ script:
- msbuild /t:Restore $TRAVIS_BUILD_DIR/Terminal.sln
- cd $TRAVIS_BUILD_DIR/
- msbuild /p:Configuration=Release Terminal.sln
mono: "5.4.1"
mono: "5.20.0"
dotnet: "2.1.4"
os: "osx"

View File

@@ -1,56 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{1228D992-C801-49BB-839A-7BD28A3FFF0A}</ProjectGuid>
<TargetFramework>net472</TargetFramework>
<OutputType>Exe</OutputType>
<RootNamespace>Designer</RootNamespace>
<AssemblyName>Designer</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<RootNamespace>Terminal</RootNamespace>
<AssemblyName>Terminal</AssemblyName>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
<Platforms>AnyCPU;x86</Platforms>
<Platform>x86</Platform>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="NStack">
<HintPath>..\packages\NStack.Core.0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
</Reference>
<Reference Include="NStack">
<HintPath>..\packages\NStack.Core.0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
</Reference>
<PackageReference Include="NStack.Core" Version="0.11.0" />
</ItemGroup>
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<ProjectReference Include="..\Terminal.Gui\Terminal.Gui.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Terminal.Gui\Terminal.Gui.csproj">
<Project>{00F366F8-DEE4-482C-B9FD-6DB0200B79E5}</Project>
<Name>Terminal.Gui</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -1,26 +0,0 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle ("Designer")]
[assembly: AssemblyDescription ("")]
[assembly: AssemblyConfiguration ("")]
[assembly: AssemblyCompany ("")]
[assembly: AssemblyProduct ("")]
[assembly: AssemblyCopyright ("${AuthorCopyright}")]
[assembly: AssemblyTrademark ("")]
[assembly: AssemblyCulture ("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion ("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NStack.Core" version="0.11.0" targetFramework="net47" />
</packages>

View File

@@ -1,55 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{B0A602CD-E176-449D-8663-64238D54F857}</ProjectGuid>
<TargetFramework>net472</TargetFramework>
<OutputType>Exe</OutputType>
<RootNamespace>Terminal</RootNamespace>
<AssemblyName>Terminal</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Release\Terminal.xml</DocumentationFile>
<ExternalConsole>true</ExternalConsole>
<PlatformTarget>x86</PlatformTarget>
<Platforms>AnyCPU;x86</Platforms>
<Platform>x86</Platform>
<DefaultItemExcludes>StandaloneExample\**\*.*;Terminal.Gui\**\*.*</DefaultItemExcludes>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="NStack">
<HintPath>..\packages\NStack.Core.0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="NStack">
<HintPath>..\packages\NStack.Core.0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
</Reference>
<PackageReference Include="NStack.Core" Version="0.11.0" />
</ItemGroup>
<ItemGroup>
<Compile Include="demo.cs" />
<ProjectReference Include="..\Terminal.Gui\Terminal.Gui.csproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Terminal.Gui\Terminal.Gui.csproj">
<Project>{00F366F8-DEE4-482C-B9FD-6DB0200B79E5}</Project>
<Name>Terminal.Gui</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NStack.Core" version="0.11.0" targetFramework="net461" />
</packages>

View File

@@ -213,3 +213,15 @@ package version has been updated on the
Terminal.Gui/Terminal.Gui.csproj, and push.
Then once the package is built, VSTS will request an approval.
# Known Issues
There is a [known issue](https://github.com/NuGet/Home/issues/4837) that causes the
referenced package assemblies to be missing from the output directory of your console
apps and therefore fail at run-time. In order to force the copying, you can add the
following property to your console project:
```xml
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
```

View File

@@ -9,7 +9,7 @@
<PropertyGroup>
<GeneratePackageOnBuild Condition=" '$(Configuration)' == 'Release' ">true</GeneratePackageOnBuild>
<PackageId>Terminal.Gui</PackageId>
<PackageVersion>0.24</PackageVersion>
<PackageVersion>0.25</PackageVersion>
<Authors>Miguel de Icaza</Authors>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageProjectUrl>https://github.com/migueldeicaza/gui.cs/</PackageProjectUrl>
@@ -69,14 +69,6 @@
<ItemGroup>
<Folder Include="Dialogs\" />
</ItemGroup>
<ItemGroup>
<Reference Include="NStack">
<HintPath>..\..\..\Users\miguel\.nuget\packages\nstack.core\0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
</Reference>
<Reference Include="NStack">
<HintPath>..\..\..\Users\miguel\.nuget\packages\nstack.core\0.11.0\lib\netstandard1.5\NStack.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<None Remove="Drivers\#ConsoleDriver.cs#" />
</ItemGroup>

View File

@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NStack.Core" version="0.11.0" targetFramework="net461" />
<package id="System.ValueTuple" version="4.4.0" targetFramework="net461" />
</packages>

View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NStack.Core" version="0.11.0" targetFramework="net461" />
</packages>