diff --git a/icu.gyp b/icu.gyp index b0edca292900acd922cee7cc8f36f75a5c1279c8..ab58ee5ecf4213fce38df079b951cd90fc80bf06 100644 --- a/icu.gyp +++ b/icu.gyp @@ -72,6 +72,29 @@ 'conditions': [ ['use_system_icu==0 or want_separate_host_toolset==1', { 'targets': [ + { + 'target_name': 'copy_icudtl_dat', + 'type': 'none', + # icudtl.dat is the same for both host/target, so this only supports a + # single toolset. If a target requires that the .dat file be copied + # to the output directory, it should explicitly depend on this target + # with the host toolset (like copy_icudtl_dat#host). + 'toolsets': [ 'host' ], + 'copies': [{ + 'destination': '<(PRODUCT_DIR)', + 'conditions': [ + ['OS == "android"', { + 'files': [ + 'android/icudtl.dat', + ], + } , { # else: OS != android + 'files': [ + 'source/data/in/icudtl.dat', + ], + }], + ], + }], + }, { 'target_name': 'icudata', 'type': 'static_library', @@ -117,20 +140,9 @@ # Make sure any binary depending on this gets the data file. 'conditions': [ ['OS != "ios"', { - 'copies': [{ - 'destination': '<(PRODUCT_DIR)', - 'conditions': [ - ['OS == "android"', { - 'files': [ - 'android/icudtl.dat', - ], - } , { # else: OS != android - 'files': [ - 'source/data/in/icudtl.dat', - ], - }], - ], - }], + 'dependencies': [ + 'copy_icudtl_dat#host', + ], } , { # else: OS=="ios" 'link_settings': { 'mac_bundle_resources': [