Merge remote-tracking branch 'github/master' into tizen
[platform/core/csapi/tizenfx.git] / packaging / csapi-tizenfx.spec.in
index 7913765..72061fc 100644 (file)
@@ -1,15 +1,17 @@
+
+%define TIZEN_NET_API_VERSION @api_version@
+%define TIZEN_NET_RPM_VERSION @rpm_version@
+%define TIZEN_NET_NUGET_VERSION @nuget_version@
+%define TIZEN_NET_INTERNAL_NUGET_VERSION @internal_nuget_version@
+
 %define DOTNET_ASSEMBLY_PATH /usr/share/dotnet.tizen/framework
 %define DOTNET_ASSEMBLY_DUMMY_PATH %{DOTNET_ASSEMBLY_PATH}/ref
 %define DOTNET_ASSEMBLY_RES_PATH %{DOTNET_ASSEMBLY_PATH}/res
 %define DOTNET_NUGET_SOURCE /nuget
 
-%define DOTNET_TIZEN_API_VERSION 5
-
-%define _tizenfx_bin_path Artifacts
-
 Name:       csapi-tizenfx
 Summary:    Assemblies of Tizen .NET
-Version:    @rpm_version@
+Version:    %{TIZEN_NET_RPM_VERSION}
 Release:    1
 Group:      Development/Libraries
 License:    Apache-2.0
@@ -17,14 +19,12 @@ URL:        https://www.tizen.org
 Source0:    %{name}-%{version}.tar.gz
 Source1:    %{name}.manifest
 
-BuildRequires: dotnet-build-tools
-
-BuildArch: noarch
+BuildArch:   noarch
 ExcludeArch: aarch64
 AutoReqProv: no
 
-Requires(post): vconf
-
+BuildRequires: dotnet-build-tools
+Requires(post): /usr/bin/vconftool
 
 %description
 %{summary}
@@ -127,6 +127,9 @@ Tizen .NET assemblies for Wearable profile
 cp %{SOURCE1} .
 
 %build
+%{?asan:export ASAN_OPTIONS=use_sigaltstack=false:allow_user_segv_handler=true:handle_sigfpe=false:`cat /ASAN_OPTIONS`}
+
+%define _tizenfx_bin_path Artifacts
 
 GetFileList() {
   PROFILE=$1
@@ -144,7 +147,7 @@ rm -fr %{_tizenfx_bin_path}
 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
 ./build.sh --full
 ./build.sh --dummy
-./build.sh --pack @nuget_version@
+./build.sh --pack %{TIZEN_NET_NUGET_VERSION} %{TIZEN_NET_INTERNAL_NUGET_VERSION}
 
 %install
 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_PATH}
@@ -152,16 +155,28 @@ mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_DUMMY_PATH}
 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
 mkdir -p %{buildroot}%{DOTNET_NUGET_SOURCE}
 
+# Install Runtime Assemblies
 install -p -m 644 %{_tizenfx_bin_path}/bin/public/*.dll %{buildroot}%{DOTNET_ASSEMBLY_PATH}
+install -p -m 644 %{_tizenfx_bin_path}/bin/internal/*.dll %{buildroot}%{DOTNET_ASSEMBLY_PATH}
+
+# Install Debug Symbols
 install -p -m 644 %{_tizenfx_bin_path}/bin/public/*.pdb %{buildroot}%{DOTNET_ASSEMBLY_PATH}
-install -p -m 644 %{_tizenfx_bin_path}/bin/platform/*.dll %{buildroot}%{DOTNET_ASSEMBLY_PATH}
-install -p -m 644 %{_tizenfx_bin_path}/bin/platform/*.pdb %{buildroot}%{DOTNET_ASSEMBLY_PATH}
-install -p -m 644 %{_tizenfx_bin_path}/bin/platform/res/* %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
+install -p -m 644 %{_tizenfx_bin_path}/bin/internal/*.pdb %{buildroot}%{DOTNET_ASSEMBLY_PATH}
+
+# Install Resource files
+[ -d %{_tizenfx_bin_path}/bin/public/res ] \
+  && install -p -m 644 %{_tizenfx_bin_path}/bin/public/res/* %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
+[ -d %{_tizenfx_bin_path}/bin/internal/res ] \
+  && install -p -m 644 %{_tizenfx_bin_path}/bin/internal/res/* %{buildroot}%{DOTNET_ASSEMBLY_RES_PATH}
+
+# Install Dummy Assemblies
 install -p -m 644 %{_tizenfx_bin_path}/bin/dummy/*.dll %{buildroot}%{DOTNET_ASSEMBLY_DUMMY_PATH}
+
+# Install NuGet Packages
 install -p -m 644 %{_tizenfx_bin_path}/*.nupkg %{buildroot}%{DOTNET_NUGET_SOURCE}
 
 %post
-vconftool set -t int "db/dotnet/tizen_api_version" %{DOTNET_TIZEN_API_VERSION} -f
+/usr/bin/vconftool set -t int db/dotnet/tizen_api_version %{TIZEN_NET_API_VERSION} -f
 
 
 %files