From 985fce5b80c4a3ea1fc92ed83962373e4e2cde61 Mon Sep 17 00:00:00 2001 From: Ji-hoon Lee Date: Fri, 18 Nov 2016 15:32:01 +0900 Subject: [PATCH] Added ivi profile specific build configuration Change-Id: I4e2a3de5ef0ad8909fc53cb11da546aaa40d259c --- packaging/ise-default.spec | 106 +++++++++++++++++++++++++++++++++++++-------- 1 file changed, 88 insertions(+), 18 deletions(-) diff --git a/packaging/ise-default.spec b/packaging/ise-default.spec index 9d78056..d99defa 100644 --- a/packaging/ise-default.spec +++ b/packaging/ise-default.spec @@ -26,7 +26,7 @@ BuildRequires: pkgconfig(capi-media-audio-io) Requires: %{name}-compat = %{version}-%{release} # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" Recommends: %{name}-profile_common = %{version}-%{release} %endif @@ -36,28 +36,30 @@ Description: Tizen keyboard # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" %package profile_common Summary: ise-default binaries and resources without flavors Provides: %{name}-compat = %{version}-%{release} Conflicts: %{name}-profile_mobile Conflicts: %{name}-profile_tv Conflicts: %{name}-profile_wearable +Conflicts: %{name}-profile_ivi %description profile_common Tizen keyboard (ise-default) binaries and resources without flavors, intended -to support common/ivi profiles, which does not supply any additional options +to support common profiles, which does not supply any additional options for the build. %endif # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "tv" && "%{?profile}" != "wearable" +%if "%{?profile}" != "tv" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" %package profile_mobile Summary: ise-default binaries and resources with mobile profile Provides: %{name}-compat = %{version}-%{release} Conflicts: %{name}-profile_common Conflicts: %{name}-profile_tv Conflicts: %{name}-profile_wearable +Conflicts: %{name}-profile_ivi %description profile_mobile Tizen keyboard (ise-default) binaries and resources with mobile options. This is intended to support mobile profiles. @@ -65,13 +67,14 @@ This is intended to support mobile profiles. # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" %package profile_tv Summary: ise-default binaries and resources with tv profile Provides: %{name}-compat = %{version}-%{release} Conflicts: %{name}-profile_common Conflicts: %{name}-profile_mobile Conflicts: %{name}-profile_wearable +Conflicts: %{name}-profile_ivi %description profile_tv Tizen keyboard (ise-default) binaries and resources with tv options. This is intended to support tv profiles. @@ -79,15 +82,31 @@ This is intended to support tv profiles. # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%package profile_ivi +Summary: ise-default binaries and resources with ivi profile +Provides: %{name}-compat = %{version}-%{release} +Conflicts: %{name}-profile_common +Conflicts: %{name}-profile_mobile +Conflicts: %{name}-profile_wearable +Conflicts: %{name}-profile_tv +%description profile_ivi +Tizen keyboard (ise-default) binaries and resources with ivi options. +This is intended to support ivi profiles. +%endif + +# This is for old profile-based OBS project optimizations. +# In 4.0 unified build env, this if statement is always true. # Common is blocked because wearable has extra efl-ext entries, which will be # removed for unified build env later. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "ivi" %package profile_wearable Summary: Meta package of ise-default for wearable profiles. (circle/rectangle) Provides: %{name}-compat = %{version}-%{release} Conflicts: %{name}-profile_common Conflicts: %{name}-profile_mobile Conflicts: %{name}-profile_tv +Conflicts: %{name}-profile_ivi Requires: %{name}-profile_wearable-extension = %{version}-%{release} Recommends: %{name}-profile_wearable-extension-circle = %{version}-%{release} %description profile_wearable @@ -127,7 +146,7 @@ rm -rf CMakeCache.txt # In 4.0 unified build env, this if statement is always true. # Common is blocked because wearable has extra efl-ext entries, which will be # removed for unified build env later. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "ivi" mkdir -p build_wearable_rec pushd build_wearable_rec export CFLAGS="${CFLAGS_BASE} -D_WEARABLE"; @@ -156,7 +175,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "tv" && "%{?profile}" != "wearable" +%if "%{?profile}" != "tv" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" && "%{?profile}" != "common" mkdir -p build_mobile pushd build_mobile export CFLAGS="${CFLAGS_BASE} -D_MOBILE"; @@ -172,7 +191,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" && "%{?profile}" != "common" mkdir -p build_tv pushd build_tv export CFLAGS="${CFLAGS_BASE} -D_TV"; @@ -188,7 +207,23 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" +mkdir -p build_ivi +pushd build_ivi +export CFLAGS="${CFLAGS_BASE} -D_IVI"; +export CXXFLAGS="${CXXFLAGS_BASE} -D_IVI"; +cmake .. -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DTARGET=ivi \ + -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP \ + -DTZ_SYS_RO_PACKAGES=%TZ_SYS_RO_PACKAGES + +make %{?jobs:-j%jobs} +popd +%endif + +# This is for old profile-based OBS project optimizations. +# In 4.0 unified build env, this if statement is always true. +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" export CFLAGS="${CFLAGS_BASE}"; export CXXFLAGS="${CXXFLAGS_BASE}"; cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \ @@ -204,7 +239,7 @@ rm -rf %{buildroot} # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" %make_install mkdir -p %{buildroot}%{TZ_SYS_RO_APP}/ise-default/common pushd %{buildroot}%{TZ_SYS_RO_APP}/ise-default/ @@ -217,7 +252,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" pushd build_mobile %make_install popd @@ -232,7 +267,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" && "%{?profile}" != "common" pushd build_tv %make_install popd @@ -247,9 +282,24 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" +pushd build_ivi +%make_install +popd +mkdir -p %{buildroot}%{TZ_SYS_RO_APP}/ise-default/ivi +pushd %{buildroot}%{TZ_SYS_RO_APP}/ise-default/ +rm -Rf res_shared +mkdir -p res_shared +mv res/locale res_shared +mv bin res ivi +popd +%endif + +# This is for old profile-based OBS project optimizations. +# In 4.0 unified build env, this if statement is always true. # Common is blocked because wearable has extra efl-ext entries, which will be # removed for unified build env later. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "ivi" pushd build_wearable_cir %make_install popd @@ -285,7 +335,7 @@ mv %{buildroot}%{TZ_SYS_RO_APP}/ise-default/res_shared %{buildroot}%{TZ_SYS_RO_A # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" %post profile_common pushd %{TZ_SYS_RO_APP}/ise-default ln -sf common/bin bin @@ -305,7 +355,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" +%if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common" %post profile_mobile pushd %{TZ_SYS_RO_APP}/ise-default ln -sf mobile/bin bin @@ -325,7 +375,7 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. -%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "ivi" && "%{?profile}" != "common" %post profile_tv pushd %{TZ_SYS_RO_APP}/ise-default ln -sf tv/bin bin @@ -345,9 +395,29 @@ popd # This is for old profile-based OBS project optimizations. # In 4.0 unified build env, this if statement is always true. +%if "%{?profile}" != "mobile" && "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" +%post profile_ivi +pushd %{TZ_SYS_RO_APP}/ise-default +ln -sf ivi/bin bin +pushd res +ln -sf ../ivi/res/* . +popd +popd +%preun profile_ivi +pushd %{TZ_SYS_RO_APP}/ise-default +rm bin +popd +%files profile_ivi +%exclude %{TZ_SYS_RO_APP}/ise-default/ivi/res/locale +%{TZ_SYS_RO_APP}/ise-default/ivi/* +%endif + + +# This is for old profile-based OBS project optimizations. +# In 4.0 unified build env, this if statement is always true. # Common is blocked because wearable has extra efl-ext entries, which will be # removed for unified build env later. -%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" +%if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "ivi" %files profile_wearable %post profile_wearable-extension-circle -- 2.7.4