1 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework
2 %define DOTNET_ASSEMBLY_DUMMY_PATH %{DOTNET_ASSEMBLY_PATH}/ref
3 %define DOTNET_ASSEMBLY_RES_PATH %{DOTNET_ASSEMBLY_PATH}/res
4 %define DOTNET_NUGET_SOURCE /nuget
6 # If tizenfx_use_prebuilt is 1, use prebuilt binaries instead of building source at gbs build.
7 # Default value is 1, if want to build source at gbs build, set tizenfx_use_prebuilt to 0.
8 %define _tizenfx_use_prebuilt %{?tizenfx_use_prebuilt:%{tizenfx_use_prebuilt}}%{!?tizenfx_use_prebuilt:1}
9 %define _tizenfx_bin_path Artifacts
12 Summary: Assemblies of Tizen .NET
15 Group: Development/Libraries
17 URL: https://www.tizen.org
18 Source0: %{name}-%{version}.tar.gz
19 Source1: %{name}.manifest
21 BuildRequires: dotnet-build-tools
31 Summary: NuGet package for %{name}
32 Group: Development/Libraries
36 NuGet package for %{name}
39 Summary: Dummy assemblies of Tizen .NET
40 Group: Development/Libraries
44 Dummy assemblies of Tizen .NET
47 Summary: All Tizen .NET assemblies
48 Group: Development/Libraries
52 All Tizen .NET assemblies
55 Summary: All .pdb files of Tizen .NET
56 Group: Development/Libraries
60 All .pdb files of Tizen .NET
63 Summary: Tizen .NET assemblies for Common profile
64 Group: Development/Libraries
65 Requires: csapi-tizenfx-dummy
69 Tizen .NET assemblies for Common profile
72 Summary: Tizen .NET assemblies for Mobile profile
73 Group: Development/Libraries
74 Requires: csapi-tizenfx-dummy
78 Tizen .NET assemblies for Mobile profile
81 Summary: Tizen .NET assemblies for Emulator of Mobile profile
82 Group: Development/Libraries
83 Requires: csapi-tizenfx-dummy
86 %description mobile-emul
87 Tizen .NET assemblies for Emulator of Mobile profile
90 Summary: Tizen .NET assemblies for TV profile
91 Group: Development/Libraries
92 Requires: csapi-tizenfx-dummy
96 Tizen .NET assemblies for TV profile
99 Summary: Tizen .NET assemblies for IVI profile
100 Group: Development/Libraries
101 Requires: csapi-tizenfx-dummy
105 Tizen .NET assemblies for IVI profile
108 Summary: Tizen .NET assemblies for Wearable profile
109 Group: Development/Libraries
110 Requires: csapi-tizenfx-dummy
113 %description wearable
114 Tizen .NET assemblies for Wearable profile
124 cat pkg/PlatformFileList.txt | grep -E "#$PROFILE[[:space:]]|#$PROFILE$" | cut -d# -f1 | sed "s#^#%{DOTNET_ASSEMBLY_PATH}/#"
127 GetFileList common > common.filelist
128 GetFileList mobile > mobile.filelist
129 GetFileList mobile-emul > mobile-emul.filelist
130 GetFileList tv > tv.filelist
131 GetFileList ivi > ivi.filelist
132 GetFileList wearable > wearable.filelist
134 %if ! %{_tizenfx_use_prebuilt}
135 rm -fr %{_tizenfx_bin_path}/bin
136 rm -f %{_tizenfx_bin_path}/*.nupkg
137 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
143 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_PATH}
144 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_DUMMY_PATH}
145 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
146 mkdir -p %{buildroot}%{DOTNET_NUGET_SOURCE}
148 install -p -m 644 %{_tizenfx_bin_path}/bin/*.dll %{buildroot}%{DOTNET_ASSEMBLY_PATH}
149 install -p -m 644 %{_tizenfx_bin_path}/bin/*.pdb %{buildroot}%{DOTNET_ASSEMBLY_PATH}
150 install -p -m 644 %{_tizenfx_bin_path}/bin/res/* %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
151 install -p -m 644 %{_tizenfx_bin_path}/bin_dummy/*.dll %{buildroot}%{DOTNET_ASSEMBLY_DUMMY_PATH}
152 install -p -m 644 %{_tizenfx_bin_path}/*.nupkg %{buildroot}%{DOTNET_NUGET_SOURCE}
155 %{DOTNET_NUGET_SOURCE}/*.nupkg
158 %attr(644,root,root) %{DOTNET_ASSEMBLY_DUMMY_PATH}/*.dll
161 %manifest %{name}.manifest
163 %attr(644,root,root) %{DOTNET_ASSEMBLY_PATH}/*.dll
164 %attr(644,root,root) %{DOTNET_ASSEMBLY_RES_PATH}/*
167 %attr(644,root,root) %{DOTNET_ASSEMBLY_PATH}/*.pdb
169 %files common -f common.filelist
170 %manifest %{name}.manifest
173 %files mobile -f mobile.filelist
174 %manifest %{name}.manifest
177 %files mobile-emul -f mobile-emul.filelist
178 %manifest %{name}.manifest
181 %files tv -f tv.filelist
182 %manifest %{name}.manifest
185 %files ivi -f ivi.filelist
186 %manifest %{name}.manifest
189 %files wearable -f wearable.filelist
190 %manifest %{name}.manifest