Home | History | Annotate | Download | only in gyp
      1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 {
      6   'includes': [
      7     'common_variables.gypi',
      8   ],
      9   'variables': {
     10     'component%': 'static_library',
     11     'icu_directory': '../third_party/externals/icu'
     12   },
     13   'targets': [
     14     {
     15       'target_name': 'icuuc',
     16       'type': '<(component)',
     17       'sources': [
     18         '<!@(python find.py ../third_party/externals/icu/source/common "*.c*")'
     19       ],
     20       'defines': [
     21         'U_COMMON_IMPLEMENTATION',
     22         'U_HIDE_DATA_SYMBOL',
     23         'U_USING_ICU_NAMESPACE=0',
     24         'HAVE_DLOPEN=0',
     25         'UCONFIG_NO_NON_HTML5_CONVERSION=1',
     26       ],
     27       'include_dirs': [ '<(icu_directory)/source/common', ],
     28       'direct_dependent_settings': {
     29         'defines': [
     30           'U_USING_ICU_NAMESPACE=0',
     31           'U_ENABLE_DYLOAD=0',
     32         ],
     33         'include_dirs': [ '<(icu_directory)/source/common', ],
     34         'conditions': [
     35           [
     36             'component=="static_library"', {
     37               'defines': [
     38                 'U_STATIC_IMPLEMENTATION',
     39               ],
     40             }
     41           ],
     42         ],
     43       },
     44       'cflags': [ '-w' ],
     45       'cflags_cc': [ '-frtti', ],
     46       'conditions': [
     47         [
     48           'component=="static_library"', {
     49             'defines': [ 'U_STATIC_IMPLEMENTATION', ],
     50           }
     51         ],
     52         [
     53           'OS == "win"', {
     54             'sources': [
     55               '<(icu_directory)/source/stubdata/stubdata.c',
     56             ],
     57             'copies': [
     58               {
     59                 'destination': '<(PRODUCT_DIR)',
     60                 'files': [ '<(icu_directory)/windows/icudt.dll', ],
     61               },
     62             ],
     63             'msvs_disabled_warnings': [4005, 4068, 4244, 4355, 4996, 4267],
     64             'msvs_settings': {
     65               'VCCLCompilerTool': {
     66                 'AdditionalOptions': [ '/EHsc', ],
     67               },
     68             },
     69             'configurations': {
     70               'Debug': {
     71                 'msvs_settings': {
     72                   'VCCLCompilerTool': {
     73                     'RuntimeTypeInfo': 'true', # /GR
     74                   },
     75                 },
     76               },
     77               'Release': {
     78                 'msvs_settings': {
     79                   'VCCLCompilerTool': {
     80                     'RuntimeTypeInfo': 'true', # /GR
     81                   },
     82                 },
     83               },
     84             },
     85             'all_dependent_settings': {
     86               'msvs_settings': {
     87                 'VCLinkerTool': {
     88                   'AdditionalDependencies': [
     89                     'advapi32.lib',
     90                   ],
     91                 },
     92               },
     93             },
     94           }
     95         ],
     96         [
     97           'OS == "win" and skia_clang_build', {
     98             'msvs_settings': {
     99               'VCCLCompilerTool': {
    100                 'AdditionalOptions': [
    101                   # See http://bugs.icu-project.org/trac/ticket/11122
    102                   '-Wno-inline-new-delete',
    103                   '-Wno-implicit-exception-spec-mismatch',
    104                 ],
    105               },
    106             },
    107           }
    108         ],
    109         [
    110           'skia_os == "android"', {
    111             'sources': [ '<(icu_directory)/android/icudtl_dat.S', ],
    112           }
    113         ],
    114         [
    115           'skia_os in ["linux", "chromeos"]', {
    116             'sources': [ '<(icu_directory)/linux/icudtl_dat.S', ],
    117           }
    118         ],
    119         [
    120           'skia_os == "mac"', {
    121             'sources': [ '<(icu_directory)/mac/icudtl_dat.S', ],
    122             'xcode_settings': {
    123               'GCC_ENABLE_CPP_RTTI': 'YES',  # -frtti
    124               'WARNING_CFLAGS': [ '-w' ],
    125             },
    126           }
    127         ],
    128       ], # conditions
    129     },
    130   ], # targets
    131 }
    132