Use nuget restore to solve dependencies
authorWonYoung Choi <wy80.choi@samsung.com>
Tue, 4 Oct 2016 14:00:44 +0000 (23:00 +0900)
committerWonYoung Choi <wy80.choi@samsung.com>
Wed, 5 Oct 2016 09:37:07 +0000 (18:37 +0900)
Change-Id: I7162bc46d27d89178d31dc809afd1f423415afe5
Signed-off-by: WonYoung Choi <wy80.choi@samsung.com>
Tizen.Messaging.Push/Tizen.Messaging.Push.Net45.csproj
Tizen.Messaging.Push/Tizen.Messaging.Push.Net45.project.json
Tizen.Messaging.Push/Tizen.Messaging.Push.csproj
Tizen.Messaging.Push/Tizen.Messaging.Push.nuspec
Tizen.Messaging.Push/Tizen.Messaging.Push.project.json
packaging/csapi-push.spec

index 6f7b07e..5192321 100644 (file)
     <None Include="Tizen.Messaging.Push.Net45.project.json" />\r
     <None Include="Tizen.Messaging.Push.snk" />\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>
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.\r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
   -->\r
 </Project>
\ No newline at end of file
index d9af4f0..ab1a0ee 100644 (file)
@@ -1,6 +1,6 @@
 {
   "dependencies": {
-    "Tizen": "1.0.0"
+    "Tizen": "1.0.1"
   },
   "frameworks": {
     "net45": {}
index fe1ed47..dd3a000 100644 (file)
@@ -12,8 +12,8 @@
   </PropertyGroup>\r
   <PropertyGroup>\r
     <TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>\r
-    <TargetFrameworkVersion>v1.6</TargetFrameworkVersion>\r
-    <NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>\r
+    <TargetFrameworkVersion>v1.3</TargetFrameworkVersion>\r
+    <NuGetTargetMoniker>.NETStandard,Version=v1.3</NuGetTargetMoniker>\r
     <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
     <NoStdLib>true</NoStdLib>\r
     <NoWarn>$(NoWarn);1701;1702</NoWarn>\r
     <None Include="Tizen.Messaging.Push.project.json" />\r
     <None Include="Tizen.Messaging.Push.snk" />\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>
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.\r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
   -->\r
   <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
+    <!-- https://github.com/dotnet/corefxlab/tree/master/samples/NetCoreSample and\r
+       https://docs.microsoft.com/en-us/dotnet/articles/core/tutorials/target-dotnetcore-with-msbuild\r
     -->\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).
+    <!-- We don't use any of MSBuild's resolution logic for resolving the framework, so just set these two\r
+       properties to any folder that exists to skip the GetReferenceAssemblyPaths task (not target) and\r
+       to prevent it from outputting a warning (MSB3644).\r
     -->\r
     <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)</_TargetFrameworkDirectories>\r
     <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)</_FullFrameworkReferenceAssemblyPaths>\r
index 7e69627..9726e3f 100644 (file)
@@ -6,7 +6,11 @@
                <authors>Tizen Developers</authors>
                <description>Push API for Tizen.Net</description>
     <dependencies>
-      <dependency id="Tizen" version="1.0.0" />
+      <dependency id="Tizen" version="1.0.1" />
     </dependencies>
        </metadata>
+  <files>
+    <file src="bin/$Configuration$/Tizen.Messaging.Push.dll" target="lib/netstandard1.3" />
+    <file src="bin/$Configuration$/Net45/Tizen.Messaging.Push.dll" target="lib/net45" />
+  </files>
 </package>
index beb9e15..db7436c 100644 (file)
@@ -1,12 +1,9 @@
 {
   "dependencies": {
     "NETStandard.Library": "1.6.0",
-    "Tizen": "1.0.0"
+    "Tizen": "1.0.1"
   },
   "frameworks": {
-    "netstandard1.6": {}
-  },
-  "runtimes": {
-    "win": {}
+    "netstandard1.3": {}
   }
 }
index 4916983..f2cf30d 100755 (executable)
@@ -1,5 +1,4 @@
 %{!?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}
 %define BUILDCONF Debug
@@ -9,7 +8,7 @@
 
 Name:       csapi-push
 Summary:    Tizen Push API for C#
-Version:    1.0.0
+Version:    1.0.1
 Release:    1
 Group:      Development/Libraries
 License:    Apache-2.0
@@ -17,20 +16,15 @@ URL:        https://www.tizen.org
 Source0:    %{name}-%{version}.tar.gz
 Source1:    %{name}.manifest
 
-# Mono
+AutoReqProv: no
+
 BuildRequires: mono-compiler
 BuildRequires: mono-devel
 
-# .NETCore
-%if 0%{?_with_corefx}
-AutoReqProv: no
-BuildRequires: corefx-managed-32b-ref
-%endif
-
 BuildRequires: dotnet-build-tools
 
 # C# API Requries
-BuildRequires: csapi-tizen-devel
+BuildRequires: csapi-tizen-nuget
 
 %description
 Tizen Push API for C#
@@ -42,42 +36,26 @@ cp %{SOURCE1} .
 %define Assemblies Tizen.Messaging.Push
 
 %build
-# Build for Net45
 for ASM in %{Assemblies}; do
-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}
-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
-
-# Make NuGet package
-dotnet-gbs pack $ASM/$ASM.nuspec --PackageVersion=%{version} --PackageFiles=$ASM/bin
-
+# NuGet Restore
+find $ASM/*.project.json -exec nuget restore {} \;
+# Build
+find $ASM/*.csproj -exec xbuild {} /p:Configuration=%{BUILDCONF} \;
+# NuGet Pack
+nuget pack $ASM/$ASM.nuspec -Version %{version} -Properties Configuration=%{BUILDCONF}
 done
 
 %install
-mkdir -p %{buildroot}%{dotnet_assembly_path}/devel
+# Runtime Binary
+mkdir -p %{buildroot}%{dotnet_assembly_path}
 for ASM in %{Assemblies}; do
-  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}
+  install -p -m 644 $ASM/bin/%{BUILDCONF}/$ASM.dll %{buildroot}%{dotnet_assembly_path}
 %else
-  install -p -m 644 $ASM/bin/net45/$ASM.dll %{buildroot}%{dotnet_assembly_path}
+  install -p -m 644 $ASM/bin/%{BUILDCONF}/Net45/$ASM.dll %{buildroot}%{dotnet_assembly_path}
 %endif
 done
-
+# NuGet
 mkdir -p %{buildroot}/nuget
 install -p -m 644 *.nupkg %{buildroot}/nuget
 
@@ -86,22 +64,9 @@ install -p -m 644 *.nupkg %{buildroot}/nuget
 %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}