Split up list of package files in build process, to work around xcode limits.

BUG=
R=ricow@google.com

Review URL: https://codereview.chromium.org/1516803002 .
This commit is contained in:
William Hesse 2015-12-10 13:29:10 +01:00
parent ff1c630edc
commit eab11aaac5

View file

@ -4,10 +4,13 @@
{
'targets': [
# Other targets depend on pkg files, but have to many inputs, which causes
# Other targets depend on pkg files, but have too many inputs, which causes
# issues on some platforms.
# This target lists all the files in pkg and third_party/pkg,
# and creates a single pkg_files.stamp
# and creates the timestamp pkg_files.stamp, which depends on some
# intermediate helper timestamps.
# We split third_party/pkg up into three groups, based on the last
# character before .dart at the end of the filename.
{
'target_name': 'pkg_files_stamp',
'type': 'none',
@ -17,7 +20,9 @@
'inputs': [
'../tools/create_timestamp_file.py',
'<!@(["python", "../tools/list_files.py", "\\.dart$", "."])',
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files.stamp',
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_1.stamp',
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_2.stamp',
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_3.stamp',
],
'outputs': [
'<(SHARED_INTERMEDIATE_DIR)/pkg_files.stamp',
@ -28,15 +33,47 @@
],
},
{
'action_name': 'make_third_party_pkg_files_stamp',
'action_name': 'make_third_party_pkg_files_1_stamp',
'inputs': [
'../tools/create_timestamp_file.py',
'<!@(["python", "../tools/list_files.py",'
'"^(?!.*_test.dart).*dart$",'
'"^(?!.*_test\.dart).*[a-k]\.dart$",'
'"../third_party/pkg"])',
],
'outputs': [
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files.stamp',
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_1.stamp',
],
'action': [
'python', '../tools/create_timestamp_file.py',
'<@(_outputs)',
],
},
{
'action_name': 'make_third_party_pkg_files_2_stamp',
'inputs': [
'../tools/create_timestamp_file.py',
'<!@(["python", "../tools/list_files.py",'
'"^(?!.*_test\.dart).*[l-r]\.dart$",'
'"../third_party/pkg"])',
],
'outputs': [
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_2.stamp',
],
'action': [
'python', '../tools/create_timestamp_file.py',
'<@(_outputs)',
],
},
{
'action_name': 'make_third_party_pkg_files_3_stamp',
'inputs': [
'../tools/create_timestamp_file.py',
'<!@(["python", "../tools/list_files.py",'
'"^(?!.*_test\.dart).*[^a-r]\.dart$",'
'"../third_party/pkg"])',
],
'outputs': [
'<(SHARED_INTERMEDIATE_DIR)/third_party_pkg_files_3.stamp',
],
'action': [
'python', '../tools/create_timestamp_file.py',