Home | History | Annotate | Download | only in modp_b64
      1 # This file is generated; do not edit.
      2 
      3 import os
      4 
      5 Import("env")
      6 
      7 env = env.Clone(COMPONENT_NAME='modp_b64',
      8                 TARGET_NAME='modp_b64')
      9 
     10 configurations = {
     11     'Debug' : {
     12         'Append' : dict(
     13             CCFLAGS = [
     14                 '-pthread',
     15                 '-fno-exceptions',
     16                 '-fno-asynchronous-unwind-tables',
     17                 '-fvisibility=hidden',
     18                 '-D_FILE_OFFSET_BITS=64',
     19                 '-O0',
     20                 '-g'
     21             ],
     22             CPPDEFINES = [
     23                 'CHROMIUM_BUILD',
     24                 '_DEBUG'
     25             ],
     26             CPPPATH = [
     27                 env.Dir('$SRC_DIR/third_party/modp_b64/../..')
     28             ],
     29             CXXFLAGS = [
     30                 '-fno-rtti',
     31                 '-fno-threadsafe-statics',
     32                 '-fvisibility-inlines-hidden'
     33             ],
     34             LINKFLAGS = [
     35                 '-pthread',
     36                 '-rdynamic'
     37             ],
     38         ),
     39         'FilterOut' : dict(
     40         ),
     41         'Replace' : dict(
     42              FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'],
     43              FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'],
     44              FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'],
     45              IMPLICIT_COMMAND_DEPENDENCIES = '0',
     46              LDMODULECOM = [['$FLOCK_LDMODULE',
     47   '-o',
     48   '$TARGET',
     49   '$_LIBDIRFLAGS',
     50   '$LDMODULEFLAGS',
     51   '$SOURCES',
     52   '-Wl,--start-group',
     53   '$_LIBFLAGS',
     54   '-Wl,--end-group']],
     55              LIBPATH = ['$LIB_DIR'],
     56              LINKCOM = [['$FLOCK_LINK',
     57   '-o',
     58   '$TARGET',
     59   '$_LIBDIRFLAGS',
     60   '$LINKFLAGS',
     61   '$SOURCES',
     62   '-Wl,--start-group',
     63   '$_LIBFLAGS',
     64   '-Wl,--end-group']],
     65              SHLINKCOM = [['$FLOCK_SHLINK',
     66   '-o',
     67   '$TARGET',
     68   '$_LIBDIRFLAGS',
     69   '$SHLINKFLAGS',
     70   '$SOURCES',
     71   '-Wl,--start-group',
     72   '$_LIBFLAGS',
     73   '-Wl,--end-group']],
     74         ),
     75         'ImportExternal' : [
     76              'AS',
     77              'CC',
     78              'CXX',
     79              'LINK',
     80         ],
     81         'PropagateExternal' : [
     82              'AS',
     83              'CC',
     84              'CCACHE_DIR',
     85              'CXX',
     86              'DISTCC_DIR',
     87              'DISTCC_HOSTS',
     88              'HOME',
     89              'INCLUDE_SERVER_ARGS',
     90              'INCLUDE_SERVER_PORT',
     91              'LINK',
     92              'CHROME_BUILD_TYPE',
     93              'CHROMIUM_BUILD',
     94              'OFFICIAL_BUILD',
     95         ],
     96     },
     97     'Release' : {
     98         'Append' : dict(
     99             CCFLAGS = [
    100                 '-pthread',
    101                 '-fno-exceptions',
    102                 '-fno-asynchronous-unwind-tables',
    103                 '-fvisibility=hidden',
    104                 '-D_FILE_OFFSET_BITS=64',
    105                 '-O2',
    106                 '-fno-ident',
    107                 '-fdata-sections',
    108                 '-ffunction-sections'
    109             ],
    110             CPPDEFINES = [
    111                 'CHROMIUM_BUILD',
    112                 'NDEBUG',
    113                 'NVALGRIND'
    114             ],
    115             CPPPATH = [
    116                 env.Dir('$SRC_DIR/third_party/modp_b64/../..')
    117             ],
    118             CXXFLAGS = [
    119                 '-fno-rtti',
    120                 '-fno-threadsafe-statics',
    121                 '-fvisibility-inlines-hidden'
    122             ],
    123             LINKFLAGS = [
    124                 '-pthread',
    125                 '-Wl,--gc-sections'
    126             ],
    127         ),
    128         'FilterOut' : dict(
    129         ),
    130         'Replace' : dict(
    131              FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'],
    132              FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'],
    133              FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'],
    134              IMPLICIT_COMMAND_DEPENDENCIES = '0',
    135              LDMODULECOM = [['$FLOCK_LDMODULE',
    136   '-o',
    137   '$TARGET',
    138   '$_LIBDIRFLAGS',
    139   '$LDMODULEFLAGS',
    140   '$SOURCES',
    141   '-Wl,--start-group',
    142   '$_LIBFLAGS',
    143   '-Wl,--end-group']],
    144              LIBPATH = ['$LIB_DIR'],
    145              LINKCOM = [['$FLOCK_LINK',
    146   '-o',
    147   '$TARGET',
    148   '$_LIBDIRFLAGS',
    149   '$LINKFLAGS',
    150   '$SOURCES',
    151   '-Wl,--start-group',
    152   '$_LIBFLAGS',
    153   '-Wl,--end-group']],
    154              SHLINKCOM = [['$FLOCK_SHLINK',
    155   '-o',
    156   '$TARGET',
    157   '$_LIBDIRFLAGS',
    158   '$SHLINKFLAGS',
    159   '$SOURCES',
    160   '-Wl,--start-group',
    161   '$_LIBFLAGS',
    162   '-Wl,--end-group']],
    163         ),
    164         'ImportExternal' : [
    165              'AS',
    166              'CC',
    167              'CXX',
    168              'LINK',
    169         ],
    170         'PropagateExternal' : [
    171              'AS',
    172              'CC',
    173              'CCACHE_DIR',
    174              'CXX',
    175              'DISTCC_DIR',
    176              'DISTCC_HOSTS',
    177              'HOME',
    178              'INCLUDE_SERVER_ARGS',
    179              'INCLUDE_SERVER_PORT',
    180              'LINK',
    181              'CHROME_BUILD_TYPE',
    182              'CHROMIUM_BUILD',
    183              'OFFICIAL_BUILD',
    184         ],
    185     },
    186 }
    187 
    188 config = configurations[env['CONFIG_NAME']]
    189 env.Append(**config['Append'])
    190 env.FilterOut(**config['FilterOut'])
    191 env.Replace(**config['Replace'])
    192 
    193 # Scons forces -fPIC for SHCCFLAGS on some platforms.
    194 # Disable that so we can control it from cflags in gyp.
    195 # Note that Scons itself is inconsistent with its -fPIC
    196 # setting. SHCCFLAGS forces -fPIC, and SHCFLAGS does not.
    197 # This will make SHCCFLAGS consistent with SHCFLAGS.
    198 env['SHCCFLAGS'] = ['$CCFLAGS']
    199 
    200 for _var in config['ImportExternal']:
    201   if _var in ARGUMENTS:
    202     env[_var] = ARGUMENTS[_var]
    203   elif _var in os.environ:
    204     env[_var] = os.environ[_var]
    205 for _var in config['PropagateExternal']:
    206   if _var in ARGUMENTS:
    207     env[_var] = ARGUMENTS[_var]
    208   elif _var in os.environ:
    209     env['ENV'][_var] = os.environ[_var]
    210 
    211 env['ENV']['LD_LIBRARY_PATH'] = env.subst('$LIB_DIR')
    212 
    213 if ARGUMENTS.get('COVERAGE') not in (None, '0'):
    214   env.AppendUnique(
    215             CCFLAGS = [
    216                 '-fprofile-arcs',
    217                 '-ftest-coverage'
    218             ],
    219             LINKFLAGS = [
    220                 '-fprofile-arcs'
    221             ],
    222   )
    223 
    224 if ARGUMENTS.get('PROFILE') not in (None, '0'):
    225   env.AppendUnique(
    226             CCFLAGS = [
    227                 '-pg',
    228                 '-g'
    229             ],
    230             LINKFLAGS = [
    231                 '-pg'
    232             ],
    233   )
    234 
    235 if ARGUMENTS.get('SYMBOLS') not in (None, '0'):
    236   env.AppendUnique(
    237             CCFLAGS = [
    238                 '-g'
    239             ],
    240   )
    241 
    242 input_files = [
    243     'modp_b64.cc',
    244     'modp_b64.h',
    245     'modp_b64_data.h',
    246 ]
    247 
    248 target_files = []
    249 prerequisites = []
    250 
    251 _result = []
    252 for infile in input_files:
    253   if env.compilable(infile):
    254     if (type(infile) == type('')
    255         and (infile.startswith('$SRC_DIR/third_party/modp_b64/')
    256              or not os.path.isabs(env.subst(infile)))):
    257       # Force files below the build directory by replacing all '..'
    258       # elements in the path with '__':
    259       base, ext = os.path.splitext(os.path.normpath(infile))
    260       base = [d == '..' and '__' or d for d in base.split('/')]
    261       base = os.path.join(*base)
    262       object = '${OBJ_DIR}/${COMPONENT_NAME}/${TARGET_NAME}/' + base
    263       if not infile.startswith('$SRC_DIR/third_party/modp_b64/'):
    264         infile = '$SRC_DIR/third_party/modp_b64/' + infile
    265       infile = env.StaticObject(object, infile)[0]
    266     else:
    267       infile = env.StaticObject(infile)[0]
    268   _result.append(infile)
    269 input_files = _result
    270 
    271 _outputs = env.GypStaticLibrary('modp_b64', input_files)
    272 target_files.extend(_outputs)
    273 
    274 gyp_target = env.Alias('modp_b64', target_files)
    275 env.Requires(gyp_target, prerequisites)
    276 Return("gyp_target")
    277