Use nuget restore to solve dependencies
[platform/core/csapi/sensor.git] / packaging / csapi-system-sensor.spec
1 %{!?dotnet_assembly_path: %define dotnet_assembly_path /opt/usr/share/dotnet.tizen/framework}
2
3 %if 0%{?tizen_build_devel_mode}
4 %define BUILDCONF Debug
5 %else
6 %define BUILDCONF Release
7 %endif
8
9 Name:       csapi-system-sensor
10 Summary:    Tizen Sensor API for C#
11 Version:    1.0.1
12 Release:    1
13 Group:      Development/Libraries
14 License:    Apache-2.0
15 URL:        https://www.tizen.org
16 Source0:    %{name}-%{version}.tar.gz
17 Source1:    %{name}.manifest
18
19 AutoReqProv: no
20
21 BuildRequires: mono-compiler
22 BuildRequires: mono-devel
23
24 BuildRequires: dotnet-build-tools
25
26 # C# API Requries
27 BuildRequires: csapi-tizen-nuget
28
29 %description
30 Tizen Sensor API for C#
31
32 %prep
33 %setup -q
34 cp %{SOURCE1} .
35
36 %define Assemblies Tizen.System.Sensor
37
38 %build
39 for ASM in %{Assemblies}; do
40 # NuGet Restore
41 find $ASM/*.project.json -exec nuget restore {} \;
42 # Build
43 find $ASM/*.csproj -exec xbuild {} /p:Configuration=%{BUILDCONF} \;
44 # NuGet Pack
45 nuget pack $ASM/$ASM.nuspec -Version %{version} -Properties Configuration=%{BUILDCONF}
46 done
47
48 %install
49 # Runtime Binary
50 mkdir -p %{buildroot}%{dotnet_assembly_path}
51 for ASM in %{Assemblies}; do
52 %if 0%{?_with_corefx}
53   install -p -m 644 $ASM/bin/%{BUILDCONF}/$ASM.dll %{buildroot}%{dotnet_assembly_path}
54 %else
55   install -p -m 644 $ASM/bin/%{BUILDCONF}/Net45/$ASM.dll %{buildroot}%{dotnet_assembly_path}
56 %endif
57 done
58 # NuGet
59 mkdir -p %{buildroot}/nuget
60 install -p -m 644 *.nupkg %{buildroot}/nuget
61
62 %files
63 %manifest %{name}.manifest
64 %license LICENSE
65 %attr(644,root,root) %{dotnet_assembly_path}/*.dll
66
67 %package nuget
68 Summary:   NuGet package for %{name}
69 Group:     Development/Libraries
70
71 %description nuget
72 NuGet package for %{name}
73
74 %files nuget
75 /nuget/*.nupkg