Commit 0adc3134 authored by nbarth@chromium.org's avatar nbarth@chromium.org

IDL build: Split global constructors into core and modules

No substantive changes to generated bindings:
just reorders the constructors on global objects b/c split
between core and modules.

This almost completes splitting the build!
(Only remaining step is to split global objects, at which
point I can eliminate the bindings/generated.gyp)

Global constructors from modules are in bindings_core b/c
they affect core bindings (due to partial interfaces), with
FIXMEs to move them to bindings_modules.

R=haraken
BUG=358074

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

git-svn-id: svn://svn.chromium.org/blink/trunk@175462 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 66c7e4f0
......@@ -8,7 +8,6 @@
],
'variables': {
'bindings_dir': '.',
'blink_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink',
'bindings_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/bindings',
'bindings_unittest_files': [
'<@(bindings_v8_unittest_files)',
......
......@@ -4,8 +4,9 @@
{
'includes': [
'../bindings.gypi', # FIXME: factor out bindings_core http://crbug.com/358074
'../modules/v8/generated.gypi', # FIXME: remove once bindings CG generates qualified includes http://crbug.com/377364
'../bindings.gypi',
'../modules/v8/generated.gypi', # FIXME: remove once core scripts generate qualified includes correctly: http://crbug.com/358074
'../v8/v8.gypi', # FIXME: should be v8/v8.gypi: http://crbug.com/358074
'v8/generated.gypi',
],
......
......@@ -8,21 +8,69 @@
{
'includes': [
'../bindings.gypi',
'../scripts/scripts.gypi',
# ../.. == Source
'../../bindings/bindings.gypi',
'../../bindings/scripts/scripts.gypi',
'../../core/core.gypi',
'core.gypi',
'generated.gypi',
'idl.gypi',
],
'targets': [
################################################################################
{
'target_name': 'core_global_constructors_idls',
'type': 'none',
'dependencies': [
# FIXME: should be core_global_objects http://crbug.com/358074
'../generated.gyp:global_objects',
],
'actions': [{
'action_name': 'generate_core_global_constructors_idls',
'inputs': [
'<(bindings_scripts_dir)/generate_global_constructors.py',
'<(bindings_scripts_dir)/utilities.py',
# Only includes main IDL files (exclude dependencies and testing,
# which should not appear on global objects).
'<(core_idl_files_list)',
'<@(core_idl_files)',
'<(bindings_output_dir)/GlobalObjects.pickle',
],
'outputs': [
'<@(core_global_constructors_generated_idl_files)',
'<@(core_global_constructors_generated_header_files)',
],
'action': [
'python',
'<(bindings_scripts_dir)/generate_global_constructors.py',
'--idl-files-list',
'<(core_idl_files_list)',
'--global-objects-file',
'<(bindings_output_dir)/GlobalObjects.pickle',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
'--',
'Window',
'<(blink_core_output_dir)/WindowCoreConstructors.idl',
'SharedWorkerGlobalScope',
'<(blink_core_output_dir)/SharedWorkerGlobalScopeCoreConstructors.idl',
'DedicatedWorkerGlobalScope',
'<(blink_core_output_dir)/DedicatedWorkerGlobalScopeCoreConstructors.idl',
'ServiceWorkerGlobalScope',
'<(blink_core_output_dir)/ServiceWorkerGlobalScopeCoreConstructors.idl',
],
'message':
'Generating IDL files for constructors on global objects from core',
}]
},
################################################################################
{
'target_name': 'interfaces_info_individual_core',
'type': 'none',
'dependencies': [
# FIXME: should be core_generated_idls
# http://crbug.com/358074
'../generated.gyp:generated_idls',
'../../core/core_generated.gyp:generated_testing_idls',
'core_global_constructors_idls',
],
'actions': [{
'action_name': 'compute_interfaces_info_individual_core',
......
# Copyright 2014 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.
{
'includes': [
'../../core/core_generated.gypi',
],
'variables': {
# Global constructors
'core_global_constructors_generated_idl_files': [
'<(blink_core_output_dir)/WindowCoreConstructors.idl',
'<(blink_core_output_dir)/SharedWorkerGlobalScopeCoreConstructors.idl',
'<(blink_core_output_dir)/DedicatedWorkerGlobalScopeCoreConstructors.idl',
'<(blink_core_output_dir)/ServiceWorkerGlobalScopeCoreConstructors.idl',
],
'core_global_constructors_generated_header_files': [
'<(blink_core_output_dir)/WindowCoreConstructors.h',
'<(blink_core_output_dir)/SharedWorkerGlobalScopeCoreConstructors.h',
'<(blink_core_output_dir)/DedicatedWorkerGlobalScopeCoreConstructors.h',
'<(blink_core_output_dir)/ServiceWorkerGlobalScopeCoreConstructors.h',
],
},
}
......@@ -7,7 +7,7 @@
{
'includes': [
'../../core/core.gypi',
'../idl.gypi',
'generated.gypi',
],
'variables': {
......@@ -19,6 +19,10 @@
'<@(generated_webcore_testing_idl_files)',
],
# Write lists of main IDL files to a file, so that the command lines don't
# exceed OS length limits.
'core_idl_files_list': '<|(core_idl_files_list.tmp <@(core_idl_files))',
# Dependency IDL files: don't generate individual bindings, but do process
# in IDL dependency computation, and count as build dependencies
# 'core_dependency_idl_files' is already used in Source/core, so avoid
......@@ -61,9 +65,7 @@
],
'core_generated_dependency_idl_files': [
# FIXME: Generate separate core_global_constructors_idls
# http://crbug.com/358074
'<@(generated_global_constructors_idl_files)', # partial interfaces
'<@(core_global_constructors_generated_idl_files)', # partial interfaces
],
},
}
......@@ -8,35 +8,33 @@
{
'includes': [
'../../../core/core.gypi',
'../../bindings.gypi',
# FIXME: need list of modules IDL files because some core IDL files depend
# on modules IDL files http://crbug.com/358074
'../../modules/idl.gypi',
# ../../.. == Source
'../../../bindings/bindings.gypi',
'../../../bindings/core/generated.gypi',
'../../../bindings/core/idl.gypi',
# FIXME: need info about modules IDL files because some core IDL files
# depend on modules IDL files http://crbug.com/358074
'../../modules/modules.gypi',
'../../scripts/scripts.gypi',
'../idl.gypi',
'../../../bindings/modules/idl.gypi',
'../../../bindings/modules/modules.gypi',
'../../../bindings/scripts/scripts.gypi',
'../../../core/core.gypi',
'generated.gypi',
],
# Write lists of main IDL files to a file, so that the command lines don't
# exceed OS length limits.
'variables': {
'core_idl_files_list': '<|(core_idl_files_list.tmp <@(core_idl_files))',
},
'targets': [
################################################################################
{
'target_name': 'bindings_core_generated_individual',
'target_name': 'bindings_core_v8_generated_individual',
'type': 'none',
# The 'binding' rule generates .h files, so mark as hard_dependency, per:
# https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependencies
'hard_dependency': 1,
'dependencies': [
'../../../core/core_generated.gyp:generated_testing_idls',
'../generated.gyp:core_global_constructors_idls',
# FIXME: should not depend on modules, but partial interface definitions
# in modules change bindings for core http://crbug.com/358074
'../../modules/generated.gyp:modules_global_constructors_idls',
'<(bindings_scripts_dir)/scripts.gyp:cached_jinja_templates',
'<(bindings_scripts_dir)/scripts.gyp:cached_lex_yacc_tables',
# FIXME: should be interfaces_info_core (w/o modules)
......@@ -98,16 +96,16 @@
},
################################################################################
{
'target_name': 'bindings_core_generated_aggregate',
'target_name': 'bindings_core_v8_generated_aggregate',
'type': 'none',
'actions': [{
'action_name': 'generate_aggregate_bindings_core',
'action_name': 'generate_aggregate_bindings_core_v8',
'inputs': [
'<(bindings_scripts_dir)/aggregate_generated_bindings.py',
'<(core_idl_files_list)',
],
'outputs': [
'<@(bindings_core_generated_aggregate_files)',
'<@(bindings_core_v8_generated_aggregate_files)',
],
'action': [
'python',
......@@ -115,18 +113,18 @@
'core',
'<(core_idl_files_list)',
'--',
'<@(bindings_core_generated_aggregate_files)',
'<@(bindings_core_v8_generated_aggregate_files)',
],
'message': 'Generating aggregate generated core bindings files',
'message': 'Generating aggregate generated core V8 bindings files',
}],
},
################################################################################
{
'target_name': 'bindings_core_generated',
'target_name': 'bindings_core_v8_generated',
'type': 'none',
'dependencies': [
'bindings_core_generated_aggregate',
'bindings_core_generated_individual',
'bindings_core_v8_generated_aggregate',
'bindings_core_v8_generated_individual',
],
},
################################################################################
......
......@@ -3,21 +3,18 @@
# found in the LICENSE file.
{
'includes': [
'../../bindings.gypi',
],
'variables': {
'bindings_core_v8_output_dir': '<(bindings_output_dir)/core/v8',
'bindings_core_v8_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/bindings/core/v8',
'conditions': [
['OS=="win" and buildtype=="Official"', {
# On Windows Official release builds, we try to preserve symbol
# space.
'bindings_core_generated_aggregate_files': [
'bindings_core_v8_generated_aggregate_files': [
'<(bindings_core_v8_output_dir)/V8GeneratedCoreBindings.cpp',
],
}, {
'bindings_core_generated_aggregate_files': [
'bindings_core_v8_generated_aggregate_files': [
'<(bindings_core_v8_output_dir)/V8GeneratedCoreBindings01.cpp',
'<(bindings_core_v8_output_dir)/V8GeneratedCoreBindings02.cpp',
'<(bindings_core_v8_output_dir)/V8GeneratedCoreBindings03.cpp',
......
......@@ -72,63 +72,6 @@
'message': 'Computing global objects',
}]
},
################################################################################
{
# FIXME: Global constructors are used by bindings_core (e.g., V8Window.cpp)
# but depend on modules, which violates layering http://crbug.com/358074
# FIXME: Generate separate core_global_constructors_idls
# http://crbug.com/358074
'target_name': 'global_constructors_idls',
'type': 'none',
'dependencies': [
'global_objects',
],
'actions': [{
'action_name': 'generate_global_constructors_idls',
'inputs': [
'scripts/generate_global_constructors.py',
'scripts/utilities.py',
# Only includes main IDL files (exclude dependencies and testing,
# which should not appear on global objects).
'<(main_interface_idl_files_list)',
'<@(main_interface_idl_files)',
'<(bindings_output_dir)/GlobalObjects.pickle',
],
'outputs': [
'<@(generated_global_constructors_idl_files)',
'<@(generated_global_constructors_header_files)',
],
'action': [
'python',
'scripts/generate_global_constructors.py',
'--idl-files-list',
'<(main_interface_idl_files_list)',
'--global-objects-file',
'<(bindings_output_dir)/GlobalObjects.pickle',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
'--',
'Window',
'<(blink_output_dir)/WindowConstructors.idl',
'SharedWorkerGlobalScope',
'<(blink_output_dir)/SharedWorkerGlobalScopeConstructors.idl',
'DedicatedWorkerGlobalScope',
'<(blink_output_dir)/DedicatedWorkerGlobalScopeConstructors.idl',
'ServiceWorkerGlobalScope',
'<(blink_output_dir)/ServiceWorkerGlobalScopeConstructors.idl',
],
'message': 'Generating IDL files for constructors on global objects',
}]
},
################################################################################
{
'target_name': 'generated_idls',
'type': 'none',
'dependencies': [
'../core/core_generated.gyp:generated_testing_idls',
'global_constructors_idls',
],
}
################################################################################
], # targets
}
......@@ -6,7 +6,6 @@
{
'includes': [
'bindings.gypi',
'../core/core.gypi',
'../modules/modules.gypi',
],
......@@ -22,21 +21,5 @@
# Write lists of main IDL files to a file, so that the command lines don't
# exceed OS length limits.
'main_interface_idl_files_list': '<|(main_interface_idl_files_list.tmp <@(main_interface_idl_files))',
# Global constructors
# FIXME: Split into core vs. modules http://crbug.com/358074
'generated_global_constructors_idl_files': [
'<(blink_output_dir)/WindowConstructors.idl',
'<(blink_output_dir)/SharedWorkerGlobalScopeConstructors.idl',
'<(blink_output_dir)/DedicatedWorkerGlobalScopeConstructors.idl',
'<(blink_output_dir)/ServiceWorkerGlobalScopeConstructors.idl',
],
'generated_global_constructors_header_files': [
'<(blink_output_dir)/WindowConstructors.h',
'<(blink_output_dir)/SharedWorkerGlobalScopeConstructors.h',
'<(blink_output_dir)/DedicatedWorkerGlobalScopeConstructors.h',
'<(blink_output_dir)/ServiceWorkerGlobalScopeConstructors.h',
],
},
}
......@@ -8,10 +8,13 @@
{
'includes': [
'../../build/scripts/scripts.gypi',
'../bindings.gypi',
'../core/core.gypi',
'../scripts/scripts.gypi',
# ../.. == Source
'../../bindings/bindings.gypi',
'../../bindings/core/core.gypi',
'../../bindings/scripts/scripts.gypi',
'../../build/scripts/scripts.gypi', # FIXME: Needed for event files, should be in modules, not bindings_modules http://crbug.com/358074
'../../modules/modules.gypi',
'generated.gypi',
'idl.gypi',
'modules.gypi',
],
......@@ -19,7 +22,7 @@
'targets': [
################################################################################
{
'target_name': 'bindings_modules_generated',
'target_name': 'modules_event_generated',
'type': 'none',
'actions': [
{
......@@ -38,7 +41,8 @@
'<@(event_idl_files)',
],
'outputs': [
'<(blink_output_dir)/EventModulesInterfaces.in',
# FIXME: should output to bindings_modules_output_dir http://crbug.com/358074
'<(SHARED_INTERMEDIATE_DIR)/blink/EventModulesInterfaces.in',
],
'action': [
'python',
......@@ -46,7 +50,7 @@
'--event-idl-files-list',
'<(event_idl_files_list)',
'--event-interfaces-file',
'<(blink_output_dir)/EventModulesInterfaces.in',
'<(SHARED_INTERMEDIATE_DIR)/blink/EventModulesInterfaces.in',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
'--suffix',
......@@ -128,13 +132,58 @@
},
],
},
################################################################################
{
'target_name': 'modules_global_constructors_idls',
'type': 'none',
'dependencies': [
# FIXME: should be modules_global_objects http://crbug.com/358074
'../generated.gyp:global_objects',
],
'actions': [{
'action_name': 'generate_modules_global_constructors_idls',
'inputs': [
'<(bindings_scripts_dir)/generate_global_constructors.py',
'<(bindings_scripts_dir)/utilities.py',
# Only includes main IDL files (exclude dependencies and testing,
# which should not appear on global objects).
'<(modules_idl_files_list)',
'<@(modules_idl_files)',
'<(bindings_output_dir)/GlobalObjects.pickle',
],
'outputs': [
'<@(modules_global_constructors_generated_idl_files)',
'<@(modules_global_constructors_generated_header_files)',
],
'action': [
'python',
'<(bindings_scripts_dir)/generate_global_constructors.py',
'--idl-files-list',
'<(modules_idl_files_list)',
'--global-objects-file',
'<(bindings_output_dir)/GlobalObjects.pickle',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
'--',
'Window',
'<(blink_modules_output_dir)/WindowModulesConstructors.idl',
'SharedWorkerGlobalScope',
'<(blink_modules_output_dir)/SharedWorkerGlobalScopeModulesConstructors.idl',
'DedicatedWorkerGlobalScope',
'<(blink_modules_output_dir)/DedicatedWorkerGlobalScopeModulesConstructors.idl',
'ServiceWorkerGlobalScope',
'<(blink_modules_output_dir)/ServiceWorkerGlobalScopeModulesConstructors.idl',
],
'message':
'Generating IDL files for constructors on global objects from modules',
}]
},
################################################################################
{
'target_name': 'interfaces_info_individual_modules',
'type': 'none',
'dependencies': [
# FIXME: should be modules_generated_idls
# http://crbug.com/358074
'../generated.gyp:generated_idls',
'modules_global_constructors_idls',
],
'actions': [{
'action_name': 'compute_interfaces_info_individual_modules',
......@@ -143,8 +192,7 @@
'<(bindings_scripts_dir)/utilities.py',
'<(modules_static_idl_files_list)',
'<@(modules_static_idl_files)',
# No generated files currently, will add with constructors
# '<@(modules_generated_idl_files)',
'<@(modules_generated_idl_files)',
],
'outputs': [
'<(bindings_modules_output_dir)/InterfacesInfoModulesIndividual.pickle',
......@@ -160,10 +208,9 @@
'<(bindings_modules_output_dir)/InterfacesInfoModulesIndividual.pickle',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
# No generated files currently, will add with constructors
# '--',
'--',
# Generated files must be passed at command line
# '<@(modules_generated_idl_files)',
'<@(modules_generated_idl_files)',
],
'message': 'Computing global information about individual IDL files',
}]
......
# Copyright 2014 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.
{
'includes': [
'../../modules/modules_generated.gypi',
],
'variables': {
# Global constructors
'modules_global_constructors_generated_idl_files': [
'<(blink_modules_output_dir)/WindowModulesConstructors.idl',
'<(blink_modules_output_dir)/SharedWorkerGlobalScopeModulesConstructors.idl',
'<(blink_modules_output_dir)/DedicatedWorkerGlobalScopeModulesConstructors.idl',
'<(blink_modules_output_dir)/ServiceWorkerGlobalScopeModulesConstructors.idl',
],
'modules_global_constructors_generated_header_files': [
'<(blink_modules_output_dir)/WindowModulesConstructors.h',
'<(blink_modules_output_dir)/SharedWorkerGlobalScopeModulesConstructors.h',
'<(blink_modules_output_dir)/DedicatedWorkerGlobalScopeModulesConstructors.h',
'<(blink_modules_output_dir)/ServiceWorkerGlobalScopeModulesConstructors.h',
],
},
}
......@@ -6,14 +6,24 @@
{
'includes': [
'../../core/core.gypi',
'../../modules/modules.gypi',
'../core/idl.gypi',
'../idl.gypi',
'generated.gypi',
],
'variables': {
# IDL file lists; see: http://www.chromium.org/developers/web-idl-interfaces
# Interface IDL files: generate individual bindings (includes testing)
'modules_interface_idl_files': [
# No testing or generated interface IDL files in modules currently
'<@(modules_idl_files)',
],
# Write lists of main IDL files to a file, so that the command lines don't
# exceed OS length limits.
'modules_idl_files_list': '<|(modules_idl_files_list.tmp <@(modules_idl_files))',
# Dependency IDL files: don't generate individual bindings, but do process
# in IDL dependency computation, and count as build dependencies
'all_dependency_idl_files': [
......@@ -24,7 +34,7 @@
# collision
'modules_all_dependency_idl_files': [
'<@(modules_static_dependency_idl_files)',
# '<@(modules_generated_dependency_idl_files)',
'<@(modules_generated_dependency_idl_files)',
],
# Static IDL files / Generated IDL files
......@@ -40,9 +50,9 @@
'modules_static_idl_files_list':
'<|(modules_static_idl_files_list.tmp <@(modules_static_idl_files))',
#'modules_generated_idl_files': [
# '<@(modules_generated_dependency_idl_files)',
#],
'modules_generated_idl_files': [
'<@(modules_generated_dependency_idl_files)',
],
# Static IDL files
'modules_static_interface_idl_files': [
......@@ -54,10 +64,8 @@
],
# Generated IDL files
#'modules_generated_dependency_idl_files': [
# # FIXME: Generate separate modules_global_constructors_idls
# # http://crbug.com/358074
# # '<@(modules_generated_global_constructors_idl_files)', # partial interfaces
#],
'modules_generated_dependency_idl_files': [
'<@(modules_global_constructors_generated_idl_files)', # partial interfaces
],
},
}
......@@ -4,7 +4,7 @@
{
'includes': [
'../bindings.gypi', # FIXME: factor out bindings_modules http://crbug.com/358074
'../bindings.gypi',
'v8/generated.gypi',
],
......
......@@ -8,37 +8,26 @@
{
'includes': [
# ../../.. == Source
'../../../bindings/bindings.gypi',
'../../../bindings/modules/idl.gypi',
'../../../bindings/modules/modules.gypi',
'../../../bindings/scripts/scripts.gypi',
'../../../modules/modules.gypi',
'../../bindings.gypi',
'../../core/idl.gypi',
'../../scripts/scripts.gypi',
'../idl.gypi',
'../modules.gypi',
'generated.gypi',
],
'variables': {
# IDL file lists; see: http://www.chromium.org/developers/web-idl-interfaces
# Write lists of main IDL files to a file, so that the command lines don't
# exceed OS length limits.
'modules_idl_files_list': '<|(modules_idl_files_list.tmp <@(modules_idl_files))',
# Interface IDL files: generate individual bindings (includes testing)
'modules_interface_idl_files': [
# No testing or generated interface IDL files in modules currently
'<@(modules_idl_files)',
],
},
'targets': [
################################################################################
{
'target_name': 'bindings_modules_generated_individual',
'target_name': 'bindings_modules_v8_generated_individual',
'type': 'none',
# The 'binding' rule generates .h files, so mark as hard_dependency, per:
# https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependencies
'hard_dependency': 1,
'dependencies': [
'../../core/generated.gyp:core_global_constructors_idls',
'../generated.gyp:modules_global_constructors_idls',
'../generated.gyp:interfaces_info',
'<(bindings_scripts_dir)/scripts.gyp:cached_jinja_templates',
'<(bindings_scripts_dir)/scripts.gyp:cached_lex_yacc_tables',
......@@ -96,16 +85,16 @@
},
################################################################################
{
'target_name': 'bindings_modules_generated_aggregate',
'target_name': 'bindings_modules_v8_generated_aggregate',
'type': 'none',
'actions': [{
'action_name': 'generate_aggregate_bindings_modules',
'action_name': 'generate_aggregate_bindings_modules_v8',
'inputs': [
'<(bindings_scripts_dir)/aggregate_generated_bindings.py',
'<(modules_idl_files_list)',
],
'outputs': [
'<@(bindings_modules_generated_aggregate_files)',
'<@(bindings_modules_v8_generated_aggregate_files)',
],
'action': [
'python',
......@@ -113,18 +102,18 @@
'modules',
'<(modules_idl_files_list)',
'--',
'<@(bindings_modules_generated_aggregate_files)',
'<@(bindings_modules_v8_generated_aggregate_files)',
],
'message': 'Generating aggregate generated modules bindings files',
'message': 'Generating aggregate generated modules V8 bindings files',
}],
},
################################################################################
{
'target_name': 'bindings_modules_generated',
'target_name': 'bindings_modules_v8_generated',
'type': 'none',
'dependencies': [
'bindings_modules_generated_aggregate',
'bindings_modules_generated_individual',
'bindings_modules_v8_generated_aggregate',
'bindings_modules_v8_generated_individual',
],
},
################################################################################
......
......@@ -3,21 +3,18 @@
# found in the LICENSE file.
{
'includes': [
'../../bindings.gypi',
],
'variables': {
'bindings_modules_v8_output_dir': '<(bindings_output_dir)/modules/v8',
'bindings_modules_v8_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/bindings/modules/v8',
'conditions': [
['OS=="win" and buildtype=="Official"', {
# On Windows Official release builds, we try to preserve symbol
# space.
'bindings_modules_generated_aggregate_files': [
'bindings_modules_v8_generated_aggregate_files': [
'<(bindings_modules_v8_output_dir)/V8GeneratedModulesBindings.cpp',
],
}, {
'bindings_modules_generated_aggregate_files': [
'bindings_modules_v8_generated_aggregate_files': [
'<(bindings_modules_v8_output_dir)/V8GeneratedModulesBindings01.cpp',
'<(bindings_modules_v8_output_dir)/V8GeneratedModulesBindings02.cpp',
'<(bindings_modules_v8_output_dir)/V8GeneratedModulesBindings03.cpp',
......
......@@ -31,7 +31,12 @@
"""Compute global interface information for individual IDL files.
Auxiliary module for compute_interfaces_info_overall, which consolidates
this individual information.
this individual information, computing info that spans multiple files
(dependencies and ancestry).
This distinction is so that individual interface info can be computed
separately for each component (avoiding duplicated reading of individual
files), then consolidated using *only* the info visible to a given component.
Design doc: http://www.chromium.org/developers/design-documents/idl-build
"""
......
......@@ -41,11 +41,10 @@
'enable_wexit_time_destructors': 1,
'webcore_include_dirs': [
'../..',
'..',
'<(SHARED_INTERMEDIATE_DIR)/blink',
'..', # WebKit/Source
'<(SHARED_INTERMEDIATE_DIR)/blink', # gen/blink
# FIXME: Remove these once core scripts generates qualified
# includes correctly: http://crbug.com/358074
# includes correctly: http://crbug.com/380054
'<(bindings_core_v8_output_dir)',
'<(bindings_modules_v8_output_dir)',
],
......@@ -217,10 +216,10 @@
'injected_canvas_script_source',
'injected_script_source',
'debugger_script_source',
'../bindings/core/v8/generated.gyp:bindings_core_generated',
# FIXME: don't depend on bindings/modules http://crbug.com/358074
'../bindings/modules/generated.gyp:bindings_modules_generated',
'../bindings/modules/v8/generated.gyp:bindings_modules_generated',
'../bindings/core/v8/generated.gyp:bindings_core_v8_generated',
# FIXME: don't depend on bindings_modules http://crbug.com/358074
'../bindings/modules/generated.gyp:modules_event_generated',
'../bindings/modules/v8/generated.gyp:bindings_modules_v8_generated',
'../platform/platform_generated.gyp:make_platform_generated',
'../wtf/wtf.gyp:wtf',
'<(DEPTH)/gin/gin.gyp:gin',
......@@ -253,7 +252,7 @@
'<@(bindings_v8_files)',
# These files include all the .cpp files generated from the .idl files
# in webcore_files.
'<@(bindings_core_generated_aggregate_files)',
'<@(bindings_core_v8_generated_aggregate_files)',
# Additional .cpp files for HashTools.h
'<(SHARED_INTERMEDIATE_DIR)/blink/CSSPropertyNames.cpp',
......@@ -366,9 +365,9 @@
'inspector_protocol_sources',
'inspector_instrumentation_sources',
'core_generated.gyp:make_core_generated',
'../bindings/core/v8/generated.gyp:bindings_core_generated',
'../bindings/core/v8/generated.gyp:bindings_core_v8_generated',
# FIXME: don't depend on bindings_modules http://crbug.com/358074
'../bindings/modules/v8/generated.gyp:bindings_modules_generated',
'../bindings/modules/v8/generated.gyp:bindings_modules_v8_generated',
'../wtf/wtf.gyp:wtf',
'../config.gyp:config',
'../platform/blink_platform.gyp:blink_platform',
......
......@@ -38,11 +38,11 @@
'targets': [
{
'target_name': 'core_bindings_generated',
'target_name': 'core_event_interfaces',
'type': 'none',
'actions': [
{
'action_name': 'event_interfaces',
'action_name': 'make_core_event_interfaces',
'variables': {
'event_idl_files': [
'<@(core_event_idl_files)',
......@@ -51,13 +51,14 @@
'<|(event_idl_files_list.tmp <@(event_idl_files))',
},
'inputs': [
# FIXME: should be in build/scripts, not bindings/scripts
'../bindings/scripts/generate_event_interfaces.py',
'../bindings/scripts/utilities.py',
'<(event_idl_files_list)',
'<@(event_idl_files)',
],
'outputs': [
'<(blink_output_dir)/EventInterfaces.in',
'<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in',
],
'action': [
'python',
......@@ -65,7 +66,7 @@
'--event-idl-files-list',
'<(event_idl_files_list)',
'--event-interfaces-file',
'<(blink_output_dir)/EventInterfaces.in',
'<(SHARED_INTERMEDIATE_DIR)/blink/EventInterfaces.in',
'--write-file-only-if-changed',
'<(write_file_only_if_changed)',
],
......@@ -130,7 +131,7 @@
'hard_dependency': 1,
'dependencies': [
'generated_testing_idls',
'core_bindings_generated',
'core_event_interfaces',
'../config.gyp:config',
],
'sources': [
......
# Copyright 2014 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': {
# FIXME: core_generated should output to here http://crbug.com/358074
'blink_core_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/core',
},
}
......@@ -50,7 +50,7 @@
],
'sources': [
'<@(modules_files)',
'<@(bindings_modules_generated_aggregate_files)',
'<@(bindings_modules_v8_generated_aggregate_files)',
],
# Disable c4267 warnings until we fix size_t to int truncations.
'msvs_disabled_warnings': [ 4267, 4334, ]
......@@ -72,13 +72,14 @@
},
{
# FIXME: should be in modules_generated.gyp
'target_name': 'make_modules_generated',
'type': 'none',
'hard_dependency': 1,
'dependencies': [
#'generated_testing_idls',
'../core/core_generated.gyp:core_bindings_generated',
'../bindings/modules/generated.gyp:bindings_modules_generated',
'../core/core_generated.gyp:core_event_interfaces',
'../bindings/modules/generated.gyp:modules_event_generated',
'../config.gyp:config',
],
'sources': [
......
# Copyright 2014 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': {
# FIXME: modules_generated should output to here http://crbug.com/358074
'blink_modules_output_dir': '<(SHARED_INTERMEDIATE_DIR)/blink/modules',
},
}
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