SConstruct (2716:b9114064d77a) | SConstruct (2733:e0eac8fc5774) |
---|---|
1# -*- mode:python -*- 2 3# Copyright (c) 2004-2005 The Regents of The University of Michigan 4# All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions are 8# met: redistributions of source code must retain the above copyright --- 246 unchanged lines hidden (view full) --- 255 256env = conf.Finish() 257 258# Define the universe of supported ISAs 259env['ALL_ISA_LIST'] = ['alpha', 'sparc', 'mips'] 260 261# Define the universe of supported CPU models 262env['ALL_CPU_LIST'] = ['AtomicSimpleCPU', 'TimingSimpleCPU', | 1# -*- mode:python -*- 2 3# Copyright (c) 2004-2005 The Regents of The University of Michigan 4# All rights reserved. 5# 6# Redistribution and use in source and binary forms, with or without 7# modification, are permitted provided that the following conditions are 8# met: redistributions of source code must retain the above copyright --- 246 unchanged lines hidden (view full) --- 255 256env = conf.Finish() 257 258# Define the universe of supported ISAs 259env['ALL_ISA_LIST'] = ['alpha', 'sparc', 'mips'] 260 261# Define the universe of supported CPU models 262env['ALL_CPU_LIST'] = ['AtomicSimpleCPU', 'TimingSimpleCPU', |
263 'FullCPU', 'AlphaFullCPU', 264 'OzoneSimpleCPU', 'OzoneCPU', 'CheckerCPU'] | 263 'FullCPU', 'AlphaO3CPU', 264 'OzoneSimpleCPU', 'OzoneCPU'] |
265 266# Sticky options get saved in the options file so they persist from 267# one invocation to the next (unless overridden, in which case the new 268# value becomes sticky). 269sticky_opts = Options(args=ARGUMENTS) 270sticky_opts.AddOptions( 271 EnumOption('TARGET_ISA', 'Target ISA', 'alpha', env['ALL_ISA_LIST']), 272 BoolOption('FULL_SYSTEM', 'Full-system support', False), --- 11 unchanged lines hidden (view full) --- 284 BoolOption('SS_COMPATIBLE_FP', 285 'Make floating-point results compatible with SimpleScalar', 286 False), 287 BoolOption('USE_SSE2', 288 'Compile for SSE2 (-msse2) to get IEEE FP on x86 hosts', 289 False), 290 BoolOption('USE_MYSQL', 'Use MySQL for stats output', have_mysql), 291 BoolOption('USE_FENV', 'Use <fenv.h> IEEE mode control', have_fenv), | 265 266# Sticky options get saved in the options file so they persist from 267# one invocation to the next (unless overridden, in which case the new 268# value becomes sticky). 269sticky_opts = Options(args=ARGUMENTS) 270sticky_opts.AddOptions( 271 EnumOption('TARGET_ISA', 'Target ISA', 'alpha', env['ALL_ISA_LIST']), 272 BoolOption('FULL_SYSTEM', 'Full-system support', False), --- 11 unchanged lines hidden (view full) --- 284 BoolOption('SS_COMPATIBLE_FP', 285 'Make floating-point results compatible with SimpleScalar', 286 False), 287 BoolOption('USE_SSE2', 288 'Compile for SSE2 (-msse2) to get IEEE FP on x86 hosts', 289 False), 290 BoolOption('USE_MYSQL', 'Use MySQL for stats output', have_mysql), 291 BoolOption('USE_FENV', 'Use <fenv.h> IEEE mode control', have_fenv), |
292 BoolOption('USE_CHECKER', 'Use checker for detailed CPU models', False), |
|
292 ('CC', 'C compiler', os.environ.get('CC', env['CC'])), 293 ('CXX', 'C++ compiler', os.environ.get('CXX', env['CXX'])), 294 BoolOption('BATCH', 'Use batch pool for build and tests', False), 295 ('BATCH_CMD', 'Batch pool submission command name', 'qdo') 296 ) 297 298# Non-sticky options only apply to the current build. 299nonsticky_opts = Options(args=ARGUMENTS) 300nonsticky_opts.AddOptions( 301 BoolOption('update_ref', 'Update test reference outputs', False) 302 ) 303 304# These options get exported to #defines in config/*.hh (see m5/SConscript). 305env.ExportOptions = ['FULL_SYSTEM', 'ALPHA_TLASER', 'USE_FENV', \ | 293 ('CC', 'C compiler', os.environ.get('CC', env['CC'])), 294 ('CXX', 'C++ compiler', os.environ.get('CXX', env['CXX'])), 295 BoolOption('BATCH', 'Use batch pool for build and tests', False), 296 ('BATCH_CMD', 'Batch pool submission command name', 'qdo') 297 ) 298 299# Non-sticky options only apply to the current build. 300nonsticky_opts = Options(args=ARGUMENTS) 301nonsticky_opts.AddOptions( 302 BoolOption('update_ref', 'Update test reference outputs', False) 303 ) 304 305# These options get exported to #defines in config/*.hh (see m5/SConscript). 306env.ExportOptions = ['FULL_SYSTEM', 'ALPHA_TLASER', 'USE_FENV', \ |
306 'USE_MYSQL', 'NO_FAST_ALLOC', 'SS_COMPATIBLE_FP'] | 307 'USE_MYSQL', 'NO_FAST_ALLOC', 'SS_COMPATIBLE_FP', \ 308 'USE_CHECKER'] |
307 308# Define a handy 'no-op' action 309def no_action(target, source, env): 310 return 0 311 312env.NoAction = Action(no_action, None) 313 314################################################### --- 150 unchanged lines hidden (view full) --- 465 print "Warning: MySQL not available; " \ 466 "forcing USE_MYSQL to False in", build_dir + "." 467 env['USE_MYSQL'] = False 468 else: 469 print "Compiling in", build_dir, "with MySQL support." 470 env.ParseConfig(mysql_config_libs) 471 env.ParseConfig(mysql_config_include) 472 | 309 310# Define a handy 'no-op' action 311def no_action(target, source, env): 312 return 0 313 314env.NoAction = Action(no_action, None) 315 316################################################### --- 150 unchanged lines hidden (view full) --- 467 print "Warning: MySQL not available; " \ 468 "forcing USE_MYSQL to False in", build_dir + "." 469 env['USE_MYSQL'] = False 470 else: 471 print "Compiling in", build_dir, "with MySQL support." 472 env.ParseConfig(mysql_config_libs) 473 env.ParseConfig(mysql_config_include) 474 |
475 # Check if the Checker is being used. If so append it to env['CPU_MODELS'] 476 if env['USE_CHECKER']: 477 env['CPU_MODELS'].append('CheckerCPU') 478 |
|
473 # Save sticky option settings back to current options file 474 sticky_opts.Save(current_opts_file, env) 475 476 # Do this after we save setting back, or else we'll tack on an 477 # extra 'qdo' every time we run scons. 478 if env['BATCH']: 479 env['CC'] = env['BATCH_CMD'] + ' ' + env['CC'] 480 env['CXX'] = env['BATCH_CMD'] + ' ' + env['CXX'] --- 25 unchanged lines hidden --- | 479 # Save sticky option settings back to current options file 480 sticky_opts.Save(current_opts_file, env) 481 482 # Do this after we save setting back, or else we'll tack on an 483 # extra 'qdo' every time we run scons. 484 if env['BATCH']: 485 env['CC'] = env['BATCH_CMD'] + ' ' + env['CC'] 486 env['CXX'] = env['BATCH_CMD'] + ' ' + env['CXX'] --- 25 unchanged lines hidden --- |