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_perftests') 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 '-O0', 34 '-g' 35 ], 36 CPPDEFINES = [ 37 '__STDC_FORMAT_MACROS', 38 'CHROMIUM_BUILD', 39 'PERF_TEST', 40 'UNIT_TEST', 41 'GTEST_HAS_RTTI=0', 42 '_DEBUG' 43 ], 44 CPPPATH = [ 45 env.Dir('$SRC_DIR/net/..'), 46 env.Dir('$SRC_DIR/net/../testing/gtest/include') 47 ], 48 CXXFLAGS = [ 49 '-fno-rtti', 50 '-fno-threadsafe-statics', 51 '-fvisibility-inlines-hidden' 52 ], 53 LINKFLAGS = [ 54 '-pthread', 55 '-rdynamic' 56 ], 57 LIBS = [ 58 '-lrt', 59 '-lgtk-x11-2.0', 60 '-lgdk-x11-2.0', 61 '-latk-1.0', 62 '-lgdk_pixbuf-2.0', 63 '-lm', 64 '-lpangocairo-1.0', 65 '-lpango-1.0', 66 '-lcairo', 67 '-lgobject-2.0', 68 '-lgmodule-2.0', 69 '-ldl', 70 '-lgthread-2.0', 71 '-lrt', 72 '-lglib-2.0', 73 '-lnss3', 74 '-lnssutil3', 75 '-lsmime3', 76 '-lssl3', 77 '-lplds4', 78 '-lplc4', 79 '-lnspr4', 80 '-lpthread', 81 '-ldl', 82 '-lrt', 83 '-lgconf-2', 84 '-lglib-2.0', 85 '-lgdk-x11-2.0', 86 '-lgdk_pixbuf-2.0', 87 '-lm', 88 '-lpangocairo-1.0', 89 '-lpango-1.0', 90 '-lcairo', 91 '-lgobject-2.0', 92 '-lgmodule-2.0', 93 '-ldl', 94 '-lglib-2.0', 95 '-lrt', 96 'net', 97 'net_test_support', 98 'base', 99 'base_i18n', 100 'test_support_base', 101 'test_support_perf', 102 'gtest', 103 'event', 104 'icui18n', 105 'icuuc', 106 'icudata', 107 'googleurl', 108 'sdch', 109 'chrome_bz2', 110 'modp_b64', 111 'chrome_zlib', 112 'net_base', 113 'v8_snapshot', 114 'v8_base' 115 ], 116 ), 117 'FilterOut' : dict( 118 ), 119 'Replace' : dict( 120 FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], 121 FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], 122 FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], 123 IMPLICIT_COMMAND_DEPENDENCIES = '0', 124 LDMODULECOM = [['$FLOCK_LDMODULE', 125 '-o', 126 '$TARGET', 127 '$_LIBDIRFLAGS', 128 '$LDMODULEFLAGS', 129 '$SOURCES', 130 '-Wl,--start-group', 131 '$_LIBFLAGS', 132 '-Wl,--end-group']], 133 LIBPATH = ['$LIB_DIR'], 134 LINKCOM = [['$FLOCK_LINK', 135 '-o', 136 '$TARGET', 137 '$_LIBDIRFLAGS', 138 '$LINKFLAGS', 139 '$SOURCES', 140 '-Wl,--start-group', 141 '$_LIBFLAGS', 142 '-Wl,--end-group']], 143 SHLINKCOM = [['$FLOCK_SHLINK', 144 '-o', 145 '$TARGET', 146 '$_LIBDIRFLAGS', 147 '$SHLINKFLAGS', 148 '$SOURCES', 149 '-Wl,--start-group', 150 '$_LIBFLAGS', 151 '-Wl,--end-group']], 152 ), 153 'ImportExternal' : [ 154 'AS', 155 'CC', 156 'CXX', 157 'LINK', 158 ], 159 'PropagateExternal' : [ 160 'AS', 161 'CC', 162 'CCACHE_DIR', 163 'CXX', 164 'DISTCC_DIR', 165 'DISTCC_HOSTS', 166 'HOME', 167 'INCLUDE_SERVER_ARGS', 168 'INCLUDE_SERVER_PORT', 169 'LINK', 170 'CHROME_BUILD_TYPE', 171 'CHROMIUM_BUILD', 172 'OFFICIAL_BUILD', 173 ], 174 }, 175 'Release' : { 176 'Append' : dict( 177 CCFLAGS = [ 178 '-Werror', 179 '-pthread', 180 '-fno-exceptions', 181 '-fno-asynchronous-unwind-tables', 182 '-fvisibility=hidden', 183 '-Wall', 184 '-D_FILE_OFFSET_BITS=64', 185 '-DPNG_NO_MMX_CODE', 186 '-pthread', 187 '-I/usr/include/gtk-2.0', 188 '-I/usr/lib/gtk-2.0/include', 189 '-I/usr/include/atk-1.0', 190 '-I/usr/include/cairo', 191 '-I/usr/include/pango-1.0', 192 '-I/usr/include/glib-2.0', 193 '-I/usr/lib/glib-2.0/include', 194 '-I/usr/include/freetype2', 195 '-I/usr/include/libpng12', 196 '-I/usr/include/pixman-1', 197 '-O2', 198 '-fno-ident', 199 '-fdata-sections', 200 '-ffunction-sections' 201 ], 202 CPPDEFINES = [ 203 '__STDC_FORMAT_MACROS', 204 'CHROMIUM_BUILD', 205 'PERF_TEST', 206 'UNIT_TEST', 207 'GTEST_HAS_RTTI=0', 208 'NDEBUG', 209 'NVALGRIND' 210 ], 211 CPPPATH = [ 212 env.Dir('$SRC_DIR/net/..'), 213 env.Dir('$SRC_DIR/net/../testing/gtest/include') 214 ], 215 CXXFLAGS = [ 216 '-fno-rtti', 217 '-fno-threadsafe-statics', 218 '-fvisibility-inlines-hidden' 219 ], 220 LINKFLAGS = [ 221 '-pthread', 222 '-Wl,--gc-sections' 223 ], 224 LIBS = [ 225 '-lrt', 226 '-lgtk-x11-2.0', 227 '-lgdk-x11-2.0', 228 '-latk-1.0', 229 '-lgdk_pixbuf-2.0', 230 '-lm', 231 '-lpangocairo-1.0', 232 '-lpango-1.0', 233 '-lcairo', 234 '-lgobject-2.0', 235 '-lgmodule-2.0', 236 '-ldl', 237 '-lgthread-2.0', 238 '-lrt', 239 '-lglib-2.0', 240 '-lnss3', 241 '-lnssutil3', 242 '-lsmime3', 243 '-lssl3', 244 '-lplds4', 245 '-lplc4', 246 '-lnspr4', 247 '-lpthread', 248 '-ldl', 249 '-lrt', 250 '-lgconf-2', 251 '-lglib-2.0', 252 '-lgdk-x11-2.0', 253 '-lgdk_pixbuf-2.0', 254 '-lm', 255 '-lpangocairo-1.0', 256 '-lpango-1.0', 257 '-lcairo', 258 '-lgobject-2.0', 259 '-lgmodule-2.0', 260 '-ldl', 261 '-lglib-2.0', 262 '-lrt', 263 'net', 264 'net_test_support', 265 'base', 266 'base_i18n', 267 'test_support_base', 268 'test_support_perf', 269 'gtest', 270 'event', 271 'icui18n', 272 'icuuc', 273 'icudata', 274 'googleurl', 275 'sdch', 276 'chrome_bz2', 277 'modp_b64', 278 'chrome_zlib', 279 'net_base', 280 'v8_snapshot', 281 'v8_base' 282 ], 283 ), 284 'FilterOut' : dict( 285 ), 286 'Replace' : dict( 287 FLOCK_LDMODULE = ['flock', '$TOP_BUILDDIR/linker.lock', '$LDMODULE'], 288 FLOCK_LINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$LINK'], 289 FLOCK_SHLINK = ['flock', '$TOP_BUILDDIR/linker.lock', '$SHLINK'], 290 IMPLICIT_COMMAND_DEPENDENCIES = '0', 291 LDMODULECOM = [['$FLOCK_LDMODULE', 292 '-o', 293 '$TARGET', 294 '$_LIBDIRFLAGS', 295 '$LDMODULEFLAGS', 296 '$SOURCES', 297 '-Wl,--start-group', 298 '$_LIBFLAGS', 299 '-Wl,--end-group']], 300 LIBPATH = ['$LIB_DIR'], 301 LINKCOM = [['$FLOCK_LINK', 302 '-o', 303 '$TARGET', 304 '$_LIBDIRFLAGS', 305 '$LINKFLAGS', 306 '$SOURCES', 307 '-Wl,--start-group', 308 '$_LIBFLAGS', 309 '-Wl,--end-group']], 310 SHLINKCOM = [['$FLOCK_SHLINK', 311 '-o', 312 '$TARGET', 313 '$_LIBDIRFLAGS', 314 '$SHLINKFLAGS', 315 '$SOURCES', 316 '-Wl,--start-group', 317 '$_LIBFLAGS', 318 '-Wl,--end-group']], 319 ), 320 'ImportExternal' : [ 321 'AS', 322 'CC', 323 'CXX', 324 'LINK', 325 ], 326 'PropagateExternal' : [ 327 'AS', 328 'CC', 329 'CCACHE_DIR', 330 'CXX', 331 'DISTCC_DIR', 332 'DISTCC_HOSTS', 333 'HOME', 334 'INCLUDE_SERVER_ARGS', 335 'INCLUDE_SERVER_PORT', 336 'LINK', 337 'CHROME_BUILD_TYPE', 338 'CHROMIUM_BUILD', 339 'OFFICIAL_BUILD', 340 ], 341 }, 342 } 343 344 config = configurations[env['CONFIG_NAME']] 345 env.Append(**config['Append']) 346 env.FilterOut(**config['FilterOut']) 347 env.Replace(**config['Replace']) 348 349 # Scons forces -fPIC for SHCCFLAGS on some platforms. 350 # Disable that so we can control it from cflags in gyp. 351 # Note that Scons itself is inconsistent with its -fPIC 352 # setting. SHCCFLAGS forces -fPIC, and SHCFLAGS does not. 353 # This will make SHCCFLAGS consistent with SHCFLAGS. 354 env['SHCCFLAGS'] = ['$CCFLAGS'] 355 356 for _var in config['ImportExternal']: 357 if _var in ARGUMENTS: 358 env[_var] = ARGUMENTS[_var] 359 elif _var in os.environ: 360 env[_var] = os.environ[_var] 361 for _var in config['PropagateExternal']: 362 if _var in ARGUMENTS: 363 env[_var] = ARGUMENTS[_var] 364 elif _var in os.environ: 365 env['ENV'][_var] = os.environ[_var] 366 367 env['ENV']['LD_LIBRARY_PATH'] = env.subst('$LIB_DIR') 368 369 if ARGUMENTS.get('COVERAGE') not in (None, '0'): 370 env.AppendUnique( 371 CCFLAGS = [ 372 '-fprofile-arcs', 373 '-ftest-coverage' 374 ], 375 LINKFLAGS = [ 376 '-fprofile-arcs' 377 ], 378 ) 379 380 if ARGUMENTS.get('PROFILE') not in (None, '0'): 381 env.AppendUnique( 382 CCFLAGS = [ 383 '-pg', 384 '-g' 385 ], 386 LINKFLAGS = [ 387 '-pg' 388 ], 389 ) 390 391 if ARGUMENTS.get('SYMBOLS') not in (None, '0'): 392 env.AppendUnique( 393 CCFLAGS = [ 394 '-g' 395 ], 396 ) 397 398 input_files = [ 399 'base/cookie_monster_perftest.cc', 400 'disk_cache/disk_cache_perftest.cc', 401 'proxy/proxy_resolver_perftest.cc', 402 ] 403 404 target_files = [] 405 prerequisites = [] 406 407 _program = env.File('${PROGPREFIX}net_perftests${PROGSUFFIX}') 408 _result = [] 409 for infile in input_files: 410 if env.compilable(infile): 411 if (type(infile) == type('') 412 and (infile.startswith('$SRC_DIR/net/') 413 or not os.path.isabs(env.subst(infile)))): 414 # Force files below the build directory by replacing all '..' 415 # elements in the path with '__': 416 base, ext = os.path.splitext(os.path.normpath(infile)) 417 base = [d == '..' and '__' or d for d in base.split('/')] 418 base = os.path.join(*base) 419 object = '${OBJ_DIR}/${COMPONENT_NAME}/${TARGET_NAME}/' + base 420 if not infile.startswith('$SRC_DIR/net/'): 421 infile = '$SRC_DIR/net/' + infile 422 infile = env.StaticObject(object, infile)[0] 423 else: 424 infile = env.StaticObject(infile)[0] 425 _result.append(infile) 426 input_files = _result 427 428 _outputs = env.GypProgram(_program, input_files) 429 target_files.extend(_outputs) 430 431 if GetOption('verbose'): 432 _action = Action([['cd', 433 '"/usr/local/google/chromium/src/net"', 434 '&&', 435 '$TARGET_NAME', 436 '--gtest_print_time']]) 437 else: 438 _action = Action([['cd', 439 '"/usr/local/google/chromium/src/net"', 440 '&&', 441 '$TARGET_NAME', 442 '--gtest_print_time']], ) 443 444 gyp_target = env.Alias('net_perftests', target_files) 445 dependencies = [ 446 Alias('net'), 447 Alias('net_test_support'), 448 Alias('base'), 449 Alias('base_i18n'), 450 Alias('test_support_base'), 451 Alias('test_support_perf'), 452 Alias('gtest'), 453 Alias('gtk'), 454 Alias('nss'), 455 Alias('libevent'), 456 Alias('icui18n'), 457 Alias('icuuc'), 458 Alias('icudata'), 459 Alias('googleurl'), 460 Alias('sdch'), 461 Alias('bzip2'), 462 Alias('modp_b64'), 463 Alias('zlib'), 464 Alias('net_base'), 465 Alias('gconf'), 466 Alias('gdk'), 467 Alias('v8_snapshot'), 468 Alias('v8_base') 469 ] 470 env.Requires(target_files, dependencies) 471 env.Requires(gyp_target, dependencies) 472 for prerequisite in prerequisites: 473 env.Requires(prerequisite, dependencies) 474 env.Requires(gyp_target, prerequisites) 475 476 _run_as_target = env.Alias('run_net_perftests', target_files, _action) 477 env.Requires(_run_as_target, [ 478 Alias('net_perftests'), 479 ]) 480 env.AlwaysBuild(_run_as_target) 481 Return("gyp_target") 482