Remove unneeded dependencies when building chromium-efl-libs and crosswalk-bin
authorAntonio Gomes <a1.gomes@samsung.com>
Mon, 20 Jul 2015 14:44:21 +0000 (07:44 -0700)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 10 Jul 2018 06:57:09 +0000 (06:57 +0000)
Patch adds a 'building_strategy' variable to chromium-efl
GYP machinery. In build/system.gypi, it can be used to
filter dependencies in and out, according to what target
is being built: ewk, chromium-efl-libs or crosswalk-bin.

Patch could have replaced the existing 'building_crosswalk_bin'
by 'building_strategy', but the former is a crosswalk
upstream GYP variable, which has it own meaning in
xwalk/build/build.gypi.

Bug: http://107.108.218.239/bugzilla/show_bug.cgi?id=13316
Reviewed by: SeungSeop Park, arno renevier

Change-Id: I724341bed2ae1cbae1dc50bbc18e5a5451f35973
Signed-off-by: Antonio Gomes <a1.gomes@samsung.com>
tizen_src/build/system.gyp
tizen_src/ewk/unittest/ewk-tests.gypi
tizen_src/packaging/chromium-efl-libs.spec
tizen_src/packaging/chromium-efl.spec
tizen_src/packaging/crosswalk-bin.spec
tizen_src/supplement.gypi

