Chromium Code Reviews| Index: icu.gyp |
| diff --git a/icu.gyp b/icu.gyp |
| index 9675c734ab7621a06086aa5afb713948952297d9..4103a0db962948611e7f5c68a421add392670985 100644 |
| --- a/icu.gyp |
| +++ b/icu.gyp |
| @@ -45,7 +45,7 @@ |
| ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ |
| or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ |
| (target_arch=="arm" or target_arch=="ia32" or \ |
| - target_arch=="mipsel")', { |
| + target_arch=="mipsel" or target_arch=="mips")', { |
| 'target_conditions': [ |
| ['_toolset=="host"', { |
| 'cflags': [ '-m32' ], |
| @@ -60,7 +60,7 @@ |
| ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \ |
| or OS=="netbsd" or OS=="mac" or OS=="android" or OS=="qnx") and \ |
| (target_arch=="arm64" or target_arch=="x64" or \ |
| - target_arch=="mipsel64")', { |
| + target_arch=="mips64el" or target_arch=="mips64")', { |
| 'target_conditions': [ |
| ['_toolset=="host"', { |
| 'cflags': [ '-m64' ], |
| @@ -106,21 +106,77 @@ |
| }], |
| }, |
| { |
| + 'target_name': 'data_assembly', |
| + 'type': 'none', |
| + 'conditions': [ |
| + [ 'target_arch=="mips" or target_arch=="mips64"', { |
| + 'data_assembly_sources': [ |
| + 'common/icudtb.dat', |
| + ], |
| + 'data_assembly_inputs': [ |
| + 'scripts/make_data_assembly.py', |
| + 'common/icudtb.dat', |
| + ], |
| + 'data_assembly_outputs': [ |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtb_dat.S', |
|
jungshik at Google
2016/06/02 18:58:42
Change the output path to
<(SHARED_INTERMEDIATE_DI
|
| + ], |
| + }], |
| + [ 'target_arch!="mips" and target_arch!="mips64"', { |
| + 'data_assembly_sources': [ |
| + 'common/icudtl.dat', |
| + ], |
| + 'data_assembly_inputs': [ |
| + 'scripts/make_data_assembly.py', |
| + 'common/icudtl.dat', |
| + ], |
| + 'data_assembly_outputs': [ |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtl_dat.S', |
|
jungshik at Google
2016/06/02 18:58:41
same here.
|
| + ], |
| + }], |
| + ], |
| + 'sources': [ |
| + '<@(_data_assembly_sources)', |
| + '<@(_data_assembly_outputs)', |
|
jungshik at Google
2016/06/02 18:45:41
"..data.._outputs" should not be in sources, shoul
|
| + ], |
| + 'actions': [ |
| + { |
| + 'action_name': 'make_data_assembly', |
| + 'inputs': [ |
| + '<@(_data_assembly_inputs)', |
| + ], |
| + 'outputs': [ |
| + '<@(_data_assembly_outputs)', |
| + ], |
| + 'action': ['python', '<@(_inputs)', '<@(_outputs)'], |
| + }, |
| + ], |
| + }, |
| + { |
| 'target_name': 'icudata', |
| 'type': 'static_library', |
| 'defines': [ |
| 'U_HIDE_DATA_SYMBOL', |
| ], |
| + 'dependencies': [ |
| + 'data_assembly#target', |
| + ], |
| 'sources': [ |
| # These are hand-generated, but will do for now. The linux |
| # version is an identical copy of the (mac) icudtl_dat.S file, |
| # modulo removal of the .private_extern and .const directives and |
| # with no leading underscore on the icudt52_dat symbol. |
| 'android/icudtl_dat.S', |
| - 'linux/icudtl_dat.S', |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtl_dat.S', |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtb_dat.S', |
| 'mac/icudtl_dat.S', |
| ], |
| 'conditions': [ |
| + [ 'target_arch=="mips" or target_arch=="mips64"', { |
| + 'sources!': ['<(SHARED_INTERMEDIATE_DIR)/icudtl_dat.S'], |
| + }], |
| + [ 'target_arch!="mips" and target_arch!="mips64"', { |
| + 'sources!': ['<(SHARED_INTERMEDIATE_DIR)/icudtb_dat.S'], |
| + }], |
| [ 'use_system_icu==1 and want_separate_host_toolset==1', { |
| 'toolsets': ['host'], |
| }], |
| @@ -132,6 +188,9 @@ |
| }], |
| [ 'OS == "win" and icu_use_data_file_flag==0', { |
| 'type': 'none', |
| + 'dependencies!': [ |
| + 'data_assembly#target', |
|
jungshik at Google
2016/06/02 18:45:41
for now (it'll be short-lived), this dependency ex
|
| + ], |
| 'copies': [ |
| { |
| 'destination': '<(PRODUCT_DIR)', |
| @@ -143,8 +202,11 @@ |
| }], |
| [ 'icu_use_data_file_flag==1', { |
| 'type': 'none', |
| + 'dependencies!': [ |
| + 'data_assembly#target', |
| + ], |
| # Remove any assembly data file. |
| - 'sources/': [['exclude', 'icudtl_dat']], |
| + 'sources/': [['exclude', 'icudtl_dat', 'icudtb_dat']], |
| # Make sure any binary depending on this gets the data file. |
| 'conditions': [ |
| @@ -166,7 +228,10 @@ |
| [ 'OS == "win" or OS == "mac" or OS == "ios" or ' |
| '(OS == "android" and (_toolset != "host" or host_os != "linux")) or ' |
| '(OS == "qnx" and (_toolset == "host" and host_os != "linux"))', { |
| - 'sources!': ['linux/icudtl_dat.S'], |
| + 'sources!': [ |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtl_dat.S', |
| + '<(SHARED_INTERMEDIATE_DIR)/icudtb_dat.S' |
| + ], |
| }], |
| [ 'OS != "android" or _toolset == "host"', { |
| 'sources!': ['android/icudtl_dat.S'], |
| @@ -268,6 +333,7 @@ |
| ], |
| 'dependencies': [ |
| 'icudata', |
| + 'data_assembly#target', |
| ], |
| 'direct_dependent_settings': { |
| 'include_dirs': [ |
| @@ -345,6 +411,9 @@ |
| 'toolsets': ['target'], |
| }], |
| [ 'OS == "win" or icu_use_data_file_flag==1', { |
| + 'dependencies!': [ |
| + 'data_assembly#target', |
| + ], |
| 'sources': [ |
| 'source/stubdata/stubdata.c', |
| ], |