Home | History | Annotate | Download | only in net
      1 # This file is generated; do not edit.
      2 
      3 import os
      4 
      5 Import("env")
      6 
      7 env = env.Clone(COMPONENT_NAME='net',
      8                 TARGET_NAME='net_base')
      9 
     10 configurations = {
     11     'Debug' : {
     12         'Append' : dict(
     13             CCFLAGS = [
     14                 '-Werror',
     15                 '-pthread',
     16                 '-fno-exceptions',
     17                 '-fno-asynchronous-unwind-tables',
     18                 '-fvisibility=hidden',
     19                 '-Wall',
     20                 '-D_FILE_OFFSET_BITS=64',
     21                 '-DPNG_NO_MMX_CODE',
     22                 '-pthread',
     23                 '-I/usr/include/gtk-2.0',
     24                 '-I/usr/lib/gtk-2.0/include',
     25                 '-I/usr/include/atk-1.0',
     26                 '-I/usr/include/cairo',
     27                 '-I/usr/include/pango-1.0',
     28                 '-I/usr/include/glib-2.0',
     29                 '-I/usr/lib/glib-2.0/include',
     30                 '-I/usr/include/freetype2',
     31                 '-I/usr/include/libpng12',
     32                 '-I/usr/include/pixman-1',
     33                 '-DORBIT2=1',
     34                 '-pthread',
     35                 '-I/usr/include/gconf/2',
     36                 '-I/usr/include/orbit-2.0',
     37                 '-I/usr/include/glib-2.0',
     38                 '-I/usr/lib/glib-2.0/include',
     39                 '-DPNG_NO_MMX_CODE',
     40                 '-I/usr/include/gtk-2.0',
     41                 '-I/usr/lib/gtk-2.0/include',
     42                 '-I/usr/include/pango-1.0',
     43                 '-I/usr/include/glib-2.0',
     44                 '-I/usr/lib/glib-2.0/include',
     45                 '-I/usr/include/cairo',
     46                 '-I/usr/include/freetype2',
     47                 '-I/usr/include/libpng12',
     48                 '-I/usr/include/pixman-1',
     49                 '-I/usr/include/nss',
     50                 '-I/usr/include/nspr',
     51                 '-O0',
     52                 '-g'
     53             ],
     54             CPPDEFINES = [
     55                 '__STDC_FORMAT_MACROS',
     56                 'CHROMIUM_BUILD',
     57                 'U_STATIC_IMPLEMENTATION',
     58                 '_DEBUG'
     59             ],
     60             CPPPATH = [
     61                 env.Dir('$SRC_DIR/net/../third_party/icu/public/common'),
     62                 env.Dir('$SRC_DIR/net/../third_party/icu/public/i18n'),
     63                 env.Dir('$SRC_DIR/net/..'),
     64                 env.Dir('$SRC_DIR/net/../sdch/open-vcdiff/src'),
     65                 env.Dir('$SRC_DIR/net/../third_party/bzip2'),
     66                 env.Dir('$SRC_DIR/net/../third_party/zlib'),
     67                 env.Dir('${SHARED_INTERMEDIATE_DIR}/net')
     68             ],
     69             CXXFLAGS = [
     70                 '-fno-rtti',
     71                 '-fno-threadsafe-statics',
     72                 '-fvisibility-inlines-hidden'
     73             ],
     74             LINKFLAGS = [
     75                 '-pthread',
     76                 '-rdynamic'
     77             ],
     78         ),
     79         'FilterOut' : dict(
     80         ),
     81         'Replace' : dict(
     82              FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'],
     83              FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'],
     84              FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'],
     85              IMPLICIT_COMMAND_DEPENDENCIES = '0',
     86              LDMODULECOM = [['$FLOCK_LDMODULE',
     87   '-o',
     88   '$TARGET',
     89   '$_LIBDIRFLAGS',
     90   '$LDMODULEFLAGS',
     91   '$SOURCES',
     92   '-Wl,--start-group',
     93   '$_LIBFLAGS',
     94   '-Wl,--end-group']],
     95              LIBPATH = ['$LIB_DIR'],
     96              LINKCOM = [['$FLOCK_LINK',
     97   '-o',
     98   '$TARGET',
     99   '$_LIBDIRFLAGS',
    100   '$LINKFLAGS',
    101   '$SOURCES',
    102   '-Wl,--start-group',
    103   '$_LIBFLAGS',
    104   '-Wl,--end-group']],
    105              SHLINKCOM = [['$FLOCK_SHLINK',
    106   '-o',
    107   '$TARGET',
    108   '$_LIBDIRFLAGS',
    109   '$SHLINKFLAGS',
    110   '$SOURCES',
    111   '-Wl,--start-group',
    112   '$_LIBFLAGS',
    113   '-Wl,--end-group']],
    114         ),
    115         'ImportExternal' : [
    116              'AS',
    117              'CC',
    118              'CXX',
    119              'LINK',
    120         ],
    121         'PropagateExternal' : [
    122              'AS',
    123              'CC',
    124              'CCACHE_DIR',
    125              'CXX',
    126              'DISTCC_DIR',
    127              'DISTCC_HOSTS',
    128              'HOME',
    129              'INCLUDE_SERVER_ARGS',
    130              'INCLUDE_SERVER_PORT',
    131              'LINK',
    132              'CHROME_BUILD_TYPE',
    133              'CHROMIUM_BUILD',
    134              'OFFICIAL_BUILD',
    135         ],
    136     },
    137     'Release' : {
    138         'Append' : dict(
    139             CCFLAGS = [
    140                 '-Werror',
    141                 '-pthread',
    142                 '-fno-exceptions',
    143                 '-fno-asynchronous-unwind-tables',
    144                 '-fvisibility=hidden',
    145                 '-Wall',
    146                 '-D_FILE_OFFSET_BITS=64',
    147                 '-DPNG_NO_MMX_CODE',
    148                 '-pthread',
    149                 '-I/usr/include/gtk-2.0',
    150                 '-I/usr/lib/gtk-2.0/include',
    151                 '-I/usr/include/atk-1.0',
    152                 '-I/usr/include/cairo',
    153                 '-I/usr/include/pango-1.0',
    154                 '-I/usr/include/glib-2.0',
    155                 '-I/usr/lib/glib-2.0/include',
    156                 '-I/usr/include/freetype2',
    157                 '-I/usr/include/libpng12',
    158                 '-I/usr/include/pixman-1',
    159                 '-DORBIT2=1',
    160                 '-pthread',
    161                 '-I/usr/include/gconf/2',
    162                 '-I/usr/include/orbit-2.0',
    163                 '-I/usr/include/glib-2.0',
    164                 '-I/usr/lib/glib-2.0/include',
    165                 '-DPNG_NO_MMX_CODE',
    166                 '-I/usr/include/gtk-2.0',
    167                 '-I/usr/lib/gtk-2.0/include',
    168                 '-I/usr/include/pango-1.0',
    169                 '-I/usr/include/glib-2.0',
    170                 '-I/usr/lib/glib-2.0/include',
    171                 '-I/usr/include/cairo',
    172                 '-I/usr/include/freetype2',
    173                 '-I/usr/include/libpng12',
    174                 '-I/usr/include/pixman-1',
    175                 '-I/usr/include/nss',
    176                 '-I/usr/include/nspr',
    177                 '-O2',
    178                 '-fno-ident',
    179                 '-fdata-sections',
    180                 '-ffunction-sections'
    181             ],
    182             CPPDEFINES = [
    183                 '__STDC_FORMAT_MACROS',
    184                 'CHROMIUM_BUILD',
    185                 'U_STATIC_IMPLEMENTATION',
    186                 'NDEBUG',
    187                 'NVALGRIND'
    188             ],
    189             CPPPATH = [
    190                 env.Dir('$SRC_DIR/net/../third_party/icu/public/common'),
    191                 env.Dir('$SRC_DIR/net/../third_party/icu/public/i18n'),
    192                 env.Dir('$SRC_DIR/net/..'),
    193                 env.Dir('$SRC_DIR/net/../sdch/open-vcdiff/src'),
    194                 env.Dir('$SRC_DIR/net/../third_party/bzip2'),
    195                 env.Dir('$SRC_DIR/net/../third_party/zlib'),
    196                 env.Dir('${SHARED_INTERMEDIATE_DIR}/net')
    197             ],
    198             CXXFLAGS = [
    199                 '-fno-rtti',
    200                 '-fno-threadsafe-statics',
    201                 '-fvisibility-inlines-hidden'
    202             ],
    203             LINKFLAGS = [
    204                 '-pthread',
    205                 '-Wl,--gc-sections'
    206             ],
    207         ),
    208         'FilterOut' : dict(
    209         ),
    210         'Replace' : dict(
    211              FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'],
    212              FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'],
    213              FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'],
    214              IMPLICIT_COMMAND_DEPENDENCIES = '0',
    215              LDMODULECOM = [['$FLOCK_LDMODULE',
    216   '-o',
    217   '$TARGET',
    218   '$_LIBDIRFLAGS',
    219   '$LDMODULEFLAGS',
    220   '$SOURCES',
    221   '-Wl,--start-group',
    222   '$_LIBFLAGS',
    223   '-Wl,--end-group']],
    224              LIBPATH = ['$LIB_DIR'],
    225              LINKCOM = [['$FLOCK_LINK',
    226   '-o',
    227   '$TARGET',
    228   '$_LIBDIRFLAGS',
    229   '$LINKFLAGS',
    230   '$SOURCES',
    231   '-Wl,--start-group',
    232   '$_LIBFLAGS',
    233   '-Wl,--end-group']],
    234              SHLINKCOM = [['$FLOCK_SHLINK',
    235   '-o',
    236   '$TARGET',
    237   '$_LIBDIRFLAGS',
    238   '$SHLINKFLAGS',
    239   '$SOURCES',
    240   '-Wl,--start-group',
    241   '$_LIBFLAGS',
    242   '-Wl,--end-group']],
    243         ),
    244         'ImportExternal' : [
    245              'AS',
    246              'CC',
    247              'CXX',
    248              'LINK',
    249         ],
    250         'PropagateExternal' : [
    251              'AS',
    252              'CC',
    253              'CCACHE_DIR',
    254              'CXX',
    255              'DISTCC_DIR',
    256              'DISTCC_HOSTS',
    257              'HOME',
    258              'INCLUDE_SERVER_ARGS',
    259              'INCLUDE_SERVER_PORT',
    260              'LINK',
    261              'CHROME_BUILD_TYPE',
    262              'CHROMIUM_BUILD',
    263              'OFFICIAL_BUILD',
    264         ],
    265     },
    266 }
    267 
    268 config = configurations[env['CONFIG_NAME']]
    269 env.Append(**config['Append'])
    270 env.FilterOut(**config['FilterOut'])
    271 env.Replace(**config['Replace'])
    272 
    273 # Scons forces -fPIC for SHCCFLAGS on some platforms.
    274 # Disable that so we can control it from cflags in gyp.
    275 # Note that Scons itself is inconsistent with its -fPIC
    276 # setting. SHCCFLAGS forces -fPIC, and SHCFLAGS does not.
    277 # This will make SHCCFLAGS consistent with SHCFLAGS.
    278 env['SHCCFLAGS'] = ['$CCFLAGS']
    279 
    280 for _var in config['ImportExternal']:
    281   if _var in ARGUMENTS:
    282     env[_var] = ARGUMENTS[_var]
    283   elif _var in os.environ:
    284     env[_var] = os.environ[_var]
    285 for _var in config['PropagateExternal']:
    286   if _var in ARGUMENTS:
    287     env[_var] = ARGUMENTS[_var]
    288   elif _var in os.environ:
    289     env['ENV'][_var] = os.environ[_var]
    290 
    291 env['ENV']['LD_LIBRARY_PATH'] = env.subst('$LIB_DIR')
    292 
    293 if ARGUMENTS.get('COVERAGE') not in (None, '0'):
    294   env.AppendUnique(
    295             CCFLAGS = [
    296                 '-fprofile-arcs',
    297                 '-ftest-coverage'
    298             ],
    299             LINKFLAGS = [
    300                 '-fprofile-arcs'
    301             ],
    302   )
    303 
    304 if ARGUMENTS.get('PROFILE') not in (None, '0'):
    305   env.AppendUnique(
    306             CCFLAGS = [
    307                 '-pg',
    308                 '-g'
    309             ],
    310             LINKFLAGS = [
    311                 '-pg'
    312             ],
    313   )
    314 
    315 if ARGUMENTS.get('SYMBOLS') not in (None, '0'):
    316   env.AppendUnique(
    317             CCFLAGS = [
    318                 '-g'
    319             ],
    320   )
    321 
    322 input_files = [
    323     'base/address_family.h',
    324     'base/address_list.cc',
    325     'base/address_list.h',
    326     'base/auth.h',
    327     'base/base64.cc',
    328     'base/base64.h',
    329     'base/bzip2_filter.cc',
    330     'base/bzip2_filter.h',
    331     'base/cache_type.h',
    332     'base/cert_database.h',
    333     'base/cert_database_nss.cc',
    334     'base/cert_status_flags.cc',
    335     'base/cert_status_flags.h',
    336     'base/cert_verifier.cc',
    337     'base/cert_verifier.h',
    338     'base/cert_verify_result.h',
    339     'base/completion_callback.h',
    340     'base/connection_type_histograms.cc',
    341     'base/connection_type_histograms.h',
    342     'base/cookie_monster.cc',
    343     'base/cookie_monster.h',
    344     'base/cookie_options.h',
    345     'base/cookie_policy.cc',
    346     'base/cookie_policy.h',
    347     'base/cookie_store.h',
    348     'base/data_url.cc',
    349     'base/data_url.h',
    350     'base/directory_lister.cc',
    351     'base/directory_lister.h',
    352     'base/dns_util.cc',
    353     'base/dns_util.h',
    354     'base/effective_tld_names.cc',
    355     'base/effective_tld_names.dat',
    356     'base/escape.cc',
    357     'base/escape.h',
    358     'base/ev_root_ca_metadata.cc',
    359     'base/ev_root_ca_metadata.h',
    360     'base/file_stream.h',
    361     'base/file_stream_posix.cc',
    362     'base/filter.cc',
    363     'base/filter.h',
    364     'base/fixed_host_resolver.cc',
    365     'base/fixed_host_resolver.h',
    366     'base/gzip_filter.cc',
    367     'base/gzip_filter.h',
    368     'base/gzip_header.cc',
    369     'base/gzip_header.h',
    370     'base/host_cache.cc',
    371     'base/host_cache.h',
    372     'base/host_resolver.cc',
    373     'base/host_resolver.h',
    374     'base/host_resolver_impl.cc',
    375     'base/host_resolver_impl.h',
    376     'base/host_resolver_proc.cc',
    377     'base/host_resolver_proc.h',
    378     'base/io_buffer.cc',
    379     'base/io_buffer.h',
    380     'base/keygen_handler.h',
    381     'base/keygen_handler_nss.cc',
    382     'base/listen_socket.cc',
    383     'base/listen_socket.h',
    384     'base/load_flags.h',
    385     'base/load_log.h',
    386     'base/load_log.cc',
    387     'base/load_log_event_type_list.h',
    388     'base/load_log_util.cc',
    389     'base/load_log_util.h',
    390     'base/load_states.h',
    391     'base/mime_sniffer.cc',
    392     'base/mime_sniffer.h',
    393     'base/mime_util.cc',
    394     'base/mime_util.h',
    395     'base/mock_host_resolver.cc',
    396     'base/mock_host_resolver.h',
    397     'base/net_error_list.h',
    398     'base/net_errors.cc',
    399     'base/net_errors.h',
    400     'base/net_module.cc',
    401     'base/net_module.h',
    402     'base/net_util.cc',
    403     'base/net_util.h',
    404     'base/net_util_posix.cc',
    405     'base/nss_memio.c',
    406     'base/nss_memio.h',
    407     'base/platform_mime_util.h',
    408     'base/platform_mime_util_linux.cc',
    409     'base/registry_controlled_domain.cc',
    410     'base/registry_controlled_domain.h',
    411     'base/scoped_cert_chain_context.h',
    412     'base/sdch_filter.cc',
    413     'base/sdch_filter.h',
    414     'base/sdch_manager.cc',
    415     'base/sdch_manager.h',
    416     'base/ssl_cert_request_info.h',
    417     'base/ssl_client_auth_cache.cc',
    418     'base/ssl_client_auth_cache.h',
    419     'base/ssl_config_service.cc',
    420     'base/ssl_config_service.h',
    421     'base/ssl_config_service_defaults.h',
    422     'base/ssl_config_service_mac.h',
    423     'base/ssl_config_service_win.h',
    424     'base/ssl_info.h',
    425     'base/strict_transport_security_state.cc',
    426     'base/strict_transport_security_state.h',
    427     'base/telnet_server.cc',
    428     'base/telnet_server.h',
    429     'base/test_completion_callback.h',
    430     'base/upload_data.cc',
    431     'base/upload_data.h',
    432     'base/upload_data_stream.cc',
    433     'base/upload_data_stream.h',
    434     'base/wininet_util.h',
    435     'base/winsock_init.h',
    436     'base/x509_certificate.cc',
    437     'base/x509_certificate.h',
    438     'base/x509_certificate_nss.cc',
    439 ]
    440 
    441 target_files = []
    442 prerequisites = []
    443 
    444 _result = []
    445 for infile in input_files:
    446   if env.compilable(infile):
    447     if (type(infile) == type('')
    448         and (infile.startswith('$SRC_DIR/net/')
    449              or not os.path.isabs(env.subst(infile)))):
    450       # Force files below the build directory by replacing all '..'
    451       # elements in the path with '__':
    452       base, ext = os.path.splitext(os.path.normpath(infile))
    453       base = [d == '..' and '__' or d for d in base.split('/')]
    454       base = os.path.join(*base)
    455       object = '${OBJ_DIR}/${COMPONENT_NAME}/${TARGET_NAME}/' + base
    456       if not infile.startswith('$SRC_DIR/net/'):
    457         infile = '$SRC_DIR/net/' + infile
    458       infile = env.StaticObject(object, infile)[0]
    459     else:
    460       infile = env.StaticObject(infile)[0]
    461   _result.append(infile)
    462 input_files = _result
    463 
    464 _outputs = env.GypStaticLibrary('net_base', input_files)
    465 target_files.extend(_outputs)
    466 
    467 gyp_target = env.Alias('net_base', target_files)
    468 dependencies = [
    469     Alias('net_resources'),
    470     Alias('gconf'),
    471     Alias('gdk'),
    472     Alias('nss')
    473 ]
    474 env.Requires(target_files, dependencies)
    475 env.Requires(gyp_target, dependencies)
    476 for prerequisite in prerequisites:
    477   env.Requires(prerequisite, dependencies)
    478 env.Requires(gyp_target, prerequisites)
    479 Return("gyp_target")
    480