Hide X11 dependencies when use_x11=0.

When using a non X11 build with Ozone, we still have dependencies on
X11. This patch tries to hide X11 and related dependencies when
use_x11=0

Review URL: https://codereview.chromium.org/148643002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251981 0039d316-1c4b-4281-b951-d872f2087c98
parent 1554e827
...@@ -107,6 +107,255 @@ ...@@ -107,6 +107,255 @@
}, },
], # targets ], # targets
}], }],
[ 'use_x11==1', {
# Hide X11 and related dependencies when use_x11=0
'targets': [
{
'target_name': 'x11',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags x11)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l x11 xi)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags x11)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other x11 xi)',
],
'libraries': [
'<!@(pkg-config --libs-only-l x11 xi)',
],
},
}],
],
},
{
'target_name': 'xcursor',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xcursor)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xcursor)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xcursor)',
],
},
},
{
'target_name': 'xcomposite',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xcomposite)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xcomposite)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xcomposite)',
],
},
},
{
'target_name': 'xdamage',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xdamage)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xdamage)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xdamage)',
],
},
},
{
'target_name': 'xext',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xext)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xext)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xext)',
],
},
},
{
'target_name': 'xfixes',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xfixes)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xfixes)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xfixes)',
],
},
},
{
'target_name': 'xi',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xi)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xi)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xi)',
],
},
},
{
'target_name': 'xrandr',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xrandr)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xrandr)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xrandr)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags xrandr)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other xrandr)',
],
'libraries': [
'<!@(pkg-config --libs-only-l xrandr)',
],
},
}],
],
},
{
'target_name': 'xrender',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xrender)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xrender)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xrender)',
],
},
},
{
'target_name': 'xscrnsaver',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xscrnsaver)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xscrnsaver)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xscrnsaver)',
],
},
},
{
'target_name': 'xtst',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xtst)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xtst)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xtst)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags xtst)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other xtst)',
],
'libraries': [
'<!@(pkg-config --libs-only-l xtst)',
],
},
}]
]
}
], # targets
}],
], # conditions ], # conditions
'targets': [ 'targets': [
{ {
...@@ -755,249 +1004,5 @@ ...@@ -755,249 +1004,5 @@
}], }],
], ],
}, },
{
'target_name': 'x11',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags x11)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l x11 xi)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags x11)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other x11 xi)',
],
'libraries': [
'<!@(pkg-config --libs-only-l x11 xi)',
],
},
}],
],
},
{
'target_name': 'xcursor',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xcursor)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xcursor)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xcursor)',
],
},
},
{
'target_name': 'xcomposite',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xcomposite)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xcomposite)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xcomposite)',
],
},
},
{
'target_name': 'xdamage',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xdamage)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xdamage)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xdamage)',
],
},
},
{
'target_name': 'xext',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xext)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xext)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xext)',
],
},
},
{
'target_name': 'xfixes',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xfixes)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xfixes)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xfixes)',
],
},
},
{
'target_name': 'xi',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xi)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xi)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xi)',
],
},
},
{
'target_name': 'xrandr',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xrandr)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xrandr)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xrandr)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags xrandr)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other xrandr)',
],
'libraries': [
'<!@(pkg-config --libs-only-l xrandr)',
],
},
}],
],
},
{
'target_name': 'xrender',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xrender)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xrender)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xrender)',
],
},
},
{
'target_name': 'xscrnsaver',
'type': 'none',
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xscrnsaver)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xscrnsaver)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xscrnsaver)',
],
},
},
{
'target_name': 'xtst',
'type': 'none',
'toolsets': ['host', 'target'],
'conditions': [
['_toolset=="target"', {
'direct_dependent_settings': {
'cflags': [
'<!@(<(pkg-config) --cflags xtst)',
],
},
'link_settings': {
'ldflags': [
'<!@(<(pkg-config) --libs-only-L --libs-only-other xtst)',
],
'libraries': [
'<!@(<(pkg-config) --libs-only-l xtst)',
],
},
}, {
'direct_dependent_settings': {
'cflags': [
'<!@(pkg-config --cflags xtst)',
],
},
'link_settings': {
'ldflags': [
'<!@(pkg-config --libs-only-L --libs-only-other xtst)',
],
'libraries': [
'<!@(pkg-config --libs-only-l xtst)',
],
},
}]
]
}
], ],
} }
...@@ -3450,7 +3450,6 @@ ...@@ -3450,7 +3450,6 @@
'dependencies': [ 'dependencies': [
'../build/linux/system.gyp:dbus', '../build/linux/system.gyp:dbus',
'../build/linux/system.gyp:fontconfig', '../build/linux/system.gyp:fontconfig',
'../build/linux/system.gyp:x11',
'../dbus/dbus.gyp:dbus', '../dbus/dbus.gyp:dbus',
], ],
'sources/': [ 'sources/': [
...@@ -3463,6 +3462,12 @@ ...@@ -3463,6 +3462,12 @@
['exclude', '^browser/lifetime/application_lifetime_stub.cc'], ['exclude', '^browser/lifetime/application_lifetime_stub.cc'],
], ],
}], }],
# x11 build
['use_x11==1', {
'dependencies': [
'../build/linux/system.gyp:x11',
],
}],
], ],
}], }],
['enable_plugin_installation==0', { ['enable_plugin_installation==0', {
......
...@@ -1038,12 +1038,21 @@ ...@@ -1038,12 +1038,21 @@
'../ui/keyboard/keyboard.gyp:keyboard_resources', '../ui/keyboard/keyboard.gyp:keyboard_resources',
], ],
}], }],
['OS=="linux" and use_aura==1', { ['OS=="linux"', {
'dependencies': [ 'conditions': [
'../build/linux/system.gyp:dbus', ['use_aura==1', {
'../build/linux/system.gyp:fontconfig', 'dependencies': [
'../build/linux/system.gyp:x11', '../build/linux/system.gyp:dbus',
'../dbus/dbus.gyp:dbus', '../build/linux/system.gyp:fontconfig',
'../dbus/dbus.gyp:dbus',
],
}],
# x11 build
['use_x11==1', {
'dependencies': [
'../build/linux/system.gyp:x11',
],
}],
], ],
}], }],
['safe_browsing==1', { ['safe_browsing==1', {
......
...@@ -3326,7 +3326,6 @@ ...@@ -3326,7 +3326,6 @@
'dependencies': [ 'dependencies': [
'../build/linux/system.gyp:dbus', '../build/linux/system.gyp:dbus',
'../build/linux/system.gyp:fontconfig', '../build/linux/system.gyp:fontconfig',
'../build/linux/system.gyp:x11',
'../dbus/dbus.gyp:dbus', '../dbus/dbus.gyp:dbus',
], ],
}], }],
...@@ -3337,6 +3336,12 @@ ...@@ -3337,6 +3336,12 @@
['exclude', '^browser/ui/views/notifications/balloon_collection_views.cc'], ['exclude', '^browser/ui/views/notifications/balloon_collection_views.cc'],
], ],
}], }],
# x11 build
['use_x11==1', {
'dependencies': [
'../build/linux/system.gyp:x11',
],
}],
], ],
}], }],
# On chromeos, file manager extension handles the file open/save dialog. # On chromeos, file manager extension handles the file open/save dialog.
......
...@@ -201,13 +201,18 @@ ...@@ -201,13 +201,18 @@
'<@(chromium_child_dependencies)', '<@(chromium_child_dependencies)',
'../content/content.gyp:content_app_both', '../content/content.gyp:content_app_both',
# Needed for chrome_main.cc initialization of libraries. # Needed for chrome_main.cc initialization of libraries.
'../build/linux/system.gyp:x11',
'../build/linux/system.gyp:pangocairo', '../build/linux/system.gyp:pangocairo',
'../build/linux/system.gyp:xext',
# Needed to use the master_preferences functions # Needed to use the master_preferences functions
'installer_util', 'installer_util',
], ],
}], }],
# x11 build. Needed for chrome_main.cc initialization of libraries.
['use_x11==1', {
'dependencies': [
'../build/linux/system.gyp:x11',
'../build/linux/system.gyp:xext',
],
}],
], ],
'sources': [ 'sources': [
'app/chrome_dll_resource.h', 'app/chrome_dll_resource.h',
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
'targets': [ 'targets': [
], ],
'conditions': [ 'conditions': [
['OS == "linux" and target_arch != "arm"', { ['OS == "linux" and target_arch != "arm" and use_x11==1', {
'targets': [ 'targets': [
{ {
'target_name': 'compositor_model_bench', 'target_name': 'compositor_model_bench',
......
...@@ -184,7 +184,7 @@ ...@@ -184,7 +184,7 @@
'<(DEPTH)/media/cast/test/receiver.cc', '<(DEPTH)/media/cast/test/receiver.cc',
], ],
'conditions': [ 'conditions': [
['OS == "linux"', { ['OS == "linux" and use_x11==1', {
'dependencies': [ 'dependencies': [
'<(DEPTH)/build/linux/system.gyp:x11', '<(DEPTH)/build/linux/system.gyp:x11',
'<(DEPTH)/build/linux/system.gyp:xext', '<(DEPTH)/build/linux/system.gyp:xext',
......
...@@ -62,7 +62,6 @@ ...@@ -62,7 +62,6 @@
'toolsets': ['host'], 'toolsets': ['host'],
'dependencies': [ 'dependencies': [
'../../../base/base.gyp:base', '../../../base/base.gyp:base',
'../../../build/linux/system.gyp:x11',
'../common/common.gyp:android_tools_common', '../common/common.gyp:android_tools_common',
], ],
'include_dirs': [ 'include_dirs': [
...@@ -78,8 +77,8 @@ ...@@ -78,8 +77,8 @@
'host_forwarder_main.cc', 'host_forwarder_main.cc',
'pipe_notifier.cc', 'pipe_notifier.cc',
'socket.cc', 'socket.cc',
# TODO(pliard): Remove this and x11 dependency above. This is needed # TODO(pliard): Remove this. This is needed to avoid undefined
# to avoid undefined references at link time. # references at link time.
'../../../base/message_loop/message_pump_glib.cc', '../../../base/message_loop/message_pump_glib.cc',
'../../../base/message_loop/message_pump_gtk.cc', '../../../base/message_loop/message_pump_gtk.cc',
], ],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment