Fix code for building with corefx
[platform/core/csapi/tizenfx.git] / packaging / csapi-tizen.spec
1 %{!?dotnet_assembly_path: %define dotnet_assembly_path %{_datadir}/assembly}
2 %{!?dotnet_core_path: %define dotnet_core_path %{_datadir}/tizen.net/ref}
3
4 %if 0%{?tizen_build_devel_mode}
5 %define BUILDCONF Debug
6 %else
7 %define BUILDCONF Release
8 %endif
9
10 Name:       csapi-tizen
11 Summary:    Tizen API for C#
12 Version:    1.0.0
13 Release:    1
14 Group:      Development/Libraries
15 License:    Apache-2.0
16 URL:        https://www.tizen.org
17 Source0:    %{name}-%{version}.tar.gz
18 Source1:    %{name}.manifest
19
20 # Mono
21 BuildRequires: mono-compiler
22 BuildRequires: mono-devel
23
24 # .NETCore
25 %if 0%{?_with_corefx}
26 AutoReqProv: no
27 BuildRequires: corefx-managed-32b-ref
28 %endif
29
30 %description
31 Tizen API for C#
32
33 %prep
34 %setup -q
35 cp %{SOURCE1} .
36
37 %define Assemblies Tizen Tizen.Internals
38
39 %build
40 for ASM in %{Assemblies}; do
41 xbuild $ASM/$ASM.csproj \
42 %if 0%{?_with_corefx}
43         /p:NoStdLib=True \
44         /p:TargetFrameworkVersion=v5.0 \
45         /p:AddAdditionalExplicitAssemblyReferences=False \
46         /p:CoreFxPath=%{dotnet_core_path} \
47 %endif
48         /p:Configuration=%{BUILDCONF} \
49         /p:ReferencePath=%{dotnet_assembly_path}
50 done
51
52 %install
53 mkdir -p %{buildroot}%{dotnet_assembly_path}
54 for ASM in %{Assemblies}; do
55 install -p -m 644 $ASM/bin/%{BUILDCONF}/$ASM.dll %{buildroot}%{dotnet_assembly_path}
56 done
57
58 %files
59 %manifest %{name}.manifest
60 %license LICENSE
61 %attr(644,root,root) %{dotnet_assembly_path}/*.dll