blob: c431d3c96510e72d698b040d613033e86d79f912 [file] [log] [blame]
# Copyright 2013 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables': {
'chromium_code': 1,
# Normally, the external_ozone_platform* variables below can be
# overridden by supplement.gypi which must exist exactly one level
# below the top-level src directory. They can now also be set in
# $GYP_DEFINES
'external_ozone_platforms%': [],
'external_ozone_platform_files%': [],
'external_ozone_platform_deps%': [],
'external_ozone_platform_unittest_deps%': [],
'internal_ozone_platforms': [],
'internal_ozone_platform_deps': [],
'internal_ozone_platform_unittest_deps': [],
},
'targets': [
{
# GN version: //ui/ozone:ozone_base
'target_name': 'ozone_base',
'type': '<(component)',
'dependencies': [
'<(DEPTH)/base/base.gyp:base',
'<(DEPTH)/skia/skia.gyp:skia',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
],
'defines': [
'OZONE_BASE_IMPLEMENTATION',
],
'sources': [
'public/cursor_factory_ozone.cc',
'public/cursor_factory_ozone.h',
'public/gpu_platform_support.cc',
'public/gpu_platform_support.h',
'public/gpu_platform_support_host.cc',
'public/gpu_platform_support_host.h',
'public/native_pixmap.h',
'public/overlay_candidates_ozone.cc',
'public/overlay_candidates_ozone.h',
'public/surface_factory_ozone.cc',
'public/surface_factory_ozone.h',
'public/surface_ozone_canvas.h',
'public/surface_ozone_egl.cc',
'public/surface_ozone_egl.h',
'public/system_input_injector.h',
],
},
{
# GN version: //ui/ozone
'target_name': 'ozone',
'type': '<(component)',
'dependencies': [
'<(DEPTH)/base/base.gyp:base',
'<(DEPTH)/ipc/ipc.gyp:ipc',
'<(DEPTH)/skia/skia.gyp:skia',
'<(DEPTH)/ui/display/display.gyp:display_types',
'<(DEPTH)/ui/display/display.gyp:display_util',
'<(DEPTH)/ui/events/events.gyp:events',
'<(DEPTH)/ui/events/ozone/events_ozone.gyp:events_ozone',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx',
'<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
'<(DEPTH)/ui/gfx/ipc/gfx_ipc.gyp:gfx_ipc',
'<@(external_ozone_platform_deps)',
'<@(internal_ozone_platform_deps)',
'ozone_base',
],
'defines': [
'OZONE_IMPLEMENTATION',
],
'variables': {
'platform_list_cc_file': '<(INTERMEDIATE_DIR)/ui/ozone/platform_list.cc',
'platform_list_h_file': '<(SHARED_INTERMEDIATE_DIR)/ui/ozone/platform_list.h',
'platform_list_txt_file': '<(SHARED_INTERMEDIATE_DIR)/ui/ozone/platform_list.txt',
'constructor_list_cc_file': '<(INTERMEDIATE_DIR)/ui/ozone/constructor_list.cc',
'ozone_platforms': [
'<@(external_ozone_platforms)',
'<@(internal_ozone_platforms)',
],
},
'include_dirs': [
'<(SHARED_INTERMEDIATE_DIR)',
],
'sources': [
'<(platform_list_cc_file)',
'<(platform_list_h_file)',
'<(constructor_list_cc_file)',
'common/display_mode_proxy.cc',
'common/display_mode_proxy.h',
'common/display_snapshot_proxy.cc',
'common/display_snapshot_proxy.h',
'common/display_util.cc',
'common/display_util.h',
'common/egl_util.cc',
'common/egl_util.h',
'common/gpu/ozone_gpu_message_generator.cc',
'common/gpu/ozone_gpu_message_generator.h',
'common/gpu/ozone_gpu_message_params.cc',
'common/gpu/ozone_gpu_message_params.h',
'common/gpu/ozone_gpu_messages.h',
'common/native_display_delegate_ozone.cc',
'common/native_display_delegate_ozone.h',
'platform_selection.cc',
'platform_selection.h',
'public/input_controller.cc',
'public/input_controller.h',
'public/ozone_gpu_test_helper.cc',
'public/ozone_gpu_test_helper.h',
'public/ozone_platform.cc',
'public/ozone_platform.h',
'public/ozone_switches.cc',
'public/ozone_switches.h',
'<@(external_ozone_platform_files)',
],
'actions': [
{
# GN version: //ui/ozone:generate_ozone_platform_list
'action_name': 'generate_ozone_platform_list',
'variables': {
'generator_path': 'generate_ozone_platform_list.py',
},
'inputs': [
'<(generator_path)',
],
'outputs': [
'<(platform_list_cc_file)',
'<(platform_list_h_file)',
'<(platform_list_txt_file)',
],
'action': [
'python',
'<(generator_path)',
'--output_cc=<(platform_list_cc_file)',
'--output_h=<(platform_list_h_file)',
'--output_txt=<(platform_list_txt_file)',
'--default=<(ozone_platform)',
'<@(ozone_platforms)',
],
},
{
# GN version: //ui/ozone:generate_constructor_list
'action_name': 'generate_constructor_list',
'variables': {
'generator_path': 'generate_constructor_list.py',
},
'inputs': [
'<(generator_path)',
'<(platform_list_txt_file)',
],
'outputs': [
'<(constructor_list_cc_file)',
],
'action': [
'python',
'<(generator_path)',
'--platform_list=<(platform_list_txt_file)',
'--output_cc=<(constructor_list_cc_file)',
'--namespace=ui',
'--typename=OzonePlatform',
'--include="ui/ozone/public/ozone_platform.h"'
],
},
],
'conditions': [
['use_udev == 0', {
'sources/': [
['exclude', '_udev\\.(h|cc)$'],
],
}],
],
},
{
'target_name': 'ozone_unittests',
'type': '<(gtest_target_type)',
'sources': [
'common/display_util_unittest.cc',
'run_all_unittests.cc',
],
'dependencies': [
'ozone',
'../../base/base.gyp:base',
'../../base/base.gyp:test_support_base',
'../../testing/gtest.gyp:gtest',
'../gfx/gfx.gyp:gfx_geometry',
'<@(external_ozone_platform_unittest_deps)',
'<@(internal_ozone_platform_unittest_deps)',
],
},
],
'conditions': [
['<(ozone_platform_caca) == 1', {
'includes': [
'platform/caca/caca.gypi',
],
}],
['<(ozone_platform_dri) == 1 or <(ozone_platform_drm) == 1 or <(ozone_platform_gbm) == 1', {
'includes': [
'platform/drm/drm.gypi',
],
}],
['<(ozone_platform_egltest) == 1', {
'includes': [
'platform/egltest/egltest.gypi',
],
}],
['<(ozone_platform_gbm) == 1', {
'includes': [
'platform/drm/gbm.gypi',
],
}],
['<(ozone_platform_test) == 1', {
'includes': [
'platform/test/test.gypi',
],
}],
],
}