Fix project files to support netstandard 1.6
authorWonYoung Choi <wy80.choi@samsung.com>
Sat, 3 Sep 2016 06:54:09 +0000 (15:54 +0900)
committerWonYoung Choi <wy80.choi@samsung.com>
Sat, 3 Sep 2016 06:54:09 +0000 (15:54 +0900)
Change-Id: Ie3a01a8e659b92365bf2c171cda7a6e402805768
Signed-off-by: WonYoung Choi <wy80.choi@samsung.com>
.gitignore [new file with mode: 0644]
packaging/csapi-media-key.spec
src/Tizen.System.MediaKey/CoreFx.References.targets [deleted file]
src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.csproj [new file with mode: 0644]
src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.project.json [new file with mode: 0644]
src/Tizen.System.MediaKey/Tizen.System.MediaKey.csproj [changed mode: 0755->0644]
src/Tizen.System.MediaKey/Tizen.System.MediaKey.nuspec [new file with mode: 0644]
src/Tizen.System.MediaKey/Tizen.System.MediaKey.project.json [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..46619d5
--- /dev/null
@@ -0,0 +1,7 @@
+bin/
+obj/
+*.exe
+*.dll
+*.csproj.user
+*.lock.json
+.vs/
index 6d03b53..89dc25b 100755 (executable)
@@ -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 Requries
-BuildRequires: csapi-tizen
+BuildRequires: csapi-tizen-devel
 
 %description
 Tizen Media Key API for C#
@@ -40,25 +42,69 @@ cp %{SOURCE1} .
 %define Assemblies Tizen.System.MediaKey
 
 %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
diff --git a/src/Tizen.System.MediaKey/CoreFx.References.targets b/src/Tizen.System.MediaKey/CoreFx.References.targets
deleted file mode 100644 (file)
index dab29ec..0000000
+++ /dev/null
@@ -1,265 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup Condition=" '$(CoreFxPath)' != '' ">
-     <Reference Include="Microsoft.Win32.Primitives">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/Microsoft.Win32.Primitives.dll</HintPath>
-    </Reference>
-    <Reference Include="System.AppContext">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.AppContext.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Collections.Concurrent">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Collections.Concurrent.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Collections">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Collections.dll</HintPath>
-    </Reference>
-    <Reference Include="System.ComponentModel.Annotations">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.ComponentModel.Annotations.dll</HintPath>
-    </Reference>
-    <Reference Include="System.ComponentModel">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.ComponentModel.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Console">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Console.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Diagnostics.Debug">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Diagnostics.Debug.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Diagnostics.Process">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Diagnostics.Process.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Diagnostics.Tools">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Diagnostics.Tools.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Diagnostics.TraceSource">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Diagnostics.TraceSource.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Diagnostics.Tracing">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Diagnostics.Tracing.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Dynamic.Runtime">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Dynamic.Runtime.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Globalization.Calendars">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Globalization.Calendars.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Globalization">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Globalization.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Globalization.Extensions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Globalization.Extensions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.Compression">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.Compression.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.Compression.ZipFile">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.Compression.ZipFile.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.FileSystem">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.FileSystem.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.FileSystem.Primitives">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.FileSystem.Primitives.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.FileSystem.Watcher">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.FileSystem.Watcher.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.MemoryMappedFiles">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.MemoryMappedFiles.dll</HintPath>
-    </Reference>
-    <Reference Include="System.IO.UnmanagedMemoryStream">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.IO.UnmanagedMemoryStream.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Linq">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Linq.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Linq.Expressions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Linq.Expressions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Linq.Parallel">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Linq.Parallel.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Linq.Queryable">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Linq.Queryable.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.Http">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.Http.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.NameResolution">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.NameResolution.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.Primitives">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.Primitives.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.Requests">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.Requests.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.Security">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.Security.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.Sockets">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.Sockets.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Net.WebHeaderCollection">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Net.WebHeaderCollection.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Numerics.Vectors">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Numerics.Vectors.dll</HintPath>
-    </Reference>
-    <Reference Include="System.ObjectModel">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.ObjectModel.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Reflection.DispatchProxy">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Reflection.DispatchProxy.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Reflection">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Reflection.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Reflection.Extensions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Reflection.Extensions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Reflection.Primitives">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Reflection.Primitives.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Reflection.TypeExtensions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Reflection.TypeExtensions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Resources.ResourceManager">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Resources.ResourceManager.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Extensions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.Extensions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Handles">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.Handles.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.InteropServices">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.InteropServices.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.InteropServices.RuntimeInformation">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.InteropServices.RuntimeInformation.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Loader">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.Loader.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Numerics">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Runtime.Numerics.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Security.Cryptography.Algorithms">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Security.Cryptography.Algorithms.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Security.Cryptography.Encoding">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Security.Cryptography.Encoding.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Security.Cryptography.Primitives">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Security.Cryptography.Primitives.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Security.Cryptography.X509Certificates">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Security.Cryptography.X509Certificates.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Text.Encoding">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Text.Encoding.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Text.Encoding.Extensions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Text.Encoding.Extensions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Text.RegularExpressions">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Text.RegularExpressions.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading.Tasks">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.Tasks.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading.Tasks.Parallel">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.Tasks.Parallel.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading.Thread">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.Thread.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading.ThreadPool">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.ThreadPool.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Threading.Timer">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Threading.Timer.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Xml.ReaderWriter">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Xml.ReaderWriter.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Xml.XDocument">
-      <Private>False</Private>
-      <HintPath>$(CoreFxPath)/System.Xml.XDocument.dll</HintPath>
-    </Reference>
-  </ItemGroup>
-</Project>
\ No newline at end of file
diff --git a/src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.csproj b/src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.csproj
new file mode 100644 (file)
index 0000000..3b6d6f2
--- /dev/null
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProjectGuid>{07A0D110-3092-4A09-BF85-95555C7E7DFF}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Tizen.System.MediaKey</AssemblyName>\r
+    <FileAlignment>512</FileAlignment>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <Optimize>false</Optimize>\r
+    <OutputPath>bin\Debug\Net45\</OutputPath>\r
+    <DefineConstants>DEBUG;TRACE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
+    <DocumentationFile>bin\Debug\Tizen.System.MediaKey.XML</DocumentationFile>\r
+    <CodeAnalysisRuleSet>ExtendedDesignGuidelineRules.ruleset</CodeAnalysisRuleSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <Optimize>true</Optimize>\r
+    <OutputPath>bin\Release\Net45\</OutputPath>\r
+    <DefineConstants>TRACE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>Tizen.System.MediaKey.snk</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <Reference Include="System" />\r
+    <Reference Include="System.Core" />\r
+    <Reference Include="System.Xml.Linq" />\r
+    <Reference Include="System.Data.DataSetExtensions" />\r
+    <Reference Include="Microsoft.CSharp" />\r
+    <Reference Include="System.Data" />\r
+    <Reference Include="System.Net.Http" />\r
+    <Reference Include="System.Xml" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Compile Include="GlobalSuppressions.cs" />\r
+    <Compile Include="Interop\Interop.Libraries.cs" />\r
+    <Compile Include="Interop\Interop.MediaKey.cs" />\r
+    <Compile Include="Properties\AssemblyInfo.cs" />\r
+    <Compile Include="Tizen.System\MediaKey.cs" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="Tizen.System.MediaKey.Net45.project.json" />\r
+    <None Include="Tizen.System.MediaKey.nuspec" />\r
+    <None Include="Tizen.System.MediaKey.snk" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <CodeAnalysisDictionary Include="CustomDictionary.xml" />\r
+  </ItemGroup>\r
+  <Import Project="$(MSBuildExtensionsPath)\Tizen\Tizen.CSharp.GBS.targets" Condition="Exists('$(MSBuildExtensionsPath)\Tizen\Tizen.CSharp.GBS.targets')" />\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->\r
+</Project>
\ No newline at end of file
diff --git a/src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.project.json b/src/Tizen.System.MediaKey/Tizen.System.MediaKey.Net45.project.json
new file mode 100644 (file)
index 0000000..d9af4f0
--- /dev/null
@@ -0,0 +1,11 @@
+{
+  "dependencies": {
+    "Tizen": "1.0.0"
+  },
+  "frameworks": {
+    "net45": {}
+  },
+  "runtimes": {
+    "win": {}
+  }
+}
old mode 100755 (executable)
new mode 100644 (file)
index b96c7ea..2a822fe
@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />\r
+<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <PropertyGroup>\r
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
@@ -10,9 +9,16 @@
     <RootNamespace>\r
     </RootNamespace>\r
     <AssemblyName>Tizen.System.MediaKey</AssemblyName>\r
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
   </PropertyGroup>\r
+  <PropertyGroup>\r
+    <TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>\r
+    <TargetFrameworkVersion>v1.6</TargetFrameworkVersion>\r
+    <NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+    <NoStdLib>true</NoStdLib>\r
+    <NoWarn>$(NoWarn);1701;1702</NoWarn>\r
+  </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
     <DebugSymbols>true</DebugSymbols>\r
     <DebugType>full</DebugType>\r
   <PropertyGroup>\r
     <AssemblyOriginatorKeyFile>Tizen.System.MediaKey.snk</AssemblyOriginatorKeyFile>\r
   </PropertyGroup>\r
-  <Import Project="CoreFx.References.targets" />\r
-  <ItemGroup Condition=" '$(CoreFxPath)' == '' ">\r
-    <Reference Include="System" />\r
-    <Reference Include="System.Core" />\r
-    <Reference Include="System.Xml.Linq" />\r
-    <Reference Include="System.Data.DataSetExtensions" />\r
-    <Reference Include="Microsoft.CSharp" />\r
-    <Reference Include="System.Data" />\r
-    <Reference Include="System.Net.Http" />\r
-    <Reference Include="System.Xml" />\r
-  </ItemGroup>\r
   <ItemGroup>\r
     <Compile Include="GlobalSuppressions.cs" />\r
     <Compile Include="Interop\Interop.Libraries.cs" />\r
     <Compile Include="Tizen.System\MediaKey.cs" />\r
   </ItemGroup>\r
   <ItemGroup>\r
+    <None Include="Tizen.System.MediaKey.nuspec">\r
+      <SubType>Designer</SubType>\r
+    </None>\r
+    <None Include="Tizen.System.MediaKey.project.json" />\r
     <None Include="Tizen.System.MediaKey.snk" />\r
   </ItemGroup>\r
   <ItemGroup>\r
     <CodeAnalysisDictionary Include="CustomDictionary.xml" />\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <Reference Include="Tizen">\r
-      <HintPath>..\..\tizen\Tizen\bin\Debug\Tizen.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="Tizen.Internals">\r
-      <HintPath>..\..\tizen\Tizen.Internals\bin\Debug\Tizen.Internals.dll</HintPath>\r
-    </Reference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\..\tizen\Tizen.Internals\Tizen.Internals.csproj">\r
-      <Project>{b9aa1cb2-f72d-4a30-a33b-a20c850a38a0}</Project>\r
-      <Name>Tizen.Internals</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\..\tizen\Tizen\Tizen.csproj">\r
-      <Project>{7659ca59-410d-41a1-9841-586e88bc78c9}</Project>\r
-      <Name>Tizen</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <WCFMetadata Include="Service References\" />\r
-  </ItemGroup>\r
+  <Import Project="$(MSBuildExtensionsPath)\Tizen\Tizen.CSharp.GBS.targets" Condition="Exists('$(MSBuildExtensionsPath)\Tizen\Tizen.CSharp.GBS.targets')" />\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
        Other similar extension points exist, see Microsoft.Common.targets.
   <Target Name="AfterBuild">
   </Target>
   -->\r
-</Project>
+  <PropertyGroup>\r
+    <!-- https://github.com/dotnet/corefxlab/tree/master/samples/NetCoreSample and
+       https://docs.microsoft.com/en-us/dotnet/articles/core/tutorials/target-dotnetcore-with-msbuild
+    -->\r
+    <!-- We don't use any of MSBuild's resolution logic for resolving the framework, so just set these two
+       properties to any folder that exists to skip the GetReferenceAssemblyPaths task (not target) and
+       to prevent it from outputting a warning (MSB3644).
+    -->\r
+    <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)</_TargetFrameworkDirectories>\r
+    <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)</_FullFrameworkReferenceAssemblyPaths>\r
+    <AutoUnifyAssemblyReferences>true</AutoUnifyAssemblyReferences>\r
+  </PropertyGroup>\r
+</Project>
\ No newline at end of file
diff --git a/src/Tizen.System.MediaKey/Tizen.System.MediaKey.nuspec b/src/Tizen.System.MediaKey/Tizen.System.MediaKey.nuspec
new file mode 100644 (file)
index 0000000..8ae5f76
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<package>
+  <metadata>
+               <id>Tizen.System.MediaKey</id>
+               <version>$version$</version>
+               <authors>Tizen Developers</authors>
+               <description>MediaKey API for Tizen.Net</description>
+    <dependencies>
+      <dependency id="Tizen" version="1.0.0" />
+    </dependencies>
+       </metadata>
+</package>
diff --git a/src/Tizen.System.MediaKey/Tizen.System.MediaKey.project.json b/src/Tizen.System.MediaKey/Tizen.System.MediaKey.project.json
new file mode 100644 (file)
index 0000000..beb9e15
--- /dev/null
@@ -0,0 +1,12 @@
+{
+  "dependencies": {
+    "NETStandard.Library": "1.6.0",
+    "Tizen": "1.0.0"
+  },
+  "frameworks": {
+    "netstandard1.6": {}
+  },
+  "runtimes": {
+    "win": {}
+  }
+}