From 9cd263095d8ce30fe7d096cdc960d2645d0a21c3 Mon Sep 17 00:00:00 2001 From: WonYoung Choi Date: Sat, 3 Sep 2016 17:27:29 +0900 Subject: [PATCH] Fix project files to support netstandard 1.6 Change-Id: I0791027fc4deb3fe055bdb023dba866c70ed3c51 Signed-off-by: WonYoung Choi --- .gitignore | 4 +- Tizen.System/CoreFx.References.targets | 265 ------------------- Tizen.System/Tizen.System.Net45.csproj | 93 +++++++ Tizen.System/Tizen.System.Net45.project.json | 11 + Tizen.System/Tizen.System.csproj | 192 +++++++------- Tizen.System/Tizen.System.nuspec | 12 + Tizen.System/Tizen.System.project.json | 12 + packaging/csapi-system.spec | 68 ++++- 8 files changed, 283 insertions(+), 374 deletions(-) delete mode 100644 Tizen.System/CoreFx.References.targets create mode 100644 Tizen.System/Tizen.System.Net45.csproj create mode 100644 Tizen.System/Tizen.System.Net45.project.json create mode 100644 Tizen.System/Tizen.System.nuspec create mode 100644 Tizen.System/Tizen.System.project.json diff --git a/.gitignore b/.gitignore index d7eae29..46619d5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,6 @@ bin/ obj/ *.exe *.dll -!tct-system-tizen-tests/lib/*.dll +*.csproj.user +*.lock.json +.vs/ diff --git a/Tizen.System/CoreFx.References.targets b/Tizen.System/CoreFx.References.targets deleted file mode 100644 index dab29ec..0000000 --- a/Tizen.System/CoreFx.References.targets +++ /dev/null @@ -1,265 +0,0 @@ - - - - - False - $(CoreFxPath)/Microsoft.Win32.Primitives.dll - - - False - $(CoreFxPath)/System.AppContext.dll - - - False - $(CoreFxPath)/System.Collections.Concurrent.dll - - - False - $(CoreFxPath)/System.Collections.dll - - - False - $(CoreFxPath)/System.ComponentModel.Annotations.dll - - - False - $(CoreFxPath)/System.ComponentModel.dll - - - False - $(CoreFxPath)/System.Console.dll - - - False - $(CoreFxPath)/System.Diagnostics.Debug.dll - - - False - $(CoreFxPath)/System.Diagnostics.Process.dll - - - False - $(CoreFxPath)/System.Diagnostics.Tools.dll - - - False - $(CoreFxPath)/System.Diagnostics.TraceSource.dll - - - False - $(CoreFxPath)/System.Diagnostics.Tracing.dll - - - False - $(CoreFxPath)/System.Dynamic.Runtime.dll - - - False - $(CoreFxPath)/System.Globalization.Calendars.dll - - - False - $(CoreFxPath)/System.Globalization.dll - - - False - $(CoreFxPath)/System.Globalization.Extensions.dll - - - False - $(CoreFxPath)/System.IO.Compression.dll - - - False - $(CoreFxPath)/System.IO.Compression.ZipFile.dll - - - False - $(CoreFxPath)/System.IO.dll - - - False - $(CoreFxPath)/System.IO.FileSystem.dll - - - False - $(CoreFxPath)/System.IO.FileSystem.Primitives.dll - - - False - $(CoreFxPath)/System.IO.FileSystem.Watcher.dll - - - False - $(CoreFxPath)/System.IO.MemoryMappedFiles.dll - - - False - $(CoreFxPath)/System.IO.UnmanagedMemoryStream.dll - - - False - $(CoreFxPath)/System.Linq.dll - - - False - $(CoreFxPath)/System.Linq.Expressions.dll - - - False - $(CoreFxPath)/System.Linq.Parallel.dll - - - False - $(CoreFxPath)/System.Linq.Queryable.dll - - - False - $(CoreFxPath)/System.Net.Http.dll - - - False - $(CoreFxPath)/System.Net.NameResolution.dll - - - False - $(CoreFxPath)/System.Net.Primitives.dll - - - False - $(CoreFxPath)/System.Net.Requests.dll - - - False - $(CoreFxPath)/System.Net.Security.dll - - - False - $(CoreFxPath)/System.Net.Sockets.dll - - - False - $(CoreFxPath)/System.Net.WebHeaderCollection.dll - - - False - $(CoreFxPath)/System.Numerics.Vectors.dll - - - False - $(CoreFxPath)/System.ObjectModel.dll - - - False - $(CoreFxPath)/System.Reflection.DispatchProxy.dll - - - False - $(CoreFxPath)/System.Reflection.dll - - - False - $(CoreFxPath)/System.Reflection.Extensions.dll - - - False - $(CoreFxPath)/System.Reflection.Primitives.dll - - - False - $(CoreFxPath)/System.Reflection.TypeExtensions.dll - - - False - $(CoreFxPath)/System.Resources.ResourceManager.dll - - - False - $(CoreFxPath)/System.Runtime.dll - - - False - $(CoreFxPath)/System.Runtime.Extensions.dll - - - False - $(CoreFxPath)/System.Runtime.Handles.dll - - - False - $(CoreFxPath)/System.Runtime.InteropServices.dll - - - False - $(CoreFxPath)/System.Runtime.InteropServices.RuntimeInformation.dll - - - False - $(CoreFxPath)/System.Runtime.Loader.dll - - - False - $(CoreFxPath)/System.Runtime.Numerics.dll - - - False - $(CoreFxPath)/System.Security.Cryptography.Algorithms.dll - - - False - $(CoreFxPath)/System.Security.Cryptography.Encoding.dll - - - False - $(CoreFxPath)/System.Security.Cryptography.Primitives.dll - - - False - $(CoreFxPath)/System.Security.Cryptography.X509Certificates.dll - - - False - $(CoreFxPath)/System.Text.Encoding.dll - - - False - $(CoreFxPath)/System.Text.Encoding.Extensions.dll - - - False - $(CoreFxPath)/System.Text.RegularExpressions.dll - - - False - $(CoreFxPath)/System.Threading.dll - - - False - $(CoreFxPath)/System.Threading.Tasks.dll - - - False - $(CoreFxPath)/System.Threading.Tasks.Parallel.dll - - - False - $(CoreFxPath)/System.Threading.Thread.dll - - - False - $(CoreFxPath)/System.Threading.ThreadPool.dll - - - False - $(CoreFxPath)/System.Threading.Timer.dll - - - False - $(CoreFxPath)/System.Xml.ReaderWriter.dll - - - False - $(CoreFxPath)/System.Xml.XDocument.dll - - - \ No newline at end of file diff --git a/Tizen.System/Tizen.System.Net45.csproj b/Tizen.System/Tizen.System.Net45.csproj new file mode 100644 index 0000000..8bc5664 --- /dev/null +++ b/Tizen.System/Tizen.System.Net45.csproj @@ -0,0 +1,93 @@ + + + + Debug + AnyCPU + {AE5AE8FA-80A0-4716-B7C5-94CD5443A05C} + Library + Properties + Tizen.System + Tizen.System + 512 + v4.5 + + + true + full + false + bin\Debug\Net45\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\Net45\ + TRACE + prompt + 4 + + + true + + + Tizen.System.snk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Tizen.System/Tizen.System.Net45.project.json b/Tizen.System/Tizen.System.Net45.project.json new file mode 100644 index 0000000..d9af4f0 --- /dev/null +++ b/Tizen.System/Tizen.System.Net45.project.json @@ -0,0 +1,11 @@ +{ + "dependencies": { + "Tizen": "1.0.0" + }, + "frameworks": { + "net45": {} + }, + "runtimes": { + "win": {} + } +} diff --git a/Tizen.System/Tizen.System.csproj b/Tizen.System/Tizen.System.csproj index 175a75f..0155f21 100644 --- a/Tizen.System/Tizen.System.csproj +++ b/Tizen.System/Tizen.System.csproj @@ -1,104 +1,102 @@ - - - - - Debug - AnyCPU - {A5C7AB61-87F1-4707-BBF4-322D682E223E} - Library - Properties - Tizen.System - Tizen.System - v4.5 - 512 - - 8.0.30703 - 2.0 - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - true - - - Tizen.System.snk - - - - - - - - - - - - - - - ..\..\tizen\Tizen.Internals\bin\Debug\Tizen.Internals.dll - - - ..\..\tizen\Tizen\bin\Debug\Tizen.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + Debug + AnyCPU + {A5C7AB61-87F1-4707-BBF4-322D682E223E} + Library + Properties + Tizen.System + Tizen.System + 512 + + + .NETStandard + v1.6 + .NETStandard,Version=v1.6 + false + true + $(NoWarn);1701;1702 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + true + + + Tizen.System.snk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + --> + + + + <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory) + <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory) + true + \ No newline at end of file diff --git a/Tizen.System/Tizen.System.nuspec b/Tizen.System/Tizen.System.nuspec new file mode 100644 index 0000000..e664a48 --- /dev/null +++ b/Tizen.System/Tizen.System.nuspec @@ -0,0 +1,12 @@ + + + + Tizen.System + $version$ + Tizen Developers + System API for Tizen.Net + + + + + diff --git a/Tizen.System/Tizen.System.project.json b/Tizen.System/Tizen.System.project.json new file mode 100644 index 0000000..beb9e15 --- /dev/null +++ b/Tizen.System/Tizen.System.project.json @@ -0,0 +1,12 @@ +{ + "dependencies": { + "NETStandard.Library": "1.6.0", + "Tizen": "1.0.0" + }, + "frameworks": { + "netstandard1.6": {} + }, + "runtimes": { + "win": {} + } +} diff --git a/packaging/csapi-system.spec b/packaging/csapi-system.spec index 4d48cba..52228ef 100644 --- a/packaging/csapi-system.spec +++ b/packaging/csapi-system.spec @@ -1,4 +1,4 @@ -%{!?dotnet_assembly_path: %define dotnet_assembly_path %{_datadir}/assembly} +%{!?dotnet_assembly_path: %define dotnet_assembly_path /opt/usr/share/dotnet.tizen/framework} %{!?dotnet_core_path: %define dotnet_core_path %{_datadir}/tizen.net/ref} %if 0%{?tizen_build_devel_mode} @@ -27,8 +27,10 @@ AutoReqProv: no BuildRequires: corefx-managed-32b-ref %endif +BuildRequires: dotnet-build-tools + # C# API Requires -BuildRequires: csapi-tizen +BuildRequires: csapi-tizen-devel %description Tizen System API for C# @@ -40,25 +42,69 @@ cp %{SOURCE1} . %define Assemblies Tizen.System %build +# Build for Net45 for ASM in %{Assemblies}; do -xbuild $ASM/$ASM.csproj \ +if [ -e $ASM/$ASM.Net45.csproj ]; then + xbuild $ASM/$ASM.Net45.csproj \ + /p:Configuration=%{BUILDCONF} \ + /p:DotnetAssemblyPath=%{dotnet_assembly_path}/devel/net45 \ + /p:OutputPath=bin/net45 +fi + +# Build for Dotnet %if 0%{?_with_corefx} - /p:NoStdLib=True \ - /p:TargetFrameworkVersion=v5.0 \ - /p:AddAdditionalExplicitAssemblyReferences=False \ - /p:CoreFxPath=%{dotnet_core_path} \ +if [ -e $ASM/$ASM.csproj ]; then + xbuild $ASM/$ASM.csproj \ + /p:Configuration=%{BUILDCONF} \ + /p:DotnetAssemblyPath=%{dotnet_assembly_path}/devel/netstandard1.6 \ + /p:CoreFxPath=%{dotnet_core_path} \ + /p:OutputPath=bin/netstandard1.6 +fi %endif - /p:Configuration=%{BUILDCONF} \ - /p:ReferencePath=%{dotnet_assembly_path} + +# Make NuGet package +dotnet-gbs pack $ASM/$ASM.nuspec --PackageVersion=%{version} --PackageFiles=$ASM/bin + done %install -mkdir -p %{buildroot}%{dotnet_assembly_path} +mkdir -p %{buildroot}%{dotnet_assembly_path}/devel for ASM in %{Assemblies}; do -install -p -m 644 $ASM/bin/%{BUILDCONF}/$ASM.dll %{buildroot}%{dotnet_assembly_path} + cp -fr $ASM/bin/* %{buildroot}%{dotnet_assembly_path}/devel +%if 0%{?_with_corefx} + install -p -m 644 $ASM/bin/netstandard1.6/$ASM.dll %{buildroot}%{dotnet_assembly_path} +%else + install -p -m 644 $ASM/bin/net45/$ASM.dll %{buildroot}%{dotnet_assembly_path} +%endif done +mkdir -p %{buildroot}/nuget +install -p -m 644 *.nupkg %{buildroot}/nuget + %files %manifest %{name}.manifest %license LICENSE %attr(644,root,root) %{dotnet_assembly_path}/*.dll + +%package devel +Summary: Development package for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +AutoReqProv: no + +%description devel +Development package for %{name} + +%files devel +%{dotnet_assembly_path}/devel/* + +%package nuget +Summary: NuGet package for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description nuget +NuGet package for %{name} + +%files nuget +/nuget/*.nupkg -- 2.34.1