From: uzair Date: Mon, 6 Mar 2023 10:32:10 +0000 (+0530) Subject: [M108 Migration]Notify internal API compatibility when installing wrtjs rpm X-Git-Tag: submit/tizen/20230306.160017^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=81a51610c24a3fe0c688a23e9fe5ba534b82bdea;p=platform%2Fframework%2Fweb%2Fchromium-efl.git [M108 Migration]Notify internal API compatibility when installing wrtjs rpm Previously, the second and third versions haven't been used. So, this removes the unused versions except for the wrtjs version and newly adds {TPK_VERSION} and {INTERNAL_API_REVISION} like below: {TPK_VERSION}.{INTERNAL_API_REVISION}.{WRTJS_VERSION} The {INTERNAL_API_REVISION} needs to check API compatibility between chromium-efl and wrtjs. In addition, this notifies internal API version compatibility result using the {INTERNAL_API_REVISION} when installing rpm file. The internal API compatibility can be guaranteed only if the {INTERNAL_API_REVISION} is same with chromium-efl. Reference: https://review.tizen.org/gerrit/281213 Change-Id: I8fba74c012701f59a46fde7733fcb926f69a86b9 Signed-off-by: uzair --- diff --git a/packaging/chromium-efl.spec b/packaging/chromium-efl.spec index f803e29..de1cec0 100755 --- a/packaging/chromium-efl.spec +++ b/packaging/chromium-efl.spec @@ -1,9 +1,10 @@ Name: chromium-efl Summary: Chromium EFL -# Set by by scripts/update-chromium-version.sh -%define ChromiumVersion 108.0.5359.1 -%define Week 1 -Version: %{ChromiumVersion}.%{Week} +# Version: {TPK_VERSION}.{INTERNAL_API_REVISION}.{CHROMIUM_MAJOR_VERSION} +# The {INTERNAL_API_REVISION} is used for compatibility check with wrtjs. +Version: 1.1.108 +# Set by ./tizen_src/scripts/update_chromium_version.sh +%define upstream_chromium_version 108.0.5359.1 Release: 1 # The 'Group' should be specified as one of the following valid group list. # https://wiki.tizen.org/wiki/Packaging/Guidelines#Group_Tag @@ -852,6 +853,40 @@ install -m 0755 tizen_src/ewk/utc_gtest_run.sh %{buildroot}/opt/usr/utc_exec/ install -m 0644 wrt/native_wrtjs.d.ts "%{buildroot}"%{_includedir}/wrt/ %endif +%pre +if (( $(rpm -qa | grep 'wrtjs-[[:digit:]]' | wc -l) > 1 )); then + echo -e "\033[31m*****************************************************" + echo -e "Please remove wrtjs rpm(s) except for one:\n" + rpm -qa | grep 'wrtjs-[[:digit:]]' + echo -e "*****************************************************\033[m" + exit 1 +fi + +export CHROMIUM_REVISION=$(echo %{version} | awk -F. '{print $2}') +export WRTJS_REVISION=$(rpm -qa | grep wrtjs | awk -F. '{print $2}') +if [[ "${WRTJS_REVISION}" == "" ]]; then + WRTJS_REVISION="not installed" +fi + +echo -e "\033[32m*****************************************************" +echo -e "* chromium-efl revision : ${CHROMIUM_REVISION}" +echo -e "* wrtjs revision : ${WRTJS_REVISION}" +echo -e "*" +if [[ "${WRTJS_REVISION}" == "not installed" ]] || \ + (( ${CHROMIUM_REVISION} == ${WRTJS_REVISION} )); then + echo -e "* Succeeded to check rpm versions" +else + if (( ${CHROMIUM_REVISION} < ${WRTJS_REVISION} )); then + echo -e "\033[31m* You're trying to install too old chromium-efl." + echo -e "* Please install chromium-efl as revision ${WRTJS_REVISION}" + echo -e "* or" + else + echo -e "\033[31m* You have too old wrtjs." + fi + echo -e "* please re-install wrtjs as revision ${CHROMIUM_REVISION} first." +fi +echo -e "*****************************************************\033[m" + %post %if 0%{?__enable_wrt_js} cyad -s -k MANIFESTS_GLOBAL -c User::Pkg::org.tizen.chromium-efl -u '*' -p http://tizen.org/privilege/alarm -t ALLOW