Commit 97a4f275 authored by apavlov@chromium.org's avatar apavlov@chromium.org

DevTools: Fix Windows debug_devtools=1 builds

This patch eliminates the "Command line too long" errors
when building on Windows in the debug_devtools=1 mode.

Drive-by: Fix GN build after r183969

R=pfeldman, vsevik

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

git-svn-id: svn://svn.chromium.org/blink/trunk@184003 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent ffedad06
...@@ -109,16 +109,19 @@ action("generate_devtools_grd") { ...@@ -109,16 +109,19 @@ action("generate_devtools_grd") {
script = "scripts/generate_devtools_grd.py" script = "scripts/generate_devtools_grd.py"
deps = [ ":devtools_frontend_resources" ] deps = [ ":devtools_frontend_resources" ]
static_files_list = "$target_gen_dir/devtools_static_grd_files.tmp"
inputs = [ static_files_list ]
if (debug_devtools) { if (debug_devtools) {
# Debug: all files are picked as-is. # Debug: all files are picked as-is.
input_pages = all_devtools_files + generated_scripts + [ generated_files = generated_scripts + [
resources_out_dir + "devtools.html", resources_out_dir + "devtools.html",
resources_out_dir + "toolbox.html", resources_out_dir + "toolbox.html",
] ]
static_files = all_devtools_files + [ "front_end/Runtime.js" ]
} else { } else {
# Release: pick compiled files and lazy-loaded CSS. # Release: pick compiled files and lazy-loaded CSS.
input_pages = [ generated_files = [
resources_out_dir + "devtools.css", resources_out_dir + "devtools.css",
resources_out_dir + "devtools.html", resources_out_dir + "devtools.html",
resources_out_dir + "devtools.js", resources_out_dir + "devtools.js",
...@@ -130,7 +133,6 @@ action("generate_devtools_grd") { ...@@ -130,7 +133,6 @@ action("generate_devtools_grd") {
resources_out_dir + "devices_module.js", resources_out_dir + "devices_module.js",
resources_out_dir + "documentation_module.js", resources_out_dir + "documentation_module.js",
resources_out_dir + "elements_module.js", resources_out_dir + "elements_module.js",
resources_out_dir + "extensions_module.js",
resources_out_dir + "heap_snapshot_worker_module.js", resources_out_dir + "heap_snapshot_worker_module.js",
resources_out_dir + "layers_module.js", resources_out_dir + "layers_module.js",
resources_out_dir + "network_module.js", resources_out_dir + "network_module.js",
...@@ -145,14 +147,15 @@ action("generate_devtools_grd") { ...@@ -145,14 +147,15 @@ action("generate_devtools_grd") {
resources_out_dir + "timeline_module.js", resources_out_dir + "timeline_module.js",
resources_out_dir + "devtools_extension_api.js", resources_out_dir + "devtools_extension_api.js",
] ]
input_pages += gypi_values.devtools_standalone_files + static_files = gypi_values.devtools_standalone_files +
gypi_values.devtools_cm_css_files gypi_values.devtools_cm_css_files
} }
write_file(static_files_list, rebase_path(static_files, root_build_dir))
images = gypi_values.devtools_image_files images = gypi_values.devtools_image_files
images_path = "front_end/Images" images_path = "front_end/Images"
inputs = input_pages + images inputs += generated_files + images
outfile = "$root_gen_dir/devtools/devtools_resources.grd" outfile = "$root_gen_dir/devtools/devtools_resources.grd"
outputs = [ outfile ] outputs = [ outfile ]
...@@ -162,7 +165,9 @@ action("generate_devtools_grd") { ...@@ -162,7 +165,9 @@ action("generate_devtools_grd") {
"front_end", "front_end",
] ]
args = rebase_path(input_pages, root_build_dir) + [ args = rebase_path(generated_files, root_build_dir) +
rebase_path(generated_files, root_build_dir) + [
"--static_files_list", rebase_path(static_files_list, root_build_dir),
"--relative_path_dirs" ] + "--relative_path_dirs" ] +
rebase_path(relative_path_dirs, root_build_dir) + [ rebase_path(relative_path_dirs, root_build_dir) + [
"--images", rebase_path(images_path, root_build_dir), "--images", rebase_path(images_path, root_build_dir),
...@@ -230,7 +235,6 @@ action("build_applications") { ...@@ -230,7 +235,6 @@ action("build_applications") {
resources_out_dir + "devices_module.js", resources_out_dir + "devices_module.js",
resources_out_dir + "documentation_module.js", resources_out_dir + "documentation_module.js",
resources_out_dir + "elements_module.js", resources_out_dir + "elements_module.js",
resources_out_dir + "extensions_module.js",
resources_out_dir + "heap_snapshot_worker_module.js", resources_out_dir + "heap_snapshot_worker_module.js",
resources_out_dir + "layers_module.js", resources_out_dir + "layers_module.js",
resources_out_dir + "network_module.js", resources_out_dir + "network_module.js",
......
...@@ -89,7 +89,12 @@ ...@@ -89,7 +89,12 @@
'<(PRODUCT_DIR)/resources/inspector', '<(PRODUCT_DIR)/resources/inspector',
'front_end' 'front_end'
], ],
'input_pages': [ 'static_files': [
'<@(devtools_standalone_files)',
'<@(devtools_cm_css_files)',
],
'devtools_static_files_list': '<|(devtools_static_grd_files.tmp <@(_static_files))',
'generated_files': [
'<(PRODUCT_DIR)/resources/inspector/devtools.css', '<(PRODUCT_DIR)/resources/inspector/devtools.css',
'<(PRODUCT_DIR)/resources/inspector/devtools.html', '<(PRODUCT_DIR)/resources/inspector/devtools.html',
'<(PRODUCT_DIR)/resources/inspector/devtools.js', '<(PRODUCT_DIR)/resources/inspector/devtools.js',
...@@ -114,22 +119,19 @@ ...@@ -114,22 +119,19 @@
'<(PRODUCT_DIR)/resources/inspector/temp_storage_shared_worker_module.js', '<(PRODUCT_DIR)/resources/inspector/temp_storage_shared_worker_module.js',
'<(PRODUCT_DIR)/resources/inspector/timeline_module.js', '<(PRODUCT_DIR)/resources/inspector/timeline_module.js',
'<(PRODUCT_DIR)/resources/inspector/devtools_extension_api.js', '<(PRODUCT_DIR)/resources/inspector/devtools_extension_api.js',
'<@(devtools_standalone_files)',
'<@(devtools_cm_css_files)',
],
'images': [
'<@(devtools_image_files)',
], ],
'inputs': [ 'inputs': [
'<@(_script_name)', '<@(_script_name)',
'<@(_input_pages)', '<@(_static_files)',
'<@(_images)', '<@(_generated_files)',
'<@(devtools_image_files)',
'<(_devtools_static_files_list)',
], ],
'images_path': [ 'images_path': [
'front_end/Images', 'front_end/Images',
], ],
'outputs': ['<(SHARED_INTERMEDIATE_DIR)/devtools/devtools_resources.grd'], 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/devtools/devtools_resources.grd'],
'action': ['python', '<@(_script_name)', '<@(_input_pages)', '--relative_path_dirs', '<@(_relative_path_dirs)', '--images', '<@(_images_path)', '--output', '<@(_outputs)'], 'action': ['python', '<@(_script_name)', '<@(_generated_files)', '--static_files_list', '<(_devtools_static_files_list)', '--relative_path_dirs', '<@(_relative_path_dirs)', '--images', '<@(_images_path)', '--output', '<@(_outputs)'],
}], }],
}, },
{ {
...@@ -144,28 +146,30 @@ ...@@ -144,28 +146,30 @@
'front_end', 'front_end',
'<(PRODUCT_DIR)/resources/inspector', '<(PRODUCT_DIR)/resources/inspector',
], ],
'input_pages': [ 'static_files': [
'<@(all_devtools_files)', '<@(all_devtools_files)',
'front_end/Runtime.js', 'front_end/Runtime.js',
],
'devtools_static_files_list': '<|(devtools_static_grd_files.tmp <@(_static_files))',
'generated_files': [
'<(PRODUCT_DIR)/resources/inspector/InspectorBackendCommands.js', '<(PRODUCT_DIR)/resources/inspector/InspectorBackendCommands.js',
'<(PRODUCT_DIR)/resources/inspector/SupportedCSSProperties.js', '<(PRODUCT_DIR)/resources/inspector/SupportedCSSProperties.js',
'<(PRODUCT_DIR)/resources/inspector/devtools.html', '<(PRODUCT_DIR)/resources/inspector/devtools.html',
'<(PRODUCT_DIR)/resources/inspector/toolbox.html', '<(PRODUCT_DIR)/resources/inspector/toolbox.html',
], ],
'images': [
'<@(devtools_image_files)',
],
'inputs': [ 'inputs': [
'<@(_script_name)', '<@(_script_name)',
'<@(_input_pages)', '<@(_static_files)',
'<@(_images)', '<@(_generated_files)',
'<@(devtools_image_files)',
'<(_devtools_static_files_list)',
], ],
'images_path': [ 'images_path': [
'front_end/Images', 'front_end/Images',
], ],
# Note that other files are put under /devtools directory, together with declared devtools_resources.grd # Note that other files are put under /devtools directory, together with declared devtools_resources.grd
'outputs': ['<(SHARED_INTERMEDIATE_DIR)/devtools/devtools_resources.grd'], 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/devtools/devtools_resources.grd'],
'action': ['python', '<@(_script_name)', '<@(_input_pages)', '--relative_path_dirs', '<@(_relative_path_dirs)', '--images', '<@(_images_path)', '--output', '<@(_outputs)'], 'action': ['python', '<@(_script_name)', '<@(_generated_files)', '--static_files_list', '<(_devtools_static_files_list)', '--relative_path_dirs', '<@(_relative_path_dirs)', '--images', '<@(_images_path)', '--output', '<@(_outputs)'],
}], }],
}], }],
], ],
......
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
"""Creates a grd file for packaging the inspector files.""" """Creates a grd file for packaging the inspector files."""
from __future__ import with_statement from __future__ import with_statement
from os import path
import errno import errno
import os import os
...@@ -66,10 +67,14 @@ class ParsedArgs: ...@@ -66,10 +67,14 @@ class ParsedArgs:
def parse_args(argv): def parse_args(argv):
static_files_list_position = argv.index('--static_files_list')
relative_path_dirs_position = argv.index('--relative_path_dirs') relative_path_dirs_position = argv.index('--relative_path_dirs')
images_position = argv.index('--images') images_position = argv.index('--images')
output_position = argv.index('--output') output_position = argv.index('--output')
source_files = argv[:relative_path_dirs_position] static_files_list_path = argv[static_files_list_position + 1]
source_files = argv[:static_files_list_position]
with open(static_files_list_path, 'r') as static_list_file:
source_files.extend([line.rstrip('\n') for line in static_list_file.readlines()])
relative_path_dirs = argv[relative_path_dirs_position + 1:images_position] relative_path_dirs = argv[relative_path_dirs_position + 1:images_position]
image_dirs = argv[images_position + 1:output_position] image_dirs = argv[images_position + 1:output_position]
return ParsedArgs(source_files, relative_path_dirs, image_dirs, argv[output_position + 1]) return ParsedArgs(source_files, relative_path_dirs, image_dirs, argv[output_position + 1])
...@@ -98,17 +103,17 @@ def build_relative_filename(relative_path_dirs, filename): ...@@ -98,17 +103,17 @@ def build_relative_filename(relative_path_dirs, filename):
index = filename.find(relative_path_dir) index = filename.find(relative_path_dir)
if index == 0: if index == 0:
return filename[len(relative_path_dir) + 1:] return filename[len(relative_path_dir) + 1:]
return os.path.basename(filename) return path.basename(filename)
def main(argv): def main(argv):
parsed_args = parse_args(argv[1:]) parsed_args = parse_args(argv[1:])
doc = minidom.parseString(kGrdTemplate) doc = minidom.parseString(kGrdTemplate)
output_directory = os.path.dirname(parsed_args.output_filename) output_directory = path.dirname(parsed_args.output_filename)
try: try:
os.makedirs(os.path.join(output_directory, 'Images')) os.makedirs(path.join(output_directory, 'Images'))
except OSError, e: except OSError, e:
if e.errno != errno.EEXIST: if e.errno != errno.EEXIST:
raise e raise e
...@@ -120,8 +125,8 @@ def main(argv): ...@@ -120,8 +125,8 @@ def main(argv):
if relative_filename in written_filenames: if relative_filename in written_filenames:
continue continue
written_filenames.add(relative_filename) written_filenames.add(relative_filename)
target_dir = os.path.join(output_directory, os.path.dirname(relative_filename)) target_dir = path.join(output_directory, path.dirname(relative_filename))
if not os.path.exists(target_dir): if not path.exists(target_dir):
os.makedirs(target_dir) os.makedirs(target_dir)
shutil.copy(filename, target_dir) shutil.copy(filename, target_dir)
add_file_to_grd(doc, relative_filename) add_file_to_grd(doc, relative_filename)
...@@ -130,9 +135,9 @@ def main(argv): ...@@ -130,9 +135,9 @@ def main(argv):
for filename in os.listdir(dirname): for filename in os.listdir(dirname):
if not filename.endswith('.png') and not filename.endswith('.gif'): if not filename.endswith('.png') and not filename.endswith('.gif'):
continue continue
shutil.copy(os.path.join(dirname, filename), shutil.copy(path.join(dirname, filename),
os.path.join(output_directory, 'Images')) path.join(output_directory, 'Images'))
add_file_to_grd(doc, os.path.join('Images', filename)) add_file_to_grd(doc, path.join('Images', filename))
with open(parsed_args.output_filename, 'w') as output_file: with open(parsed_args.output_filename, 'w') as output_file:
output_file.write(doc.toxml(encoding='UTF-8')) output_file.write(doc.toxml(encoding='UTF-8'))
......
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