index 716b052..40749dd 100644 (file)
       'target_name': 'ui-gadget',
       'type': 'none',
       'conditions': [
-        ['building_for_tizen==1', {
+        ['building_for_tizen==1 and building_strategy=="ewk"', {
           'direct_dependent_settings': {
             'cflags': [
               '<!@(<(pkg-config) --cflags ui-gadget-1)',
       'target_name': 'capi-location-manager',
       'type': 'none',
       'conditions': [
-        ['building_for_tizen==1', {
+        ['building_for_tizen==1 and building_strategy=="ewk"', {
           'direct_dependent_settings': {
             'cflags': [
               '<!@(<(pkg-config) --cflags capi-location-manager)',
       'target_name': 'capi-system-info',
       'type': 'none',
       'conditions': [
-        ['building_for_tizen==1', {
+        ['building_for_tizen==1 and building_strategy=="ewk"', {
           'direct_dependent_settings': {
             'cflags': [
               '<!@(<(pkg-config) --cflags capi-system-info)',
       'target_name': 'feedback',
       'type': 'none',
       'conditions': [
-        ['building_for_tizen==1', {
+        ['building_for_tizen==1 and building_strategy=="ewk"', {
           'direct_dependent_settings': {
             'cflags': [
               '<!@(<(pkg-config) --cflags feedback)',
index 251f675..1abddbc 100644 (file)
       'files': [ '<(PRODUCT_DIR)/lib/libbundle_sample.so' ],
     }],
     'conditions': [
-     ['building_for_tizen==1', {
+     ['building_for_tizen==1 and building_strategy=="ewk"', {
       'cflags': [
         '<!@(pkg-config --cflags scim)',
       ],
index 22d5f5b..25d01d5 100644 (file)
@@ -59,15 +59,12 @@ BuildRequires:  pkgconfig(protobuf)
 BuildRequires:  pkgconfig(nss)
 
 # chromium-efl/chromium_src dependencies.
-BuildRequires:  pkgconfig(appcore-efl)
 BuildRequires:  pkgconfig(capi-appfw-application)
-BuildRequires:  pkgconfig(capi-location-manager)
 BuildRequires:  pkgconfig(capi-media-audio-io)
 BuildRequires:  pkgconfig(capi-media-camera)
 BuildRequires:  pkgconfig(capi-media-player)
 BuildRequires:  pkgconfig(capi-media-tool)
 BuildRequires:  pkgconfig(capi-system-sensor)
-BuildRequires:  pkgconfig(capi-network-connection)
 BuildRequires:  pkgconfig(capi-system-device)
 BuildRequires:  pkgconfig(capi-system-system-settings)
 BuildRequires:  pkgconfig(ecore)
@@ -78,8 +75,7 @@ BuildRequires:  pkgconfig(ecore-input)
 BuildRequires:  pkgconfig(efl-assist)
 BuildRequires:  pkgconfig(elementary)
 BuildRequires:  pkgconfig(evas)
-BuildRequires:  pkgconfig(feedback)
-BuildRequires:  pkgconfig(glib-2.0)
+BuildRequires:  pkgconfig(flac)
 BuildRequires:  pkgconfig(gstreamer-1.0)
 BuildRequires:  pkgconfig(gstreamer-plugins-base-1.0)
 BuildRequires:  pkgconfig(gstreamer-app-1.0)
@@ -88,14 +84,9 @@ BuildRequires:  pkgconfig(libtbm)
 BuildRequires:  pkgconfig(minizip)
 BuildRequires:  pkgconfig(nspr)
 BuildRequires:  pkgconfig(openssl)
-BuildRequires:  pkgconfig(scim)
+BuildRequires:  pkgconfig(speex)
 BuildRequires:  pkgconfig(tts)
 BuildRequires:  pkgconfig(vconf)
-# TODO(a1.gomes): these dependencies seem wrong.
-BuildRequires:  pkgconfig(capi-system-info)
-BuildRequires:  pkgconfig(flac)
-BuildRequires:  pkgconfig(ui-gadget-1)
-BuildRequires:  pkgconfig(speex)
 
 %description
 This package contains private Chromium shared libraries required by Chromium-EWK and Crosswalk apps to run.
@@ -214,6 +205,7 @@ export GYP_GENERATORS="dump_dependency_json,ninja"
 ./tizen_src/build/gyp_chromiumefl.sh \
   --xwalk \
   -Dbuilding_crosswalk_bin=0 \
+  -Dbuilding_strategy="libs" \
   -Dcomponent=shared_library \
   -Dexe_dir="%{CHROMIUM_EXE_DIR}" \
   -Ddata_dir="%{CHROMIUM_DATA_DIR}" \
index 621539c..32f64b1 100644 (file)
@@ -62,7 +62,6 @@ Requires(postun): /sbin/ldconfig
 
 BuildRequires: bison, edje-tools, expat-devel, flex, gettext, gperf, libcap-devel
 BuildRequires: libjpeg-turbo-devel, perl, python, python-xml, vi, which
-BuildRequires: pkgconfig(appcore-efl)
 BuildRequires: pkgconfig(capi-appfw-application)
 BuildRequires: pkgconfig(capi-location-manager)
 BuildRequires: pkgconfig(capi-media-audio-io)
@@ -129,7 +128,6 @@ BuildRequires: pkgconfig(xtst)
 %if "%{?chromium_efl_tizen_profile}%{!?chromium_efl_tizen_profile:0}" == "mobile"
 BuildRequires: bzip2-devel
 BuildRequires: pkgconfig(efl-assist)
-BuildRequires: pkgconfig(capi-network-connection)
 BuildRequires: pkgconfig(capi-system-sensor)
 %if "%{?_with_wayland}" != "1"
 BuildRequires: pkgconfig(xdamage)
index 56a9699..783df81 100644 (file)
@@ -77,15 +77,12 @@ BuildRequires:  yasm
 Requires:       ca-certificates-tizen
 Requires:       ss-server
 
-BuildRequires:  pkgconfig(appcore-efl)
-BuildRequires:  pkgconfig(capi-appfw-application)
-BuildRequires:  pkgconfig(capi-location-manager)
+# chromium-efl/chromium_src dependencies.
 BuildRequires:  pkgconfig(capi-media-audio-io)
 BuildRequires:  pkgconfig(capi-media-camera)
 BuildRequires:  pkgconfig(capi-media-player)
 BuildRequires:  pkgconfig(capi-media-tool)
 BuildRequires:  pkgconfig(capi-system-sensor)
-BuildRequires:  pkgconfig(capi-network-connection)
 BuildRequires:  pkgconfig(capi-system-device)
 BuildRequires:  pkgconfig(capi-system-system-settings)
 BuildRequires:  pkgconfig(ecore)
@@ -96,8 +93,7 @@ BuildRequires:  pkgconfig(ecore-input)
 BuildRequires:  pkgconfig(efl-assist)
 BuildRequires:  pkgconfig(elementary)
 BuildRequires:  pkgconfig(evas)
-BuildRequires:  pkgconfig(feedback)
-BuildRequires:  pkgconfig(glib-2.0)
+BuildRequires:  pkgconfig(flac)
 BuildRequires:  pkgconfig(gstreamer-1.0)
 BuildRequires:  pkgconfig(gstreamer-plugins-base-1.0)
 BuildRequires:  pkgconfig(gstreamer-app-1.0)
@@ -106,14 +102,9 @@ BuildRequires:  pkgconfig(libtbm)
 BuildRequires:  pkgconfig(minizip)
 BuildRequires:  pkgconfig(nspr)
 BuildRequires:  pkgconfig(openssl)
-BuildRequires:  pkgconfig(scim)
+BuildRequires:  pkgconfig(speex)
 BuildRequires:  pkgconfig(tts)
 BuildRequires:  pkgconfig(vconf)
-# TODO(a1.gomes): these dependencies seem wrong.
-BuildRequires:  pkgconfig(capi-system-info)
-BuildRequires:  pkgconfig(flac)
-BuildRequires:  pkgconfig(ui-gadget-1)
-BuildRequires:  pkgconfig(speex)
 
 %description
 Crosswalk is an app runtime based on Chromium. It is an open source project started by the Intel Open Source Technology Center (http://www.01.org).
@@ -247,6 +238,7 @@ export GYP_GENERATORS="ninja"
 ./tizen_src/build/gyp_chromiumefl.sh \
    --xwalk \
   -Dbuilding_crosswalk_bin=1 \
+  -Dbuilding_strategy="crosswalk-bin" \
   -Dcomponent=shared_library \
 %if 0%{?_remove_webcore_debug_symbols:1}
   -Dremove_webcore_debug_symbols=1 \
index 03c3430..4117000 100644 (file)
@@ -18,6 +18,8 @@
     'building_for_tizen_mobile%': 0,
     'building_for_tizen_tv%': 0,
 
+    'building_strategy%': 'ewk', # 'ewk', 'libs' and 'crosswalk-bin'
+
     'xwalk_link_against_chromium_ewk%': 0,
 
     'tizen_multimedia_support%': 1,